-
Notifications
You must be signed in to change notification settings - Fork 980
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
functionality to rename a project #1919
Comments
Renaming doesn't really work in general because even if you rename the file, the contents of said file are going to still be using the old name. The only renames that really work at all are if they normalize to the same thing. |
Well, I guess we could allow you to rename as long as the normalization still matched, would that satisfy this issue? |
In our meeting today we double-checked and agreed that this new admin feature can wait till after Warehouse launch. |
(I was brought here by https://twitter.com/brainwane/status/976489373607772161) Here's my use case: https://pypi.python.org/pypi/coverage-space was originally named |
Thanks @jacebrowning and I'm sorry for the trouble! We'll take this into account as we work on Warehouse and improve documentation and user support processes.
|
Is there any way I can set up a redirect to avoid broken downloads? It would be awesome if |
the two project names share the same normalized name, so a rename would have been more tenable before project deletion. unfortunately we don’t have tooling for a rename, so that would have had to have been built. as far as what we do now, restoring deleted projects may be doable but is not a task we’ve undertaken before. filenames cannot be reused, and I believe that will remain the strict rule, so the only real recourse to a project deletion is to upload replacement |
Thanks @ewdurbin. Based on a rough search, I don't see more than 1000 projects depending on the package I "renamed" and probably less than a few percent are actively maintained. I think I can manage to support those few affected. It might be nice if going forward "normalized" names are treated as equivalent. That is to say:
|
this issue is intended to track support tooling for the purpose of renaming existing projects. indeed it's something that should be supported as long as the new project name normalizes. part of that must absolutely be enforcing ACLs against project names for maintainers, that would make renaming a project a user concern and not an admin concern, which is a big win. basic "workflow" would be to either support that by allowing a user to initiate the rename via the UI or by uploading a new release with the new name (which must normalize to either a non existent project name or a project name that they have ownership of). the unfortunate side effect would be two fold:
ultimately there remains some level of concern for the client implementations using PyPI here as well. i ultimately support the freedom for maintainers to choose their project's name as displayed, but also fail to see the full value in such a potentially disruptive operation (even if a deletion had not occurred) to avoid some quotes. |
Blocked on #4772. |
No longer blocked. |
I think this works now? If you upload a project and change the name, as long as it normalizes to the same name as before, the project will be renamed on PyPI. We don't support arbitrary renaming where you can rename foo to bar, but I don't think we ever really could? |
Yeah, since #4783 we have the ability to rename a project when a new release is made. This issue is a bit old, I think it might intend to allow admins or owners to rename a project without making a new release, but I'm not really sure that's necessary. |
@ewdurbin and @jacebrowning could you reply and let us know whether your use cases are now taken care of? |
looks like the "different name same normalization" use-case is covered by #4783 to me! |
Yes, I believe my use cases are now taken care of. |
OK, great, glad that's cleared up and sorry for misunderstanding! |
At this point, there are some admin tools in pypa/pypi-legacy i'm not comfortable using to rename projects when users request such an operation. Some examples are modifications of case or underscore/hyphen swaps which are equivalent after applying
safe_name
(myPackage
=>mypackage
, ormy-package
->my_package
)We should establish a process and enforce it via whatever mechanism we use to perform such an operation (code, admin ui, carrier pigeon).
The text was updated successfully, but these errors were encountered: