Skip to content

Sync: ncbo v6.6.1 release #27

Merged
alexskr merged 23 commits into
ontoportal:masterfrom
ncbo:master
Sep 25, 2025
Merged

Sync: ncbo v6.6.1 release #27
alexskr merged 23 commits into
ontoportal:masterfrom
ncbo:master

Conversation

@alexskr

@alexskr alexskr commented Sep 24, 2025

Copy link
Copy Markdown
Contributor

alexskr and others added 23 commits February 3, 2025 17:30
Develop to master merge, release v6.5.0
Add `system_controlled` DSL to LinkedData::Hypermedia::Resource

- Adds `:system_controlled` to the DSL SETTINGS list
- Allows declaring system-assigned (internally-managed) attributes in model classes
- Intended for use in the API layer to reject client input for restricted fields like `uploadFilePath`
- Mirrors the behavior of other DSLs like `serialize_never` (last call wins)
- Add selected attributes to system_controlled list for User, OntologySubmission, Note and Project model as a proof of concept. More models may follow after further analysis.

See ncbo/bioportal-project#348
Feature: submission version validation and fixes to the metadata auto-extraction
Develop -> Master merge, release v6.6.0
- Switch from shelling out to `file --mime` to checking magic bytes
  (PK for ZIP, 1F 8B for GZIP). Improves portability and removes
  external dependency.
- Add `safe_join` guard to block path traversal.
- Normalize gzip names via `resolve_gzip_name` (strip control chars,
  collapse to basename, ensure non-empty).
- Explicitly exclude .tar.gz and .tgz files (not supported yet).
- align with RubyZip v3+ semantics:
    - enforce explicit destination_directory (no implicit cwd writes),
    - block path traversal (`../` entries skipped).
- use streaming writes (`IO.copy_stream`) to reduce memory usage.
- Rename `files_from_zip` to `filenames_in_archive` for clarity
  (returns entry names, not extracted files
- add rubyzip gem as dependency to gemspec
- pin thin gem to v1 for compatibility reasons
 Refactor: improve archive handling in LinkedData::Utils::FileHelpers
Develop -> Master merge, release v6.6.1
@alexskr alexskr merged commit a698a4f into ontoportal:master Sep 25, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants