Post Header
We covered a lot of ground in these three releases, ranging from built-in user muting to a Rails update to a new preference requiring users to opt in to having their works invited to collections.
We'd like to extend a special thank you to our five new contributors: GoodGithubAccount, Hunter Ada Smith, Isabel Nunes, juro, and pinkpurpleblue!
Credits
- Coders: agenderdanvers, Bilka, Brian Austin, Ceithir, Cesium-Ice, EchoEkhi, ellieyhc, GoodGithubAccount, Hunter Ada Smith, irrationalpie, Isabel Nunes, juro, Potpotkettle, redsummernight, salt, Sarken, ticking instant, warlockmel, weeklies
- Code reviewers: Bilka, Brian Austin, EchoEkhi, james_, redsummernight, Sarken, ticking instant
- Testers: Brian Austin, lydia-theda, Maine, makepeacelovejoy, mumble, Nat, petricores, Priscilla, redsummernight, Rhine, Runt, Sammie Louise, Sarken, Teyke
Details
0.9.336
The February 8 release included a mute button for users and password changes for site admins.
- [AO3-6365] - We've added a handy button for muting users. You can get all the details in the muting announcement.
- [AO3-6440] - Previously, when our database admins created accounts for site admins, they would set up a password for the account and then pass it along. Now admins are required to set their own passwords and allowed to reset them as well. Additionally, it's now easier for database admins to revoke and restore site admins' access.
- [AO3-6422] - We've limited the number of accounts a user can block to 2,000. (The same limit applies to muting.)
- [AO3-6451], [AO3-6463], [AO3-6468] - The httparty, Rack, and Global ID gems had security updates, so we updated them.
0.9.337
On February 19, we deployed an update to Rails.
- [AO3-6469] - We updated from Rails 6 to Rails 6.1. Now onward to Rails 7!
- [AO3-6477] - It was the Sanitize gem's turn for some security updates, so we bumped the version we're using from 6.0.0 to 6.0.1.
0.9.338
Our March 31 release added a new preference requiring users to opt-in if they'd like to allow collection moderators to invite their works to collections. It also added support for ruby annotations and the details HTML tag and included a whole lot of other bug fixes and enhancements.
Collection invitation preference
[AO3-6118] - Previously, a collection moderator could invite any work on the Archive to their collection, which would send an email to the creator asking them to approve or reject the invitation. Work creators could also choose to bypass the invitation process and allow mods to add their works to collections without needing to approve individual invitations.
This system was prone to abuse, so we have now removed the "Automatically agree to your work being collected by others in the Archive" preference and replaced it with a way to opt into or out of having your works invited to collections.
By default, no one will be allowed to invite your work to their collection. If you'd like to change this, please go to your preferences page and choose "Allow others to invite my works to collections."
If you enable this preference, you'll receive an email for each new invitation, and your work won't be added to the collection unless you approve the invitation. You can always add your own work to collections or remove your work from collections at any time, regardless of whether you enable this preference. If you're a collection moderator and you'd like to add a work whose creator hasn't enabled this preference, you can still bookmark the work and add the bookmark to your collection instead.
General enhancements
- [AO3-6183] - Live validation error messages on forms can now be read by screen readers.
- [AO3-6318] - Enabling the "Hide my work from search engines" preference will now also do its best to hide your series pages.
- [AO3-6475] - To minimize the number of trips we make to the database when a page is loaded, we've added code that will let us use the
includesmethod on pages that use Elasticsearch. - [AO3-5666] - We've clarified the error message you get if the username you enter is formatted incorrectly when you're creating an account or changing your username.
Changes to allowed HTML and CSS
- [AO3-6279] - We've stopped allowing video embeds from one defunct site (Metacafe) and two that no longer host fanvids (Ning and Dailymotion).
- [AO3-6319] - You can now use HSLA colors in skins.
- [AO3-6464] - You can now use the
ruby,rt, andrptags to include annotated text wherever HTML is allowed. - [AO3-6466] - Got spoilers? Now you can hide them using the
detailsandsummarytags anywhere you can use HTML.
Bug fixes
- [AO3-6387] - If a tag wrangler created a noncanonical tag with the same name as an existing canonical tag, the existing tag would get decanonized. Now they'll get a nice error message telling them the tag already exists instead.
- [AO3-2187], [AO3-3585] - On certain forms, the submit button is disabled and replaced with a "Please wait..." message once it's pressed. Unfortunately, this made it impossible to resubmit the form if there were errors in fields validated using JavaScript: even after the errors were corrected, the submit button remained disabled. Now the button will be reenabled once all errors have been corrected, and the page will automatically scroll to the topmost error to help you find and fix any problems.
- [AO3-6428] - If you deleted all the posted chapters in your work, leaving only a draft chapter behind, deleting or downloading the work would lead to a 500 error. This happened because the code for downloads and attachments of deleted works expected that every work would have at least one posted chapter. Now downloads of zero-chapter works will produce files containing metadata but no chapter content, and attachments that are sent to a deleted work's creators will include draft chapters as well as posted ones.
Clean up on aisle five
- [AO3-5837] - We removed some unused code from the bookmarks controller.
- [AO3-6368] - We also removed some unused code known as the EmailValidator. (We have other ways of validating your email!)
- [AO3-6420] - Oh, hey, what's that? An unused view for gifts? Well, let's remove that, too.
- [AO3-6435] - It's not just unused code we've been removing -- we've also dropped an unused column (
prompt_restriction_id) from two database tables.
Some real gems
- [AO3-6481] - We replaced a broken link on our DMCA Policy page.
- [AO3-6495] - We updated the Rack gem due to some security alerts.
- [AO3-6485] - The gem we previously used for uploading information about our test coverage to Codecov has been deprecated, so we've started using GitHub Actions for this instead.
Improving volunteer tools
- [AO3-6140] - We've restricted which admins can edit locales and languages and removed an unused role previously planned for users on our translation team.
- [AO3-6425] - We limit how many abuse reports we'll accept for a given work, but sometimes those limits weren't being applied due to missing information in the reported URL. We've tweaked the code so these URLs can no longer sneak past this restriction.
- [AO3-6432] - The account we use for orphaned works can no longer be suspended or banned. Yeah, don't ask.
- [AO3-5521] - To help combat abuse, we now temporarily store information about the creators of recently orphaned works.
- [AO3-6482] - We cache certain skins for performance reasons, and we have to create new versions of the cached files each time we deploy changes to the default site CSS. Sometimes this process would fail in a particular way that meant we couldn't just rerun it because it would no longer know which skins it needed to cache. We've changed how we specify the skins it applies to so we can rerun it more easily.

Pages Navigation
02_43am Fri 31 Mar 2023 10:48PM UTC
Comment Actions
Diana47 Fri 31 Mar 2023 10:52PM UTC
Comment Actions
JaneBuzJane Fri 31 Mar 2023 10:56PM UTC
Comment Actions
Balentay Fri 31 Mar 2023 10:56PM UTC
Comment Actions
TexasDreamer01 Fri 31 Mar 2023 11:09PM UTC
Comment Actions
quetzaly Sat 01 Apr 2023 04:37AM UTC
Comment Actions
Nightcandle Sun 02 Apr 2023 02:47PM UTC
Comment Actions
KitePiper Fri 31 Mar 2023 11:26PM UTC
Comment Actions
DarkBloodWolf13 Fri 31 Mar 2023 11:37PM UTC
Comment Actions
fourth_rose Sat 01 Apr 2023 10:58AM UTC
Comment Actions
dizmo Sat 01 Apr 2023 11:16AM UTC
Comment Actions
AnInterenstingSpecimen Wed 05 Apr 2023 03:33PM UTC
Comment Actions
fourth_rose Wed 05 Apr 2023 04:20PM UTC
Comment Actions
Nightcandle Sun 02 Apr 2023 02:40PM UTC
Comment Actions
laurelnose Tue 04 Apr 2023 06:43AM UTC
Comment Actions
fourth_rose Wed 05 Apr 2023 04:35PM UTC
Comment Actions
Nightcandle Wed 05 Apr 2023 09:58PM UTC
Comment Actions
AMereDream Fri 31 Mar 2023 11:41PM UTC
Comment Actions
watcherless Tue 04 Apr 2023 02:27AM UTC
Comment Actions
AMereDream Tue 04 Apr 2023 07:13AM UTC
Comment Actions
DarkBloodWolf13 Sat 01 Apr 2023 12:02AM UTC
Last Edited Sat 01 Apr 2023 12:03AM UTC
Comment Actions
Legume_Shadow Sat 01 Apr 2023 12:32AM UTC
Last Edited Sat 01 Apr 2023 12:33AM UTC
Comment Actions
aethel Sat 01 Apr 2023 01:16AM UTC
Comment Actions
The_Gestalt_Prince Sat 01 Apr 2023 04:20AM UTC
Comment Actions
magicwonderdreamfantasy Mon 03 Apr 2023 08:47PM UTC
Comment Actions
fishandships Mon 03 Apr 2023 09:24PM UTC
Last Edited Mon 03 Apr 2023 09:25PM UTC
Comment Actions
Silicon_Tiger Sat 01 Apr 2023 06:03AM UTC
Last Edited Sat 01 Apr 2023 09:04AM UTC
Comment Actions
Vridelian Sat 01 Apr 2023 06:54AM UTC
Comment Actions
potpotkettle (potkettle) Sat 01 Apr 2023 07:12AM UTC
Comment Actions
Account Deleted Sat 01 Apr 2023 01:25PM UTC
Comment Actions
VERSANDS Sat 01 Apr 2023 01:51PM UTC
Comment Actions
Sayanel Sat 01 Apr 2023 02:05PM UTC
Comment Actions
watcherless Tue 04 Apr 2023 02:29AM UTC
Comment Actions
Sayanel Tue 04 Apr 2023 06:12AM UTC
Comment Actions
CelticGHardy Sat 01 Apr 2023 02:46PM UTC
Comment Actions
LugiaDepression Sat 01 Apr 2023 06:24PM UTC
Comment Actions
SherlockMalfoy Sat 01 Apr 2023 06:28PM UTC
Comment Actions
Pages Navigation