Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions .github/ISSUE_TEMPLATE/software_release.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,20 @@ assignees: ''

- [ ] Pull updated copies of the develop and main branches
- [ ] Use git-flow to create a new release branch with the appropriate version (e.g., `git flow release start 0.5`)
- [ ] Update release version to appropriate number (set to final version without any `-pre` or `-dev` tags).
- [ ] Update release version to appropriate number (set to final version without any pre-release or dev tags).
- [ ] Create a PR for the release (from release branch to `main`)
- [ ] Review the changelog to make sure that all features, changes, bugfixes, etc. included in the release are documented. You may want to review the git revision history to be sure you've captured everything.
- [ ] Confirm that all checks for the PR pass (e.g., unit tests, code coverage checks)
- [ ] Review code documentation to make sure it is up to date
- [ ] Request a review for the PR
- [ ] Once approved, use git-flow to finish the release (`git flow release finish`).
*Make sure to use the `--squash-message` flag to customize the commit message for the squash merge.*\*
*Make sure to use the `--squash-message` flag to customize the commit message for the squash merge and
the `--message` flag to specify the tag message.*

## after release

- With `post-release-update` feature branch (automatically created for you by git flow)
- [ ] Increase the develop branch version so it is set to the next expected release (i.e., if you just released 0.5 then develop will probably be 0.6-dev unless you are working on a major update, in which case it will be 1.0-dev)
- [ ] Increase the develop branch version so it is set to the next expected release (i.e., if you just released 0.5 then develop will probably be 0.6.dev0 unless you are working on a major update, in which case it will be 1.0.dev0)
- [ ] Update the changelog to include a section for the next expected release version
- [ ] Create a PR and request a review once all checks are passing
- [ ] Push main branch updates to GitHub (`git push main`).
Expand Down
36 changes: 19 additions & 17 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
# Change & Version Information

## 0.8
## 0.8.0

- Restored `piffle.presentation` unit tests from v0.6.1; separated tests for `piffle.iiif_dataclasses` presentation implementation
- Adopted uv support and package src layout
- Setup additional pre-commit hooks and adopted Ruff-based formatting
- Drop Python 3.8, 3.9 support and add Python 3.14 support
- Add GitHub Action for ruff lint and format checks
- Add GitHub Action to check for changelog updates
- Add GitHub Action to check that pull requests align with git flow workflow
- Add CodeQL GitHub Action
- Adopt Dependabot version updates for GitHub Actions and pre-commit
- Adopt git-flow-next for git flow branching conventions
- Add custom hooks for git flow workflow in `gitflow-hooks`
- Adopted uv support and package src layout
- Adopt git-flow-next for git-flow branching conventions
- Add custom hooks for git-flow workflow in `gitflow-hooks`
- Add custom script for configuring git-flow `setup_gitflow.sh`
- Add additional pre-commit hooks and adopted Ruff-based formatting
- Adopt Dependabot version updates for GitHub Actions and pre-commit
- Add CodeQL GitHub Action
- Add GitHub Action for Ruff lint and format checks
- Add GitHub Action to check for changelog updates
- Add GitHub Action to check that pull requests align with git-flow workflow
- Add custom GitHub issue template for software releases
- Add custom config for codecov to create separate checks for the core package, tests, and experimental code

## 0.7
## 0.7.0

*experimental* new dataclass interfaces in `piffle.iiif_dataclasses` thanks to @rwood-97

Expand All @@ -31,7 +33,7 @@ interface and package structure may change in future releases.

- Add explicit support for and testing against python 3.13 (thanks to @rettinghaus)

## 0.6
## 0.6.0

- HTTP request method `get_iiif_url` is now a class method on
`piffle.presentation.IIIFPresentation`, which can be extended when request
Expand All @@ -42,14 +44,14 @@ interface and package structure may change in future releases.

- Add explicit support and testing for python 3.12

## 0.5
## 0.5.0

- Now supports python 3.8-3.11; dropped support for Python versions 3.6, 3.7
- Converted setup.py to pyproject.toml
- The alias for accessing `piffle.image` via `piffle.iiif` has been removed
- Setup pre-commit hooks and adopted Ruff+Black style formatting

## 0.4
## 0.4.0

- Dropped support for Python versions 2.7, 3.4, 3.5
- Now tested against python 3.7 and 3.8
Expand All @@ -65,7 +67,7 @@ interface and package structure may change in future releases.

- Added long description content type for PyPi

## 0.3
## 0.3.0

- Now Python 3 compatible
- URI canonicalization for size, region, rotation, and URL as a whole
Expand All @@ -75,14 +77,14 @@ interface and package structure may change in future releases.
- Bug fix: chaining multiple different options combines all of them properly and does not modify
the original image object.

## 0.2
## 0.2.0

- New methods to parse urls and provide image option information. Contributed by [Graham Hukill (@ghukill)](https://github.com/ghukill) [PR #1](https://github.com/emory-lits-labs/piffle/pull/1)
- New method to parse a IIIF Image url and initialize IIIFImageClient via url
- New methods to make IIIF Image options available as dictionary
- Options are now stored internally in logical, dictionary form rather than as IIIF option strings

## 0.1
## 0.1.0

Initial alpha release, extracting basic IIIF Image API client from [readux codebase](https://github.com/emory-libraries/readux)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Python library for generating and parsing [IIIF Image API](http://iiif.io/api/im
object-oriented, pythonic fashion.

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13308491.svg)](https://doi.org/10.5281/zenodo.13308491)
[![unit tests](https://github.com/Princeton-CDH/piffle/actions/workflows/unit_tests.yml/badge.svg)](https://github.com/Princeton-CDH/piffle/actions/workflows/unit_tests.yml)
[![unit tests](https://github.com/Princeton-CDH/piffle/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/Princeton-CDH/piffle/actions/workflows/unit-tests.yml)
[![codecov](https://codecov.io/gh/Princeton-CDH/piffle/branch/main/graph/badge.svg)](https://codecov.io/gh/Princeton-CDH/piffle)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/piffle)

Expand Down
9 changes: 4 additions & 5 deletions setup_gitflow.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,21 @@
#
# Set up custom git-flow workflow by updating git-flow configuration

# Set custom gitflow hooks path
# Set custom git-flow hooks path
git config gitflow.path.hooks gitflow-hooks

# Always fetch before release operations
git config gitflow.release.fetch true

# Fetch from remote before creating topic branch
git config gitflow.feature.start.fetch true
git config gitflow.release.start.fetch true
git config gitflow.hotfix.start.fetch true
git config gitflow.bugfix.start.fetch true

# Use squash merge for hotfixes and releases
git config gitflow.branch.hotfix.upstreamStrategy squash
git config gitflow.branch.release.upstreamStrategy squash

# Always fetch before release operations
git config gitflow.release.fetch true

# Use custom message for develop auto-updates
git config gitflow.hotfix.finish.updatemessage "chore: sync %b from %p"
git config gitflow.release.finish.updatemessage "chore: sync %b from %p"
2 changes: 1 addition & 1 deletion src/piffle/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.8.0.dev0"
__version__ = "0.8.0"
Loading