Registrator.jl
Registrator.jl copied to clipboard
handling repo URL updates
Currently to update the URL of a package, you have to make a manual PR to the registry. This is actually pretty ok. However, it would be better to make sure that URLs are up to date. Any thoughts on the best way to do this? Pick up the repo URL of the latest registration?
We could just look up the current URL and check for changed URLs. Example for GitHub:
>>> import github
>>> g = github.Github()
>>> p = g.get_repo("christopher-dG/PkgTemplates.jl")
>>> p.html_url
'https://github.com/invenia/PkgTemplates.jl'
I bet this works for GitLab too.
We could do this once a day or whatever.
Maybe make an automatic PR when this is detected and ping the GitHub user/org? What happens when you ping an org anyway? Does that do anything useful?
Yeah automatic PR would be the way to go. I'm not even sure that a ping would be necessary, since there's no action required from them.
I wrote a little script earlier today that goes through Registry.toml and checks all the URLs and found:
- HTTP 404: not really sure what can be done here, since presumably the package can no longer be installed
- New URLs that are also registered: e.g. MCMCChain which was renamed to MCMCChains and registered as a new package
- Normal changed URLs: can be updated easily
Has this workflow changed? We have moved a registered repo (from user -> org) and the JuliaRegister now spits
Error while trying to register: Changing package repo URL not allowed, please submit a pull request with the URL change to the target registry and retry.
Adding explicitly the repo address in the project.toml file does not help.
No, you still need to update make the PR to General manually, you can't use Registrator for this (see here).
I am having the same issue and made a PR yesterday https://github.com/JuliaRegistries/General/pull/51052 , what is next now, do I wait for a manual merge? Just making sure I am not missing anything
I tried to register a new version of the PowerModelsACDC.jl package yesterday, with a url change as it has moved to my organisations repository. I used the GitHub instructions under but I got the message from the JuliaRegistrator see also:
Error while trying to register: Changing package repo URL not allowed, please submit a pull request with the URL change to the target registry and retry.
I couldn't directly find the instructions on how to submit the pull request to the target registry.
@hakanergun The URL for PowerModelsACDC.jl on the General registry is still like this. You need to change that to the URL you have here (and append a ".git"). You can submit a PR to the General Registry for that.
@nkottary , much appreciated. I hadn't realised that the Project.toml refers to the General registry and not the packages own Projetc.toml.
Not relevant anymore. Apparently I have done right.
I tried registering a new version of NextGP.jl. Here is what i did:
- forked it from Julia registries
- made the URL change (upper case to lower case)
- made a PR
So far, nothing happened. Did i do it wrong?