AO3 News

Post Header

Published:
2016-09-24 19:29:41 -0400
Tags:

In this release, we are introducing changes to the abuse report form and fixing a couple of issues with subscription emails for anonymous works. Also included: some invisible code improvements and better documentation for developers wishing to submit bug fixes.

Please note that as of this release, email addresses are required when submitting an abuse report. You can read more about the reasons for this in our post about a clarification in the Terms of Service. Please help the Abuse team help you!

Credits

  • Coders: Ariana, dolleye, james, Sarken, Scott, tickinginstant
  • Code reviewers: james, Naomi, Priscilla, Sarken, Scott
  • Testers: Alison, Lady Oscar, Matty, mumble, Sammie, Sarken

Details

Abuse Reports

  • [AO3-4607] - The Abuse team started using a new ticket tracker, so we did the necessary rewiring on our end, while also making some changes to the form itself. An email address is now mandatory (for the sole reason of having a way to contact you if the Abuse team needs further information).
  • [AO3-4608] - Since we are able to provide assistance in languages other than English (thanks to our amazing Translation volunteers), we have made this option more obvious with a pull-down menu to select your language. Site admins can manage the list of available languages as new Translation teams sign up.

Collections

  • [AO3-4108] - If a work was in two anonymous collections, a notification would be sent to users subscribed to the creator when only one collection was revealed, not both. This would break anonymity. Fixed now!
  • [AO3-4367] - However, when works were in an unrevealed-but-not-anonymous collection, creator subscribers weren't notified at all when the works were revealed. Also bad! Also fixed.
  • [AO3-4273] - When using a non-canonical tag in a gift exchange sign-up, an error message would advise the participant to contact our Support team. As per updated policy, we ask participants to instead contact the challenge moderator(s), who can create a tag set for the exchange if necessary.

Behind the Scenes

  • [AO3-4397] - We made some subtle code changes that should reduce the load on our database server.
  • [AO3-4398] - More TLC for the database server.
  • [AO3-4619] - Over on our project's GitHub page, we updated our README and added some formal contributing guidelines as well as a pull request template for those wishing to submit a bug fix (yes please!).
  • [AO3-4637] - We fixed a rather serious security issue, with many thanks to Harlan Lieberman-Berg for alerting us to the problem!
  • [AO3-4639] - After taking care of the above security issue, indexing for anything other than works wasn't working properly anymore. That's also fixed now!
  • [AO3-4640] - The automated tests for prompt memes were failing since our hypothetical "sign-ups close at" date was no longer in the future. Damn that passage of time. Anyway, we are no longer using a hardcoded date.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-09-04 05:14:22 -0400
Tags:

We have whitelisted two new sites for vid embedding purposes (and removed a couple of others), made sure external services don't get stuck on the adult content warning when they're trying to reach a work, prettied things up a bit here and there, and squashed a handful of miscellaneous bugs.

Credits

  • Coders: Ariana, dolleye, james, Sarken, tickinginstant
  • Code reviewers: james, Naomi, Priscilla, Sarken, Scott
  • Testers: Alison, Lady Oscar, mumble

Details

Misc.

  • [AO3-4533] - Once upon a time, the Organization for Transformative Works website was somewhat unstable, so we had to temporarily host a donation page on the Archive. The OTW site is now much more reliable, so we've removed the temporary page and updated our Donate page with the new link and a reassurance that we will never link your financial information to your AO3 name.
  • [AO3-4516] - Most websites these days use the HTTPS protocol to make sure any communication they have with users' computers is secure. In order to switch the Archive to HTTPS, we have begun updating our code so our links no longer use absolute URLs like http://archiveofourown.org/works, but rather relative URLs like /works.
  • [AO3-3496] - It used to take so long for a work to be added to or removed from your Marked for Later list that it was easy to think it hadn't worked and you needed to click the button again. Unfortunately, that would just undo whatever action you originally intended to do. Now your Marked for Later list will be updated immediately, eliminating any confusion and just making things more convenient.
  • [AO3-4547] - Previously, even small updates to our notification banners (used to inform users about site-wide issues, or during OTW fundraising drives) would make the banner pop up again even if a logged-in user had already dismissed it. We have now added an option for admins to prevent this from happening.
  • [AO3-4585] - In very rare cases, trying to create a new account would bring up an 404 error page. We have put in a fix that will hopefully put an end to this.
  • [AO3-4597] - When a page on the Archive has many button-style links in a row, the buttons can sometimes wrap onto multiple lines (e.g. on narrow screens). Previously, there was no white space separating one row of links from the other, which looked bad and made the buttons harder to select on touch screens. This has been fixed!
  • [AO3-4628] - An encoding error was preventing Open Doors from importing works that had certain characters (like curly quotes) in metadata fields. This has been fixed!
  • [AO3-4564] - Our Ruby version has been upgraded from 2.1.9 to 2.2.5! Baby steps.
  • [AO3-4624] - We made a small update to our Rails install.
  • [AO3-4631] - When a bot tried to access a work with an R or E rating (or no rating), it was served the adult content warning rather than the work. That was annoying for sites like Pinboard and the Internet Archive, so now we're letting bots bypass the warning page.

Emails

  • [AO3-4420] - We've been working with the Translation committee to test some code for translating AO3 emails, and they found a problem with the way we coded plurals in kudos emails. We've fixed it now, so experimentation can resume!
  • [AO3-3947] - Even after setting the preference to turn off emails about gift works, users would still get those emails. Now they won't.
  • [AO3-4615] - A naked URL in the HTML version of our sign-up confirmation email was messing with the email's layout. We have now dressed up the link in the proper HTML.

Embeds

  • [AO3-4627] - We added Vidder Tube to our list of whitelisted domains, so you can embed vids into AO3 works.
  • [AO3-4335] - Same for the Internet Archive.
  • [AO3-4626] - Both Blip.tv and Viddler are now-defunct sites and have been removed from the whitelist.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-08-10 16:43:11 -0400
Tags:

Our last 14 deploys contained a lot of behind-the-scenes work, including improvements to the tools our wonderful Open Doors, Abuse, and Tag Wrangling committees use. We also squashed some annoying bugs concerning challenges, chapter counts, and the font on work summaries.

Credits

  • Coders: Ariana, CJ Record, Elz, james, Naomi, Sarken
  • Code reviewers: Elz, Enigel, james, Naomi, Sarken, Scott
  • Testers: james, Lady Oscar, Matty

Details

Challenges

  • [AO3-4576] - When a challenge's potential match and assignment generation went on for a long time, the process would sometimes fail due to a lost database connection and then restart endlessly, requiring a database administrator to come to the rescue. We've fixed the cause of this and sped up match generation at the same time!
  • [AO3-4577] - The list of givers without recipients wouldn't load for large challenges due to the way we were alphabetizing the list. We've removed the alphabetization to make sure the page will load.
  • [AO3-4128] - If a challenge had more than 1000 sign-ups, the progress page for the matching process would start giving the moderator an error after the first 1000 sign-ups. Now it will work even after the 1000th sign-up is matched!

Servers, Databases, and Automated Tests

  • [AO3-4589] - We use static files called cassettes to speed up our automated tests for our work importing code. The tests started to fail because the cassettes were very old, so we updated the cassettes.
  • [AO3-4575] - When a task takes a very long time to complete, the database connection sometimes gets closed and the task stops running. Now we retry the task when we reopen the connection.
  • [AO3-4596] - We updated our deploy script to reflect the fact we took two of our old application servers out of service in order to provide power for two new database servers.
  • [AO3-4598] - We put one of our old database servers back to work as an application server.
  • [AO3-4601] - We reinstalled another of our old database servers as a unicorn worker.
  • [AO3-4611] - We added two new virtual machines: one to help the machine that currently handles downloads, and another to help the machine currently handling bots. (And all four of these are running our new operating system, too!)
  • [AO3-4612] - Another old server put back to work! This time, we turned an old application server into one that handles Resque workers for background tasks like tag wrangling and challenge matching.

Committee Tools

  • [AO3-3597] - Abuse sometimes receives reports of works that are written in one language but labeled as another. Abuse staff can now label the work with the correct language by themselves rather than waiting for a coder or sysadmin with database access.
  • [AO3-4588] - All tag wranglers had access to a method of editing tags that has the potential to overload the servers if used incorrectly. To ensure that no servers are overloaded, we've restricted access to this tool to tag wranglers with administrator access.
  • [AO3-4359] - The mass import tool used by Open Doors only handled works hosted on the sites they rescue. However, some of those sites include works which are only links to external sites. In order to preserve the collections as they are, we added the ability for Open Doors to import those works to AO3 as bookmarks.

Miscellaneous

  • [AO3-4593] - On the work posting form, the Rich Text and HTML buttons are supposed to use styling to indicate which editor is active. However, they weren't doing what they were supposed to, so we fixed that. (Obligatory reminder to please avoid composing your works in the posting form!)
  • [AO3-4578] - When a user tried to edit the pseud matching their user name, the page informed them that they could not change their "fallback pseud." It wasn't entirely clear what "fallback pseud" meant (it means "the pseud that matches your username"), so we changed the message to something more informative.
  • [AO3-4573] - Due to problems with spam last year, we turned off the ability for existing users to request invitations. It's unfortunately been off for almost a year, so the error message saying, "Sorry, new invitations are temporarily unavailable" felt a little misleading. We adjusted the wording and updated the links in the message as well.
  • [AO3-4554] - We updated some transformativeworks.org links in our Terms of Service and Terms of Service FAQ to point to the pages' new URLs.
  • [AO3-4514] - If a creator posted their work using the "Post Draft" button on their drafts page, the posted work would display a chapter count of 0/1. Now the work will show the correct chapter count.
  • [AO3-4567] - When we updated our version of Ruby, it pointed out two code errors that our previous version did not. We fixed those errors.
  • [AO3-4614] - In some browsers on some Android devices, users were seeing work summaries and a whole bunch of other text in a very light grey, which made it hard to read. It turned out that some recent Android updates were revealing a four-year-old mistake in the Archive's CSS. We corrected that mistake, and now the text should be legible once again.

Gems

  • [AO3-4566] - There were a few gems we needed to update before we could upgrade our version of Ruby, so we updated them.
  • [AO3-4430] - In our quest to update all of our gems, we found a gem we weren't using. We've removed it so we don't waste any time maintaining it from now on.
  • [AO3-4574] - We updated the gems for a number of things in one go: reordering things like chapters, encrypting passwords, parsing skins' CSS, entering dates for challenges, uploading user icons, and a few more behind-the-scenes things.
  • [AO3-4446] - We've polished up the gem for the unicorns that run the Archive. (That is, we updated the gem for our web server.)

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-06-15 23:10:56 -0400
Tags:

Over the last eleven releases, we've tackled nearly forty issues ranging from performance improvements to infrastructure upgrades to new features -- not to mention more than a few minor bug fixes and enhancements.

Credits

  • Coders: Ariana, Cesy, james, jkingsman, Lin, Naomi, Sarken, Scott
  • Code reviewers: Ariana, Cesy, Enigel, james, Naomi, Sarken, Scott
  • Testers: CJ Record, Lady Oscar, Sammie, Sarken

Details

Features

  • [AO3-4536] - Guests would sometimes enter the wrong email address when leaving comments, and the rightful owner of that email address would ask us to make sure no one was able to use their email address on the Archive again. Now our site administrators can actually do that.
  • [AO3-2665] - We've implemented the changes announced in our post, "Maintainers Can Invite Works to Collections!" Surprisingly, these changes allow collection maintainers to invite works to their collections.

The Support Form

  • [AO3-4532] - Our Support team switched ticket tracking services, so we updated the form to work with the new service. This change includes removing the "Category" field, which wasn't particularly useful, and adding new fields for "Your name" and "Language," which will make it easier for Support to know how to address users and in what language to respond.
  • [AO3-2909] - There was some HTML showing in the subject line of all the emails our Support form sends to the Support team. This was ugly and made things harder to read, so we fixed it.
  • [AO3-4534] - The OTW website recently got a major overhaul (check it out -- the Webs team did great work!) that included moving AO3's back-up Support form. That meant the link on our main Support form no longer pointed to the right place, so we updated the link.
  • [AO3-4557] - We rewrote some of the text on our Support page to be a little less wordy.
  • [AO3-4569] - When we made changes to the Support form, Abuse reports stopped getting submitted to Abuse's ticket tracker. We fixed that ASAP, so the Abuse chair would no longer need to enter all the reports into the tracker manually.
  • [AO3-4570] - The new language field on the Support form was defaulting to Bahasa Indonesia, which is a lovely language, but not the one we meant to use. It now defaults to the site's default language, which is currently English.
  • [AO3-4568] - We removed some instructions from the Support form that were no longer necessary given the addition of a language option.

News Posts

  • [AO3-4535] - Translations used to be listed at the top of news posts with each language and news post title on a separate line. This was fine when we only had a few translations for each news post, but our awesome Translation team is huge now, and we sometimes have ten, fifteen, or even twenty translations for a post! We've switched to a comma-separated list of languages instead, which will take up much less room. We also moved the tags from the bottom of news posts to the top.
  • [AO3-4538] - Our news posts occasionally contained wide images that made the page scroll horizontally or display awkwardly on narrow screens. Now these images will shrink on small screens but continue to display at their actual size on large screens.
  • [AO3-4123] - To make sure news post translations were listed in alphabetical order by language, our Translation team used to have to post the translations in alphabetical order. We've helped them out a bit by automatically alphabetizing the list according to the languages' standard two-letter abbreviation.
  • [AO3-4522] - On the homepage, we have "Read more..." links for each news post. Having multiple links with the same text can be confusing for people who use a screenreader, so we clarified the text that screenreaders use.

Caching and Performance

  • [AO3-4512] - To improve performance, we've started caching the list of tags associated with each work.
  • [AO3-4510] - Some overenthusiastic caching meant the icon on a user's old comments wouldn't update when the user changed their icon. We've tempered the cache's enthusiasm somewhat and now the icons will eventually update.
  • [AO3-4230] - When a tag wrangler changed the capitalization, diacritics, or suffix of a tag, the tag on the work blurbs didn't always update. We've fixed the caching issue that caused this.
  • [AO3-4495] - We've started caching the number of bookmarks a work has to give the site a little performance boost.
  • [AO3-4401] - We were adding a lot of works to users' history pages at one time, and it was pushing the limits of our database. Now we add fewer works at a time to make the database happier.
  • [AO3-4581] - We've started caching the total number of unwrangled fandom, character, relationship, freeform, and unsorted tags on the Archive in order to improve the performance of various tag wrangling pages.

Upgrades

  • [AO3-4365] - We have joined the modern era and switched our doctype from XHTML to HTML5.
  • [AO3-4542] - Two of our gem updates from a previous release began causing an issue that prevented works and bookmark listings from updating, so we removed those changes for the time being.
  • [AO3-4543] - We upgraded the gem we use to communicate with internal services like Elasticsearch, which powers our searching and filtering code.
  • [AO3-4555] - We updated the software that allows our Translation team to work on the Archive.
  • [AO3-4427] - We upgraded the gem that controls our database.
  • [AO3-4563] - We upgraded our version of Ruby to 2.1.9.

Deploys and Automated Tests

  • [AO3-4545] - Whenever we deployed new code for testing, our test site would run around naked until a database administrator wrangled it back into its skin. We've corrected this behavior and our testing process now involves 100% less nudity.
  • [AO3-4527] - The continuous integration service that runs our automated tests was set up to send emails to our main coding discussion list. It was a lot of emails, so we switched it over to a secondary mailing list where it won't drown out our discussions.
  • [AO3-4450] - We added more automated tests for pseuds.
  • [AO3-4386] - We added automated tests for part of our tag set code.
  • [AO3-4528] - We had a brief scare in which we thought we found a code bug with the bylines of works imported by Open Doors archivists, but it turned out to be a caching issue. Still, we added automated tests to make sure we don't end up with a code bug there in the future.

Miscellaneous Bug Fixes

  • [AO3-4491] - When we deployed responsive layout changes earlier this year, the layout was somewhat lacking in margins. We hurriedly threw some tiny margins in to make up for the oversight, and now we've made them a little bigger and more consistent throughout the site.
  • [AO3-4525] - There was a little "-" loitering in the upper left of work pages. We didn't want it there, so we sent it on its way.
  • [AO3-4580] - Inviting a work to an anonymous or unrevealed collection would immediately make the work anonymous or unrevealed, hiding either the creator's name or the entire work from other users. Now the work won't be made anonymous or unrevealed unless the creator accepts the collection invitation.
  • [AO3-4500] - Sometimes works imported by Open Doors would be missing the creator's name, and this would break any RSS feeds that included the work. We've fixed the problem with the feeds, although we still need to track down why the creator name is sometimes missing.
  • [AO3-4523] - Fandom lists on users' dashboard pages were always showing both the "Expand Fandoms List" and "Collapse Fandoms List" links. We've fixed it so it only shows the relevant option.
  • [AO3-4561] - Our DMCA Policy page had links pointing to chillingeffects.org. The links now point to the pages' new locations on lumendatabase.org.
  • [AO3-4587] - When a work you've bookmarked is deleted by its creator, it leaves behind your bookmark notes and a little message saying the work has been deleted. Trying to edit or delete this sad shell of a bookmark resulted in a 404 error, but we've fixed that now.

Edited 23:41 UTC June 16, 2016: We also fixed AO3-4591, wherein a user could not delete their AO3 account if they had a bookmark of a work that had been deleted.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-03-24 17:02:11 -0400
Tags:

Our spree of behind-the-scenes improvements continues with a whole host of gem- and test-related updates. We also have some exciting user-facing changes, too, like a major overhaul of our Skin Wizard and the ability for gift exchange moderators to search sign-ups.

Credits

  • Coders: Ariana, Cesy, de3sw2aq1, Elz, James, Sarken
  • Code reviewers: Ariana, Cesy, Elz, Enigel, James, Naomi, Scott, Sarken
  • Testers: Alison Watson, CJ Record, Lady Oscar

Details

Terms of Service Update

User Interface

  • [AO3-4408] - On Android Chrome, the list of pseuds on a user's Manage My Pseuds page overlapped the New Psued link, which made it impossible to follow. We've fixed it so Android Chrome users can once again use the link.
  • [AO3-4492] - The navigation options on users' Gifts pages were hidden behind the blurbs on some small screens. The Accepted and Refused Gifts options should now be visible regardless of screen size.
  • [AO3-4490] - It was previously possible to create a skin without a title. The title field is now required (and marked as such).
  • [AO3-4504] - To reduce the number of accidental clicks, we removed the Delete Work link from the top of creators' own works, and now only show it on the works' edit pages.
  • [AO3-4332] - On narrow screens, the filters were missing from the Unassigned Fandoms page our Tag Wrangling team uses. Now the filters are available in all screen sizes.

Caching and Performance

  • [AO3-4472] - Counting the total users, works, and fandoms on the Archive every time someone accessed the front page was a considerable performance hit to our database. We've started rounding and caching these numbers so it will put less strain on our servers.
  • [AO3-4496] - To improve performance, we've begun caching the number of chapters each work has, and only expiring the cache when a chapter is added or removed.
  • [AO3-4471] - Every time someone accessed a page on the Archive, we asked the database if there should be an announcement banner displaying on that page. Now we cache that information instead of pestering the database every time.
  • [AO3-4406] - We were making a lot of small database queries on the main page for each collection. Now we make one big one, which is better for performance.
  • [AO3-4497] - Every time someone viewed a work, we asked the database to find us the list of tags used on the work. Now we cache that list instead of asking the database every single time.

Miscellaneous

  • [AO3-4483] - The Open Doors mass importing tool would error when Open Doors archivists tried to import works in .txt format. We've fixed the encoding issue that caused this.
  • [AO3-4439] - We've done some work so the Translation team will be able to translate the confirmation email that users receive after submitting an Abuse report.
  • [AO3-4356] - Whenever Support and Translation needed to update the list of supported languages on the Support form, they had to ask the coders to update the list. Now Support and Translation can change the list themselves through the admin interface.
  • [AO3-4476] - We corrected a problem our Translation team encountered when testing out the process of translating kudos emails.
  • [AO3-4499] - Works imported by archivists which have a date other than today are now backdated so the work's Published and Completed dates are set to the creation and completion dates detected on the external work.
  • [AO3-2864] - Gift exchange moderators can now search the sign-ups for their challenge by pseud instead of having to manually find them in the alphabetic list, which can be very long for a large challenge.
  • [AO3-4501] - We've made it possible for creators and Open Doors archivists to add notes to works they are importing. We also moved the import form's option for overriding tags (and now notes!) to make it easier to find.
  • [AO3-4473] - The Skin Wizard, which allows users to easily customize the colors and fonts on the Archive, wasn't quite as magical as it could've been, so we made it work better and gave the form itself a facelift. We also made sure anyone who already created a skin with the old version of the wizard would be able to keep that skin.

Automated Tests

  • [AO3-4485] - There were duplicate automated tests for some of our admin features. We've gotten rid of the duplicates.
  • [AO3-4475] - There were some to-do items in our automated tests for comments, and we have now done them.
  • [AO3-4486] - One of our automated tests for importing works was a work in progress. Now it's complete.
  • [AO3-4484] - We improved the test for orphaning imported works.

Gem and Security Updates

  • [AO3-4445] - We upgraded the gem we use to display a nifty little ribbon that lets us know when we're on our staging and development environments instead of the real Archive.
  • [AO3-4457] - We upgraded a whole pile of gems.
  • [AO3-4459] - We updated the gem we use for parsing text when someone imports a work.
  • [AO3-4449] - We updated the gem that creates the pagination links throughout the site.
  • [AO3-4431] - We updated a gem that provides a service for our caching system.
  • [AO3-4444] - We updated a gem that some other gems use, even though we don't use it directly.
  • [AO3-4506] - We upgraded to Rails 3.2.22.2 to ensure we have the latest security fixes.
  • [AO3-4507] - It was previously possible to use our collection form to submit malicious code. It is no longer possible.
  • [AO3-4508] - It was previously possible to leave kudos with a non-existent pseud, causing an error that would make the work inaccessible. That is no longer possible.
  • [AO3-4425] - We updated the gem we use for managing the order of things like chapters in works and works in series.
  • [AO3-4426] - We updated the gem used for importing works from other sites.
  • [AO3-4509] - We added a test that will let us know when we need to update a gem due to security issues.
  • [AO3-4513] - We updated a number of gems that we only use in our development and staging environments.
  • [AO3-4447] - We updated the gems that handle delayed tasks like updating a user's history.
  • [AO3-4460] - We updated the gems that are used to connect to our Elasticsearch cluster.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-02-13 18:52:01 -0500
Tags:

We've deployed about forty (forty!) code changes over sixteen releases, primarily focused on invisible, back-end changes that will help with performance and stability. However, we found time to sneak in a small handful of user-facing changes, too!

Credits

  • Coders: Cesy, Elz, james, Sarken, Scott
  • Code reviewers: Ariana, Cesy, Elz, Enigel, james, Sarken
  • Testers: Cesy, Enigel, Lady Oscar, Katie, mugenmine, mumble, Priscilla, Sarken, Scott

Details

Automated Tests

  • [AO3-3922] - We have an ongoing bug where removing yourself as co-author doesn't remove the work from your Works page. Unfortunately, the bug lives on, but now we have automated tests to remind us about it!
  • [AO3-4421] - The automated tests for prompt memes were very, very long -- so long that just their length sometimes caused them to fail! We've split the tests up so we'll have fewer phony failures.
  • [AO3-4423] - Now we have automated tests to remind us about bug AO3-3468 wherein search results aren't fully updated after a user changes their username.
  • [AO3-4455] - Our work deletion tests had some to-do items, so we did them.
  • [AO3-4464] - We also did the to-do items in the automated tests for admin features.
  • [AO3-4456] - Ditto the to-dos in our tests for work importing.
  • [AO3-4469] - And a to-do test item for bookmarking restricted works.
  • [AO3-4467] - To-dos in our bookmark privacy tests? Done!
  • [AO3-4468] - We checked some to-dos off our list for our news post tests, too.
  • [AO3-4422] - We added some tests for our Diversity Statement, Donate or Volunteer, and DMCA pages, as well as some tests for a page the Open Doors committee uses.
  • [AO3-4454] - We rearranged the automated tests for gift exchange challenges so they would be easier to understand.
  • [AO3-4441] - We improved the automated tests for Open Doors features.
  • [AO3-4487] - We finished a WIP! That is, we put the finishing touches on one of our automated tests for comments.
  • [AO3-4476] - The test for importing works from DeviantArt was incomplete and wasn't being run with the rest of our importing tests. Now it's done and running.
  • [AO3-4479] - Unfortunately, the service we use to run our tests occasionally shuts down, which makes it look like our tests are failing. Now our tests will automatically rerun after failing just in case the failure was caused by a shutdown.

Perfomance

  • [AO3-4393] - We have reduced the number of calls that works listings make to our database by asking for all of the things in one go instead of as lots of little questions.
  • [AO3-4405] - We were making a lot of trips to the database to get the information presented on tag pages like Alternate Universe. We've optimized our code so we get everything we need in one trip.
  • [AO3-4404] - The Recent Bookmarks page also made a lot of trips to the database, so we've optimized that code, too!
  • [AO3-4396] - User profiles were making unnecessary calls to the database to get the list of that user's pseuds. We've reduced the database's burden here as well.
  • [AO3-4378] - We added caching for the list of site skins in the footer as well as the skins themselves.

Gem updates

  • [AO3-4399] - Quite a few of our Ruby gems needed minor updates, so we updated them all in one go.
  • [AO3-4399] - We updated the gem for our server-monitoring tool.
  • [AO3-4428] - We updated the gem we use to color the output our database admins see.
  • [AO3-4432] - We updated the gem we use for displaying image banners on collection pages.
  • [AO3-4442] - We updated a gem we use to make writing automated tests a little easier.
  • [AO3-4400] - We upgraded Rails just a tiny bit.
  • [AO3-4491] - ...and then we upgraded Rails just a tiny bit more to get the latest security fixes for our version.
  • [AO3-4437] - We updated the gem that helps us with adding, changing, and removing user icons.
  • [AO3-4433] and [AO3-4465] - We had previously installed a gem to update various jQuery-related things, but it no longer worked with our set up. We removed the gem and updated one of those jQuery things through old-fashioned copy and paste instead.

Front-end

  • [AO3-4291] - We deployed the previously-announced layout changes aimed at making the site more usable for those browsing the Archive in smaller windows.
  • [AO3-4453] - We lost our margins when we deployed the layout changes for small screens, so we put some back in.
  • [AO3-4350] - On small screens, some of the homepage items were the slightest bit off-center. We've centered them now.
  • [AO3-4411] - The icons iOS, Android, and OS X use for shortcuts to the Archive were in the old, glossy style. We switched to the new flat design the operating systems are using now.
  • [AO3-4463] - There were some old, admin-only site statistic pages we never used. We've removed them.
  • [AO3-4478] - Tag wranglers see a special wrangling dashboard on some pages, but on small screens, some of the options on the dashboard were displaying incorrectly and taking up too much space. We've fixed that.
  • [AO3-4477] - If you were replying to a comment while on the logged-in homepage and dragged the reply form down toward the footer, the form would start to disappear behind the footer. Now it will remain visible in front of the footer.

Misc.

  • [AO3-4410] - When we used our Vagrant development environment, one pesky file kept trying to sneak into our source. We've put an end to that.
  • [AO3-4413] - We recently added a tool that would tell us when we were making too many trips to the database. The way it told us, though, was by overlaying a big grey block on the screen, which was very distracting and inconvenient. We've switched its settings to something less obtrusive.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2016-01-02 04:54:14 -0500
Tags:

The first release notes of 2016 collect all the little improvements and fixes we added to the Archive in December of 2015. This includes a much needed upgrade of our Rich Text Editor, several invisible performance improvements, and the ability to refuse gifts.

2015 was a busy year full of fixes and features, and we'd like to thank all of our coders and testers, but especially first-time coders Nerine and l1n and first-time testers madelyn, torigates, truffulafruits, Claire B, Debris, Nerine, and Phoenixacid!

Credits

  • Coders: Ariana, Cesy, Elz, james_, l1n, Naomi, Sarken, Scott
  • Code reviewers: Ariana, Cesy, Elz, Enigel, james_, Naomi, Scott
  • Testers: james_, Lady Oscar, Matty, Michelle D, mugenmine, mumble, Sarken

Details

Works & Comments

  • [AO3-3145] - We've added the ability to refuse gift works. All work blurbs on your Gifts page now feature a "Refuse Gift" button; refused gifts will be collected on their own "Refused Gifts" page (visible only to you) in case you ever want to revisit your decision. When you refuse a gift work, the automated "For [user]" line in the work's Notes section will vanish. The thwarted gift giver will NOT be notified.
  • [AO3-4330] - When a spammer posted a lot of spam works to the Archive, the Abuse team used to have to delete each work individually after banning the spammer. Now they can delete all the works at once during the banning process.
  • [AO3-4383] - Mass imports of external archives would run into issues with some older code that parses incoming work content. This was solved by explicitly prioritizing content sent through the API used by Open Doors.
  • [AO3-4050] - We were running a very old version of our Rich Text Editor of choice, TinyMCE, and have finally joined the rest of the Internet in 2016 by upgrading to version 4.3.2. \o/ Among many other things, this takes care of the bug where single-word paragraphs would quietly get eaten. It also preserves simple formatting (such as bold and italics) when copy/pasting from Google Drive.
  • [AO3-4395] - The TinyMCE update also removed the "horizontal rule" button, oops. We've put it back now.
  • [AO3-4379] - The message that displays on the comment form for moderated works had a typo and said, "Your comment will not appear until it has been by approved by the creator." The extra "by" has now gone bye-bye.

Challenges & Tags

  • [AO3-4358] - If a challenge collection was moderated, the link to the sign-up form would not be included in its dashboard sidebar despite appearing elsewhere on the page. Now challenge sidebars will include the Sign-up Form link for Gift Exchanges and the Prompt Form link for prompt memes regardless of moderation settings.
  • [AO3-4382] - If a tag set had more than 20 additional (freeform) tags, the list of those tags wouldn't appear on the tag set. We added the missing = that caused the problem, and now the tags appear!

Users & Accounts

  • [AO3-3720] - If you changed your AO3 user name and someone wanted to give you a gift, the autocomplete wouldn't suggest your new name -- only your old one. Now when you change your user name, your old name is removed from the autocomplete and your new one is added.
  • [AO3-4321] - The change password page would incorrectly state that you logged in with a temporary password in the event you requested but didn't use a temporary password. Now the message only displays when you are redirected to the change password page after logging in with a temporary password.
  • [AO3-4374] - The page that you are taken to after creating an AO3 account wrote out a URL where it could have used a link and failed to capitalize the word "Archive." We've fixed both of those issues and spruced up the page margins and spacing between paragraphs as well.

Under the Hood

  • [AO3-4380] - Some slow code meant that users with extremely large inboxes were unable to access their dashboard or their inbox. We now use a single, faster query that will make these users' dashboards and inboxes accessible again.
  • [AO3-4392] - We started work on improving database performance and added a tool that points out queries in need of optimizing
  • [AO3-4362] - The byline generated for every work -- creator(s) by pseud or "Anonymous", as appropriate -- involved way too many database requests, especially for pages listing several works. To kill our servers a little less, we are now properly caching the bylines.
  • [AO3-4269] - Several of our automated tests would sometimes fail without a clear reason, making them somewhat less useful than we'd like. We've done some work toward fixing that. (See also: AO3-4402)
  • [AO3-4403] - New developers forking our code on GitHub couldn't connect their repositories to the service we use for running our automated tests. That's all fixed now.

Known Issues

See our Known Issues page for current issues.

Comment

Post Header

Published:
2015-11-19 17:45:32 -0500
Tags:

The big news this time around is comment moderation. Many thanks to the users who helped us trial this feature, and to the Abuse team for their input! In addition, we have done some work on our automated testing infrastructure and made some corrections and improvements to our documentation.

A big round of applause and thanks to the Systems team for their hard work debugging and resolving the hardware-related downtime earlier this month!

Credits

  • Coders: Ariana, Elz, Naomi (shalott), Nerine, Sarken
  • Code reviewers: Ariana, Elz, Enigel, james, Naomi, Scott, Sarken
  • Testers: Lady Oscar, mumble, Sarken, madelyn, torigates, truffulafruits

Details

  • [AO3-3543] - Comment moderation is here! Please read the details below for updates to our previous post, Comment moderation is coming, including some additions we made after testing and user input.
  • [AO3-4364] - A handful of the tests in our automated test suite fail intermittently due to timing issues. We have disabled caching on these tests to reduce the frequency of failures.
  • [AO3-4320] - Added a link to the more detailed Tags FAQ to the tags help files.
  • [AO3-4141] - Updated the Edit Pseud form to link to the help file with the correct set of available HTML tags.
  • [AO3-4034] - In the Diversity Statement, we were "the archive" instead of "the Archive" when referring specifically to the AO3. Now we have a capital A! \o/
  • [AO3-4373] - A new database column (to track if a work has comment moderation enabled or not) temporarily broke search indexing, whoops! Fixed.

More Detail on Comment Moderation

Turning Comment Moderation On or Off

Comment moderation can be turned on and off at the per-work level. You can set it for a new work or edit an existing work to turn it on or off in the privacy settings.

Privacy options when posting or editing a work: only show to registered users, disable anonymous commenting, enable comment moderation

You can also turn it on or off for multiple works at once using the "Edit Works" tool from your dashboard or works page.

Privacy options when editing multiple works at once: anonymous commenting, comment moderation

Approving Comments

When you have comment moderation turned on, you will have to approve all the comments before they are posted publicly. You can review comments on a work by checking its "Unreviewed Comments" page:

Row of buttons at the top of a work, including the link to access all unreviewed comments on the work

Page showing all unreviewed comments on a work, to be approved, deleted, or marked as commercial spam

You will also be able to approve comments from all your works from your inbox (assuming that you have JavaScript enabled and have not turned off your inbox.)

Unreviewed comment on the user's inbox page

You will not be able to reply to a comment until it is approved.

You cannot "un-approve" a comment, but as before, you can still delete it.

Posting Comments

When you leave a comment on a work with moderated comments, there will be a note about the moderation before and after you post.

If you are a logged-in user, you will be able to edit or delete your comment after you post it, but your comment will not be linked from the work. If you want to be able to find it again, you can either bookmark your comment or turn on the preference to receive email copies of your own comments.

If you edit your comment after it is approved, it will go back into moderation (unless the edit is very small, like fixing a typo).

If you reply to someone else's comment, they will be notified of your reply when your reply is approved.

If You Need To Report a Comment

If you receive a comment that you want to report to the Abuse team, you can use the abuse report form and include a link to your list of unreviewed comments (which can be accessed by Abuse personnel), or to the work or comment in question. Since comments can be edited if they were left by a logged-in user, we recommend taking a screenshot (which you can send as an email attachment once the Abuse team responds to your report) or holding on to the comment notification you received.

Known Issues

See our Known Issues page for current issues.

Comment


Pages Navigation