**Breaking Changes**
- Changed how schemas are initially added to Bailo. Now set in `config.defaultSchemas` instead of `schema.script`. Now is a list of schema objects, instead of a bash script.
- Model card sidebar now uses role names from schema, instead of hard coded.
- Removes usage of 'turbopack' to build dependencies, speeding up builds by 7x.
- Python library client instantiation has been simplified, with less facades in place. See library README for more details.
- The application now produces two Docker images, a 'frontend' and 'backend' image. See v0.4 migration for more details.
- Migrated from CJS to ESM for NodeJS dependency management.
**Features**
- Python documentation can now be built into a webpage using `cd docs && make html`
- Python client can now bundle a variety of frameworks automatically, with no code required.
- Python tests are not automatically run on GitHub Actions.
- The latest version of a model is now tagged on the version selector dropdown for easier viewing.
- Entities (groups, users, etc) can now be relabelled using the generic 'EntityDisplay' component.
- Editing a model now automatically requests re-approval.
- We now support all JSON Schema Beta 7 proposals in model card schemas.
- Helm charts natively support AWS.
- Added sharp to optimise images prior to display to users.
- Tests are now run using 'vitest' instead of 'jest'.
- The compliance graph now has a key.
**Fixes**
- Banner could never be displayed due to 'enable' vs 'enabled' differences.
- Logging had to be disabled on OpenShift clusters due to '$' in key, now filtered out.
- Local configuration can no longer be committed to GitHub.
- Authorisation unit tests now pass regardless of 'AuthorisationBase' configuration.
- Python library now supports PKI.
- Fix UI not able to serve images.
- The wrong person was responsible for approving models, changed it from the deployment owner to the model manager.
- Added a useful error message for when a new version is uploaded to a non-existent model.
- The deployment name is now displayed on the model review page when approving a deployment.
- Application now successfully responds to 'SIGINT' and 'SIGTERM' signals.
- Swagger can now upload docker images to the upload endpoint.
- The deployment and upload form can now be submitted multiple times, and does not break on the first error.
- The documentation now uses a static file directory listing. The page no longer requires any external network requests.
- The base path was incorrectly set for the Bailo landing page.
- Increase maximum file size Bailo can cope with, by streaming data instead of keeping it in memory.