AO3 News

Post Header

2017-08-05 21:17:29 -0400

The Archive is now running on Rails 4.2! \o/ This took a lot of effort, and we want to thank everyone involved for their work (and our donors for allowing us to pay a contractor for part of it). We also fixed a handful of bugs, got closer to full https support, and continued improving our automated tests. Next up: Rails 5 and 5.1!

Please note: Starting with this release, you won't be able to submit a support request without supplying an email address. This doesn't have to be the address associated with your account, but our Support personnel does need a way to contact you if you have a question. Please help us help you!


  • Coders: astirya, Cesy, cosette, cresenne, David Stump (Littlelines), Elz, james_, Mary Alice Wuerz, Meepu, potatoesque, redsummernight, Sarken, Scott, Vas, Wendy Randquist (Littlelines)
  • Code reviewers: bingeling, Elz, james_, redsummernight, Sarken
  • Testers: Alison Watson, bingeling, Claire, dizmo, james_, Lady Oscar, Matty, mumble, Qem, redsummernight, Sammie, Sarken

Special thanks to Mary Alice, who has contributed her first pull request as an AD&T volunteer and completed her training! \o/


Rails & Infrastructure

  • [AO3-4736], [AO3-5022], [AO3-5023] - After many, many months, we've upgraded the Archive to Rails 4.0, Rails 4.1, and finally Rails 4.2. (Now it's onward to Rails 5!)
  • [AO3-5032] - We changed a lot of our files from hash rocket syntax (thing => other_thing) to JSON-style syntax (thing: other_thing).
  • [AO3-5038] - We were getting a lot of deprecation warnings when we ran our automated tests, so we've upgraded our Cucumber gem, updated how we configure some settings, and changed the syntax for one particular method.
  • [AO3-5027] - One of our servers was redeployed as an app server, so we've updated our deploy script to reflect that.
  • [AO3-5029] - We changed some permissions on static files to make life easier for developers.


  • [AO3-4953] - Our Support team sometimes receives requests for assistance with no email address attached. To make sure they can get back to those users, we've made the email address a mandatory field in our Support form.
  • [AO3-4995] - In our efforts to enable full https browsing on the Archive, we've updated some redirect code (i.e. the thing that sends you back to a page after deleting an item on it, for example). We've still got a ways to go, but we're slowly getting there!
  • [AO3-5043] - Does it count as an enhancement if you take away a feature nobody had been using for years? Let's say yes! Anyway, there was an option for site admins to send emails to all... 1.2 million users, which would have broken the server if ever successfully put into action. So that's gone now. It also took its user-facing friend with it, so you won't see the "Turn off admin emails" option in your Preferences anymore.

Bug Fixes

  • [AO3-4552] - As a side effect of the Rails upgrade, an issue where summaries of searches that used both < and > didn't display properly on the search results page got fixed.
  • [AO3-3223] - When adding a co-creator to a multi-chaptered work, they'd only get added to the first chapter and weren't able to edit any other chapters. They are now made co-owner of all existing chapters, as expected.
  • [AO3-3536] - Posting a remix/podfic/translation and trying to link the inspiring work would sometimes lead to a confusing error message if the external URL couldn't be reached. The new error message subtly suggests to make sure the URL is correct and advises to try again later if the external site is temporarily down.
  • [AO3-4272] - There was some HTML showing in the "Works inspired by this one:" section if the inspired work was in an anonymous collection. /o\ We've covered it up with the proper code now.
  • [AO3-4948] - Similarly, the chapter index page for an anonymous work had some exposed HTML when the logged-in creator was looking at it. Took care of that too!
  • [AO3-5008] - We discovered a number of bogus subscriptions to things you can't actually subscribe to (e.g. pseuds), which shouldn't be able to be created (and which weren't doing anything except potentially causing errors). We've now put in a validation step before confirming a subscription, so this shouldn't happen anymore.
  • [AO3-4609] - In our Terms of Service, we fixed a couple of broken links to related FAQ items and made all the links relative (which also helps with our https efforts!).
  • [AO3-5026] - We also fixed a typo in the ToS that nobody had noticed for... mumble mumble years. Whoops.
  • [AO3-5020] - When editing a work search with a sorting direction set (e.g. by word count in ascending order), the sorting order would get lost and you'd have to select it all over again. Now it sticks!
  • [AO3-4870] - Admins trying to navigate to a non-existent account (e.g. by typing an incorrect name into the address bar) would be greeted with an ugly error 500. They are now being redirected to the user administration page with a much more helpful error message.
  • [AO3-5066] - We fixed a potential security issue regarding access to chapter preview pages.
  • [AO3-5069] - Trying to post a new work as part of a series while running into a validation error (e.g. forgetting to check a warning or enter a title) would result in a 500 error. /o\ Now you get the "you're missing some stuff" message, as proper.
  • [AO3-5072] - The lookup tool for imported works had stopped working. We gave it a good kick, so now you can use it again to search for works from other archives which have found a new home at the AO3.

Automated Tests

  • [AO3-4924], [AO3-4946], [AO3-4947], [AO3-4973], [AO3-5005], [AO3-5017], [AO3-5030] - We've expanded our tests for chapters, challenge assignments, collection items, spam reports, invitation emails, work searches, and work imports.
  • [AO3-5021] - We've told one of our continuous integration (CI) platforms to use a newer version of MySQL so we could deploy Rails 4.0.
  • [AO3-5031] - We were telling our automated testing environments to ignore some security issues with gems, but the Rails upgrade meant we were able to update those gems, so there's no longer anything to ignore.
  • [AO3-5045] - We've updated our RSpec tests so data always gets cleared between unit tests.
  • [AO3-5074] - We had some remaining TO DO items in our autocomplete tests, specifically relating to works and gift challenges. They are now all DONE! \o/
  • [AO3-5070], [AO3-5071], [AO3-5075], [AO3-5080], [AO3-5081] - We've also taken care of some weird test failures (for changing a username, orphaning a work or series, deleting an account, and adding a co-creator to a work) that would happen sometimes without code really being broken. Now there's less noise in our test results!

Known Issues

See our Known Issues page for current issues.