Skip to content
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

MAINT: Quick package publication #21

Merged
merged 12 commits into from
Feb 16, 2024
Merged

MAINT: Quick package publication #21

merged 12 commits into from
Feb 16, 2024

Conversation

carlwilson
Copy link
Member

  • loose model types for InformationPackages, plus removed defunct types;
  • JSON output from Pydantic types;
  • changed application name from ip-check to eark-validator;
  • streamline application/project versioning;
  • updated ./README.md to reflect name change and pre-requisites;
  • removed Python 3.9 build and updated docs to Python 3.10; and
  • updated lxml dependency.

- fixed use of `to_upper` and use of `model_validate()` to force upper case checksum values;
- catch `str` initialization of `Checksummer` so that a valid `ChecksumAlg` is always used; and
- added test for case insensitivity of checksum values.
- `eark_validator/cli/app.py`:
  - validation now uses `eark_validator.model.ValidationReport` module;
  - improved `argparse` docs a little;
  - updated epilog date;
- `eark_validator/infopacks/manifest.py`:
  - `FileItem` and `Manifest` types moved to appropriate `model` modules;
  - `ManifestEntries` and `Manifests` classes now hold API/factory methods for above;
  - no more `Checksum`s from METS files;
  - uses `Path` rather than `str` for file paths;
- `eark_validator/mets.py b/eark_validator/mets.py`:
  - METS validation moved to `MetsFiles` class;
  - use `FileItem` rather than `FileEntry` types for file lists;
  - utility methods for `FileEntry` added;
- added file headers where missing;
- added a `SchematronRuleset.get_reports()` genrator method;
- improved type hints here and there;
- better/refactored tests; and
- fixed imports post-refactoring.
- added `pickle` based serialisation and deserialisation for `Manifest` class;
- manifests can now be validated against an alternative root;
- fixed faulty `|` as `or` in `MetsFiles.from_file()` method;
- model `MetsFile.default_ns` is now a dictionary of namespace prefixes and URIs;
- fixed handling of relative paths during Manifest creation/validation;
- improved testing of manifest classes; and
- typehints here and there.
- loose model types for InformationPackages, plus removed defunct types;
- JSON output from Pydantic types;
- changed application name from `ip-check` to `eark-validator`;
- streamline application/project versioning;
- updated `./README.md` to reflect name change and pre-requisites;
- removed Python 3.9 build and updated docs to Python 3.10; and
- updated lxml dependency.
- fixed workflow to get tags when available;
- recofigured `setuptools-git-versioning` so no VERSION file; and
- removed VERSION file.
@carlwilson carlwilson changed the base branch from refact/mets to integration February 15, 2024 15:01
@shsdev shsdev merged commit dfa7003 into integration Feb 16, 2024
4 checks passed
@carlwilson carlwilson deleted the refact/publication branch February 22, 2024 15:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Publish development builds to Test PyPI GitHub Actions build and test.
2 participants