AO3 News

Post Header

2020-08-17 13:53:14 UTC

The last handful of releases included some shiny new features, such as the option to disable comments on works and the beginnings of a more robust system for managing Archive admins, as well as bug fixes and performance improvements.

We've also begun offering a Docker container image to make it even easier to contribute to the Archive's development. Thank you to tlee911, Tom Milligan, james_, Ariana, curtisxk38, elebow, and Z, who helped make this happen!

A special thank you to our first-time contributors, tlee911 and Tom Milligan!


  • Coders: Alix R, Cesy Avon, Elz, Enigel, james_, Jeff Kingswood (Littlelines), Matt Sears (Littlelines), redsummernight, Sarken, Stephen Burrows, Tal Hayon, teyla, ticking instant, tlee911, Tom Milligan, Tyme
  • Code reviewers: Ariana, curtisxk38, elebow, Enigel, james_, redsummernight, Sarken, ticking instant, Z
  • Testers: Adi M., Alison Watson, C. Ryan Smith, Chrome, Claudia, cosette, Ehryn, Hel, james_, Jessie, lydia-theda, Matty, Nary, Paula, QED, Qem, redsummernight, Relle, Runt, Sammie Louise, Sarken, ZoëRenee



Bug fixes and performance improvements, deployed on June 28.

  • [AO3-5007] - It used to be technically possible to create non-canonical Warning, Category, and Rating tags. We have now added checks to prevent this. (See the 0.9.293 deploy for an exciting update to this fix!)
  • [AO3-5878] - If you edited your gift exchange sign-up using the "Edit Prompt" option and your new offer didn't actually meet the challenge requirements, your changes wouldn't be applied, but you also wouldn't know why. You now get a helpful error message when you try to submit your changes.
  • [AO3-5969] - The "Update Tag Filters" troubleshooting option (available to admins) wasn't working for all tags, and now it does!
  • [AO3-5737] - The blockquotes within userstuff (which contains work as well as FAQ content) always had a border on the right side, which looked off for right-to-left languages. It now applies the border on the left for those languages.
  • [AO3-5882] - The page title for the "Marked for Later" page was "Saved for Later", creating a certain tension between the heading on the page and the title displayed in the browser window or tab. This has been marked as resolved. (Boom-tish!)
  • [AO3-5907] - The "Share" button on works was preparing all the sharing options if you merely opened a work, creating unnecessary server load and needlessly saying hello to Twitter and Tumblr. Now it gathers up the work blurb (for easy copy-pasting) and creates the social media buttons only when pushed. We also improved user privacy by limiting HTTP requests to those third-party sites from work pages.
  • [AO3-5930] - The code that shows information about works within a series used to load all the works' fields from the database. It is now only fetching the fields it strictly needs, which is a great load off its mind, and less error prone when we change or rename some work attributes.
  • [AO3-5957] - We've updated the Rack gem to 2.2.3.
  • [AO3-5974] - We added the recommended workaround for a gem that was giving off security warnings, so it's not bothering us until we're ready for an upgrade.
  • [AO3-5976] - We made updates to our deploy script to account for new servers! \o/ (And decommissioned servers, RIP.)


Bug fixes and behind-the-scenes work, deployed on July 1.

  • [AO3-5771] - We made the links for tags revealed via "Show warnings" and "Show additional tags" go to the appropriate works page instead of the page for the tag.
  • [AO3-5881] - On the "Edit Multiple Works" page, we had checkboxes for the visibility options ("Only show to registered users" and "Show to all") which you could both check, destroying the space-time continuum in the process. It's now a proper set of radio buttons.
  • [AO3-5973] - We added a new column to the works table to store whether the work has comments disabled, in preparation for an option that lets you, well, disable comments on your works.
  • [AO3-5947] - We added a bunch of rules to the tool that hounds us about style issues in our code changes.


Better control over permissions for site administrators, deployed on July 29.

  • [AO3-5518] - We are introducing separate roles for site admins, with different permissions for Policy & Abuse, Support, Tag Wrangling, Translation, and other volunteers who might need access to the Archive's administration interface. To roll this out in a workable manner, we're defining actions and settings that we want to limit access to, so we can then give the relevant permissions to each admin role.
  • [AO3-5519] - Restricts the ability to create and edit AO3 News posts (like this one!).
  • [AO3-5883] - Restricts access to the Settings panel, where we configure things like how many invitations from our automated queue are sent each day.
  • [AO3-5884] - Restricts the ability to search for users and update user information, such as their Fannish Next of Kin.
  • [AO3-5885] - Restricts the ability to delete, hide, or modify user creations (works, series, bookmarks, and external works).
  • [AO3-5886] - Restricts the ability to delete comments or mark comments as spam.
  • [AO3-5980] - We updated the script we use to create admin accounts. Now it allows us to set roles and easily update admins' email addresses.
  • [AO3-5623] - Said script included a link that started with http:// and we updated it to the proper HTTPS protocol while we were at it.
  • [AO3-5979] - We were enforcing uniqueness constraints for admin accounts and their associated email addresses in the code, but not at the database level. Now it's airtight!
  • [AO3-5992] - We fixed a bug preventing our Policy & Abuse volunteers from periodically receiving reports on spam accounts.
  • [AO3-5967] - We fixed an issue where it was possible to use the "Import New Work" form on URLs that are otherwise only visible to the Archive's internal network.
  • [AO3-4923] - We added more automated tests for bookmarks.
  • [AO3-5999] - We made comments created in our automated tests better resemble valid comments on the actual Archive.
  • [AO3-5983] - We added another bunch of rules to the hounding tool.
  • [AO3-5793] - We now support Docker for creating a development environment! 🥳


Adding the option to disable comments on works and cleaning up faulty warning tags, deployed on August 14.

  • [AO3-5897] - You can now choose to turn off comments on your works.
  • [AO3-4275] - After preventing users from adding new Warning tags to the database (in the 0.9.290 deploy), we needed to clean up any existing tags that didn't belong in our very small set of Archive Warnings. This is now also done.
  • [AO3-4634] - It used to be possible for all logged in users to access the "Unposted Claims" page of a prompt meme challenge. Now this list of all claims is restricted to the challenge mods.
  • [AO3-5975] - We have added a banner that will be automatically displayed on proxy sites run by third parties, advising users that if they log in to their Archive account on the proxy site, the site owner can see their password.
  • [AO3-4925] - We added more tests and removed some unused code involving tag wrangling.
  • [AO3-6012] - We started using MariaDB instead of MySQL for our Docker and automated test databases.