Changelog

Version 5.5.1

Date

September 28, 2020

Version 5.5.0

Date

September 22, 2020

Version 5.4.3

Date

September 15, 2020

Version 5.4.2

Date

September 09, 2020

Version 5.4.1

Date

September 01, 2020

Version 5.4.0

Date

August 25, 2020

Version 5.3.0

Date

August 18, 2020

Version 5.2.3

Date

August 04, 2020

Version 5.2.2

Date

July 29, 2020

Version 5.2.1

Date

July 14, 2020

Version 5.2.0

Date

July 07, 2020

Version 5.1.5

Date

July 01, 2020

Version 5.1.4

Date

June 23, 2020

Version 5.1.3

Date

June 16, 2020

Version 5.1.2

Date

June 09, 2020

Version 5.1.1

Date

May 26, 2020

Version 5.1.0

Date

May 19, 2020

This release includes one major new feature which is Pageview Analytics. This allows projects to see the pages in their docs that have been viewed in the past 30 days, giving them an idea of what pages to focus on when updating them.

This release also has a few small search improvements, doc updates, and other bugfixes as well.

Version 5.0.0

Date

May 12, 2020

This release includes two large changes, one that is breaking and requires a major version upgrade:

  • We have removed our deprecated doc serving code that used core/views, core/symlinks, and builds/syncers (#6535). All doc serving should now be done via proxito. In production this has been the case for over a month, we have now removed the deprecated code from the codebase.

  • We did a large documentation refactor that should make things nicer to read and highlights more of our existing features. This is the first of a series of new documentation additions we have planned

  • @ericholscher: Fix the caching of featured projects (#7054)

  • @ericholscher: Docs: Refactor and simplify our docs (#7052)

  • @stsewd: Mention using ssh URLs when using private submodules (#7046)

  • @ericholscher: Show project slug in Version admin (#7042)

  • @stsewd: List apiv3 first (#7041)

  • @stsewd: Remove CELERY_ROUTER flag (#7040)

  • @stsewd: Search: remove unused taxonomy field (#7033)

  • @agjohnson: Use a high time limit for celery build task (#7029)

  • @ericholscher: Clean up build admin to make list display match search (#7028)

  • @stsewd: Task Router: check for None (#7027)

  • @stsewd: Implement repo_exists for all VCS backends (#7025)

  • @stsewd: Mkdocs: Index pages without anchors (#7024)

  • @agjohnson: Move docker limits back to setting (#7023)

  • @humitos: Fix typo (#7022)

  • @stsewd: Fix linter (#7021)

  • @ericholscher: Release 4.1.8 (#7020)

  • @ericholscher: Cleanup unresolver logging (#7019)

  • @stsewd: Document about next when using a secret link (#7015)

  • @stsewd: Remove unused field project.version_privacy_level (#7011)

  • @ericholscher: Add proxito headers to redirect responses (#7007)

  • @stsewd: Make hidden field not null (#6996)

  • @humitos: Show a list of packages installed on environment (#6992)

  • @eric-wieser: Ensure invoked Sphinx matches importable one (#6965)

  • @ericholscher: Add an unresolver similar to our resolver (#6944)

  • @KengoTODA: Replace “PROJECT” with project object (#6878)

  • @humitos: Remove code replaced by El Proxito and stateless servers (#6535)

Version 4.1.8

Date

May 05, 2020

This release adds a few new features and bugfixes. The largest change is the addition of hidden versions, which allows docs to be built but not shown to users on the site. This will keep old links from breaking but not direct new users there.

We’ve also expanded the CDN support to make sure we’re passing headers on 3xx and 4xx responses. This will allow us to expand the timeout on our CDN.

We’ve also updated and added a good amount of documentation in this release, and we’re starting a larger refactor of our docs to help users understand the platform better.

Version 4.1.7

Date

April 28, 2020

As of this release, most documentation on Read the Docs Community is now behind Cloudflare’s CDN. It should be much faster for people further from US East. Please report any issues you experience with stale cached documentation (especially CSS/JS).

Another change in this release related to how custom domains are handled. Custom domains will now redirect HTTP -> HTTPS if the Domain’s “HTTPS” flag is set. Also, the subdomain URL (eg. <project>.readthedocs.io/...) should redirect to the custom domain if the Domain’s “canonical” flag is set. These flags are configurable in your project dashboard under Admin > Domains.

Many of the other changes related to improvements for our infrastructure to allow us to have autoscaling build and web servers. There were bug fixes for projects using versions tied to annotated git tags and custom user redirects will now send query parameters.

Version 4.1.6

Date

April 21, 2020

Version 4.1.5

Date

April 15, 2020

Version 4.1.4

Date

April 14, 2020

Version 4.1.3

Date

April 07, 2020

Version 4.1.2

Date

March 31, 2020

Version 4.1.1

Date

March 24, 2020

Version 4.1.0

Date

March 17, 2020

Version 4.0.3

Date

March 10, 2020

Version 4.0.2

Date

March 04, 2020

Version 4.0.1

Date

March 03, 2020

Version 4.0.0

Date

February 25, 2020

This release upgrades our codebase to run on Django 2.2. This is a breaking change, so we have released it as our 4th major version.

Version 3.12.0

Date

February 18, 2020

This version has two major changes:

Version 3.11.6

Date

February 04, 2020

Version 3.11.5

Date

January 29, 2020

Version 3.11.4

Date

January 28, 2020

Version 3.11.3

Date

January 21, 2020

Version 3.11.2

Date

January 08, 2020

Version 3.11.1

Date

December 18, 2019

Version 3.11.0

Date

December 03, 2019

Version 3.10.0

Date

November 19, 2019

Version 3.9.0

Date

November 12, 2019

Version 3.8.0

Date

October 09, 2019

Version 3.7.5

Date

September 26, 2019

Version 3.7.4

Date

September 05, 2019

Version 3.7.3

Date

August 27, 2019

Version 3.7.2

Date

August 08, 2019

Version 3.7.1

Date

August 07, 2019

Version 3.7.0

Date

July 23, 2019

Version 3.6.1

Date

July 17, 2019

Version 3.6.0

Date

July 16, 2019

Version 3.5.3

Date

June 19, 2019

Version 3.5.2

This is a quick hotfix to the previous version.

Date

June 11, 2019

Version 3.5.1

This version contained a security fix for an open redirect issue. The problem has been fixed and deployed on readthedocs.org. For users who depend on the Read the Docs code line for a private instance of Read the Docs, you are encouraged to update to 3.5.1 as soon as possible.

Date

June 11, 2019

Version 3.5.0

Date

May 30, 2019

Version 3.4.2

Date

April 22, 2019

Version 3.4.1

Date

April 03, 2019

Version 3.4.0

Date

March 18, 2019

Version 3.3.1

Date

February 28, 2019

Version 3.3.0

Date

February 27, 2019

Version 3.2.3

Date

February 19, 2019

Version 3.2.2

Date

February 13, 2019

Version 3.2.1

Date

February 07, 2019

Version 3.2.0

Date

February 06, 2019

Version 3.1.0

This version greatly improves our search capabilities, thanks to the Google Summer of Code. We’re hoping to have another version of search coming soon after this, but this is a large upgrade moving to the latest Elastic Search.

Date

January 24, 2019

Version 3.0.0

Read the Docs now only supports Python 3.6+. This is for people running the software on their own servers, builds continue to work across all supported Python versions.

Date

January 23, 2019

Version 2.8.5

Date

January 15, 2019

Version 2.8.4

Date

December 17, 2018

Version 2.8.3

Date

December 05, 2018

Version 2.8.2

Date

November 28, 2018

Version 2.8.1

Date

November 06, 2018

Version 2.8.0

Date

October 30, 2018

Major change is an upgrade to Django 1.11.

Version 2.7.2

Date

October 23, 2018

Version 2.7.1

Date

October 04, 2018

Version 2.7.0

Date

September 29, 2018

Reverted, do not use

Version 2.6.6

Date

September 25, 2018

Version 2.6.5

Date

August 29, 2018

Version 2.6.4

Date

August 29, 2018

Version 2.6.3

Date

August 18, 2018

Release to Azure!

Version 2.6.2

Date

August 14, 2018

Version 2.6.1

Date

July 17, 2018

Version 2.6.0

Date

July 16, 2018

Version 2.5.3

Date

July 05, 2018

Version 2.5.2

Date

June 18, 2018

Version 2.5.1

Date

June 14, 2018

Version 2.5.0

Date

June 06, 2018

Version 2.4.0

Date

May 31, 2018

Version 2.3.14

Date

May 30, 2018

Version 2.3.13

Date

May 23, 2018

Version 2.3.12

Date

May 21, 2018

Version 2.3.11

Date

May 01, 2018

Version 2.3.10

Date

April 24, 2018

Version 2.3.9

Date

April 20, 2018

Version 2.3.8

Date

April 20, 2018

  • @agjohnson: Give TaskStep class knowledge of the underlying task (#3983)

  • @humitos: Resolve domain when a project is a translation of itself (#3981)

Version 2.3.7

Date

April 19, 2018

Version 2.3.6

Date

April 05, 2018

Version 2.3.5

Date

April 05, 2018

Version 2.3.4

  • Release for static assets

Version 2.3.3

Version 2.3.2

This version adds a hotfix branch that adds model validation to the repository URL to ensure strange URL patterns can’t be used.

Version 2.3.1

Version 2.3.0

Warning

Version 2.3.0 includes a security fix for project translations. See Release 2.3.0 for more information

Version 2.2.1

Version 2.2.1 is a bug fix release for the several issues found in production during the 2.2.0 release.

Version 2.2.0

Version 2.1.6

Version 2.1.5

Version 2.1.4

Version 2.1.3

date

Dec 21, 2017

Version 2.1.2

Version 2.1.1

Release information missing

Version 2.1.0

Version 2.0

Previous releases

Starting with version 2.0, we will be incrementing the Read the Docs version based on semantic versioning principles, and will be automating the update of our changelog.

Below are some historical changes from when we have tried to add information here in the past

July 23, 2015

  • Django 1.8 Support Merged

Code Notes

  • Updated Django from 1.6.11 to 1.8.3.

  • Removed South and ported the South migrations to Django’s migration framework.

  • Updated django-celery from 3.0.23 to 3.1.26 as django-celery 3.0.x does not support Django 1.8.

  • Updated Celery from 3.0.24 to 3.1.18 because we had to update django-celery. We need to test this extensively and might need to think about using the new Celery API directly and dropping django-celery. See release notes: https://docs.celeryproject.org/en/3.1/whatsnew-3.1.html

  • Updated tastypie from 0.11.1 to current master (commit 1e1aff3dd4dcd21669e9c68bd7681253b286b856) as 0.11.x is not compatible with Django 1.8. No surprises expected but we should ask for a proper release, see release notes: https://github.com/django-tastypie/django-tastypie/blob/master/docs/release_notes/v0.12.0.rst

  • Updated django-oauth from 0.16.1 to 0.21.0. No surprises expected, see release notes in the docs and finer grained in the repo

  • Updated django-guardian from 1.2.0 to 1.3.0 to gain Django 1.8 support. No surprises expected, see release notes: https://github.com/lukaszb/django-guardian/blob/devel/CHANGES

  • Using django-formtools instead of removed django.contrib.formtools now. Based on the Django release notes, these modules are the same except of the package name.

  • Updated pytest-django from 2.6.2 to 2.8.0. No tests required, but running the testsuite :smile:

  • Updated psycopg2 from 2.4 to 2.4.6 as 2.4.5 is required by Django 1.8. No trouble expected as Django is the layer between us and psycopg2. Also it’s only a minor version upgrade. Release notes: http://initd.org/psycopg/docs/news.html#what-s-new-in-psycopg-2-4-6

  • Added django.setup() to conf.py to load django properly for doc builds.

  • Added migrations for all apps with models in the readthedocs/ directory

Deployment Notes

After you have updated the code and installed the new dependencies, you need to run these commands on the server:

python manage.py migrate contenttypes
python manage.py migrate projects 0002 --fake
python manage.py migrate --fake-initial

Locally I had trouble in a test environment that pip did not update to the specified commit of tastypie. It might be required to use pip install -U -r requirements/deploy.txt during deployment.

Development Update Notes

The readthedocs developers need to execute these commands when switching to this branch (or when this got merged into master):

  • Before updating please make sure that all migrations are applied:

    python manage.py syncdb
    python manage.py migrate
    
  • Update the codebase: git pull

  • You need to update the requirements with pip install -r requirements.txt

  • Now you need to fake the initial migrations:

    python manage.py migrate contenttypes
    python manage.py migrate projects 0002 --fake
    python manage.py migrate --fake-initial