Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spelling tame #12812

Merged
merged 212 commits into from
May 21, 2021
Merged

Spelling tame #12812

merged 212 commits into from
May 21, 2021

Conversation

jsoref
Copy link
Contributor

@jsoref jsoref commented Apr 23, 2021

This is split from #12779

@jsoref jsoref mentioned this pull request Apr 23, 2021
@jsoref
Copy link
Contributor Author

jsoref commented Apr 23, 2021

One conflict isn't bad...

@@ -1790,7 +1790,7 @@ def expect_cooked_match(raw, expected_cooked)
HTML
end

it "has a proper data whitlist on div" do
it "has a proper data whitelist on div" do
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As noted in #12779 (comment):

I understand that this word is being removed in places -- a disadvantage of typos is that they mean words can hide from such fixes. (I ran into a merge conflict which forced me to drop some other change in this family.)

@@ -21,7 +21,7 @@ def validate
validate
expect(record.errors[:title][0]).to eq(I18n.t("errors.messages.max_emojis", max_emojis_count: 3))

record.title = ':joy: :blush: :smile: is not only about emojis: Happyness::start()'
record.title = ':joy: :blush: :smile: is not only about emojis: Happiness::start()'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -663,7 +663,7 @@ def value_for(user_id, dt)
expect(result.reviewable.payload['targets_topic']).to eq(false)
end

it "will unhide the post when a moderator undos the flag on which s/he took action" do
it "will unhide the post when a moderator undoes the flag on which s/he took action" do
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -57,7 +57,7 @@
"admin" => {
"site_settings" => {
"categories" => {
"github_badges" => "Github Badges"
"github_badges" => "GitHub Badges"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)

This is a brand and this specific instance is user facing.

@@ -4,7 +4,7 @@

describe PermalinksController do
fab!(:topic) { Fabricate(:topic) }
fab!(:permalink) { Fabricate(:permalink, url: "deadroutee/topic/546") }
fab!(:permalink) { Fabricate(:permalink, url: "deadroute/topic/546") }
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -634,7 +634,7 @@ def post_user(extra_params = {})
post "/u.json", params: {
name: @user.name,
username: @user.username,
password: 'tesing12352343'
password: 'testing12352343'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -1370,7 +1370,7 @@ def post_user(extra_params = {})
end

context 'while logged in' do
let(:old_username) { "OrigUsrname" }
let(:old_username) { "OrigUsername" }
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -202,7 +202,7 @@ def scrub(html, strip_diacritics: false)

post = Fabricate(:post, topic: topic, raw: <<~RAW)
a https://abc.com?bob=1, http://efg.com.au?bill=1 b hij.net/xyz=1
www.klm.net/?IGNORE=1 <a href="http://abc.de.nop.co.uk?IGNORE=1&ingore2=2">test</a>
www.klm.net/?IGNORE=1 <a href="http://abc.de.nop.co.uk?IGNORE=1&ignore2=2">test</a>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

spec/services/search_indexer_spec.rb (👍)

@@ -173,7 +173,7 @@ message_bus_redis_skip_client_commands = false
enable_cors = false
cors_origin = ''

# enable if you really need to serve assets in prd
# enable if you really need to serve assets in prod
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -1 +1 @@
<!-- NOTE: All pull requests should have tests (rspec in Ruby, qunit in Javascript). If your code does not include test coverage, please include an explanation of why it was omitted. -->
<!-- NOTE: All pull requests should have tests (rspec in Ruby, qunit in JavaScript). If your code does not include test coverage, please include an explanation of why it was omitted. -->
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
This is a brand and this specific instance is user facing (specifically it shows up in the PR I just made).

I skipped the class flavors since I'm not sure if changing them would be problematic.

@@ -268,7 +268,7 @@ export default Controller.extend(
(isEmpty(this.accountUsername) || this.get("authOptions.email"))
) {
// If email is valid and username has not been entered yet,
// or email and username were filled automatically by 3rd parth auth,
// or email and username were filled automatically by 3rd party auth,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
probably?

@@ -129,7 +129,7 @@ export default {
{ id: 6680, username: "cdman", avatar_template: "/images/avatar.png" },
{ id: 500, username: "aeid", avatar_template: "/images/avatar.png" },
{ id: 8, username: "geek", avatar_template: "/images/avatar.png" },
{ id: 606, username: "Cafeine", avatar_template: "/images/avatar.png" }
{ id: 606, username: "Caffeine", avatar_template: "/images/avatar.png" }
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
I'm assuming that these usernames aren't particularly important. I'm happy to drop any changes.

For the most part, I've actually skipped usernames...

@@ -3003,7 +3003,7 @@ export default {
{ id: 3681, username: "Ajarn", avatar_template: "/images/avatar.png" },
{ id: 1621, username: "bnb", avatar_template: "/images/avatar.png" },
{ id: 6266, username: "bragi", avatar_template: "/images/avatar.png" },
{ id: 5335, username: "masda70", avatar_template: "/images/avatar.png" },
{ id: 5335, username: "mazda70", avatar_template: "/images/avatar.png" },
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -159,7 +159,7 @@ export default {
uploaded_avatar_id: 3281,
created_at: "2014-04-12T22:22:07.930Z",
cooked:
'<p>So you want to set up Discourse on Ubuntu to hack on and develop with?</p>\n\n<p>We\'ll assume that you don\'t have Ruby/Rails/Postgre/Redis installed on your Ubuntu system. Let\'s begin!</p>\n\n<p><em>Although this guide assumes that you are using Ubuntu, but the set-up instructions will work fine for any Debian based ditribution.</em></p>\n\n<p><em>(If you want to install Discourse for production use, see <a href="https://github.com/discourse/discourse/blob/master/docs/INSTALL.md">our install guide</a>)</em></p>\n\n<h2>Install Discourse Dependencies</h2>\n\n<p>Run <a href="https://github.com/techAPJ/install-rails/blob/master/linux">this script</a> in terminal, to setup Rails development environment:</p>\n\n<pre><code>bash &lt;(wget -qO- https://raw.githubusercontent.com/techAPJ/install-rails/master/linux)</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/9/9df737ab44032f2f671ac15513456bc668314591.png" class="lightbox" title="linux_script.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/9/9df737ab44032f2f671ac15513456bc668314591_1_690x189.png" width="690" height="189"><div class="meta">\n<span class="filename">linux_script.png</span><span class="informations">770x211 9.62 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>This will install following new packages on your system:</p>\n\n<ul>\n<li><a href="http://git-scm.com/">Git</a></li>\n<li><a href="https://github.com/sstephenson/rbenv">rbenv</a></li>\n<li><a href="https://github.com/sstephenson/ruby-build">ruby-build</a></li>\n<li>\n<a href="https://www.ruby-lang.org/">Ruby</a> (stable)</li>\n<li><a href="http://rubyonrails.org/">Rails</a></li>\n<li><a href="http://www.postgresql.org/">PostgreSQL</a></li>\n<li><a href="https://sqlite.org/">SQLite</a></li>\n<li><a href="http://redis.io/">Redis</a></li>\n<li><a href="http://bundler.io/">Bundler</a></li>\n<li><a href="http://www.imagemagick.org/">ImageMagick</a></li>\n</ul>\n\n<p>Install Phantomjs:</p>\n\n<p>For 32 bit macine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-i686.tar.bz2\nsudo rm phantomjs-1.9.8-linux-i686.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-i686/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p>For 64 bit machine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo rm phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56.png" class="lightbox" title="phantomjs.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56_1_690x121.png" width="690" height="121"><div class="meta">\n<span class="filename">phantomjs.png</span><span class="informations">969x171 10.1 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p><em>In case you have any of this package pre-installed and don\'t want to run entire script, see the <a href="https://github.com/techAPJ/install-rails/blob/master/linux">script</a> and pick the packages you don\'t have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.</em></p>\n\n<p>Now that we have installed Discourse dependencies, let\'s move on to install Discourse itself.</p>\n\n<h2>Clone Discourse</h2>\n\n<p>Clone the Discourse repository in <code>~/discourse</code> folder:</p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/2/23578e144aa4c37d7e577d570d34789add1078f1.png" class="lightbox" title="git_clone.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/2/23578e144aa4c37d7e577d570d34789add1078f1_1_690x97.png" width="690" height="97"><div class="meta">\n<span class="filename">git_clone.png</span><span class="informations">967x137 7.73 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Setup Database</h2>\n\n<p>Open psql prompt as postgre user</p>\n\n<pre><code>sudo -u postgres psql postgres</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/1/1cb9e5198b2695904204c2b1434427b610468610.png" class="lightbox" title="pg.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/1/1cb9e5198b2695904204c2b1434427b610468610_1_690x177.png" width="690" height="177"><div class="meta">\n<span class="filename">pg.png</span><span class="informations">725x187 5.79 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Create role <strong>with the same name as your ubuntu system username</strong> with <em>discourse</em> as password:</p>\n\n<pre><code>CREATE ROLE discourse WITH LOGIN ENCRYPTED PASSWORD \'discourse\' CREATEDB SUPERUSER;</code></pre>\n\n<p>In the above command, I named the role as <strong>discourse</strong>, this means that my ubuntu system username is <strong>discourse</strong>. (<em>It is necessary for role name to be same as system username, otherwise migrations will not run</em>)</p>\n\n<p>Check that you have successfully created <strong>discourse</strong> role:</p>\n\n<pre><code>\\du</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/6/60439a04daa4efc8756a9528873cffb61c327bee.png" class="lightbox" title="pg_user.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/6/60439a04daa4efc8756a9528873cffb61c327bee_1_690x176.png" width="690" height="176"><div class="meta">\n<span class="filename">pg_user.png</span><span class="informations">725x185 7.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Create <strong>discourse_development</strong> and <strong>discourse_test</strong> database:</p>\n\n<pre><code>CREATE DATABASE discourse_development WITH OWNER discourse ENCODING \'UTF8\' TEMPLATE template0;\nCREATE DATABASE discourse_test WITH OWNER discourse ENCODING \'UTF8\' TEMPLATE template0;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/1/183b46c7f1ffaa024e7c99884fbcc022da2c91b4.png" class="lightbox" title="pg_db.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/1/183b46c7f1ffaa024e7c99884fbcc022da2c91b4_1_690x136.png" width="690" height="136"><div class="meta">\n<span class="filename">pg_db.png</span><span class="informations">724x143 6.82 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <strong>discourse_development</strong> database as <strong>discourse</strong> user:</p>\n\n<pre><code>psql -d discourse_development -U discourse -h localhost</code></pre>\n\n<p>When prompted for password, provide the password which you set at the time of creating role, if you followed the guide as is, the password is <strong>discourse</strong></p>\n\n<p>Run following commands, separately:</p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/04f4c1e4b3dd8ea1d183f653a77d35baca8c1201.png" class="lightbox" title="pg_dev.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/04f4c1e4b3dd8ea1d183f653a77d35baca8c1201_1_690x300.png" width="690" height="300"><div class="meta">\n<span class="filename">pg_dev.png</span><span class="informations">726x316 13.4 KB</span><span class="expand"></span>\n</div></a></div></p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <strong>discourse_test</strong> database as <strong>discourse</strong> user:</p>\n\n<pre><code>psql -d discourse_test -U discourse -h localhost</code></pre>\n\n<p>When prompted for password, provide the password which you set at the time of creating role, if you followed the guide as is, the password is <strong>discourse</strong></p>\n\n<p>Run following commands, separately:</p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/d/d2a25de9f227831bf66107ab2ddc1a7abafca2f4.png" class="lightbox" title="pg_test.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/d/d2a25de9f227831bf66107ab2ddc1a7abafca2f4_1_690x302.png" width="690" height="302"><div class="meta">\n<span class="filename">pg_test.png</span><span class="informations">726x318 12.9 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>You have set-up the database successfully!</p>\n\n<h2>Bootstrap Discourse</h2>\n\n<p>Switch to your Discourse folder:</p>\n\n<pre><code>cd ~/discourse</code></pre>\n\n<p>Install the needed gems</p>\n\n<pre><code>bundle install</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/e/e1e8390c232c20f6b532c80927cec07185a8e556.png" class="lightbox" title="bundle.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/e/e1e8390c232c20f6b532c80927cec07185a8e556_1_690x236.png" width="690" height="236"><div class="meta">\n<span class="filename">bundle.png</span><span class="informations">724x248 9.75 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Now that you have successfully configured database connection, run this command:</p>\n\n<pre><code>bundle exec rake db:migrate db:test:prepare db:seed_fu</code></pre>\n\n<p>Now, try running the specs: </p>\n\n<pre><code>bundle exec rake autospec</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/8/8a645e90108980cea7fa06a524ecbf1558e142f1.png" class="lightbox" title="specs.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/8/8a645e90108980cea7fa06a524ecbf1558e142f1_1_690x253.png" width="690" height="253"><div class="meta">\n<span class="filename">specs.png</span><span class="informations">717x263 8.63 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Start rails server:</p>\n\n<pre><code>bundle exec rails server</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/a/a8e7892e23bbfe3e613ebc6062605989de83310c.png" class="lightbox" title="server.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/a/a8e7892e23bbfe3e613ebc6062605989de83310c_1_690x218.png" width="690" height="218"><div class="meta">\n<span class="filename">server.png</span><span class="informations">724x229 10.8 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>You should now be able to connect to discourse app on <a href="http://localhost:3000">http://localhost:3000</a> - try it out!</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/3/3f2fbcd03c5a30b08c51155130418085da77744e.png" class="lightbox" title="discourse_start.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/3/3f2fbcd03c5a30b08c51155130418085da77744e_1_690x188.png" width="690" height="188"><div class="meta">\n<span class="filename">discourse_start.png</span><span class="informations">1919x525 20.3 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Configure Mail and Create New Account</h2>\n\n<p>We will use <a href="http://mailcatcher.me/">MailCatcher</a> to serve emails in development environment. Install and run MailCatcher:</p>\n\n<pre><code>gem install mailcatcher\nmailcatcher --http-ip 0.0.0.0</code></pre>\n\n<p>Create new account:</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/3X/1/d/1d2e710b0865e78868c74d6cc54f96d1e2eb9303.png" class="lightbox" title="create_account.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/3X/1/d/1d2e710b0865e78868c74d6cc54f96d1e2eb9303_1_690x384.png" width="690" height="384"><div class="meta">\n<span class="filename">create_account.png</span><span class="informations">720x401 13.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Check confirmation email by going to MailCatcher web interface at <a href="http://localhost:1080/">http://localhost:1080/</a></p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/3X/2/9/292a2cb247b37770cf4506f8745fdc39753e547e.png" class="lightbox" title="mc_sign_up_email.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/3X/2/9/292a2cb247b37770cf4506f8745fdc39753e547e_1_690x172.png" width="690" height="172"><div class="meta">\n<span class="filename">mc_sign_up_email.png</span><span class="informations">1919x480 21.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p><em>If you did not receive the email, try running this in console</em>: <code>bundle exec sidekiq -q default</code></p>\n\n<p>Click the confirmation link and your account will be activated!</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/8/8fc06df9b084b4535bcafaaef675799d6ad3e5c9.png" class="lightbox" title="disc_normal_acc.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/8/8fc06df9b084b4535bcafaaef675799d6ad3e5c9_1_690x154.png" width="690" height="154"><div class="meta">\n<span class="filename">disc_normal_acc.png</span><span class="informations">1919x430 21.8 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Access Admin</h2>\n\n<p>Now, to make your account as admin, run the following commands in rails console:</p>\n\n<pre><code>RAILS_ENV=development bundle exec rails c\nu = User.last\nu.admin = true\nu.save</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/a/aa5478bc48ef8fef622e09e7948abb8ad8218000.png" class="lightbox" title="admin_console.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/a/aa5478bc48ef8fef622e09e7948abb8ad8218000_1_690x441.png" width="690" height="441"><div class="meta">\n<span class="filename">admin_console.png</span><span class="informations">722x462 31.7 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Once you execute the above commands successfully, check out your Discourse account again:</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/7/72840ed4dbbc02544471649ee4eaa272fde205ef.png" class="lightbox" title="admin_success.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/7/72840ed4dbbc02544471649ee4eaa272fde205ef_1_690x371.png" width="690" height="371"><div class="meta">\n<span class="filename">admin_success.png</span><span class="informations">1919x1032 30.3 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Congratulations! You are now the admin of your own Discourse installation!</p>\n\n<p>Happy hacking!</p>\n\n<p>If anything needs to be improved in this guide, feel free to ask on <a href="https://meta.discourse.org/t/developers-guide-to-install-discourse-on-ubuntu/14727">meta.discourse.org</a>, or even better, submit a <a href="https://github.com/techAPJ/discourse-development-ubuntu">pull request</a>.</p>',
'<p>So you want to set up Discourse on Ubuntu to hack on and develop with?</p>\n\n<p>We\'ll assume that you don\'t have Ruby/Rails/Postgre/Redis installed on your Ubuntu system. Let\'s begin!</p>\n\n<p><em>Although this guide assumes that you are using Ubuntu, but the set-up instructions will work fine for any Debian based distribution.</em></p>\n\n<p><em>(If you want to install Discourse for production use, see <a href="https://github.com/discourse/discourse/blob/master/docs/INSTALL.md">our install guide</a>)</em></p>\n\n<h2>Install Discourse Dependencies</h2>\n\n<p>Run <a href="https://github.com/techAPJ/install-rails/blob/master/linux">this script</a> in terminal, to setup Rails development environment:</p>\n\n<pre><code>bash &lt;(wget -qO- https://raw.githubusercontent.com/techAPJ/install-rails/master/linux)</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/9/9df737ab44032f2f671ac15513456bc668314591.png" class="lightbox" title="linux_script.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/9/9df737ab44032f2f671ac15513456bc668314591_1_690x189.png" width="690" height="189"><div class="meta">\n<span class="filename">linux_script.png</span><span class="informations">770x211 9.62 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>This will install following new packages on your system:</p>\n\n<ul>\n<li><a href="http://git-scm.com/">Git</a></li>\n<li><a href="https://github.com/sstephenson/rbenv">rbenv</a></li>\n<li><a href="https://github.com/sstephenson/ruby-build">ruby-build</a></li>\n<li>\n<a href="https://www.ruby-lang.org/">Ruby</a> (stable)</li>\n<li><a href="http://rubyonrails.org/">Rails</a></li>\n<li><a href="http://www.postgresql.org/">PostgreSQL</a></li>\n<li><a href="https://sqlite.org/">SQLite</a></li>\n<li><a href="http://redis.io/">Redis</a></li>\n<li><a href="http://bundler.io/">Bundler</a></li>\n<li><a href="http://www.imagemagick.org/">ImageMagick</a></li>\n</ul>\n\n<p>Install Phantomjs:</p>\n\n<p>For 32 bit machine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-i686.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-i686.tar.bz2\nsudo rm phantomjs-1.9.8-linux-i686.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-i686/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p>For 64 bit machine:</p>\n\n<pre><code>cd /usr/local/share\nsudo wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo tar xvf phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo rm phantomjs-1.9.8-linux-x86_64.tar.bz2\nsudo ln -s /usr/local/share/phantomjs-1.9.8-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs\ncd</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56.png" class="lightbox" title="phantomjs.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/0781669e092e0bdc29f8ec1830193503e884fd56_1_690x121.png" width="690" height="121"><div class="meta">\n<span class="filename">phantomjs.png</span><span class="informations">969x171 10.1 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p><em>In case you have any of this package pre-installed and don\'t want to run entire script, see the <a href="https://github.com/techAPJ/install-rails/blob/master/linux">script</a> and pick the packages you don\'t have currently installed. The script is fine-tuned for Discourse, and includes all the packages required for Discourse installation.</em></p>\n\n<p>Now that we have installed Discourse dependencies, let\'s move on to install Discourse itself.</p>\n\n<h2>Clone Discourse</h2>\n\n<p>Clone the Discourse repository in <code>~/discourse</code> folder:</p>\n\n<pre><code>git clone https://github.com/discourse/discourse.git ~/discourse</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/2/23578e144aa4c37d7e577d570d34789add1078f1.png" class="lightbox" title="git_clone.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/2/23578e144aa4c37d7e577d570d34789add1078f1_1_690x97.png" width="690" height="97"><div class="meta">\n<span class="filename">git_clone.png</span><span class="informations">967x137 7.73 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Setup Database</h2>\n\n<p>Open psql prompt as postgre user</p>\n\n<pre><code>sudo -u postgres psql postgres</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/1/1cb9e5198b2695904204c2b1434427b610468610.png" class="lightbox" title="pg.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/1/1cb9e5198b2695904204c2b1434427b610468610_1_690x177.png" width="690" height="177"><div class="meta">\n<span class="filename">pg.png</span><span class="informations">725x187 5.79 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Create role <strong>with the same name as your ubuntu system username</strong> with <em>discourse</em> as password:</p>\n\n<pre><code>CREATE ROLE discourse WITH LOGIN ENCRYPTED PASSWORD \'discourse\' CREATEDB SUPERUSER;</code></pre>\n\n<p>In the above command, I named the role as <strong>discourse</strong>, this means that my ubuntu system username is <strong>discourse</strong>. (<em>It is necessary for role name to be same as system username, otherwise migrations will not run</em>)</p>\n\n<p>Check that you have successfully created <strong>discourse</strong> role:</p>\n\n<pre><code>\\du</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/6/60439a04daa4efc8756a9528873cffb61c327bee.png" class="lightbox" title="pg_user.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/6/60439a04daa4efc8756a9528873cffb61c327bee_1_690x176.png" width="690" height="176"><div class="meta">\n<span class="filename">pg_user.png</span><span class="informations">725x185 7.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Create <strong>discourse_development</strong> and <strong>discourse_test</strong> database:</p>\n\n<pre><code>CREATE DATABASE discourse_development WITH OWNER discourse ENCODING \'UTF8\' TEMPLATE template0;\nCREATE DATABASE discourse_test WITH OWNER discourse ENCODING \'UTF8\' TEMPLATE template0;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/1/183b46c7f1ffaa024e7c99884fbcc022da2c91b4.png" class="lightbox" title="pg_db.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/1/183b46c7f1ffaa024e7c99884fbcc022da2c91b4_1_690x136.png" width="690" height="136"><div class="meta">\n<span class="filename">pg_db.png</span><span class="informations">724x143 6.82 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <strong>discourse_development</strong> database as <strong>discourse</strong> user:</p>\n\n<pre><code>psql -d discourse_development -U discourse -h localhost</code></pre>\n\n<p>When prompted for password, provide the password which you set at the time of creating role, if you followed the guide as is, the password is <strong>discourse</strong></p>\n\n<p>Run following commands, separately:</p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/0/04f4c1e4b3dd8ea1d183f653a77d35baca8c1201.png" class="lightbox" title="pg_dev.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/0/04f4c1e4b3dd8ea1d183f653a77d35baca8c1201_1_690x300.png" width="690" height="300"><div class="meta">\n<span class="filename">pg_dev.png</span><span class="informations">726x316 13.4 KB</span><span class="expand"></span>\n</div></a></div></p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>Now access psql prompt in <strong>discourse_test</strong> database as <strong>discourse</strong> user:</p>\n\n<pre><code>psql -d discourse_test -U discourse -h localhost</code></pre>\n\n<p>When prompted for password, provide the password which you set at the time of creating role, if you followed the guide as is, the password is <strong>discourse</strong></p>\n\n<p>Run following commands, separately:</p>\n\n<pre><code>CREATE EXTENSION pg_trgm;\nCREATE EXTENSION hstore;</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/d/d2a25de9f227831bf66107ab2ddc1a7abafca2f4.png" class="lightbox" title="pg_test.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/d/d2a25de9f227831bf66107ab2ddc1a7abafca2f4_1_690x302.png" width="690" height="302"><div class="meta">\n<span class="filename">pg_test.png</span><span class="informations">726x318 12.9 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Exit psql prompt by pressing <kbd>ctrl</kbd><kbd>d</kbd></p>\n\n<p>You have set-up the database successfully!</p>\n\n<h2>Bootstrap Discourse</h2>\n\n<p>Switch to your Discourse folder:</p>\n\n<pre><code>cd ~/discourse</code></pre>\n\n<p>Install the needed gems</p>\n\n<pre><code>bundle install</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/e/e1e8390c232c20f6b532c80927cec07185a8e556.png" class="lightbox" title="bundle.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/e/e1e8390c232c20f6b532c80927cec07185a8e556_1_690x236.png" width="690" height="236"><div class="meta">\n<span class="filename">bundle.png</span><span class="informations">724x248 9.75 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Now that you have successfully configured database connection, run this command:</p>\n\n<pre><code>bundle exec rake db:migrate db:test:prepare db:seed_fu</code></pre>\n\n<p>Now, try running the specs: </p>\n\n<pre><code>bundle exec rake autospec</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/8/8a645e90108980cea7fa06a524ecbf1558e142f1.png" class="lightbox" title="specs.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/8/8a645e90108980cea7fa06a524ecbf1558e142f1_1_690x253.png" width="690" height="253"><div class="meta">\n<span class="filename">specs.png</span><span class="informations">717x263 8.63 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Start rails server:</p>\n\n<pre><code>bundle exec rails server</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/a/a8e7892e23bbfe3e613ebc6062605989de83310c.png" class="lightbox" title="server.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/a/a8e7892e23bbfe3e613ebc6062605989de83310c_1_690x218.png" width="690" height="218"><div class="meta">\n<span class="filename">server.png</span><span class="informations">724x229 10.8 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>You should now be able to connect to discourse app on <a href="http://localhost:3000">http://localhost:3000</a> - try it out!</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/3/3f2fbcd03c5a30b08c51155130418085da77744e.png" class="lightbox" title="discourse_start.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/3/3f2fbcd03c5a30b08c51155130418085da77744e_1_690x188.png" width="690" height="188"><div class="meta">\n<span class="filename">discourse_start.png</span><span class="informations">1919x525 20.3 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Configure Mail and Create New Account</h2>\n\n<p>We will use <a href="http://mailcatcher.me/">MailCatcher</a> to serve emails in development environment. Install and run MailCatcher:</p>\n\n<pre><code>gem install mailcatcher\nmailcatcher --http-ip 0.0.0.0</code></pre>\n\n<p>Create new account:</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/3X/1/d/1d2e710b0865e78868c74d6cc54f96d1e2eb9303.png" class="lightbox" title="create_account.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/3X/1/d/1d2e710b0865e78868c74d6cc54f96d1e2eb9303_1_690x384.png" width="690" height="384"><div class="meta">\n<span class="filename">create_account.png</span><span class="informations">720x401 13.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Check confirmation email by going to MailCatcher web interface at <a href="http://localhost:1080/">http://localhost:1080/</a></p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/3X/2/9/292a2cb247b37770cf4506f8745fdc39753e547e.png" class="lightbox" title="mc_sign_up_email.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/3X/2/9/292a2cb247b37770cf4506f8745fdc39753e547e_1_690x172.png" width="690" height="172"><div class="meta">\n<span class="filename">mc_sign_up_email.png</span><span class="informations">1919x480 21.5 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p><em>If you did not receive the email, try running this in console</em>: <code>bundle exec sidekiq -q default</code></p>\n\n<p>Click the confirmation link and your account will be activated!</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/8/8fc06df9b084b4535bcafaaef675799d6ad3e5c9.png" class="lightbox" title="disc_normal_acc.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/8/8fc06df9b084b4535bcafaaef675799d6ad3e5c9_1_690x154.png" width="690" height="154"><div class="meta">\n<span class="filename">disc_normal_acc.png</span><span class="informations">1919x430 21.8 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<h2>Access Admin</h2>\n\n<p>Now, to make your account as admin, run the following commands in rails console:</p>\n\n<pre><code>RAILS_ENV=development bundle exec rails c\nu = User.last\nu.admin = true\nu.save</code></pre>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/a/aa5478bc48ef8fef622e09e7948abb8ad8218000.png" class="lightbox" title="admin_console.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/a/aa5478bc48ef8fef622e09e7948abb8ad8218000_1_690x441.png" width="690" height="441"><div class="meta">\n<span class="filename">admin_console.png</span><span class="informations">722x462 31.7 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Once you execute the above commands successfully, check out your Discourse account again:</p>\n\n<p><div class="lightbox-wrapper"><a href="//meta-s3-cdn.global.ssl.fastly.net/original/2X/7/72840ed4dbbc02544471649ee4eaa272fde205ef.png" class="lightbox" title="admin_success.png"><img src="//discourse-meta.s3-us-west-1.amazonaws.com/optimized/2X/7/72840ed4dbbc02544471649ee4eaa272fde205ef_1_690x371.png" width="690" height="371"><div class="meta">\n<span class="filename">admin_success.png</span><span class="informations">1919x1032 30.3 KB</span><span class="expand"></span>\n</div></a></div> </p>\n\n<p>Congratulations! You are now the admin of your own Discourse installation!</p>\n\n<p>Happy hacking!</p>\n\n<p>If anything needs to be improved in this guide, feel free to ask on <a href="https://meta.discourse.org/t/developers-guide-to-install-discourse-on-ubuntu/14727">meta.discourse.org</a>, or even better, submit a <a href="https://github.com/techAPJ/discourse-development-ubuntu">pull request</a>.</p>',
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)

-ditribution
+distribution

@@ -62,7 +62,7 @@ function applyOnebox(state, silent) {

let href = attrs[0][1];

// edge case ... what if this is not http or protocoless?
// edge case ... what if this is not http or protocolless?
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -303,7 +303,7 @@ def update_last_read(user, topic_id, post_number, new_posts_read, msecs, opts =
threshold: SiteSetting.default_other_auto_track_topics_after_msecs
}

# In case anyone seens "highest_seen_post_number" and gets confused, like I do.
# In case anyone sees "highest_seen_post_number" and gets confused, like I do.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -12,7 +12,7 @@ For a list of recent security commits, check [our GitHub commits prefixed with S

Discourse uses the PBKDF2 algorithm to encrypt salted passwords. This algorithm is blessed by NIST. Security experts on the web [tend to agree that PBKDF2 is a secure choice](https://security.stackexchange.com/questions/4781/do-any-security-experts-recommend-bcrypt-for-password-storage).

**options you can customise in your production.rb file**
**options you can customize in your production.rb file**
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)

I'm generally not enforcing en-US v en-GB in this PR, however in cases where one flavor or the other is strongly dominant, I have sometimes made changes

@@ -43,7 +43,7 @@ Discourse extends the built-in Rails CSRF protection in the following ways:

2. API calls using the secret API bypass CSRF checks.

3. Certain pages are "cachable", we do not render the CSRF token (`<meta name='csrf-token' ...`) on any cachable pages. Instead when users are about to perform the first non GET request they retrieve the token just in time via `GET session/csrf`
3. Certain pages are "cacheable", we do not render the CSRF token (`<meta name='csrf-token' ...`) on any cacheable pages. Instead when users are about to perform the first non GET request they retrieve the token just in time via `GET session/csrf`
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -14,7 +14,7 @@ def order_by_category_sql(dir)
-"CASE WHEN categories.id = #{SiteSetting.uncategorized_category_id.to_i} THEN '' ELSE categories.name END #{dir}"
end

# If you've clearned the pin, use bumped_at, otherwise put it at the top
# If you've cleared the pin, use bumped_at, otherwise put it at the top
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -138,7 +138,7 @@
expect(Poll.exists?(post_id: json["id"])).to eq(true)
end

it "prevents pollception" do
it "prevents poll-inception" do
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -80,12 +80,12 @@

{{#styleguide-example title=".btn-flat - sizes"}}
{{#each dummy.buttonSizes as |bs|}}
{{flat-button icon="trash-alt" disabled=bs.disabled transaltedTitle=bs.title}}
{{flat-button icon="trash-alt" disabled=bs.disabled translatedTitle=bs.title}}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@@ -4,7 +4,7 @@
require "thor"

class DiscourseCLI < Thor
desc "remap [--global,--regex] FROM TO", "Remap a string sequence accross all tables"
desc "remap [--global,--regex] FROM TO", "Remap a string sequence across all tables"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
user facing? (👍)

Comment on lines 2533 to +2535
"url": "https://demo.socialcast.com/attachments/108",
"filename": "108-reverse-a-algorithm-refernece-V7.pdf",
"public_filename": "https://socialcast-demo.s3.amazonaws.com/tenants/5/attachments/108/108-reverse-a-algorithm-refernece-V7.pdf?AWSAccessKeyId=AKIAIV34WIEKJKCLRBBQ&Expires=1465128000&Signature=JP4%2BXB76kk%2BhCcuJQpZDSDx3NU4%3D",
"filename": "108-reverse-a-algorithm-reference-V7.pdf",
"public_filename": "https://socialcast-demo.s3.amazonaws.com/tenants/5/attachments/108/108-reverse-a-algorithm-reference-V7.pdf?AWSAccessKeyId=AKIAIV34WIEKJKCLRBBQ&Expires=1465128000&Signature=JP4%2BXB76kk%2BhCcuJQpZDSDx3NU4%3D",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
This url doesn't actually work

#12779 (comment)
@riking https://www.vmware.com/products/socialcast.html

#12779 (comment)
I'm not sure what to do about such things.

One approach is to suggest that someone else clean them up in some appropriate manner.

It's quite likely that shouldn't be me, since I can't realistically know how to replace such a thing, and also because even split this PR is still huge.

I can leave the fix in place, since it doesn't matter, or drop it.

Comment on lines -8169 to -8170
"text": "After speaking with a number of our younger employees I think tutition reimbursement is really key to retaining them. Many of them are looking to earn advanced degrees. If we can setup a plan that accomplishes this effectively we can really grow our staff\'s ability and knowledge.",
"html_body": "<div class=\"markdown-body\"><p>After speaking with a number of our younger employees I think tutition reimbursement is really key to retaining them. Many of them are looking to earn advanced degrees. If we can setup a plan that accomplishes this effectively we can really grow our staff\'s ability and knowledge.</p></div>",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
Are the misspellings important?

@@ -326,7 +326,7 @@ def strip_and_inline
strip_and_inline
expect(@frag.to_s).to include("cid:email/test.png")
expect(@frag.to_s).to include("cid:email/test2.ico")
expect(@frag.css('[data-sripped-secure-media]')).not_to be_present
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
What is this test trying to prove? (👍)

#12779 (comment)
@riking Change looks good, data-stripped-secure-media refers to "image removed, click to view" messages

#12779 (comment)
⚠️ n.b. this probably means the test was accidentally passing / the code wasn't being tested.

@@ -273,7 +273,7 @@
expect(guardian.can_delete_user?(user)).to eq(true)
end

it "is allowed when user created multiple posts in PMs to themself" do
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#12779 (comment)
themself is archaic

@SamSaffron
Copy link
Member

This one actually does look safe, after a long review. Can you rebase ... I will merge.

jsoref added 23 commits May 20, 2021 21:13
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
jsoref added 23 commits May 20, 2021 21:22
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
@SamSaffron
Copy link
Member

This is looking fine to me, changes look safe and extremely low rise.

Thanks @jsoref , merging it in.

@SamSaffron SamSaffron merged commit 59097b2 into discourse:master May 21, 2021
@jsoref jsoref deleted the spelling-tame branch May 21, 2021 01:48
@jsoref
Copy link
Contributor Author

jsoref commented May 21, 2021

*risk 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants