potiuk commented on code in PR #39723:
URL: https://github.com/apache/airflow/pull/39723#discussion_r1610473870
##########
hatch_build.py:
##########
@@ -846,6 +846,17 @@ def initialize(self, version: str, build_data: dict[str,
Any]) -> None:
# field in core.metadata until this is possible
self.metadata.core._optional_dependencies = self.optional_dependencies
+ # Add entrypoints dynamically for all provider packages, else they
will not be found by
Review Comment:
Also see here:
https://packaging.python.org/en/latest/specifications/pyproject-toml/#entry-points
Unlike dependencies and optional depenendencies, the entrypoints do not have
corresponding "Core Metadata" fields (and to be a bit more confusing -
pyproject.toml might specify entrypoints in various ways and they are sometimes
conflicting. Also the `pyproject.toml` entries are NOT the same as "Core
Metadata" entries (for example `dependencies/optional-dependencies` in
`pyproject.toml' are mapped to
`[Requires-Dist](https://packaging.python.org/en/latest/specifications/core-metadata/#core-metadata-requires-dist)
and
[Provides-Extra](https://packaging.python.org/en/latest/specifications/core-metadata/#core-metadata-provides-extra)
core metadata.
It's not that it's wrong - It's all there but sometimes requires going
through a series of docs and specs, so it's not intuitive and might be
confusing. I got confused that in hatchlib's internal hook, entrypoints are
stored in `core.metadata` simply - even if they are not part of it.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]