Comments (6)
The package node-semver was already renamed, see podhmo/python-node-semver#39.
It will be in 0.9.0 release, see podhmo/python-node-semver#45.
Conan will need to update their dependency to not clash with this package.
from python-semver.
This is related to node-semver, a dependecy of conan. Therefore, one will never be able to run conan and this package in the same venv. I dont want to stick my nose into stuff I don't know enough about, but there are a couple of packages named semver, like also the one named here: #381. Maybe calling this package python_semver or similar is more future-proof.
from python-semver.
Thanks @dnns92 for your report, much appreciated.
I've tried to replicate it and it looks like it's issue #259. It's a name clash.
If you list your packages you get:
$ pip list
node-semver 0.6.1
[...]
semver 2.13.0
If you look closer in your Python environment, you will see these files and directories:
$ ls -ld .env/lib/python3.10/site-packages/semver*
.env/lib/python3.10/site-packages/semver
.env/lib/python3.10/site-packages/semver-2.13.0.dist-info
.env/lib/python3.10/site-packages/semver.py
In other words, there is a file semver.py
which comes from this project. But at the same time, there is a directory semver
which comes from the node-semver
project. It seems, the latter takes precedence over the former. That's why you see this error as the node-semver
doesn't provide a VersionInfo
class.
Unfortunately, PyPI does not prevent from uploading a project which contains an already existing module/package of the same name.
I fear, this is something hard to solve (if at all). Renaming this project would break a lot of existing projects. If you know an idea to solve this, I'm open for your suggestion.
At the moment, semver
and node-semver
cannot coexist in the same Python environment. As such they cannot be used at the same time.
from python-semver.
Maybe calling this package python_semver or similar is more future-proof.
Thanks, that's what I also though about, but I think it would be a bad idea.
Renaming this project will break a lot of existing projects that depends on semver
. According to the semver's dependency list, there are over >23.500 repositories(!) that uses this project.
Whereas at the same time node-semver's dependencies lists >800 repos.
Forcing all 23.500 maintainers to use a different name would have a huge impact and wouldn't make these project maintainers very happy. Even if we file issues to notify of the rename, it's unrealistic and a huge task.
I'm not even sure, if we can demand a rename from the node-semver project (although the impact would be less than for this project).
So, not sure how to handle this... 🤷
from python-semver.
@dnns92 Thanks for all your comments.
I've looked a bit closer and it seems the other project is already aware of this problem and has issue podhmo/python-node-semver#39. Additionally they work on a new release, see podhmo/python-node-semver#45. Unfortunately, it's not yet released.
To solve this is to use the new name nodesemver
instead of semver
once they released it.
Maybe ask in the python-node-semver project when they will release the new version?
from python-semver.
In the light of a new release for python-node-semver, I think this project can't do much. There is already a solution work in progress, although not yet released.
As such, I think it doesn't make sense to have this issue open. Closing it for the time being.
Many thanks for your contribution!
from python-semver.
Related Issues (20)
- v2.0.0 HOT 1
- Improve pyproject.toml HOT 1
- Bumping alphanumeric identifiers HOT 12
- Remove support for Python 3.6? HOT 2
- Use hatchling build backend HOT 9
- Update Towncrier config in pyproject.toml HOT 1
- Consistent Title Case in Changelog Headings HOT 1
- remove HOT 1
- README.md file example need to updated gives `attributeError: module 'semver' has no attribute 'Version'` HOT 7
- Feature request: support `pyproject.toml` version strings HOT 3
- Parse PEP440 versions HOT 3
- Problem building the package HOT 4
- Module "semver" does not explicitly export attribute "Version" HOT 4
- Support version bump while perserving build metadata HOT 5
- failing tests in docs and _pytest.pathlib.ImportPathMismatchError HOT 5
- Update "5.4. Combining Pydantic and semver" documentation to Pydantic v2.0 HOT 1
- Replace method not compatible with SubClasses HOT 2
- code in "Combining Pydantic and semver" doc contains bug on serialization to json. HOT 1
- ValueError: 7.06.17705.0 is not valid SemVer string HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-semver.