Skip to content

Bump nanopub to 1.90.0 and drop placeholder/expansion code it now provides#471

Merged
tkuhn merged 1 commit into
masterfrom
chore/bump-nanopub-1.90.0
May 27, 2026
Merged

Bump nanopub to 1.90.0 and drop placeholder/expansion code it now provides#471
tkuhn merged 1 commit into
masterfrom
chore/bump-nanopub-1.90.0

Conversation

@tkuhn
Copy link
Copy Markdown
Contributor

@tkuhn tkuhn commented May 27, 2026

nanopub 1.90.0 adds _multi_val placeholder support (and a strict flag) to QueryTemplate — the only reason nanodash still carried its own copies of the grlc placeholder conventions and query expansion. With the bump those become redundant.

Changes

  • pom.xml — nanopub 1.89.01.90.0.
  • QueryParamField — removed the duplicated static isMultiPlaceholder/isOptional/getParamName (now identical to QueryTemplate's, including the _multi_val support nanodash had added locally). Instance methods and expandValues delegate to QueryTemplate.
  • GrlcQuery.expandQuery — reduced to a thin adapter that maps the UI QueryParamFields into QueryTemplate.expandQuery(params, false). strict=false provides the lenient partial expansion used for the Yasgui link. Dropped the duplicated substitution/serialization loop and escapeSlashes.
  • ViewList, DownloadRdfPage, LookupApis — call QueryTemplate.* directly (isOptionalisOptionalPlaceholder); unused QueryParamField imports removed.

Net: −81 / +27 across 6 files; the _multi_val convention now lives in exactly one place (nanopub-java).

Behavior note

For an unfilled multi-value placeholder, the Yasgui-link query now has its empty VALUES ?x {} block removed (library behavior) instead of left in place — a runnable, unconstrained query rather than one returning nothing. The auto_execution_blocker guard for unfilled mandatory fields is unchanged.

Verification

  • mvn compile clean on 1.90.0.
  • mvn test: 691 run, 0 failures, 0 errors (incl. GrlcQueryTest).

🤖 Generated with Claude Code

…it now provides

nanopub 1.90.0 adds _multi_val placeholder support to QueryTemplate, which was
the only reason nanodash carried its own copies of the grlc placeholder
conventions and query expansion. With the bump these become redundant:

- QueryParamField: remove the duplicated static isMultiPlaceholder/isOptional/
  getParamName; instance methods and expandValues now delegate to QueryTemplate.
- GrlcQuery.expandQuery: reduce to a thin adapter that maps the UI param fields
  into QueryTemplate.expandQuery(params, false) (strict=false gives the lenient
  partial expansion used for the Yasgui link); drop the duplicated substitution/
  serialization loop and escapeSlashes helper.
- ViewList, DownloadRdfPage, LookupApis: call QueryTemplate.* directly.

Behavior note: an unfilled multi-value placeholder now has its empty VALUES
block removed (library behavior) rather than left in place, yielding a runnable
Yasgui link.

mvn test: 691 run, 0 failures.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tkuhn tkuhn merged commit 34154ab into master May 27, 2026
8 checks passed
@tkuhn tkuhn deleted the chore/bump-nanopub-1.90.0 branch May 27, 2026 14:41
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.

1 participant