Releases: gchq/Bailo
Releases · gchq/Bailo
v2.2.0
Features
- When deleting a schema resources that are effected will be listed
- Node versions have been bumped up to
22.6.0
What's Changed
- Fix unstable swr array hooks by @GB27247 in #1462
- Bai 1157/list models delete schema by @GB27247 in #1463
- Add commentEditedAt prop to responses by @GB27247 in #1465
- resolved an issue with model updating# by @ARADDCC002 in #1464
- Updated review wording for new access requests and releases by @ARADDCC002 in #1467
- Fix node version in Docker images by @JR40159 in #1473
- Reverted change to model merging during update by @ARADDCC012 in #1474
- Reversed the list, equivalent to sorting by date ASC by @IR96334 in #1472
- added more zod validation for various end points by @ARADDCC002 in #1475
- added backend implementation for model templating by @ARADDCC002 in #1419
- Fix config by @JR40159 in #1479
- Fix config by @JR40159 in #1481
- Shallow copy of tokens array used by @IR96334 in #1480
- Change roles to include contributor by @GB27247 in #1469
- Add model card actions by @GB27247 in #1468
- Bump @types/node from 22.0.2 to 22.5.1 in /backend by @dependabot in #1491
- Bump husky from 9.1.4 to 9.1.5 by @dependabot in #1499
- Bump semver from 7.6.2 to 7.6.3 in /backend by @dependabot in #1495
- Bump axios from 1.7.2 to 1.7.7 in /frontend by @dependabot in #1503
- Bump @aws-sdk/client-cognito-identity-provider from 3.623.0 to 3.637.0 in /backend by @dependabot in #1493
- Bump @aws-sdk/client-s3 from 3.623.0 to 3.637.0 in /backend by @dependabot in #1494
- Bump @aws-sdk/lib-storage from 3.623.0 to 3.637.0 in /backend by @dependabot in #1490
- Bump @opentelemetry/sdk-metrics from 1.25.1 to 1.26.0 in /backend by @dependabot in #1497
- Bump @swc/core from 1.6.13 to 1.7.22 in /backend by @dependabot in #1498
- Bump lint-staged from 15.2.5 to 15.2.10 by @dependabot in #1505
- Bump @opentelemetry/auto-instrumentations-node from 0.49.1 to 0.50.0 in /backend by @dependabot in #1506
- Bump @opentelemetry/exporter-logs-otlp-proto from 0.52.1 to 0.53.0 in /backend by @dependabot in #1486
- Bump @opentelemetry/exporter-metrics-otlp-proto from 0.52.1 to 0.53.0 in /backend by @dependabot in #1485
Full Changelog: v2.1.1...v2.2.0
v2.1.1
Features
- Added a
getAdminToken
script to get an admin token to the registry - Tokens are now sourced through an endpoint
What's Changed
- Added a reaction selector for comments by @ARADDCC002 in #1340
- Added a select from template page by @ARADDCC002 in #1414
- Updated all of our actions to properly use the built in SWR isLoading property by @ARADDCC002 in #1421
- Updated email headers by @ARADDCC002 in #1420
- Added a checkbox widget for forms by @ARADDCC002 in #1422
- Added export to pdf functionality by @ARADDCC002 in #1416
- Added slide up transitions to all the current dialog modals. by @IR96334 in #1412
- Add initial HTML export capability by @a3957273 in #1334
- Bai 721 bailo GitHub pages docs no longer have a working logo by @IR96334 in #1417
- Aligned validation for creating and updating releases by @ARADDCC002 in #1451
- Added a subheading and copy button to the PageWithTabs component by @ARADDCC002 in #1450
- Added a review icon and count to release and access request displays by @ARADDCC002 in #1452
- Fix token generation bug by @GB27247 in #1456
- Improved response quoting by adding original commenter name and date by @ARADDCC002 in #1445
- Added getAdminToken script by @GB27247 in #1458
- Added announcement banner by @ARADDCC002 in #1424
- Display entry collaborators outside of the settings tab by @IR96334 in #1455
- Add metrics widget to form by @ARADDCC002 in #1454
- Replaced all of the buttons on the model overview read only screen with an "Actions" drop down button to help declutter the view by @IR96334 in #1457
- Map tokens to ui config by @GB27247 in #1332
Full Changelog: v2.1.0...v2.1.1
v2.1.0
Features
- Upgraded from Node 18 to Node 22.
- Added a standalone version of Bailo that runs all of Bailo in a single Docker container.
- Added utility to import Models from MLFlow via the Python Client.
- Added the ability to use attach IAM roles to containers when deploying to AWS.
- Update OpenTelemetry integration to include CPU and memory usage.
- Ensure that Bailo is compatible with registry version
3.0.0-alpha.1
, enabling the use of IAM roles when deploying the registry on AWS. - Comment and review responses have been restructured in the backend so that they can be more easily interacted with via the API; this has allowed for a much smoother integration with features such as reactions and editing responses.
- Added support for data cards.
- Added Advanced options during data card/model creation, allowing user roles to be assigned immediately.
- Fixed large file uploads failing to complete.
- Added ability to create and view data card schemas via the UI.
- Fixed Cypress tests intermittently failing due to backend not being ready.
- Fixed a bug where opening a review from the reviews page would incorrectly set the user's role.
- Conditionally disabled functionality in places to restrict users from performing actions they are not authorised to do. Tooltips have been used to provide guidance to users in these cases.
- Improved schema selection UI, allowing active/inactive schemas to be shown/hidden in bulk.
- Added ability to edit comments.
What's Changed
- Add inferencing config to helm chart by @GB27247 in #1283
- BAI-1299 Python semantic versioning bugfix by @bw27492 in #1305
- Update registry and use jwks by @JR40159 in #1317
- Upgrade registry deployment by @JR40159 in #1322
- added a new common component for dialog components on button press. a… by @ARADDCC002 in #1304
- Add access and secret key back to deployment config by @JR40159 in #1324
- Fix secret config by @GB27247 in #1328
- added optional advanced section on entry creation for adding users to… by @ARADDCC002 in #1323
- Bump ws from 7.5.9 to 7.5.10 in /frontend by @dependabot in #1329
- Bump braces from 3.0.2 to 3.0.3 in /lib/landing by @dependabot in #1319
- Bump braces from 3.0.2 to 3.0.3 in /backend by @dependabot in #1321
- Bump braces from 3.0.2 to 3.0.3 in /frontend by @dependabot in #1320
- Bump @grpc/grpc-js from 1.10.8 to 1.10.9 in /backend by @dependabot in #1331
- Bump @grpc/grpc-js from 1.10.1 to 1.10.9 in /frontend by @dependabot in #1330
- Disable nginx request buffering by @a3957273 in #1336
- added new property in necessary files to enable templating and implem… by @TT38665 in #1326
- Implemented template tab in model settings. May need to looka at han… by @TT38665 in #1327
- completely resstructed responses by having them in their own collection by @ARADDCC002 in #1280
- Add kms config by @JR40159 in #1333
- Update config by @JR40159 in #1342
- Feature/add data card type to schema creation by @ARADDCC012 in #1343
- Increase header timeout to 24H by @JR40159 in #1344
- Bugfix/bai 1297 fix issue with file uploads by @ARADDCC002 in #1338
- Enable local replica set + enable basic authentication by @GCHQDeveloper36 in #1236
- Add helper function to list schema ids by @gc153671 in #1349
- Bump codeql actions to v3 by @GCHQDeveloper36 in #1353
- Remove duplicate user type by @GCHQDeveloper36 in #1350
- Added user to request received logging by @ARADDCC012 in #1346
- Prevent a token creating another token by @a3957273 in #1335
- Bump frontend vitest by @GCHQDeveloper36 in #1352
- Revert "Merge pull request #1236 from GCHQDeveloper36/dev/use-rs-loca… by @GB27247 in #1375
- BAI-1255 MLFlow Model Imports by @bw27492 in #1341
- Refactor component names due to confusing use of page terminology part 1 by @ARADDCC012 in #1371
- Renamed component from using confusing page terminology by @ARADDCC012 in #1378
- Disable next telemetry by @GCHQDeveloper36 in #1351
- Add model export settings page by @GB27247 in #1347
- Feature/view data card schemas by @ARADDCC012 in #1345
- Updated release file submission logic by @ARADDCC012 in #1379
- Fix cert script by using tsx by @GCHQDeveloper36 in #1386
- Bai 1318/improve error styling by @GB27247 in #1339
- Feature/refactor review responses by @JR40159 in #1381
- BAI-1141 Experiment Ordering by @bw27492 in #1376
- Wait for backend to be ready before starting cypress by @GCHQDeveloper36 in #1385
- Add query parameters to roles by @GB27247 in #1382
- Add array object to swr by @GB27247 in #1396
- Feature/conditionally hide UI based on roles by @ARADDCC012 in #1377
- Fix image upload authorisation by @GB27247 in #1395
- Fixed input widths in create entry form by @ARADDCC012 in #1398
- Python Improvements by @bw27492 in #1380
- Use accordions for schema selection, hiding inactive schemas by default by @GCHQDeveloper36 in #1383
- Made collaborators array required on entry creation in frontend by @ARADDCC012 in #1399
- Add token forwarding to inference service login by @GB27247 in #1337
- Bai 1348/mirrored model creation by @GB27247 in #1348
- Feature/standalone by @ARADDCC013 in #1325
- added the ability to edt comments via the UI by @ARADDCC002 in #1402
- Reset error message when pressing cancel button in edit release by @IR96334 in #1405
- Updated python notebooks and documentation for 2.5.0 by @bw27492 in #1404
- update ci by @ARADDCC013 in #1401
- Add host metrics by @JR40159 in #1406
- Add colon by @GB27247 in #1409
- Add fullWidth by @GB27247 in #1410
New Contributors
Full Changelog: v2.0.0...v2.1.0
Bailo v2.0.0
We're restarting releases, which will occur on a three-weekly basis. This is a catch-all release for the work that has been done over the past year.
What's Changed
- Bump @emotion/react from 11.10.8 to 11.11.0 in /frontend by @dependabot in #481
- Bump @eslint/eslintrc from 2.0.2 to 2.0.3 in /frontend by @dependabot in #479
- Bump @typescript-eslint/eslint-plugin from 5.59.2 to 5.59.5 in /backend by @dependabot in #478
- Fix favicon by @a3957273 in #490
- Add documentation for useful commands by @a3957273 in #489
- Bump @vitest/coverage-c8 from 0.30.1 to 0.31.1 in /frontend by @dependabot in #496
- Bump @mui/material from 5.12.3 to 5.13.1 in /frontend by @dependabot in #493
- Bump prettier from 2.8.7 to 2.8.8 by @dependabot in #483
- Bump @vitejs/plugin-react from 3.1.0 to 4.0.0 in /frontend by @dependabot in #498
- Bump @types/node from 18.16.2 to 20.2.1 in /backend by @dependabot in #497
- Bump vitest from 0.30.1 to 0.31.1 in /backend by @dependabot in #504
- Bump axios from 1.3.5 to 1.4.0 in /backend by @dependabot in #503
- Bump jsdom from 21.1.1 to 22.0.0 in /frontend by @dependabot in #505
- Bump @emotion/server from 11.10.0 to 11.11.0 in /frontend by @dependabot in #506
- Bump axios from 1.3.6 to 1.4.0 in /frontend by @dependabot in #508
- Updated eslint rules and fixed any issues by @ARADDCC012 in #513
- Bump esmock from 2.2.1 to 2.2.3 in /backend by @dependabot in #509
- Bump @types/react-dom from 18.0.11 to 18.2.4 in /frontend by @dependabot in #511
- Bump eslint from 8.39.0 to 8.41.0 in /backend by @dependabot in #510
- Bump @mui/material from 5.13.1 to 5.13.2 in /frontend by @dependabot in #514
- Bump @swc/core from 1.3.56 to 1.3.60 in /backend by @dependabot in #518
- Bump unzipper from 0.10.11 to 0.10.14 in /backend by @dependabot in #519
- Bump swagger-ui-react from 4.18.3 to 4.19.0 in /frontend by @dependabot in #517
- Bump @rjsf/mui from 5.6.2 to 5.7.0 in /frontend by @dependabot in #520
- Create a test script to build and upload large tar files by @a3957273 in #502
- Fix model page memory leak by @a3957273 in #500
- Update workflow actions to Node v16 by @a3957273 in #501
- Bump @rjsf/validator-ajv8 from 5.6.2 to 5.7.3 in /frontend by @dependabot in #521
- Bump @types/react from 18.2.0 to 18.2.7 in /frontend by @dependabot in #522
- Bump tar and @types/tar in /backend by @dependabot in #523
- Bump prettier from 2.8.7 to 2.8.8 in /backend by @dependabot in #524
- added question mark to fields by @TT38665 in #512
- Bump form-data-encoder from 2.1.4 to 3.0.0 in /backend by @dependabot in #525
- Bump @rjsf/core from 5.6.0 to 5.7.3 in /frontend by @dependabot in #526
- Bump eslint from 8.39.0 to 8.41.0 in /frontend by @dependabot in #528
- Fix CI and update RJSF by @a3957273 in #530
- Bump @typescript-eslint/eslint-plugin from 5.59.7 to 5.59.8 in /frontend by @dependabot in #533
- Bump formdata-node from 5.0.0 to 5.0.1 in /backend by @dependabot in #532
- Bump @mui/lab from 5.0.0-alpha.129 to 5.0.0-alpha.132 in /frontend by @dependabot in #531
- Add documentation for common workflows by @a3957273 in #535
- Bump @vitest/coverage-c8 from 0.31.1 to 0.31.4 in /frontend by @dependabot in #540
- Bump @typescript-eslint/parser from 5.59.2 to 5.59.8 in /frontend by @dependabot in #539
- Bump @types/node from 20.2.1 to 20.2.5 in /backend by @dependabot in #538
- Bump mongodb from 5.5.0 to 5.6.0 in /backend by @dependabot in #537
- Bump vite from 4.3.8 to 4.3.9 in /backend by @dependabot in #542
- Bump vite from 4.3.4 to 4.3.9 in /frontend by @dependabot in #541
- Decrease usage of any's by @a3957273 in #536
- Bump typescript from 5.0.4 to 5.1.3 in /backend by @dependabot in #546
- Bump @types/unzipper from 0.10.5 to 0.10.6 in /backend by @dependabot in #545
- Bump @next/mdx from 13.4.0 to 13.4.4 in /frontend by @dependabot in #544
- Bump cypress from 12.11.0 to 12.13.0 in /frontend by @dependabot in #543
- Add export functionality to Bailo by @a3957273 in #515
- remove mongo secret from production.js by @ARADDCC013 in #548
- Add OAuth Authentication Strategy by @a3957273 in #516
- Bump nodemailer and @types/nodemailer in /backend by @dependabot in #549
- Bump next from 13.4.0 to 13.4.5 in /frontend by @dependabot in #554
- Bump fast-xml-parser and @aws-sdk/credential-providers in /backend by @dependabot in #547
- Bump @types/lodash from 4.14.194 to 4.14.195 in /backend by @dependabot in #561
- Bump @uiw/react-textarea-code-editor from 2.1.1 to 2.1.6 in /frontend by @dependabot in #559
- Action K8s by @ARADDCC013 in #552
- Bump mongodb-memory-server from 8.12.2 to 8.13.0 in /backend by @dependabot in #560
- Bump mongoose from 7.1.0 to 7.3.0 in /frontend by @dependabot in #557
- Out of Disk Space Error by @a3957273 in #574
- Bump fast-xml-parser and @aws-sdk/credential-providers in /backend by @dependabot in #578
- Bump cross-fetch from 3.1.5 to 3.1.8 in /backend by @dependabot in #577
- Bump eslint from 8.42.0 to 8.44.0 in /backend by @dependabot in #576
- Bump eslint from 8.41.0 to 8.44.0 in /frontend by @dependabot in #575
- BAI-600 Refactored MetadataDisplay to use 'useGetSchema' by @m19671 in #572
- Bump @vitejs/plugin-react from 4.0.0 to 4.0.1 in /frontend by @dependabot in #568
- Mock audit calls by @JR40159 in #586
- Bump @uiw/react-textarea-code-editor from 2.1.6 to 2.1.7 in /frontend by @dependabot in #579
- Bump @mui/lab from 5.0.0-alpha.132 to 5.0.0-alpha.135 in /frontend by @dependabot in #580
- Bump @typescript-eslint/parser from 5.59.2 to 5.61.0 in /backend by @dependabot in #582
- Bump @swc/core from 1.3.62 to 1.3.68 in /backend by @dependabot in #587
- Add minimal mocked config for route tests by @JR40159 in #585
- corrected position of error notification by @TT38665 in #583
- BAI-713 Updated useful commands file to include older versions of doc… by @m19671 in #584
- added condition to stop approving from API by @TT38665 in #556
- updated dependabot config so that it runs monthly by @ARADDCC002 in #595
- added link to explain error by @TT38665 in #487
- Feature/add tag filter component and reorganise marketplace by @ARADDCC002 in #558
- Bai 708 refactor api hook to allow for custom requests by @m19671 in #616
- BAI-534 documentation links to dead pages by @m19671 in #620
- Feature/bai 691 add beta wrapper component by @ARADDCC002 in #613
- Feature/bai 669 add reusable tab page component by @ARADDCC002 in #617
- Feature/bai create overview page for model by @ARADDCC002 in #618
- Bai 551 approve reject directly from model by @P20179 in #588
- BAI-599 model description now extends further right. less dead space … by @k25831 in #625
- Bump semver from 5.7.1 to 5.7.2 in /backend by @dependabot in #623
- Bump semver from 5.7.1 to 5.7.2 in /frontend by @dependabot in #622
- Bump semver from 6.3.0 to 6.3.1 in /lib/landing by @dependabot in #621
- Update smtp auth t...
Bailo v0.6.1
Fixes
- Unit tests were not passing for 'MetadataCard'
Bailo v0.6.0
NOTE: This is a significant change to the Bailo repository. Specifically guidelines have been written for upgrading here:
https://gchq.github.io/Bailo/docs/administration/migrations/bailo-0.4
Breaking Changes
- Changed how schemas are initially added to Bailo. Now set in
config.defaultSchemas
instead ofschema.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.
v0.0.5
Features
- Deployments are no longer coupled to versions. Whenever a deployment is requested, it will be made available for all current approved versions, and whenever a new version of a model is requested, all existing deployments will be updated to be available for the new version.
- Ungoverned deployments are now available. This is where you can request a deployment of a model without needing to go through the request form and approval process. Ungoverned deployments are appropriately labelled as such
- Failed builds can now be retried
- Model files can now be viewed in the UI
- Admins can now upload new schemas via the UI using the new "schemas" page. Please note: the "designer" table is currently under development and is not supported.
- When selecting a deployment's download commands window, it will now default to the latest version, and also add a tag to it stating that it's the latest
Fixes
- Fixed an issue where the model's latest version data wasn't been updated
- Notifications are now sent to model owner, not the person approving the request. Also fixed an issue where email reports were not displaying the username correctly
- Previously approved deployments than are subsequently declined will now be unavailable from the registry
- Admin logs should now appear correctly
- General improvement to logging
- Upped various dependency versions
- Deployment page updates correctly when resetting approvals
- Removed some out of date configuration values
- Deployments can now only be requested for approved versions
- Various fixes to the Python client
v0.0.4
Features
- Versions can now be deleted. Deployments and models will also be deleted if they are only associated with the version that was deleted.
- Requests on the review page now display the model version so that it is clearer when reviewing multiple versions of the same model.
- Selenium has been replaced with Cypress for end-to-end tests.
v0.0.3
Features
- Improved multi-line support for schemas
- Documentation improvements
- Formatting for tables for in-app documentation pages (.mdx files) has been improved
- Next and previous navigation buttons have been added to the in-app documentation pages
- You can now navigate to the main page by clicking the "Bailo" text in the toolbar
- When uploading models you can now use Docker images
- Model files are now exportable by default
- Support for Cypress tests has been added
- By default, version and deployment logs are not returned via the API unless specifically requested
- Various Helm improvements
- Previously reviewed versions/deployments can now be viewed in an archived tab, and can also be amended
- Added an alert to the version page if you're a reviewer and you're viewing since it has been edited
- Deployment metadata can now be copied to the clipboard under the "settings" tab
- There is now a "Back to model" button on the deployments page.
Fixes
- Various parts of the UI has been altered so it displays correctly in dark mode
- The metadata display for models and deployments now correctly displays any multi-line content
- Help & support page is now more visually responsive
- Fixed an issue where the version page was not updating after being edited
- Removed unnecessary white-space in upload form
v0.0.2
Features
- When uploading a new version, you can now select whether or not you want the raw code/binary files to be able to downloaded by other users.
- You can now upload a new version as just a model card.
- Under the help & support section there is now a link to in-app documentation. More pages can easily be added in the future.
- When viewing a model you can select the approvals chip to see which users are assigned to that version and the status of their review.
- Various text fields in the form page have been changed so that they increase in size when lots of content is added.
Fixes
- When uploading a new version with an invalid "mode" property, it will now gracefully send an error to the uploader.
- Added more information to some of our logs.
- Reviewers who have been removed from a model will no longer still be able to review that model.
- When changing section in the upload form, the view will be scrolled to the top of the next section.