Add ZIO HTTP template2 support#446
Conversation
|
Tick the box to add this pull request to the merge queue (same as
|
34de901 to
9cd018a
Compare
There was a problem hiding this comment.
Pull request overview
This PR extends the CSS DSL generator with a new ZIO HTTP template2 target, adding publishable _ziohttp modules across supported CSS frameworks and documenting usage, plus a new rendering test to validate class composition and attribute normalization.
Changes:
- Added a
TargetImpl.ZioHttpTemplate2generator target and wired it into code generation (supportinjection) for generated DSL modules. - Introduced new
*_ziohttpSBT subprojects for Bootstrap/Bulma/Semantic/Fomantic/Font Awesome, and updated README install coordinates generation to emit safe<version>placeholders on snapshots. - Added a
bootstrap3_ziohttpmunit test suite covering chaining,Ccomposition, and class-attribute preservation/normalization.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| README.md | Documents the new ZIO HTTP template2 target and publishes module coordinates + usage example. |
| project/TargetImpl.scala | Adds the ZIO HTTP template2 target implementation and support definitions. |
| project/Generator.scala | Injects per-target support code into generated DSL modules. |
| generateInstructions.sbt | Extends the README artifact table generator for _ziohttp and snapshot-safe <version> placeholders. |
| build.sbt | Adds *_ziohttp subprojects and zio-http dependency wiring. |
| bootstrap3_ziohttp/src/test/scala/cssdsl/bootstrap3/ZioHttpTemplate2DslSpec.scala | Adds rendering tests validating class composition and existing class-attr preservation/normalization. |
e840053 to
e885021
Compare
|
Warning Review limit reached
Next review available in: 4 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
e885021 to
69254b2
Compare
Add a ZIO HTTP template2 target implementation and publishable modules for every supported CSS framework. Generated tag extensions append classes without losing existing attributes, while C values integrate safely with template2 className attributes instead of becoming text children. Extend the generator with target-specific support definitions, document the new coordinates and usage, and add cross-built rendering tests for class composition and attribute normalization. Snapshot-generated install instructions now use a version placeholder so pull-request documentation does not advertise unpublished coordinates.
69254b2 to
87c2d94
Compare
Summary
ZioHttpTemplate2generator target backed by zio-http 3.11.3_ziohttpmodules for Bootstrap 3/4/5, Bulma, Tabler, Semantic UI, Fomantic UI, and Font AwesomeC.*class-name values that compose with both vararg and collection forms of template2'sclassNameAPI without becoming text childrenCobjectsValidation
tabler_ziohttp/compilepassed on both Scala versionsgithubWorkflowCheckpassedLit.Stringso managed-source rendering does not require tokenizing parsed quasiquote origins