skrawcz opened a new pull request, #1488:
URL: https://github.com/apache/hamilton/pull/1488
## Unify Hamilton packages on flit and Apache naming
This PR modernizes Hamilton's build system and package naming in preparation
for Apache incubation releases.
### Changes
#### 1. Convert all packages to flit build system
Converted all 5 Hamilton packages from mixed build systems (setuptools,
setup.py) to standardized flit:
- **apache-hamilton** (main package) - Enhanced pyproject.toml with proper
license files and sdist config
- **apache-hamilton-sdk** (was sf-hamilton-sdk) - Converted from setuptools
to flit, inlined dependencies
- **apache-hamilton-lsp** (was sf-hamilton-lsp) - Converted from setuptools
to flit
- **apache-hamilton-contrib** (was sf-hamilton-contrib) - Created new
pyproject.toml with flit
- **apache-hamilton-ui** (was sf-hamilton-ui) - Created new pyproject.toml
with flit
#### 2. Standardize on apache-hamilton prefix
Renamed packages to use `apache-hamilton-*` prefix for Apache incubation
compliance:
- `sf-hamilton-sdk` → `apache-hamilton-sdk`
- `sf-hamilton-lsp` → `apache-hamilton-lsp`
- `sf-hamilton-contrib` → `apache-hamilton-contrib`
- `sf-hamilton-ui` → `apache-hamilton-ui`
Updated all inter-package dependencies to use new names.
#### 3. Update release helper for per-package builds
Enhanced `scripts/apache_release_helper.py` to support releasing individual
packages:
- Added `--package` CLI argument to select which package to build
- Added `PACKAGE_CONFIGS` with settings for all 5 packages (working dir,
version file, patterns)
- Updated functions to work with package-specific directories and names
- Modified SVN paths to include package name:
`dev/incubator/hamilton/{package-name}/{version}-RC{num}`
- Updated git tags to include package name:
`{package-name}-v{version}-incubating-RC{num}`
- Added `-src` suffix to source tarballs to distinguish from wheels
**Usage examples:**
```bash
python scripts/apache_release_helper.py --package hamilton 1.89.0 0
your_apache_id
python scripts/apache_release_helper.py --package sdk 0.8.0 0 your_apache_id
## How I tested this
## Notes
## Checklist
- [ ] PR has an informative and human-readable title (this will be pulled
into the release notes)
- [ ] Changes are limited to a single goal (no scope creep)
- [ ] Code passed the pre-commit check & code is left cleaner/nicer than
when first encountered.
- [ ] Any _change_ in functionality is tested
- [ ] New functions are documented (with a description, list of inputs, and
expected output)
- [ ] Placeholder code is flagged / future TODOs are captured in comments
- [ ] Project documentation has been updated if adding/changing
functionality.
--
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]