inquirex 0.3.1 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/README.md +20 -3
- data/justfile +47 -16
- data/lib/inquirex/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ef8604fa6b1eb6fb6cd9506c696c806067d209abf6260872f5d0cc87d5b6eae0
|
|
4
|
+
data.tar.gz: 1a543f219f202ff5ae05fcae1040e460391e044b177a94612519618d9604f943
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: eeeb13a340aaf5169f661c4fce77bdc666e68d8fac9c7b4ae52757c5b5999b46ae0a9ec83042c680d3f1b57302cf9f0e08c4e9b80467ccd98e2447294f0110cb
|
|
7
|
+
data.tar.gz: 0b213dde96f8ec277e31d302a557bb665361046529b9ebf75c19a159518f7f84e7d18ec6db4927e7d23d1ca4bd1dd1f0e68208c971624cd2c96b1624939dcc74
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
4.0.
|
|
1
|
+
4.0.5
|
data/README.md
CHANGED
|
@@ -4,6 +4,19 @@
|
|
|
4
4
|
|
|
5
5
|
`inquirex` is a pure Ruby, declarative, rules-driven questionnaire engine for building conditional intake forms, qualification wizards, and branching surveys.
|
|
6
6
|
|
|
7
|
+
> [!IMPORTANT]
|
|
8
|
+
>
|
|
9
|
+
> Note that `inquirex` is the base gem of the ecosystem that contains:
|
|
10
|
+
>
|
|
11
|
+
> - [`inquirex`](https://github.com/inquirex/inquirex)
|
|
12
|
+
> - [`inquirex-llm`](https://github.com/inquirex/inquirex-llm)
|
|
13
|
+
> - [`inquirex-tty`](https://github.com/inquirex/inquirex-)
|
|
14
|
+
> - [`inquirex-js`](https://github.com/inquirex/inquirex-js)
|
|
15
|
+
>
|
|
16
|
+
> For a presentation on these gems and what they do please watch the [RubySF presentation](https://www.youtube.com/watch?v=iaoKW7Ap3_M&t=1s) and you can also [view the slides form the presentation](https://reinvent.one/images/talks/pdfs/2026.inquirex.pdf).
|
|
17
|
+
|
|
18
|
+
## Summary
|
|
19
|
+
|
|
7
20
|
It is the core gem in the Inquirex ecosystem and focuses on:
|
|
8
21
|
|
|
9
22
|
- A conversational DSL (`ask`, `say`, `header`, `btw`, `warning`, `confirm`)
|
|
@@ -17,8 +30,8 @@ It is the core gem in the Inquirex ecosystem and focuses on:
|
|
|
17
30
|
|
|
18
31
|
## Status
|
|
19
32
|
|
|
20
|
-
- Version: `0.
|
|
21
|
-
- Ruby: `>= 4.0.0` (project currently uses `4.0.
|
|
33
|
+
- Version: `0.4.0`
|
|
34
|
+
- Ruby: `>= 4.0.0` (project currently uses `4.0.5`)
|
|
22
35
|
- Test suite: `220 examples, 0 failures`
|
|
23
36
|
- Coverage: ~`94%` line coverage
|
|
24
37
|
|
|
@@ -282,7 +295,11 @@ engine.totals # => { price: 700.0, complexity: 4 }
|
|
|
282
295
|
|
|
283
296
|
### JSON wire format
|
|
284
297
|
|
|
285
|
-
Accumulators serialize predictably, keeping the contract with `inquirex-js` explicit
|
|
298
|
+
Accumulators serialize predictably, keeping the contract with `inquirex-js` explicit.
|
|
299
|
+
|
|
300
|
+
> [!NOTE]
|
|
301
|
+
>
|
|
302
|
+
> You can convert between Ruby DSL and JSON using the [`inquirex-tty`](https://github.com/inquirex/inquirex-tty) gem.
|
|
286
303
|
|
|
287
304
|
```json
|
|
288
305
|
{
|
data/justfile
CHANGED
|
@@ -1,38 +1,69 @@
|
|
|
1
|
-
|
|
1
|
+
# Tell 'just' to run bash, source our setup script, then execute the recipe
|
|
2
|
+
set shell := ["bash", "-c"]
|
|
2
3
|
|
|
3
|
-
|
|
4
|
+
version := `grep VERSION lib/inquirex/version.rb | awk '{print $3}' | tr -d '"' | tr -d '\n'`
|
|
5
|
+
rbenv := 'eval "$(rbenv init bash)"; bundle exec '
|
|
6
|
+
repo := 'git@github.com:inquirex/inquirex.git'
|
|
4
7
|
|
|
5
8
|
[no-exit-message]
|
|
6
9
|
recipes:
|
|
7
|
-
|
|
10
|
+
just --choose
|
|
8
11
|
|
|
9
12
|
# Sync all dependencies
|
|
10
13
|
install:
|
|
11
|
-
|
|
14
|
+
bin/setup
|
|
12
15
|
|
|
13
|
-
|
|
14
|
-
lint-fix *args:
|
|
15
|
-
{{rbenv}} && bundle exec rubocop -a
|
|
16
|
-
|
|
17
|
-
alias format := lint-fix
|
|
16
|
+
build: install
|
|
18
17
|
|
|
19
18
|
# Lint and reformat files
|
|
20
19
|
lint:
|
|
21
|
-
{{rbenv}}
|
|
20
|
+
{{ rbenv }} rubocop
|
|
21
|
+
|
|
22
|
+
# Lint and reformat files (-a) — pass -A as an argument
|
|
23
|
+
format *args:
|
|
24
|
+
{{ rbenv }} rubocop -a {{ args }}
|
|
22
25
|
|
|
23
26
|
# Run all the tests
|
|
24
27
|
test *args:
|
|
25
|
-
|
|
28
|
+
export ENVIRONMENT=test; {{ rbenv }} rspec {{args}}
|
|
26
29
|
|
|
27
30
|
# Run tests with coverage
|
|
28
31
|
test-coverage *args:
|
|
29
|
-
ENVIRONMENT=test COVERAGE=true
|
|
32
|
+
export ENVIRONMENT=test; export COVERAGE=true; {{ rbenv }} rspec {{ args }}
|
|
33
|
+
|
|
34
|
+
check-all: lint test-coverage
|
|
30
35
|
|
|
31
36
|
clean:
|
|
32
37
|
#!/usr/bin/env bash
|
|
33
|
-
find . -name .DS_Store -delete -print || true
|
|
34
|
-
rm -rf tmp/*
|
|
38
|
+
@find . -name .DS_Store -delete -print || true
|
|
39
|
+
@rm -rf tmp/*
|
|
35
40
|
|
|
36
41
|
# Run all lefthook pre-commit hooks
|
|
37
|
-
|
|
38
|
-
{{rbenv}}
|
|
42
|
+
lefthook:
|
|
43
|
+
{{ rbenv }} lefthook run pre-commit --all-files
|
|
44
|
+
|
|
45
|
+
# Print current gem version
|
|
46
|
+
version:
|
|
47
|
+
@echo "{{ version }}"
|
|
48
|
+
|
|
49
|
+
# Clobber
|
|
50
|
+
clobber:
|
|
51
|
+
{{ rbenv }} rake clobber
|
|
52
|
+
|
|
53
|
+
# Generate documentation
|
|
54
|
+
doc:
|
|
55
|
+
#!/usr/bin/env bash
|
|
56
|
+
{{ rbenv }} rake doc
|
|
57
|
+
|
|
58
|
+
# Create
|
|
59
|
+
publish: build
|
|
60
|
+
{{ rbenv }} rake release[remote]
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
# Tag v{{ version }}, publish the GH release, & refresh the Homebrew tap.
|
|
64
|
+
release:
|
|
65
|
+
git fetch --tags
|
|
66
|
+
git tag -f "v{{ version }}"
|
|
67
|
+
git push -f --tags
|
|
68
|
+
gh release delete -y "v{{ version }}" --repo {{ repo }} 2>/dev/null || true
|
|
69
|
+
gh release create "v{{ version }}" --generate-notes --repo {{ repo }}
|
data/lib/inquirex/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: inquirex
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Konstantin Gredeskoul
|
|
@@ -86,7 +86,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
86
86
|
- !ruby/object:Gem::Version
|
|
87
87
|
version: '0'
|
|
88
88
|
requirements: []
|
|
89
|
-
rubygems_version: 4.0.
|
|
89
|
+
rubygems_version: 4.0.16
|
|
90
90
|
specification_version: 4
|
|
91
91
|
summary: A declarative, rules-driven questionnaire engine for building conditionally-branching
|
|
92
92
|
intake forms, qualification wizards, and surveys in pure Ruby.
|