-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hosting: allow user to modify branch/tag to url mapping (alias) #9684
Comments
@davidfischer @ericholscher This is the URL feature I was talking about yesterday. |
Just to talk a little bit about how this works:
So if you create a tag with the same name as a branch, there's definitely going to be a collision. If you deleted the branch first on the repo and removed it from being built by RTD and then added the tag, I suspect that there would be no collision and no problem. There's a couple options here:
|
I'd like to clean up old branches in Flask, etc. soon. Is it ok if I ping you for now? |
@davidfischer you can ping us here, or write to [email protected]. We can help you with this. |
I think you mean @davidism. |
@davidfischer he, yeah. The auto-complete tricked me 😅 . Thanks for pinging the right person 😄 |
After a bit of experimenting, I've determined that deleting the branch isn't fully handled by the webhook, I need to also trigger a build to get Read the Docs to update the list of available branches. If I don't do that, even if the I also need to ensure these old branches/tags have appropriate locked requirements and So the workflow is basically, create tags locally, delete branches remotely, trigger and finish a build on RtD, push tags, re-enable docs versions. This could probably be improved, but I at least have a way to perform the transition myself without intervention from the RtD team. |
It also appears that force pushing a tag causes a race condition where the build is triggered before the ref the tag points to is updated in RtD, so it builds against the old ref the tag pointed to. This build was triggered after I force pushed the 2.x tag https://readthedocs.org/projects/flask-sqlalchemy/builds/21888357/ and still points to the old ref which fails to build. When I then triggered a build manually for 2.x, it used the correct ref https://readthedocs.org/projects/flask-sqlalchemy/builds/21888584/ and built successfully. |
Hi, we now allow changing the slug of versions. Some notes:
This feature is under a feature flag, if you want to try it out let me know the projects you want to test this on. Also, looks like the problem here is that you needed to delete the old branch first and deactivate the RTD version, for RTD to create the tag with the same slug. |
When I make a new feature release, I create a branch like
2.2.x
for that release. When I stop supporting a feature branch, I want to remove that branch from the repository and replace it with a tag with the same name.I started doing this for ItsDangerous, MarkupSafe, and Jinja, then stopped when I discovered that Read the Docs creates a name like
1.0.x_b
instead of treating the tag and branch as the same slug. Here's the ItsDangerous versions page for example: https://readthedocs.org/projects/itsdangerous/versions/I would like to be able to clean up / correct this mapping. When I delete the branch and create a tag with the same name (or create the tag first then delete the branch), I want to end up with the same URL.
The text was updated successfully, but these errors were encountered: