-
Notifications
You must be signed in to change notification settings - Fork 0
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
DM-41209: Switch to pyproject.toml #5
Changes from all commits
2cd89bd
885bb64
c78b16c
c1023b4
81d9bdc
80e1a45
e21700a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
[build-system] | ||
requires = ["setuptools"] | ||
build-backend = "setuptools.build_meta" | ||
|
||
[project] | ||
name = "lsst-meas-extensions-multiprofit" | ||
authors = [ | ||
{name="Rubin Observatory Data Management", email="[email protected]"}, | ||
] | ||
description = "Tasks and pipelines for running multiprofit with the LSST Butler" | ||
readme = "README.rst" | ||
requires-python = ">=3.10" | ||
license = {file = "LICENSE"} | ||
classifiers = [ | ||
"Intended Audience :: Science/Research", | ||
"License :: OSI Approved :: GNU General Public License v3 (GPLv3)", | ||
"Operating System :: OS Independent", | ||
"Programming Language :: Python :: 3", | ||
"Programming Language :: Python :: 3.10", | ||
"Programming Language :: Python :: 3.11", | ||
"Topic :: Scientific/Engineering :: Astronomy", | ||
] | ||
keywords = [ | ||
"astronomy", | ||
"astrophysics", | ||
"fitting", | ||
"lsst", | ||
"models", | ||
"modeling", | ||
] | ||
dependencies = [ | ||
"astropy", | ||
"galsim", | ||
"gauss2d", | ||
"gauss2dfit", | ||
"lsst-multiprofit", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This implies you are putting There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Does it imply availability on PyPI? Once multiprofit is scons-built, it shows up on pip list with the same version as it would if pip-installed. On the other hand, gauss2d(fit) don't when eups-built because I skipped the pip install step, figuring it would be unnecessary. But perhaps none of this matters because presumably this package won't be pip-installable until all of the dependencies like meas_base are too... There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yes, none of this matters because meas_base is not going to be pip installable. |
||
"matplotlib", | ||
"numpy", | ||
"pydantic", | ||
"pytest", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. pytest is presumably not a run time dependency? You can add a separate optional dependencies entry in the the file and declare test dependencies in there. [project.optional-dependencies]
test = [
"pytest >= 3.2",
] There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is that v3.2 minimum from a feature we're using in the stack or a compatibility issue? More generally I couldn't figure out how to set minimum versions of anything for standalone packages like multiprofit, beyond that I made a py3.8 conda env and confirmed that it wouldn't work. Is there anything else I could/should do other than follow changes to other stack packages like resources/daf_butler? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The 3.2 was just an example. It's likely wildly out of date. The point is to separate runtime deps from testing deps. Minimum versions are done the same way |
||
] | ||
dynamic = ["version"] | ||
|
||
[project.urls] | ||
"Homepage" = "https://github.com/lsst-dm/meas_extensions_multiprofit" | ||
|
||
[project.optional-dependencies] | ||
test = [ | ||
"pytest", | ||
] | ||
|
||
[tool.setuptools.packages.find] | ||
where = ["python"] | ||
|
||
[tool.black] | ||
line-length = 110 | ||
target-version = ["py311"] | ||
|
||
[tool.isort] | ||
profile = "black" | ||
line_length = 110 | ||
|
||
[tool.ruff] | ||
exclude = [ | ||
"__init__.py", | ||
"tests/*.py", | ||
] | ||
ignore = [ | ||
"N802", | ||
"N803", | ||
"N806", | ||
"N812", | ||
"N815", | ||
"N816", | ||
"N999", | ||
"D107", | ||
"D105", | ||
"D102", | ||
"D104", | ||
"D100", | ||
"D200", | ||
"D205", | ||
"D400", | ||
] | ||
line-length = 110 | ||
select = [ | ||
"E", # pycodestyle | ||
"F", # pycodestyle | ||
"N", # pep8-naming | ||
"W", # pycodestyle | ||
"D", # pydocstyle | ||
] | ||
target-version = "py311" | ||
|
||
[tool.ruff.pycodestyle] | ||
max-doc-length = 79 | ||
|
||
[tool.ruff.pydocstyle] | ||
convention = "numpy" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In theory there should be the GPL license classifier here.