Post Header
We fixed word counts when posting new works in Chinese, Japanese, and Thai, worked on improvements for our Support and Policy & Abuse teams, and fixed an assortment of niggling bugs. A special thank you to new contributors bjohns, Lee, and Tatayafinwe!
Credits
- Coders: bjohns, Elz, james_, Lee, redsummernight, Sarken, Tatayafinwe, Tal Hayon, ticking instant
- Code reviewers: Elz, james_, redsummernight, Sarken, ticking instant
- Testers: CJ Record, Danielle Strong, Elz, GoldenFalls, Ito, james_, KeepCalmAndPlayDumb, Lady Oscar, MagnusIsMyRock, Memé, Natalia Gruber, Paula, redsummernight, Runt, Sammie Louise, Sarken, Sunny
Details
Searching and Filtering
- [AO3-5482] - Applying too many filters or search terms when looking for works (e.g. by excluding dozens of tags) would cause the search URL to throw up an error 500. It should now be friendlier to even the most discerning users.
- [AO3-5489] - You can now sort works and bookmarks by "best match" in various places again. (It got intermittently broken after our big search upgrade and displayed things in chronological order instead.)
- [AO3-5477] - We have removed all the old search-related code that we aren't using anymore! Hooray! \o/
- [AO3-5388] - We also removed a database column that wasn't needed anymore. Tidiness! \o/
- [AO3-5490] - When doing a simple search, e.g. by putting a name or phrase into the main search box, the algorithm now shows matches for creator names and work titles first, then all other items that fit the description in some way. (Reminder: Our Hidden Search Operators Cheatsheet helps you put together the perfect search.)
Challenges and Collections
- [AO3-5382] - We used to have a workaround in place that made sure challenge sign-up summaries would display correctly, despite a fun storage issue, which we have now fixed! So you shouldn't notice much of a difference, but it's neater on our side.
- [AO3-5145] - Claiming a prompt with no description (but a helpful title) and trying to use the "Fulfill" link to post a work for it would result in a sad error. It now lets you post the work just fine. Happiness for both you and the prompter!
- [AO3-5551] - It was theoretically possible to access a different user's challenge sign-up, so we tightened up the relevant ownership checks.
- [AO3-4857] - While we weren't looking, the "comments you post will also be listed anonymously" notice meant for a creator replying to comments on their own anonymous work had just... vanished. We've firmly put it back in place.
Admin
- [AO3-5534] - For a few months, emails sent to our Support and Policy & Abuse teams never reached their respective ticket trackers if the return address included a plus sign. /o\ We have now passed along the handful of tickets that got trapped in our database because of that bug, and made sure this won't happen anymore going forward.
- [AO3-4366] - The admin page for managing a user now includes links to the user's Add Invitations and Manage Invitations pages.
- [AO3-5488] - We've made the paths for submitting Support and Policy & Abuse tickets more configurable, to allow for a renamed committee name in their ticket tracker, for example.
- [AO3-5531] - Abuse reports previously got the sender's IP address attached via the contact form, which made it easier for spammers to include fake ones and flood the tracker with hundreds of messages we couldn't easily block. We fixed that, and also took care of an unrelated JavaScript bug in the form, for bonus points!
- [AO3-5540] - The Abuse form was very strict on the URLs it expected in the input field, generating errors even for perfectly good links to user profiles. It is now more chill.
- [AO3-5537] - We've enabled spam checks for Abuse form submissions, in addition to the checks we've already been running on the Support form.
Misc. Fixes
- [AO3-5330] - We sometimes have to block spammers or scrapers from accessing the Archive, and occasionally these bad actors share an IP address with other rule-abiding users. We've added an error page that will let people know if they've been blocked and who to get in touch with if they believe it was a mistake.
- [AO3-5527] - It was possible to reuse an invitation after the account that initially used the invitation had been deleted, a little loophole that was mercilessly abused by spammers and which we have now closed.
- [AO3-2046] - The word counter wasn't working for languages that don't use spaces for word separation, such as Chinese, Japanese, and Thai. For new works, we're now counting each character (but not punctuation marks) as a word, which should be closer to what users of these languages expect. The counts for existing works will be fixed separately in the very near future! (If you only have a few works in these languages and want the correct word count at once, you can edit and save a work again to have the count updated.)
- [AO3-5558] - We found a way to add a work to a series you were not a creator of, and added checks to make sure this wouldn't be possible going forward.
Automated Tests
- [AO3-4638] - We updated our continuous integration platform settings to use MySQL 5.7.22, bringing it in line with the version of MySQL we use on production.
- [AO3-4852] - We updated our specs to make sure they were all using the helper method we created for testing redirects.
- [AO3-4913] - We brought our test coverage for the challenge sign-ups controller up to 92%.
- [AO3-5548] - The tests for some code related to admin posts weren't running because they were in the wrong folder, so we moved them to the right folder.
- [AO3-5555] - The tests for DeviantArt imports were failing because DA had changed their image URLs. We updated our tests accordingly, so they pass again.
Infrastructure
- [AO3-5523] - Thanks to your donations, we were recently able to purchase some new servers! This means we had to update our deploy script to reflect the changes to our server set up.
- [AO3-5373] - We've added the Dewplayer files (used to embed audio content in works) to our repo, instead of storing them somewhere on our many servers.
- [AO3-5515] - We have removed the rubyzip gem.
- [AO3-5553] - We updated the loofah gem, which sanitizes HTML input for us.
- [AO3-5543] - We also updated the nokogiri gem, which does HTML parsing.

Lielac Tue 13 Nov 2018 06:22PM UTC
Comment Actions
scribblemyname Tue 13 Nov 2018 06:38PM UTC
Comment Actions
sarken (AO3_ADT) (Official) Tue 13 Nov 2018 11:34PM UTC
Comment Actions
scribblemyname Thu 15 Nov 2018 02:39AM UTC
Comment Actions
GoldenFalls Tue 13 Nov 2018 08:26PM UTC
Comment Actions
Kaysa Tue 13 Nov 2018 09:24PM UTC
Comment Actions
Account Deleted Wed 14 Nov 2018 05:52AM UTC
Comment Actions
HiddenState Wed 14 Nov 2018 12:24PM UTC
Comment Actions
GiaUrsula Thu 15 Nov 2018 12:37AM UTC
Comment Actions
Nary Thu 15 Nov 2018 05:32AM UTC
Comment Actions
GiaUrsula Thu 15 Nov 2018 12:25PM UTC
Last Edited Thu 15 Nov 2018 12:26PM UTC
Comment Actions
GiaUrsula Thu 15 Nov 2018 03:44PM UTC
Comment Actions
fillory Thu 15 Nov 2018 04:35AM UTC
Comment Actions
Morbane Thu 15 Nov 2018 07:36AM UTC
Last Edited Thu 15 Nov 2018 07:37AM UTC
Comment Actions
sarken (AO3_ADT) (Official) Thu 15 Nov 2018 08:59PM UTC
Comment Actions
Morbane Thu 15 Nov 2018 09:04PM UTC
Comment Actions
Sam of Support (AO3_Support) (Official) Sat 17 Nov 2018 04:00PM UTC
Last Edited Sat 17 Nov 2018 04:07PM UTC
Comment Actions
Morbane Sun 18 Nov 2018 09:48PM UTC
Comment Actions
Sam of Support (AO3_Support) (Official) Mon 19 Nov 2018 03:49PM UTC
Comment Actions
y0ureading Thu 15 Nov 2018 02:51PM UTC
Comment Actions
Concerned Fan (Guest) Sat 17 Nov 2018 07:21AM UTC
Comment Actions
Scott (AO3_ADT) (Official) Sun 18 Nov 2018 06:11PM UTC
Comment Actions
BethofAus Sun 18 Nov 2018 10:36PM UTC
Comment Actions
sarken (AO3_ADT) (Official) Wed 21 Nov 2018 08:45PM UTC
Comment Actions
BethofAus Wed 21 Nov 2018 09:15PM UTC
Comment Actions
unconventional Mon 19 Nov 2018 01:16AM UTC
Comment Actions
Raiji Wed 21 Nov 2018 05:52AM UTC
Last Edited Wed 21 Nov 2018 06:25AM UTC
Comment Actions
sarken (AO3_ADT) (Official) Sat 24 Nov 2018 01:12AM UTC
Comment Actions
Raiji Sat 24 Nov 2018 02:10AM UTC
Last Edited Sat 24 Nov 2018 02:22AM UTC
Comment Actions
Anon (Guest) Fri 23 Nov 2018 01:18PM UTC
Comment Actions
sarken (AO3_ADT) (Official) Sat 24 Nov 2018 01:13AM UTC
Comment Actions
Anon (Guest) Sat 24 Nov 2018 01:19AM UTC
Comment Actions
beesinspades Sun 25 Nov 2018 06:22AM UTC
Comment Actions
taemincroptop (Loki_Likey_Thor_Odinson) Sun 25 Nov 2018 09:56PM UTC
Comment Actions