Skip to content
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

Release 1.1.0a7 #289

Merged
merged 1 commit into from
Mar 5, 2022
Merged

Conversation

finswimmer
Copy link
Member

@finswimmer finswimmer commented Feb 9, 2022

Fixed

  • Fixed an issue when evaluate in/not in markers (#188).
  • Fixed an issue when parsing of caret constraint with leading zero (#201).
  • Respect format for explicit included files when finding excluded files (#228).
  • Fixed an issue where only the last location was used when multiple packages should be included (#108).
  • Ensure that package description contains no new line (#219).
  • Fixed an issue where all default dependencies were removed instead of just the selected one (#220).
  • Ensure that authors and maintainers are normalized (#276).

Added

  • Add support for most of the guaranteed hashes (#207).
  • Add support to declare multiple README files (#248).
  • Add support for git sub directories (#192).
  • Add hooks according to PEP-660 for editable installs (#182).
  • Add support for version epochs (#264).

Changed

  • Drop python3.6 support (#263).
  • Loose the strictness when parsing version constraint to support invalid use of wildcards, e.g. >=3.* (#186).
  • No longer assume a default git branch name (#192).
  • Sort package name in extras to make it reproducible (#280).

Improvements

@dimbleby
Copy link
Contributor

dimbleby commented Feb 9, 2022

A release sounds good! But there are a few MRs queued that I would be glad to see merged first, I think most or all of these should be fairly quick to complete.

Fixes:

Then there are some nice tidy-ups which I guess are largely cosmetic but they also look to me as though they should be ready to merge:

And though I don't know this one so well myself: #221 is already approved, is it waiting on anything?

@@ -1,6 +1,6 @@
[tool.poetry]
name = "poetry-core"
version = "1.1.0a6"
version = "1.1.0-alpha.7"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason why the naming pattern is changed? And why is it changed here, but not in __init__.py?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point 👍 I bumped the version via poetry version and this uses SemVer nomenclature in the pyproject.toml. I guess this was done before manually.

I've change the __init__.py file to read the version now via importlib. So we can avoid duplicate places for the version number.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've change the init.py file to read the version now via importlib. So we can avoid duplicate places for the version number.

hm, seems to be problematic, because poetry-core needs to build itself. Will revert it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, but both "versions" should at least be equal, shouldn't they?

Copy link
Member Author

@finswimmer finswimmer Mar 3, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Jaein :) Within the __init__.py file the version should follow PEP 440. When poetry installs the package it translate the semver notation from the pyproject.toml into a PEP 440 compliant form. Whether poetry should create the version in the pyproject.toml in PEP 440 by default is another story, which we should discuss at some point.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While reading the part about normalization, I thought the same: "seems to be valid, just not normalized". However, the part about compatibility with semantic versioning says "Semantic versions containing a hyphen (pre-releases - clause 10) or a plus sign (builds - clause 11) are not compatible with this PEP and are not permitted in the public version field."

Maybe, versions which are not normalized are not considered PEP440 compliant but only have to be tolerated for compatibility reasons?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or, you could avoid all this confusion by releasing plain old 1.1.0...

What is the reason for alpha releases of poetry-core? Just ship what's good now, and ship fixes / additions / changes in 1.1.1 / 1.2.0 / 2.0.0. There's no shortage of version numbers.

(Possibly a conversation for another place, but I'd encourage a poetry 1.2.0 release too... do point me at it if this is being discussed somewhere. There are lots of fixes stored up in master that are never going to get back-applied to the 1.1 branch, let's release them)

Copy link
Member Author

@finswimmer finswimmer Mar 5, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand PEP-440 in that way that -alpha.7 is compliant in that way, that parser have to accept it, but it's not allowed to write 🤷‍♂️

@dimbleby: I'm not sure at the moment if something is missing or to unstable to release a 1.1.0 of poetry-core. A poetry 1.2 is definitely not possible yet, because the plugin system is not enough stable.

So @python-poetry/core: Is there something that should be changed here now or can we go on releasing?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure at the moment if something is missing or to unstable to release a 1.1.0 of poetry-core

It's complete / stable enough to be used by poetry - as demonstrated by its master branch. I don't see users from any other projects asking for additions or fixes.

A poetry 1.2 is definitely not possible yet, because the plugin system is not enough stable.

Then my suggestion would be to cut a release, but declare that the plugin system is not yet stable.

(Unless there's some work to bring that desired stability which is nearing completion, in which case it might be worth waiting for it. But I get the impression that we are likely to be waiting for some time, and it's a shame to let the perfect be the enemy of the good.)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We discussed it whether we want to call the release 1.1.0. We decided to keep it as an alpha release until we are sure enough that there are no more big changes needed before the poetry 1.2.0 release.

@radoering
Copy link
Member

I skimmed the changes and think the most important issues are covered.

Some minor nitpicks (you may or may not want to change 😉):

@finswimmer finswimmer force-pushed the prepare-1.1.0a7 branch 3 times, most recently from 7da557f to f654c11 Compare March 3, 2022 09:35
radoering
radoering previously approved these changes Mar 4, 2022
@sonarcloud
Copy link

sonarcloud bot commented Mar 5, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

@finswimmer finswimmer merged commit 1314ad4 into python-poetry:master Mar 5, 2022
DavidVujic pushed a commit to DavidVujic/poetry-core that referenced this pull request Mar 26, 2022
bostonrwalker pushed a commit to bostonrwalker/poetry-core that referenced this pull request Aug 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants