chore: release devel to main - #481
Merged
Merged
Conversation
chore: back-merge v0.61.0 into devel
selectionChanged can fire several times in quick succession for the same effective selection (e.g. during initial document load), each scheduling the async autosearch handler. lastNode was only updated after awaiting the PDF search, so concurrent handlers still saw the stale value while the first search was in flight and re-triggered the lookup, spamming the "no match" toast. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…leting PDF-only docs A failed extraction (e.g. Grobid down) left the PDF stuck in the upload-time default "_inbox" collection, since the collection sync only ran after a successful extraction. It also could not be removed because the delete button was disabled whenever no XML file existed for the document. Fixes #477 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…our -> fossil) The mpilhlt/grobid-footnote-flavour repo was renamed to mpilhlt/fossil, which also moved its GitHub Pages schema site. Update all schema URLs, repo mentions, and docs accordingly, and rename the test fixture cache directory to match the new URL-derived path so test_annotation_config.py finds its committed schema snapshot again. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…a link GitHub Pages does not redirect after a repo rename, so the old mpilhlt/grobid-footnote-flavour Pages site (mpilhlt.github.io/grobid-footnote-flavour) now 404s outright instead of forwarding to mpilhlt/fossil. Documents extracted before the rename still embed the old schema URL, which would otherwise break validation permanently. Add register_schema_redirect()/resolve_schema_location() to schema_validator.py: a small, generic prefix-based redirect registry that any plugin can populate for schema locations it owns, so future URL moves don't need one-off code in the validator itself. The grobid plugin registers the grobid-footnote-flavour -> fossil redirect in its config init, which always runs (even when the GROBID server itself isn't configured/available), so old documents keep validating. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The cache key was doc_id+revision only, so re-extracting or re-downloading a document under a different processing flavor silently served the previous flavor's cached feature file, missing the flavor-specific columns (e.g. the extra columns emitted by the article/footnotes-refs segmentation model). The bulk /download route also fetched every document with a single global flavor query param instead of each document's own flavor recorded in its TEI encodingDesc label. Fixes #480 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
app/src is removed after the frontend build in the Dockerfile, but generate_sandbox_client_script() parsed backend-plugin-sandbox.js from that directory at runtime to build window.sandbox. In production this silently produced an empty method list, breaking every sandbox call (e.g. "sandbox.callPluginApi is not a function" when ending sessions in the Active Sessions admin plugin). Pre-generate the script at build time into app/web/sandbox-client.js and fall back to it when app/src is absent, while keeping live extraction in development. Fixes #478 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The cache is fully reproducible (re-extracted from GROBID on demand), so GC can safely wipe it wholesale rather than leaving cleanup solely to the file.deleted event handler, which only fires on soft-delete. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
Release previewMerging this PR (as a merge commit) will publish v0.62.0. semantic-release --dry-run outputPreview generated by |
Contributor
Test Results✅ All tests passed! Tests were run in a containerized environment (E2E tests included). Changed files were analyzed and only relevant tests were executed. |
Contributor
|
🎉 This PR is included in version 0.62.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
🤖 Generated with Claude Code