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

chore: make sure there are project.dependencies in pyproject #90

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

mslw
Copy link
Contributor

@mslw mslw commented Mar 6, 2025

I started looking more closely into pyproject.toml to see what still needs to be done before release. Consider this WIP but also feel free to cherry-pick. I don't know myself how far should this PR take us. See commits for details.

Some loose ends:

  • Maintainers is commented out - set or remove? (e.g. datalad-next only has authors)
  • Project URLs will change if we are targeting datalad-hub for long-term maintainance
  • Get rid of requirements.devel - either add as project.optional-dependencies or decide that hatch run is enough for all devel tasks
  • Set exclude for build? Currently, the sdist includes e.g. .appveyor.yml and .github - which does not matter much, but is a couple of bytes nevertheless.
  • It seems that all the tool.hatch.envs use extra-dependencies instead of depoendencies, but only tool.hatch.envs.tests has a template defined, and there is no default; it seems to work and datalad-next does it in the same way, but is there a reason to only define extra-dependencies and not dependencies? I understood that extra- is mostly for inheritance.

Ping #73

Reference: https://hatch.pypa.io/1.13/config/metadata/

The tool.hatch.metadata section containing allow-direct-references
key (this option tells hatch that it is ok to build despite some
dependencies being git+https) may be scheduled for removal before
release, but the way it was introduced caused project.dependencies to
become tool.hatch.metadata.dependencies which seems unintended.

This commit moves dependencies back under project. This restores the
ability to install by pointing pip at the project directory (or, in
fact, through git+https). Previously, pip would find no project
dependencies, and produce a non-functional installation of just the
remake package.
@codecov-commenter
Copy link

codecov-commenter commented Mar 6, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.93%. Comparing base (78a827d) to head (6bd03ff).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #90      +/-   ##
==========================================
+ Coverage   82.38%   90.93%   +8.54%     
==========================================
  Files          29       29              
  Lines        1158     1158              
  Branches      105      105              
==========================================
+ Hits          954     1053      +99     
+ Misses        162       75      -87     
+ Partials       42       30      -12     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants