Skip to content

Initial webware-htmx import from IMS - #1

Merged
tyrsson merged 4 commits into
0.1.xfrom
initial-import
Aug 20, 2026
Merged

tyrsson merged 4 commits into
0.1.xfrom
initial-import

Conversation

@tyrsson

@tyrsson tyrsson commented Aug 20, 2026

Copy link
Copy Markdown
Member

Imports the Htmx module from inventory-management-system and aligns it with the webware-tools pipeline.

Highlights

  • Namespace Htmx\Webware\Htmx\
  • composer: platform 8.4.99, test scripts, php-standard-library/type
  • PHPUnit 13.1 — 64 unit + 4 integration tests, including the two critical behaviors: the renderer's body/layout layering and userland config override of the body template via ConfigAggregator
  • Two boundary bugs fixed: ServerRequestFilter header case-insensitivity, and LaminasRendererFactory layout/body conflation (double-wrap)
  • mago lint/analyze/guard clean (19 findings deferred in baselines)
  • infection/codecov/renovate/phpbench configs + CI workflow wrapper + README badges

Depends on: none (leaf package — mezzio + laminas-view only).

Import the Htmx module from inventory-management-system and align it with the webware-tools pipeline.

- Htmx\ -> Webware\Htmx namespace
- composer (platform 8.4.99, test scripts, php-standard-library/type)
- phpunit 13.1 + 68 tests (body/layout renderer, config override)
- mago tooling with 19 deferred findings baselined
- infection/codecov/renovate/phpbench configs + CI workflow wrapper
- README badges and copilot instructions
@tyrsson tyrsson added tooling-alignment Tooling alignment with webware-tools reusable workflow ims-migration Package moving out of the inventory-management-system application labels Aug 20, 2026
@codecov

codecov Bot commented Aug 20, 2026

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

ℹ️ You can also turn on project coverage checks and project coverage reporting on Pull Request comment

Thanks for integrating Codecov - We've got you covered ☂️

The layout/body selection in LaminasRendererFactory (first/last over a combined candidate list) is intentional: the action template renders into the body, which renders into the layout. Revert the earlier split into separate candidate lists and restore the renderer's original type declarations.

Update ConfigOverrideTest to configure a layout (as a real Mezzio app always does) and assert the full action -> body -> layout output.
Replace the on-the-fly temp template files with a committed test/integration/templates directory (page/body/layout/userland namespaced layout) so the integration tests prove real path resolution and loading, not templates constructed inside the test.
Signed-off-by: Joey Smith <jsmith@webinertia.net>
@tyrsson
tyrsson merged commit bf28733 into 0.1.x Aug 20, 2026
11 checks passed
@tyrsson
tyrsson deleted the initial-import branch August 20, 2026 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ims-migration Package moving out of the inventory-management-system application tooling-alignment Tooling alignment with webware-tools reusable workflow

Projects

Development

Successfully merging this pull request may close these issues.

1 participant