Post Header
We've been so busy fixing bugs, keeping on top of Ruby on Rails and gem updates, and improving site performance and security, we fell a bit behind on actually telling you about it all! So here's a rather massive overview of code we deployed from June through October last year.
It includes many improvements for site admins and Open Doors archivists, as well as accessibility fixes and some enhancements to prevent abuse and harassment. We also started blocking some AI-related bots from crawling the site. In our tag search, you can now sort results by number of uses.
Many thanks to new contributors Mitch Stark, Ivedonestranger, and Eliah Hecht!
Credits
- Coders: alien, Bilka, Brian Austin, Ceithir, Cesium-Ice, Cesy, EchoEkhi, Eliah Hecht, ellieyhc, Hunter Ada Smith, Ivedonestranger, james_, korrien, Potpotkettle, salt, Sarken, Scott, Tara Rosenthal, ticking instant, tlee911, Tyme, warlockmel, weeklies
- Code reviewers: alien, Bilka, bingeling, Brian Austin, Ceithir, EchoEkhi, james_, redsummernight, Sarken, ticking instant, weeklies
- Testers: Cesy, Claire P. Baker, bingeling, Brian Austin, C. Ryan Smith, Chrome, CJ Record, intyalote, Jenn Casso, james_, Jennifer D2, Keladry, lydia-theda, Maine, Mar, Petricores, Runt, Sammie Louise, Sarken, Taylor Clossin, Teyke, V Snow, wick
Details
0.9.345
On 25 July, we had quite a few updates! Included are an array of visual improvements, better behavior for long lists of pseuds, and letting Open Doors archivists automatically add works to collections (saving time when they import works from at-risk sites.)
- [AO3-3997] - We had previously used multiple methods to determine if an email address was legitimate. We consolidated code to use the most robust method of checking.
- [AO3-4268] - On some devices with a narrow screen, site navigation menus were overflowing off the screen. Navigation menus have now been instructed to take up the full width of the screen and not a pixel more.
- [AO3-5258] - On your gifts page, the buttons on mystery works displayed on the opposite side of the buttons on non-mystery works. They now consistently appear left-aligned. To the left, to the left, all of your buttons in the column to the left!
- [AO3-5356] - We added an attribute to tell screen readers that localized language names are not, in fact, English.
- [AO3-5627] - Previously it was possible to delete the only posted chapter of a work. This caused the work to become inaccessible in certain circumstances. We've added an error message and prevented the deletion of chapters which are the only posted chapter of a work.
- [AO3-5777] - Work blurbs that had hits, comments, kudos, or bookmarks over 999 did not have a comma separator for ease of reading. We've added in the separator. Read easy, friends!
- [AO3-5889] - Some of us have pseuds. Some of us have a lot of pseuds. For those of us with more than twenty pseuds, pagination will now appear on your pseuds page to save the database a little stress on loading all those pseuds.
- [AO3-5901] - Similarly, we're limiting the number of pseuds that appear on the dashboard sidebar and profile page.
- [AO3-6141] - Admins used to be able to assign any role to a user, regardless of their own admin role (so, for example, an Open Doors admin could make a user a tag wrangler or a translator). We've fine-tuned the role assignment process to prevent admins from assigning roles outside their purview.
- [AO3-6158] - The thermometer widget used during fundraising drives was hard coded to label the value in US Dollars. We've removed that so we can display other things (e.g., new memberships during a drive).
- [AO3-6199] - We've renamed the list of sources you're not allowed to use with the
videoandaudioHTML tags so it uses the word "banned" rather than "blacklisted." - [AO3-6243] - If you clicked the "Edit" button on one of your comments and then disabled JavaScript in your browser, you would receive a Session Expired error page if you tried to save your edits. You can now successfully save your edits!
- [AO3-6513] - We have given the ability to Open Door Archivists to automatically add works to collections they moderate. This ability works irrespective of the "Allow others to invite my works to collections" setting. Work creators will receive an email when an Open Doors Archivist adds their work to a collection, and can always remove their work later, if they choose.
- [AO3-6535] - We upgraded Rubocop and erb-lint, two gems we use to help us with code review.
- [AO3-6557] - Waaay back in 2011 we added a monkeypatch to allow users to access works from their PlayStation Portables. The underlying bugs that necessitated the monkeypatch have been resolved, so we deleted the monkeypatch. You should still be able to access works from your PSP, although we'd like to hastily point out that it's not a platform we officially support.
- [AO3-6558] - We updated the usage of a variable used for side-wide settings, to reduce errors. One day, we'll live in a world free of Error 500s. One day.
- [AO3-6560] - For the sad times when you do receive an Error 500, we've added a link to our Tumblr as well as our Twitter. Now you have two places to tell us the servers are down! (And we're looking into setting up a status page that does not rely on the whims of social media platforms.)
0.9.346
We did some quick Gem updates on August 2.
- [AO3-6559] - We updated the sanitize Gem.
- [AO3-6562] - We updated the audited Gem.
- [AO3-6568] - We removed a Gem that was causing errors in our (and many other people's) tests.
0.9.347
We deployed some user experience improvements for admins and tag set owners, along with a few other bug fixes on August 9.
- [AO3-4867] - We fixed a bug that made it difficult to add or remove a tag set owner or moderator whose username matched someone else's pseud.
- [AO3-4868] - The same bug also occurred when assigning givers in gift exchanges, so we fixed it there, too!
- [AO3-6488] - Admins sometimes need to edit orphaned works (e.g., to remove identifying information the original creator left behind), but there was a slow query on the form that caused 504 gateway timeout errors, making that impossible. We've improved the query so admins can once again edit orphaned works.
- [AO3-6530] - Sometimes live validation error messages near the bottom of forms were partially hidden behind the footer. Now they'll hang over the footer, allowing you to actually read what they say.
- [AO3-6545] - The FAQs are supposed to remember which language you chose the last time you browsed them, but they were forgetting and showing you the English FAQs instead. We've fixed it so the FAQs will once again load in your language of choice (unless you follow a link that specifies a language in its URL).
- [AO3-6552] - We added some missing accessibility-related code to the "Log In" link in the header.
- [AO3-6192] - We were manually turning off comments on news posts after two weeks, which was a task ripe for automation, so automate it we did!
- [AO3-6536] - We've created an admin role to give volunteers on the OTW Elections team access to some tools that will help them do their work more efficiently.
- [AO3-6556] - There were a few places on the site that talked about needing to "confirm" newly created accounts, but we generally use the term "activate." We've updated those places to use our preferred terminology, which will hopefully make things clearer.
- [AO3-6567] - We changed how we translate strings, which improved performance by about 20%.
0.9.348
We did a tiny Rails update on August 10.
- [AO3-6577] - We bumped the version of Rails we're on to 6.1.7.4 to make sure we have the latest fixes.
0.9.349
On August 11, we fixed an error resulting from a previous change.
- [AO3-6589] - When we made the change to improve the performance of our old translation string method, we inadvertently caused some errors when user-generated text containing the percent sign (%) was passed to the method a certain way. We've changed the way we're passing that text so the errors won't happen.
0.9.350
August 22 was quite the busy release! We improved the way information like draft expiration date and adult content warning is displayed, blocked some AI crawler bots, and made improvements to a few internal tools to make our developers' lives a bit easier.
- [AO3-4494] - There's a message on draft works that indicates when they'll be automatically deleted. The message used to include a time of day, but that time of day wasn't actually correct, so we've removed it.
- [AO3-5052] - Sometimes, when you changed your username or pseud, your old name would stay on your series blurbs. We've fixed it so series blurbs will refer to you by your updated name.
- [AO3-5248] - If you tried to visit a page for a user who didn't exist, you'd get redirected to the People Search page. That made sense in a way, but wasn't terribly consistent with other nonexistent pages. Now you'll get a 404 error instead, which makes it easier to check for typos in the URL you entered.
- [AO3-6442] - When trying to create a bookmark or inspired by link for works on ficbook.net, you used to get an error message suggesting the site was down, even though the site was working just fine. We've stopped that error message from appearing.
- [AO3-6480] - The adult content warning on works was missing some hidden text used by screen readers, and some of the visible text wasn't particularly clear to many users, so we made the necessary tweaks!
- [AO3-6540] - Permanently banned users can now access the options for orphaning or deleting their works, as well as removing themselves from works they've co-created, without having to contact the Policy & Abuse team.
- [AO3-6546] - A rusty old bit of JavaScript sometimes caused the account creation form to get stuck if you entered an invalid username (e.g., one someone was already using). We replaced it with some newer, shinier JavaScript that won't do that.
- [AO3-6553] - We added some accessibility information to the code for the list of media on the homepage.
- [AO3-6561] - The code that was supposed to display a confirmation pop-up when you mark a comment as spam wasn't working, so we've fixed it.
- [AO3-6549] - We updated the preference code to remove a reference to a database column we got rid of a while back.
- [AO3-6573] - For several years now, we've been using Percona's pt-online-schema-change to make changes to the database schema while the site is up and running. This required some extra work on our part, so we've added the Departure Gem to take care of some of that extra work for us.
- [AO3-6583] - We updated our robots.txt to prevent GPTBot from accessing the site. While we were there, we also cleaned up some old lines that were no longer needed.
- [AO3-6590] - We've started using Reviewdog, an automated tool that makes sure proposed changes to our template files meet our coding standards.
- [AO3-5732] - Admins will now get a nice error message when they search for invitations by email and there are no matching results.
- [AO3-5961] - Our logs were pretty long, so we stopped logging a bunch of things that we didn't really need to be logging.
- [AO3-6212] - We added an index to the
tag_set_associationstable to speed it up. - [AO3-6506] - We updated how bookmark searches work to make things a bit more efficient.
- [AO3-6595] - We updated our robots.txt to prevent ChatGPT-User from accessing the site.
0.9.351
On October 20, we deployed a number of bug fixes both to the site and our own development tools. Of particular interest, we added the ability to sort by number of uses in tag search.
- [AO3-6483] - We fixed a bug that prevented showing admins certain account activity logs for older accounts.
- [AO3-6487] - Sometimes when fandom tags were renamed, the character and relationship autocomplete fields on the work form wouldn't suggest the relevant tags for the fandom. This is now fixed.
- [AO3-6571] - To avoid unexpected results when referencing images, you now have to use the image's whole URL in the HTML
imgtag'ssrcattribute. If you just enter a relative URL like /image.jpg, you won't get an error, but we'll add the Archive's domain, making it https://archiveofourown.org/image.jpg. - [AO3-6599] - Not all types of servers were being updated automatically when we changed some files; they felt left out, so we've made sure all of them are told about configuration updates.
- [AO3-6602] - We fixed a script our developers use so it works properly on macOS in addition to Linux.
- [AO3-6618] - We added some missing character escaping to the code for pre-filling information for bookmarks of external works.
- [AO3-6621] - We updated the OTW donation link to point to the new donation form.
- [AO3-6603] - We bumped the version of actions/checkout -- a utility that helps run automated tests on our code -- from version 3 to version 4.
- [AO3-4595] - Certain admins can now remove pseud icons and update pseud descriptions.
- [AO3-5522] - To prevent someone flooding your email with lots of password reset emails, we've limited the number of resets someone can request within a short amount of time.
- [AO3-6040] - To avoid confusion with official accounts, we have added the ability to forbid using certain usernames.
- [AO3-6321] - Fannish Next-of-Kin tickets are now handled by our Support team, and we have updated the Terms of Service FAQ to reflect this.
- [AO3-6328] - When you use Tag Search, you can now choose to sort the results by number of uses.
- [AO3-6467] - Admins can now see changes to users' Fannish Next-of-Kin relationships in the users' account history.
- [AO3-6312] - You can now prevent guests from replying to your comments on news posts and other users' works by going to your Preferences page and choosing "Do not allow guests to reply to my comments on news posts or other users' works (you can still control the comment settings for your works separately)."
