issue-cas-7712: Clone endpoint + list APIs + Export Packages shell#8036
Open
foozleface wants to merge 4 commits intoissue-cas-7709from
Open
issue-cas-7712: Clone endpoint + list APIs + Export Packages shell#8036foozleface wants to merge 4 commits intoissue-cas-7709from
foozleface wants to merge 4 commits intoissue-cas-7709from
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
This was referenced Apr 27, 2026
454660e to
3bf54c0
Compare
ab5b36f to
42b488f
Compare
Adds the export-app cache infrastructure: - CacheTableMeta model + migration tracking build state per (mapping, collection) - export.models shim: re-exports Caroline's Schemamapping/Exportdataset/ Exportdatasetextension under PascalCase aliases for use throughout the package - cache.py: get_cache_table_name, create_cache_table, drop_cache_table, _build_single_cache, _execute_and_populate, _infer_column_type, build_cache_tables - dwca_utils.py: shared sanitize/build helpers used by cache and archive code - Tests for SchemaMapping, ExportDataSet, ExportDataSetExtension, CacheTableMeta, and cache table operations Fixes #7737. Closes overlap with the cache mechanism part of c381907 on dwc/foundation; remaining cache features (orphan cleanup, signal handlers, build API, progress callbacks) ship in later atomic PRs.
…ssions Adds the DwC vocabulary infrastructure: - schema_terms.json — full DwC term list with descriptions and types (Occurrence core, Identification, MeasurementOrFact, Multimedia, etc.) - get_schema_terms API endpoint serving the JSON - SchemaMappingPT and ExportPackagePT PermissionTarget classes restricting Schema Mapper and Export Packages tools to institution admins - Frontend vocabulary helper module that loads the terms JSON Fixes #7714 (schema terms JSON files), #7727 (admin-only access).
Adds the frontend shell for the Schema Mapper tool: - SchemaMapper/index.tsx — main UI shell with mapping list and editor wiring - MappingList.tsx — list view of mappings - TermDropdown.tsx — searchable DwC term picker - VocabularyDialog.tsx — vocabulary key selection dialog - types.ts — shared types - userToolDefinitions: register Schema Mapper as a User Tool - OverlayRoutes: add the Schema Mapper route - SchemaConfig/Field.tsx: add 'Darwin Core' section to schema config - localization/header.ts: localized strings for the new tool Fixes #7709 (Schema Mapper tool), #7713 (vocabulary dialog), #7715 (Term mapping column), #7729 (Schema Config DwC section).
Adds the first set of mapping/dataset CRUD endpoints and the Export Packages tool entry point: - list_mappings — returns all schema mappings as JSON - list_export_datasets — returns all export datasets as JSON - clone_mapping — deep-copies a SchemaMapping (new SpQuery, all SpQueryFields, new SchemaMapping pointing to the new query) - urls.py: register the three new endpoints - OverlayRoutes: register Export Packages route - ExportPackages/index.tsx: list view shell for Export Packages tool Field references adapted to Caroline's schemamapping schema (mapping_type, is_default), and clone_mapping sets specifyuser/createdbyagent (required by schema). Restored test_clone_mapping which depends on this layer's endpoint. Fixes #7712 (cloning of schema mapping queries), #7723 (Export Packages tool).
3bf54c0 to
ffb156a
Compare
42b488f to
104e151
Compare
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
PR 5 of 7 in CAS DwC export stack. Based on #8035.
Adds clone endpoint, list APIs, and the Export Packages tool shell:
clone_mappingview — deep-copies SpQuery + SpQueryFields + SchemaMappingStack
Test plan
clone_mappingproduces new SpQuery with cloned fields including term/isstatic/staticvaluepython manage.py test specifyweb.backend.export— 33/33 passing