-
Couldn't load subscription status.
- Fork 0
Add Python package structure with JWST data analysis dependencies #1
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
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: kelle <[email protected]>
|
@copilot Remove the setup.py |
|
@copilot Why do we need a requirements file when they are already listed in the pyproject.toml? |
|
@copilot Make the minimum requirement Python 3.12 |
|
Co-authored-by: kelle <[email protected]>
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.
change author list to include @canavarrete01 and @kelle rather than BDNYC.
|
@copilot change author list to include @canavarrete01 and @kelle rather than BDNYC. |
Co-authored-by: kelle <[email protected]>
Done. Updated authors list to include canavarrete01 and kelle in commit 8c855bd. |
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.
- remove author from the init.py
- set up dynamic versioning
Co-authored-by: kelle <[email protected]>
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.
This looks like a great start to me! I'm curious what @canavarrete01 thinks.
This PR establishes the foundational Python package structure for JWST-Tools, enabling it to analyze JWST data products with all required dependencies.
Changes Made
Package Structure
Created a modern Python package using PEP 621 standards with the following structure:
jwst_tools/- Main package directoryjwst_tools/__init__.py- Package initialization with dynamic version detection and dependency verificationpyproject.toml- Modern package configuration with metadata, dependencies, and dynamic versioningMANIFEST.in- Distribution manifest for documentation filesDependencies
The package declares all required dependencies for JWST data analysis:
Package Metadata
jwst-toolsDynamic Versioning
The package uses setuptools-scm for automatic version management based on git tags. The version is dynamically determined at build time and can be accessed via
jwst_tools.__version__at runtime usingimportlib.metadata.Installation
Users can now install the package using:
All dependencies are declared in
pyproject.tomland will be automatically installed during package installation.Security
✅ All dependencies checked for known vulnerabilities - none found
✅ CodeQL security analysis passed with 0 alerts
This establishes the foundation for building tools to reduce and analyze JWST data products as described in the repository README.
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.