-
Notifications
You must be signed in to change notification settings - Fork 34
RELEASE 2025-12-05 #2145
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
RELEASE 2025-12-05 #2145
Conversation
…to SWAP-4889-configurable-action-buttons
…b.com/SciCatProject/frontend into SWAP-4889-configurable-action-buttons
## Description
This is a big PR that introduces two changes.
1. This is a big change and it introduces many new components and a
dependency on another backend. This, however, can be turned off in the
`config.json` file by setting:
```
"ingestorComponent": {
"ingestorEnabled": false,
}
```
2. At the SciCatCon 2025, we discussed a new [project to simplify
ingestion](https://github.com/orgs/SciCatProject/projects/20/). This PR
also introduces a change to how the button "Create Dataset" below the
filter side bar at the Dataset page behaves according to #1912 . (
Option to control it already present in config - `addDatasetEnabled`)
## Motivation
At PSI with OpenEM we have been working on a new ingestor backend that
will allow data ingestion from sites different from the host of SciCat
Catalog. This is represented by Point 1. An addition of the Ingestor
backend repo into SciCatProject [is
planned](https://github.com/orgs/SciCatProject/projects/20/views/1?pane=issue&itemId=117173574&issue=SciCatProject%7Cscicat-backend-next%7C2014)
as well.
## Changes:
__For point 2__:
* when user wants to ingest dataset into SciCat from frontend, the
dialog opens, where user enters dataset-specific information.
* User can provide a url to json schema for scientific metadata. We only
check if provided JSON is a valid object.
* If user provided schema, an additional set of questions is created
based on that schema ( with Json forms) and user can specify the
scientific metadata details based on it
* Conformation page where user can review entered metadata
* Dataset is being added after the submission of the form
__For point 1__:
* `config.json` changes include this new object:
```
"ingestorComponent": {
"ingestorEnabled": true,
"ingestorAutodiscoveryOptions": [
{
"mailDomain": "university.org",
"description": "University/facility of Choice",
"facilityBackend": "https://facility-ingestor.facility.org"
}
]
},
```
* The main option to turn off the component entirely is controlled by the `ingestorEnabled` value. This will redirect call to ingestor to 404. When turned on, the ingestor component is available at `/ingestor/` with a link in the hamburger menu.
* `ingestorAutodiscoveryOptions` is an optional argument and constitutes an array of available facilities running ingestor software.
* `facilityBackend` is a reachable backend of the ingestor service.
* `mailDomain` is used to match the email of logged-in user against the `mailDomain` value as a regular expression and in case of success, automatically connect to the respective backend. A regular expression is used to connect to the email of form "staff.university.org" or similar.
* `description` is optional, but in case of the match with `mailDomain` will prefill the creationLocation property in the dataset schema
* Ingestor component ( when used with the backend ) looks similar to the __Point 2__ and represents a set of dialogs for SciCat dataset and scientific metadata ingestion, with most of the information prefilled. For this, it interacts with ingestor backend, which does all the hard work such as:
* loading set of available methods, which correspond to the available metadata extractors.
* upon method selction, extraction of the metadata into a newly generated json object, that is used in the `scientificMetadata`
* creation of a dataset on SciCat
* creation of a transferring job to the tape.
## Tests included
- [ ] Included for each change/fix?
- [ ] Passing? (Merge will not be approved unless this is checked)
## Documentation
- [ ] swagger documentation updated \[required\]
- [ ] official documentation updated \[nice-to-have\]
### official documentation info
If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included
## Backend version
- [ ] Does it require a specific version of the backend
- which version of the backend is required:
## Ingestor backend:
https://github.com/SwissOpenEM/Ingestor
---------
Co-authored-by: martintrajanovski <[email protected]>
Co-authored-by: Jay <[email protected]>
Co-authored-by: Max Novelli <[email protected]>
Co-authored-by: Spencer Bliven <[email protected]>
Co-authored-by: Despina <[email protected]>
Co-authored-by: David Wiessner <[email protected]>
Co-authored-by: dwiessner-unibe <[email protected]>
Co-authored-by: consolethinks <[email protected]>
Co-authored-by: Philipp Wissmann <[email protected]>
Co-authored-by: Philipp Wissmann <[email protected]>
Co-authored-by: phwissmann <[email protected]>
## Description Removed unnecessary fileList array and directly assigned an empty array to fileObj.files. ## Motivation Reset needs to reset all files, thus no reason to pass the file list ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Bug Fixes: - Ensure reset jobs no longer include previous datablock archive IDs by clearing the files list during reset.
## Description This PR fixes flaky test of ConfigurableActionsComponent 0060 ## Motivation Karma/Jasmine runs tests in a random order, which causes failures in tests that rely on a specific execution sequence. ## Fixes: Please provide a list of the fixes implemented in this PR * Items added ## Changes: Please provide a list of the changes implemented by this PR * changes made ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Bug Fixes: - Fix a flaky unit test by waiting for the component fixture to become stable and refreshing the DOM before checking the number of actions.
## Description first draft of theme doc ## Motivation Background on use case, changes needed ## Fixes: Please provide a list of the fixes implemented in this PR * Items added ## Changes: Please provide a list of the changes implemented by this PR * changes made ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Introduce documentation for the front-end CSS variable–based theme system and newly added theme variables. Documentation: - Add a technical overview of the CSS variable–based theming system used by the SciCat front-end. - Document newly introduced theme variables for side panel and table borders and shadows, including defaults, fallbacks, and usage notes.
…Project/frontend into configurable-actions-docs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We failed to fetch the diff for pull request #2145
You can try again by commenting this pull request with @sourcery-ai review, or contact us for help.
## Description This PR includes the second draft of the configurable actions. The files are saved under the docs folder ## Motivation The configurable actions have been updated since the first draft of the documentation. Also the documentation should be all located under the docs folder ## Fixes: Please provide a list of the fixes implemented in this PR * configurable actions documentation ## Changes: Please provide a list of the changes implemented by this PR * configurable actions documentation folder ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Document configurable actions for datasets and mark legacy datafiles action docs as deprecated. Documentation: - Add technical documentation for configurable actions targeted at contributors. - Add user-focused documentation describing configurable actions and common use cases. - Mark the legacy datafiles action configuration documentation as deprecated in favor of configurable actions.
## Description If editDatasetEnabled is true but editMetadataEnabled is false the Edit tab still shows. This PR fixes that. ## Changes: - remove [hidden] attribute - put both conditions in ngIf ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Bug Fixes: - Prevent the Edit tab from being shown when metadata editing is disabled in the application configuration.
## Description Following from [here](https://github.com/SciCatProject/scicat-backend-next/blob/203cca8b81f4c72b6c27011e895a991f46a2eba1/src/config/configuration.ts#L202), this PR relies on the BE default status code. This allows different facilities to use different status codes by setting them in the BE and have no explicit dependency in the FE ## Tests included - [ ] Included for each change/fix? - [ ] Passing? (Merge will not be approved unless this is checked) ## Documentation - [ ] swagger documentation updated \[required\] - [ ] official documentation updated \[nice-to-have\] ### official documentation info If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included ## Backend version - [ ] Does it require a specific version of the backend - which version of the backend is required: ## Summary by Sourcery Enhancements: - Remove the hard-coded job status message from admin dataset reset jobs to defer to backend-configured defaults.
|
The current action version SciCatProject/docs-template/.github/actions/[email protected] installs lxml==5.4.0, which doesn’t provide corresponding dependencies for Python 3.12 and it causes error This release needs to be stall until action v0.0.2 or open a new one when the issue is resolved |
Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 8.48.1 to 8.49.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.49.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.48.1 to 8.49.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.49.0/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.49.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint - dependency-name: "@typescript-eslint/parser" dependency-version: 8.49.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: eslint ... Signed-off-by: dependabot[bot] <[email protected]>
Bumps the eslint group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 8.48.1 to 8.49.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/eslint-plugin</code>'s releases</a>.</em></p> <blockquote> <h2>v8.49.0</h2> <h2>8.49.0 (2025-12-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> use <code>Intl.Segmenter</code> instead of <code>graphemer</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11804">#11804</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>deps:</strong> update dependency prettier to v3.7.2 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11820">#11820</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Justin McBride</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.49.0 (2025-12-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> use <code>Intl.Segmenter</code> instead of <code>graphemer</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11804">#11804</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>deps:</strong> update dependency prettier to v3.7.2 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11820">#11820</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Justin McBride</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/864595a44b56beb9870bf0f41d59cf7f8f48276a"><code>864595a</code></a> chore(release): publish 8.49.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/32b7e891bd60ae993e85018ceefa2a0c07590688"><code>32b7e89</code></a> chore(deps): update dependency <code>@vitest/eslint-plugin</code> to v1.5.1 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11816">#11816</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/56149a2839838cbf623d172361123870e435d2d4"><code>56149a2</code></a> feat(eslint-plugin): use <code>Intl.Segmenter</code> instead of <code>graphemer</code> (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11804">#11804</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/34a49a4f92a22f35c844dfe00567bd59a6075804"><code>34a49a4</code></a> fix(deps): update dependency prettier to v3.7.2 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11820">#11820</a>)</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/d2d7ace4e52bedf07482fd879d8e31a52b38fc26"><code>d2d7ace</code></a> docs: fixes bad link to jest docs in unbound-method rule page (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/11823">#11823</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.49.0/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> Updates `@typescript-eslint/parser` from 8.48.1 to 8.49.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/parser</code>'s releases</a>.</em></p> <blockquote> <h2>v8.49.0</h2> <h2>8.49.0 (2025-12-08)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> use <code>Intl.Segmenter</code> instead of <code>graphemer</code> (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11804">#11804</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>deps:</strong> update dependency prettier to v3.7.2 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11820">#11820</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Justin McBride</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> </ul> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.49.0 (2025-12-08)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://typescript-eslint.io/users/versioning">versioning strategy</a> and <a href="https://typescript-eslint.io/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/864595a44b56beb9870bf0f41d59cf7f8f48276a"><code>864595a</code></a> chore(release): publish 8.49.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/32b7e891bd60ae993e85018ceefa2a0c07590688"><code>32b7e89</code></a> chore(deps): update dependency <code>@vitest/eslint-plugin</code> to v1.5.1 (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/11816">#11816</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.49.0/packages/parser">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details>
Description
Short description of the pull request
Motivation
Background on use case, changes needed
Fixes:
Please provide a list of the fixes implemented in this PR
Changes:
Please provide a list of the changes implemented by this PR
Tests included
Documentation
official documentation info
If you have updated the official documentation, please provide PR # and URL of the pages where the updates are included
Backend version