Skip to content

Commit 5b33271

Browse files
committed
Post: deprecate old VCS support
Blog post to communicate our users about the deprecation of old VCS support: - clear date on final removal - clear brownout dates - possible workarounds Related readthedocs/readthedocs.org#8840
1 parent bf31e93 commit 5b33271

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
title: Drop support for Subversion, Mercurial and Bazaar
2+
date: 2024-02-19
3+
category: Changelog
4+
tags: builders, deprecation
5+
authors: Manuel Kaufmann
6+
status: published
7+
8+
9+
We are announcing the dropping of support for Bazaar, Mercurial and Subversion version system controls starting on **Monday, June 3rd, 2024**.
10+
This means we will only support Git to do the initial clone and build your project's documentation.
11+
12+
We've made this hard decision because [99% of our users](https://github.com/readthedocs/readthedocs.org/issues/8840) use Git
13+
and we can't cover the maintenance cost we were spending on Bazaar, Mercurial and Subversion for a handful amount of projects.
14+
Besides, those VCSs are not feature-complete in our platform compared to Git and the service provided is degraded for them.
15+
16+
## Deprecation timeline
17+
18+
We understand this change will affect some of our users, so we have a timeline to communicate this deprecation to our users effectively.
19+
20+
* Monday, April 1, 2024: Do the first brownout (temporarily enforce this deprecation) for 12 hours: 00:01 PST to 11:59 PST (noon)
21+
* Monday, May 6, 2024: Do a second brownout (temporarily enforce this deprecation) for 24 hours: 00:01 PST to 23:59 PST (midnight)
22+
* Monday, May 20, 2024: Do a third and final brownout (temporarily enforce this deprecation) for 48 hours: 00:01 PST to May 21, 2024 23:59 PST (midnight)
23+
* Monday, June 3, 2024: Fully remove support for building documentation using “build.image” on the configuration file
24+
25+
26+
## Possible workarounds
27+
28+
Unfortunately, there is no direct workaround on the Read the Docs side that you can follow to keep building your documentation using these VCSs.
29+
However, we consider one of the following options can be worth to consider:
30+
31+
32+
### Convert your repository to Git
33+
34+
You could convert your Subversion or Mercurial repository to Git and then import the Git repository into Read the Docs to continue building your docs.
35+
GitHub has some guides to help you in this process:
36+
37+
* [Import your Subversion repository](https://docs.github.com/en/migrations/importing-source-code/using-the-command-line-to-import-source-code/importing-a-subversion-repository)
38+
* [Import your Mercurial repository](https://docs.github.com/en/migrations/importing-source-code/using-the-command-line-to-import-source-code/importing-a-mercurial-repository)
39+
40+
41+
### Create a simple Git repository only clone the original one
42+
43+
If you want to keep using Bazaar, Mercurial or Subversion on your side,
44+
you can create a simple Git repository on any service only with a simple `.readthedocs.yaml` file
45+
that clones your original repository to build the docs.
46+
47+
Here you have a small example using Mercurial to clone the original repository.
48+
*Make sure to adapt this example to your needs*
49+
50+
```yaml
51+
version: 2
52+
53+
build:
54+
os: ubuntu-22.04
55+
tools:
56+
python: "3.12"
57+
commands:
58+
- hg clone https://original.mercurial.vcs/respository/
59+
- pip install -r repository/docs/requirements.txt
60+
- mkdir $READTHEDOCS_OUTPUT/html
61+
- sphinx-build -b html repository/docs $READTHEDOCS_OUTPUT/html
62+
```
63+
64+
This could be a good starting point, but note that you will also need to configure the incoming webhooks manually on the original repository,
65+
if you want to trigger a build each time a push is done to the original repository.
66+
[Follow this guide](https://docs.readthedocs.io/en/stable/guides/setup/git-repo-manual.html) to achieve this.
67+
68+
69+
## Contact us
70+
71+
[Contact us](https://readthedocs.org/support/) if you have any questions,
72+
and let us know if you are having trouble using a this new config key for any reason.

0 commit comments

Comments
 (0)