You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
liquid-spec tools check # runs every verifier in scripts/verifiers/
59
63
liquid-spec docs curriculum
60
64
```
61
65
@@ -84,7 +88,7 @@ When every run spec passes (0 failures, level = max), a **Congrats** addendum pr
84
88
suggested paths forward: implement an optional feature that actually had specs skipped
85
89
this run (listed dynamically from the skipped-features set, filtered through
86
90
`Features::FEATURE_DOCS` to `:optional`, excluding Ruby-interop `:unnecessary` ones),
87
-
run `--bench` for performance, or run a matrix test / contribute back to liquid-spec.
91
+
run `liquid-spec bench <adapter>` for performance, or use a matrix tool / contribute back to liquid-spec.
88
92
89
93
90
94
### Spec Quality Gates
@@ -112,15 +116,17 @@ The spec-quality portion currently enforces:
112
116
113
117
### `rake check` — spec verifiers
114
118
115
-
`rake check` runs all verifiers in `scripts/verifiers/` in-process. Each
116
-
verifier is a standalone Ruby script that prints findings (never modifies
119
+
`liquid-spec tools check` runs all verifiers in `scripts/verifiers/` in-process;
120
+
`rake check` is the contributor-task equivalent. Each verifier is a standalone Ruby
121
+
script that prints findings (never modifies
117
122
files) and returns 0 on success or non-zero on violations. Verifiers marked
118
123
`# advisory: true` in their header are non-blocking — they report known debt
119
124
but don't fail the overall check.
120
125
121
126
```bash
122
-
rake check # run all verifiers
123
-
rake prepush # run unit tests then all verifiers (standard pre-push gate)
127
+
liquid-spec tools check # run all verifiers through the CLI
128
+
rake check # equivalent contributor task
129
+
rake prepush # run unit tests then all verifiers (standard pre-push gate)
124
130
```
125
131
126
132
You can also run individual verifiers directly:
@@ -650,7 +656,7 @@ end
650
656
651
657
### Available Features
652
658
653
-
Feature selection is denylist-based. Leave `missing_features` empty to try everything, or add unsupported capabilities while the implementation is still growing. Use `liquid-spec features` (backed by `lib/liquid/spec/cli/features.rb`) as the source of truth for the current feature inventory and recommendations.
659
+
Feature selection is denylist-based. Leave `missing_features` empty to try everything, or add unsupported capabilities while the implementation is still growing. Use `liquid-spec tools features` (backed by `lib/liquid/spec/cli/features.rb`) as the source of truth for the current feature inventory and recommendations.
654
660
655
661
**Common features to list in `missing_features`:**
656
662
- `:drops`- Adapter cannot support the standard test drop library yet (see docs/test_drops.md)
@@ -676,7 +682,7 @@ Feature selection is denylist-based. Leave `missing_features` empty to try every
676
682
677
683
JSON-RPC is the main path for non-Ruby Liquid implementations. Keep it especially well documented and tested.
678
684
679
-
- Generate with `liquid-spec init --jsonrpc my_adapter.rb`. Running `liquid-spec init` with no filename generates both `liquid_adapter.rb` and `liquid_adapter_jsonrpc.rb`.
685
+
- Generate with `liquid-spec init --jsonrpc my_adapter.rb`. Running `liquid-spec init` with no filename generates both `specs/adapter.rb` and `specs/adapter-jsonrpc.rb`.
680
686
- The generated JSON-RPC adapter is executable/self-launching; use `--command=...` when you need to point it at a separate server command.
681
687
- The server implements `initialize`, `compile`, `render`, and `quit` over newline-delimited JSON-RPC on stdin/stdout.
The `liquid-spec eval` command is the primary tool for testing individual templates and discovering behavioral differences. **Always use `--compare`** to validate your implementation against the reference liquid-ruby.
704
+
The `liquid-spec tools eval` command is the primary tool for testing individual templates and discovering behavioral differences. **Always use `--compare`** to validate your implementation against the reference liquid-ruby.
699
705
700
706
### Why Use Eval?
701
707
@@ -711,7 +717,7 @@ The `liquid-spec eval` command is the primary tool for testing individual templa
711
717
712
718
```bash
713
719
# Quick test with automatic comparison to reference
The `--compare` flag runs your template against the reference liquid-ruby implementation first, then compares results. This is the best way to find behavioral differences:
0 commit comments