Skip to content

Releases: netresearch/nr-landingpage

v0.3.16

Choose a tag to compare

@github-actions github-actions released this 29 Sep 23:25
v0.3.16
4e9c77f

Highlights

A patch release of fixes to the backend module and the generation wizard: the extension now follows the TYPO3 light and dark colour scheme, the wizard's keyboard and focus behaviour is corrected, and answers and replies no longer get lost or land in the wrong place. No breaking changes; composer require netresearch/nr-landingpage:^0.3 picks it up.

Light and dark scheme, keyboard use

  • The landing page module, the wizard, the preview dialog and the FormEngine and page-module helpers follow TYPO3's light and dark scheme on 13.4 and 14.3. Badges, icons, muted text, buttons, the selected template card and the loading spinners use core classes and tokens instead of Bootstrap classes that keep one colour or have no rules in the 14.3 backend (#69 by @CybotTM).
  • The template cards in step 1 are a radio group: arrow keys move the selection, Space and Enter select, and screen readers announce each card's description. Arrow keys inside a step no longer slide the wizard past a locked Next button (#69 by @CybotTM).
  • Enter that a control inside the step has already handled no longer advances the wizard: Enter in the image search only searches, and Enter on a template or image card only selects it (#72 by @CybotTM).
  • After Next, Enter or the automatic advance in re-generate mode, focus moves to the first field of the new step, or to Next, Previous or Cancel when the step has no field, instead of staying on the page body (#78 by @CybotTM, fixes #77 reported by @CybotTM).

Answers and replies stay where they belong

  • Going Back and Next again keeps the briefing title and answers; a title typed and cleared stays empty (#69 by @CybotTM).
  • In re-generate mode, Back to the template step no longer jumps forward again and keeps the briefing edits (#74 by @CybotTM, fixes #73 reported by @CybotTM).
  • A reply that arrives after the wizard was closed and reopened, or for a step or section the editor has already left, is dropped: it no longer moves, locks, fills or saves into the open wizard. Focus stays on Back after going back (#76 by @CybotTM, fixes #75 reported by @CybotTM).

Maintenance

  • Both content-step renderers share one image section and intro; the wizard's behaviour is unchanged and a new end-to-end test pins the image section in structured and creative mode (#71 by @CybotTM).
  • Build/Scripts/runTests.sh -s functional runs the 22 functional tests instead of reporting success with no test executed, and an empty test selection now fails the run. CI was not affected (#70 by @CybotTM, addresses #64 reported by @CybotTM).

Full Changelog: v0.3.15...v0.3.16

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.16.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.16.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.15

Choose a tag to compare

@github-actions github-actions released this 27 Sep 00:01
v0.3.15
0477af6

nr_landingpage 0.3.15 accepts nr-llm v0.38.0 and installs only on the TYPO3 long-term-support releases 13.4 and 14.3.

Changed

  • nr-llm ^0.34 || ^0.35 || ^0.36 || ^0.37 || ^0.38: an installation with this extension can update to nr-llm 0.38. On a 0.x version, ^0.37 does not admit 0.38.0. (#68, @CybotTM)
  • Breaking for TYPO3 14.0 to 14.2: the extension requires TYPO3 13.4 LTS or 14.3 LTS. Installations on the non-LTS releases 14.0, 14.1 and 14.2 get no new versions; update TYPO3 to 14.3 first. (#67, @CybotTM)
  • Dependency updates for GitHub Actions now come from Renovate only; the Dependabot configuration is removed. (#66, @CybotTM)

Full changelog: v0.3.14...v0.3.15

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.15.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.15.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.14

Choose a tag to compare

@github-actions github-actions released this 24 Sep 09:25
v0.3.14
d9b4989

Changes

Accepts nr-llm 0.37, in #65 by @CybotTM. composer.json requires netresearch/nr-llm at ^0.34 || ^0.35 || ^0.36 || ^0.37, and ext_emconf.php declares nr_llm 0.34.0-0.37.99 to match. On a 0.x version ^0.36 does not admit 0.37.0, so 0.3.13 kept an installation from moving to nr-llm 0.37.0. Nothing else changes.

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.14.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.14.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.13

Choose a tag to compare

@github-actions github-actions released this 23 Sep 23:25
v0.3.13
2c1f9a3

Highlights

nr-landingpage is licensed under GPL-2.0-or-later throughout, and it accepts netresearch/nr-llm 0.36.

Licence

The LICENSE file now holds the GNU GPL version 2 text instead of MIT, so the repository states one licence: GPL-2.0-or-later, the grant composer.json and CONTRIBUTING.md already declared. The code was previously published under MIT, which permits redistribution under GPL-2.0-or-later. Changed in #61 by @CybotTM, closing #60.

Dependencies

netresearch/nr-llm is accepted at ^0.34 || ^0.35 || ^0.36 (ext_emconf.php: 0.34.0-0.36.99). The range is widened, not moved: installations on nr-llm 0.34 or 0.35 keep working. Changed in #63 by @CybotTM.

Repository

.bestpractices.json provides evidence-backed answers for the OpenSSF Best Practices badge, including the test suites CI runs (#59, #62 by @CybotTM).

Full Changelog: v0.3.12...v0.3.13

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.13.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.13.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.12

Choose a tag to compare

@github-actions github-actions released this 18 Sep 13:47
v0.3.12
9c25fe5

Install this wherever netresearch/contexts is installed too. Until now that combination made every landing-page template record unopenable in the backend: /typo3/record/edit?edit[tx_nrlandingpage_domain_model_template][…]=edit answered 500, not for the field that broke but for the whole record.

What was wrong

RuntimeException 1483890332 — "Field controls must return an iconIdentifier" — from FieldControl.php:93. The two controls on system_prompt were never the cause: both hardcode an icon and both return an empty array for a new record, which the caller skips before the check. The renderType simply never resolved to them, and NodeFactory has one fallback for a renderType it does not know — UnknownElement, whose result is non-empty and carries no icon.

$GLOBALS['TYPO3_CONF_VARS']['SYS']['formEngine']['nodeRegistry'] is a plain array keyed by integer. This extension used the placeholder block 1700000001–1700000005; netresearch/contexts uses 1700000001–1700000003. Two keys belonged to both, the ext_localconf.php loaded later overwrote the earlier entry, and nothing reported it — no exception, no log line, no deprecation. Measured on a real installation, contexts writes last, so optimizePrompt and testGenerate were gone before FormEngine looked for them.

Note the asymmetry: contexts registers its three as element renderTypes, so had it lost the collision the result would have been a warning box in its own forms. Losing it on the field-control side is an outage.

What changed

Five keys, fixed by @CybotTM in #57: the four nodeRegistry entries and the ContextMenu provider now use registration timestamps, and the file says why they are not round numbers. Node names, priorities and classes are untouched, so anything reading the registry by name is unaffected — the keys are indices nothing looks up.

The ContextMenu key moved although nothing collides with it today. It sat three lines above the ones that did, in the same placeholder block, and leaving it there would have left the next reader a round number to copy.

Upgrading

composer update netresearch/nr-landingpage. No configuration change, no migration, no database update.

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.12.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.12.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.11

Choose a tag to compare

@github-actions github-actions released this 17 Sep 09:36
v0.3.11
927ea1b

Changes

  • Merge pull request #56 from netresearch/release/v0.3.11
  • chore(release): 0.3.11
  • Merge pull request #55 from netresearch/chore/nr-llm-0.35
  • docs: state the nr-llm range the extension now accepts
  • fix(deps): widen the nr_llm range in ext_emconf.php too
  • chore(deps): allow nr-llm 0.35 alongside 0.34
  • chore(deps): update dependency phpat/phpat to ^0.11 || ^0.12 (#52)
  • chore(deps): update dependency @playwright/test to v1.63.0 (#51)
  • Merge pull request #1 from netresearch/renovate/configure
  • Add renovate.json
  • Merge pull request #50 from netresearch/fix/ignore-test-runner-artifacts
  • fix: ignore the var/ directory the test runner leaves behind

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.11.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.11.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.10

Choose a tag to compare

@github-actions github-actions released this 03 Sep 17:08
v0.3.10
b73f8fa

Requires nr-llm 0.34

The netresearch/nr-llm floor moves to ^0.34, and ext_emconf.php with it — its upper bound is now 0.34.99 rather than 0.99.99, so the composer and TER install paths no longer disagree about everything above 0.34. By @CybotTM in #47.

nr-llm 0.34.0 has one breaking change: its backend modules left Administration for a shared AI section, and the container URL /module/nrllm is gone with no successor (ADR-183). This extension registers no module under that container and links to no nr-llm route, so the move reaches nothing here. Checked against the released 0.34.0 before the floor was raised: phpstan clean, 528 unit tests.

The documented requirement was never the real one

README.md, AGENTS.md and Documentation/Installation/Index.rst named netresearch/nr-llm ^0.4.0 — which means >=0.4.0 <0.5.0 and has therefore excluded the actual dependency for several releases, ^0.33 included. Nothing checks prose against composer.json, which is how it drifted. All three now state ^0.34.

docs/plans/2026-03-06-* still say 0.4.0 on purpose: they are dated design records of what was planned that day, not statements about what the extension requires now.

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.10.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.10.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.9

Choose a tag to compare

@github-actions github-actions released this 21 Aug 16:29
v0.3.9
d27ca23

Changes

  • Merge pull request #46 from netresearch/release/0.3.9
  • chore(release): 0.3.9
  • Merge pull request #45 from netresearch/chore/nr-llm-033
  • build: require netresearch/nr-llm ^0.33

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.9.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.9.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.8

Choose a tag to compare

@github-actions github-actions released this 21 Aug 06:56
v0.3.8
29e2cec

Changes

  • Merge pull request #44 from netresearch/release/0.3.8
  • chore(release): 0.3.8
  • Merge pull request #43 from netresearch/chore/nr-llm-032
  • build: require netresearch/nr-llm ^0.32
  • Merge pull request #42 from netresearch/feat/caller-source
  • feat: name this extension as caller source on every nr-llm call

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.8.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.8.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.

v0.3.7

Choose a tag to compare

@github-actions github-actions released this 20 Aug 13:30
v0.3.7
374bf42

Highlights

Accepts nr-llm 0.31, the release whose Analytics module breaks usage and cost down per calling extension. Landing-page generation is one of the more expensive things an editor can trigger — a briefing turns into a full page of content elements — so being able to see that spend separated from everything else on the installation is worth having. Note that this extension does not yet name itself on its calls, so its usage currently lands in the Unattributed bucket of that breakdown; annotating it is a follow-up (@CybotTM).

Upgrading

A patch release: a dependency's minor is not this extension's minor. No behaviour change, no API change. Requires nr-llm ^0.31.

Installation

composer require netresearch/nr-landingpage

Security

All release artifacts are signed with Sigstore keyless signing.

Verify signatures

cosign verify-blob \
  --bundle nr-landingpage-0.3.7.zip.sigstore.json \
  --certificate-identity-regexp "https://github.com/netresearch/.*" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  nr-landingpage-0.3.7.zip

Verify checksums

sha256sum -c checksums.txt

Software Bill of Materials (SBOM)

SBOMs are provided in both SPDX and CycloneDX formats for supply chain transparency.