Skip to content

Commit 9cb1223

Browse files
authored
feat/v1.1.0 (#28)
- Added `encode-slide`. - Added `encode-patient`. - `process` remains patch-only. - Added built-in slide encoders: `titan`, `prism`, `moozy`. - Added built-in patient encoder: `moozy`. - Patch features remain in `patches/<stem>.h5` under `features/<patch_encoder>`. - Slide embeddings are written to `slide_features/<slide_encoder>` inside the per-slide H5. - Patient embeddings are written to `patient_features/<encoder>/<case_id>.h5`. - `encode-slide` reuses existing slide H5 files and computes missing required patch features when needed. - `encode-patient` reuses existing slide H5 files and computes missing required patch features when needed. - Added optional install extras: - `atlas-patch[patch-encoders]` - `atlas-patch[titan]` - `atlas-patch[prism]` - `atlas-patch[moozy]` - `atlas-patch[slide-encoders]` - `atlas-patch[patient-encoders]`
1 parent 87c02f0 commit 9cb1223

44 files changed

Lines changed: 3748 additions & 545 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/publish.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: publish
2+
3+
on:
4+
release:
5+
types: [published]
6+
7+
jobs:
8+
build:
9+
runs-on: ubuntu-latest
10+
permissions:
11+
contents: read
12+
steps:
13+
- uses: actions/checkout@v4
14+
- uses: actions/setup-python@v5
15+
with:
16+
python-version: "3.12"
17+
- name: Install build tooling
18+
run: python -m pip install --upgrade build twine
19+
- name: Build distributions
20+
run: python -m build
21+
- name: Validate distributions
22+
run: python -m twine check dist/*
23+
- name: Upload distributions
24+
uses: actions/upload-artifact@v4
25+
with:
26+
name: python-dist
27+
path: dist/*
28+
29+
publish:
30+
needs: build
31+
runs-on: ubuntu-latest
32+
environment: pypi
33+
permissions:
34+
id-token: write
35+
steps:
36+
- name: Download distributions
37+
uses: actions/download-artifact@v4
38+
with:
39+
name: python-dist
40+
path: dist
41+
- name: Publish to PyPI
42+
uses: pypa/gh-action-pypi-publish@release/v1
43+
with:
44+
packages-dir: dist

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@ All notable changes to AtlasPatch will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [1.1.0] - Unreleased
9+
10+
### Added
11+
12+
#### Slide and Patient Encoding
13+
- `encode-slide` command for slide embeddings appended into `slide_features/<encoder>` inside the canonical per-slide H5
14+
- `encode-patient` command for manifest-driven patient embeddings written under `patient_features/<encoder>/<case_id>.h5`
15+
- Slide encoder registry and built-in slide encoders: `titan`, `prism`, `moozy`
16+
- Patient encoder registry and built-in patient encoder: `moozy`
17+
18+
#### Packaging and Release
19+
- Optional extras for slide and patient encoder stacks: `titan`, `prism`, `moozy`, `slide-encoders`, and `patient-encoders`
20+
- GitHub Release to PyPI trusted publishing workflow in `publish.yml`
21+
22+
823
## [1.0.0] - 2025-02-03
924

1025
### Added

0 commit comments

Comments
 (0)