Version 0.0.0
These are the release notes for the v0.0.0 release of witboost.
Please refer to the official documentation for a more in-depth overview of the released features.
Features
Auditing
The auditing plugin is now released, and it is capable of auditing all the REST APIs and Hasura requests for logged-in users. The auditing module can be enabled/disabled by configuration.
In the case of REST APIs, the user can configure which HTTP methods need to be audited by changing the value of a whitelist field. For Hasura GraphQL requests, the auditing module is collecting only mutations. Read-only Hasura queries are not audited.
RBAC
This release contains the first implementation of the authorization plugin that leverages role-based access controls. The authorization module can be enabled/disabled by configuration.
This plugin is based on the concept of permissions that enable/disable operations for specific users. Permissions are bundled together into roles, to simplify the associations of multiple permissions to the users (e.g. a role can have a dozen permission linked to it, so a user with that role inherits all of them). Permissions can not only be directly assigned to users, but also to groups; by assigning a role to a group, all of the users belonging to it inherit the permissions linked to the role.
Search plugin
The default search plugin has been improved and its appearance revamped to include the following features:
- it is possible to look for entities in the Builder and Marketplace modules in the same search bar;
- each entry found displays some tags and some basic details such as source, type, version, and description;
- now searched words are matched exactly, and only matching tags are returned to the end user;
- the advanced search page and the search modal have been aligned with the same behavior.
Sub-Domains
Now the platform team can configure witboost with domains that belong to other domains. When a domain belongs to another, we can call them "sub-domains". This allows for the creation of hierarchies of domains (e.g. it is now possible to define the "Liquidity" domain as a child of the "Finance" domain).
Right now the Marketplace module displays only the highest-level domains, but in a future release, we will also release a revamp of the Data Product graph page.
Configurable schema name
The coordinator now handles configurable schema name for the target database it relies on. This allows different customers to better configure the databases needed for witboost to work properly.
Issues Fixed
- Modified OutputsCard component (and children components) to handle dynamic Output port types.
- Added a fix for migrations that are performed automatically by all components at startup.
- Better handling of repositories names for Gitlab: e.g. creating a repo name with whitespaces is forbidden. This is due to the way Gitlab handles project slugs with whitespaces, preventing the "New Version" feature from working correctly since it relies on project slugs.
- Fixed a problem with release entities that needed a specific permission to be viewed.
- Release entities are now hidden from the Software Catalog.
- Removed duplications in x-hasura-permissions header.
- The new version button now works for the Monorepo-created data products.
- Changed the way URL are read to make components creation synchronous.
- Removed the empty "configuration" field that was wrongly added to the descriptor.
- Fixed the descriptor merge method with environment's values that were not merging values correctly.
- Added into the merge method with environment values also the data product configurations.
- Updated the releases method for both storing and retrieval of environment's configuration.
- Fixed some typos in the UI.
- Added a check for token validity on the APIs invocations.
- Introduced a backend configuration to enable/disable all auditing operations.
- Improved audit entries for GraphQL mutations.
- Removed the publicly exposed REST endpoint for the Hasura token.
- Corrected the outer method of the repository manager that was not propagating the second parameter to the inner method.
- Changed Specific Provisioner API specification for getStatus to solve a problem with integrations.
- Changed Coordinator API specification for ProvisionInfo.
- Removed the automatic load of policies that was breaking deployments.