natra 0.0.7 → 2.0.0
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/.github/dependabot.yml +17 -0
- data/.github/workflows/ci.yml +50 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +26 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.md +58 -0
- data/CODE_OF_CONDUCT.md +0 -0
- data/Gemfile +12 -6
- data/Gemfile.lock +157 -116
- data/Guardfile +7 -5
- data/LICENSE.txt +0 -0
- data/README.md +138 -32
- data/Rakefile +4 -2
- data/bin/console +2 -0
- data/bin/natra +5 -3
- data/lib/extensions/string.rb +15 -11
- data/lib/natra/cli.rb +7 -2
- data/lib/natra/generators/app/app_generator.rb +32 -19
- data/lib/natra/generators/app/templates/Dockerfile +28 -10
- data/lib/natra/generators/app/templates/Gemfile +26 -20
- data/lib/natra/generators/app/templates/Guardfile +2 -0
- data/lib/natra/generators/app/templates/README.md +29 -30
- data/lib/natra/generators/app/templates/Rakefile +3 -2
- data/lib/natra/generators/app/templates/app/controllers/application_controller.rb +2 -0
- data/lib/natra/generators/app/templates/app/views/welcome.erb +2 -1
- data/lib/natra/generators/app/templates/bin/setup +4 -4
- data/lib/natra/generators/app/templates/config/database.yml +6 -6
- data/lib/natra/generators/app/templates/config/environment.rb +4 -5
- data/lib/natra/generators/app/templates/config/initializers/oj.rb +5 -4
- data/lib/natra/generators/app/templates/config/initializers/redis.rb +5 -3
- data/lib/natra/generators/app/templates/config/puma.rb +11 -5
- data/lib/natra/generators/app/templates/config.ru +2 -0
- data/lib/natra/generators/app/templates/db/migrate/add_extensions.rb +3 -1
- data/lib/natra/generators/app/templates/docker-compose.yml +3 -5
- data/lib/natra/generators/app/templates/rubocop.yml +8 -11
- data/lib/natra/generators/app/templates/spec/application_controller_spec.rb +2 -0
- data/lib/natra/generators/app/templates/spec/spec_helper.rb +10 -9
- data/lib/natra/generators/controller/controller_generator.rb +4 -0
- data/lib/natra/generators/model/migration.rb.erb +1 -1
- data/lib/natra/generators/model/model_generator.rb +8 -2
- data/lib/natra/generators/scaffold/scaffold_generator.rb +3 -0
- data/lib/natra/generators/service/service_generator.rb +31 -0
- data/lib/natra/generators/service/template/service.rb.erb +11 -0
- data/lib/natra/version.rb +3 -1
- data/lib/natra.rb +4 -0
- data/natra.gemspec +14 -11
- metadata +35 -39
- data/.coveralls.yml +0 -2
- data/.travis.yml +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b1eefefa19c93fe43aaa3517a2340b733bd4eacacf7de8d503358aae9a050628
|
|
4
|
+
data.tar.gz: e6fbb6a64d467edb3cfca2cc7dc195e81bd49b408ba72846e1ba06733b183d9f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a59ad552ba765c8c0a3f9e2db6ecf40fa82b2fab457403191f39e2cd4107c7c05350cbba4c645454c25f1ad0d696c891f1c4b6018718a71c702eb1b1e20058e1
|
|
7
|
+
data.tar.gz: 78a9793a0257e56a3e65431859e1648558be2f940fc2e94874f2bd77c9689a3c8099c885d272f611903fbe3a2208c08fc105771ec9abe30f36f99e7bac75c7b0
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: bundler
|
|
4
|
+
directory: "/"
|
|
5
|
+
schedule:
|
|
6
|
+
interval: weekly
|
|
7
|
+
open-pull-requests-limit: 10
|
|
8
|
+
groups:
|
|
9
|
+
development:
|
|
10
|
+
dependency-type: development
|
|
11
|
+
runtime:
|
|
12
|
+
dependency-type: production
|
|
13
|
+
|
|
14
|
+
- package-ecosystem: github-actions
|
|
15
|
+
directory: "/"
|
|
16
|
+
schedule:
|
|
17
|
+
interval: weekly
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [master]
|
|
6
|
+
pull_request:
|
|
7
|
+
|
|
8
|
+
permissions:
|
|
9
|
+
contents: read
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
test:
|
|
13
|
+
name: Ruby ${{ matrix.ruby }}
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
strategy:
|
|
16
|
+
fail-fast: false
|
|
17
|
+
matrix:
|
|
18
|
+
ruby: ['3.3', '3.4']
|
|
19
|
+
steps:
|
|
20
|
+
- uses: actions/checkout@v4
|
|
21
|
+
- uses: ruby/setup-ruby@v1
|
|
22
|
+
with:
|
|
23
|
+
ruby-version: ${{ matrix.ruby }}
|
|
24
|
+
bundler-cache: true
|
|
25
|
+
- name: Run specs
|
|
26
|
+
run: bundle exec rspec
|
|
27
|
+
- name: Coverage summary
|
|
28
|
+
if: always() && matrix.ruby == '3.3'
|
|
29
|
+
run: |
|
|
30
|
+
{
|
|
31
|
+
echo '### Coverage'
|
|
32
|
+
ruby -rjson -e 'r = JSON.parse(File.read("coverage/.last_run.json"))["result"]; puts "- Line: #{r["line"]}%"; puts "- Branch: #{r["branch"]}%"'
|
|
33
|
+
} >> "$GITHUB_STEP_SUMMARY"
|
|
34
|
+
- name: Upload coverage report
|
|
35
|
+
if: always() && matrix.ruby == '3.3'
|
|
36
|
+
uses: actions/upload-artifact@v4
|
|
37
|
+
with:
|
|
38
|
+
name: coverage
|
|
39
|
+
path: coverage/
|
|
40
|
+
|
|
41
|
+
rubocop:
|
|
42
|
+
runs-on: ubuntu-latest
|
|
43
|
+
steps:
|
|
44
|
+
- uses: actions/checkout@v4
|
|
45
|
+
- uses: ruby/setup-ruby@v1
|
|
46
|
+
with:
|
|
47
|
+
ruby-version: '3.3'
|
|
48
|
+
bundler-cache: true
|
|
49
|
+
- name: RuboCop
|
|
50
|
+
run: bundle exec rubocop
|
data/.gitignore
CHANGED
data/.rubocop.yml
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
AllCops:
|
|
2
|
+
TargetRubyVersion: 3.3
|
|
3
|
+
NewCops: enable
|
|
4
|
+
SuggestExtensions: false
|
|
5
|
+
Exclude:
|
|
6
|
+
- 'lib/natra/generators/*/templates/**/*'
|
|
7
|
+
- 'lib/natra/generators/*/template/**/*'
|
|
8
|
+
- 'vendor/**/*'
|
|
9
|
+
- 'coverage/**/*'
|
|
10
|
+
|
|
11
|
+
Metrics/BlockLength:
|
|
12
|
+
Exclude:
|
|
13
|
+
- 'Guardfile'
|
|
14
|
+
- 'natra.gemspec'
|
|
15
|
+
- 'spec/**/*'
|
|
16
|
+
|
|
17
|
+
Metrics/ClassLength:
|
|
18
|
+
Exclude:
|
|
19
|
+
- 'lib/natra/generators/app/app_generator.rb'
|
|
20
|
+
|
|
21
|
+
Metrics/AbcSize:
|
|
22
|
+
Exclude:
|
|
23
|
+
- 'lib/natra/generators/model/model_generator.rb'
|
|
24
|
+
|
|
25
|
+
Gemspec/RequireMFA:
|
|
26
|
+
Enabled: false
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.3.10
|
data/CHANGELOG.md
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project are documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [2.0.0] - 2026-10-04
|
|
11
|
+
|
|
12
|
+
Changes since 0.0.8.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
|
|
16
|
+
- `natra service_object NAME` generates a plain Ruby service object in `app/services`.
|
|
17
|
+
- `natra new` generates `config/puma.rb` and the Oj initializer, which were in the templates but never copied, and `config/environment.rb` loads `config/initializers`.
|
|
18
|
+
- `natra new --redis` adds the `redis` gem to the generated Gemfile.
|
|
19
|
+
- GitHub Actions runs the specs on Ruby 3.3 and 3.4 and runs RuboCop. CI fails below 100% line and branch coverage.
|
|
20
|
+
- A `.rubocop.yml` for the gem, and specs covering the CLI and every generator.
|
|
21
|
+
- This changelog.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- natra requires Ruby 3.3 or newer.
|
|
26
|
+
- Dependency upgrades: thor 1.x (from 0.20), activesupport 8.1 (the runtime constraint is now `>= 6.1, < 9`), rubocop 1.x (from 0.63), Bundler 2.7, nokogiri 1.19, rack 3.2, rspec 3.13, rake 13.4, guard 2.20, guard-rubocop 1.5 and active_model_serializers 0.10.16, plus their transitive dependencies.
|
|
27
|
+
- Coverage uses SimpleCov with branch coverage instead of Coveralls.
|
|
28
|
+
- GitHub Actions replaces Travis CI, and Dependabot uses the GitHub-native configuration.
|
|
29
|
+
- Generated apps target Ruby 3.3: `ruby '~> 3.3'` in the Gemfile, a `ruby:3.3-slim` Docker image with the build dependencies for pg, and the running Ruby in `.ruby-version` with `--rvm`.
|
|
30
|
+
- Generated apps use current gems: ActiveRecord 8.1, pg 1.x, Sinatra 4 with Rack 3, Puma 6.4 or newer, sinatra-activerecord 2, database_cleaner-active_record and amazing_print.
|
|
31
|
+
- Generated migrations (`add_extensions` and `natra model`) use `ActiveRecord::Migration[8.1]`, matching the generated Gemfile.
|
|
32
|
+
- `natra new` runs `docker compose` instead of `docker-compose`, and the generated `docker-compose.yml` drops the obsolete `version` key, uses `depends_on` and PostgreSQL 17.
|
|
33
|
+
- `natra new` only runs `git init` and `git add .` with `--git`, and runs `git init` once.
|
|
34
|
+
- The generated `config/database.yml` reads database names from `DEV_DATABASE`, `TEST_DATABASE` and `PROD_DATABASE`, with defaults named after the app.
|
|
35
|
+
- The generated `bin/setup` runs rake through `bundle exec`, and the generated README, RuboCop config and spec helper are updated for current tools.
|
|
36
|
+
|
|
37
|
+
### Removed
|
|
38
|
+
|
|
39
|
+
- Coveralls, from both the gem and generated apps.
|
|
40
|
+
- `tux` from the generated Gemfile. Its last release was in 2011.
|
|
41
|
+
- The `natra` gem from the generated Gemfile. Release 0.0.8 pins activesupport 5, which conflicts with ActiveRecord 8.
|
|
42
|
+
- Travis CI configuration.
|
|
43
|
+
|
|
44
|
+
### Fixed
|
|
45
|
+
|
|
46
|
+
- `natra service_object` failed with "Could not find templates/service.rb.erb" because the generator looked in the wrong template directory.
|
|
47
|
+
- `natra service_object` wrote to `app/service` instead of `app/services`.
|
|
48
|
+
- `natra service_object` added `use XService` to `config.ru`, which broke every request because a service object is not Rack middleware.
|
|
49
|
+
- Migrations generated by `natra model` had no ActiveRecord version, so ActiveRecord 5 and later refused to run them.
|
|
50
|
+
- The CLI exited with status 0 on failures because it defined `exit_on_failure` instead of `exit_on_failure?`.
|
|
51
|
+
- `bin/natra` had a bash shebang, so running it directly failed.
|
|
52
|
+
- The `directory_name` regexp listed `|` twice, which made Ruby print a warning.
|
|
53
|
+
- `natra new` passed the app path to `cd` without shell escaping.
|
|
54
|
+
- The generated `config/database.yml` used literal `ENV['...']` strings as database names.
|
|
55
|
+
- The generated spec helper called `ActiveRecord::Migrator.needs_migration?`, which no longer exists, and the generated welcome page lacked the heading its spec expects.
|
|
56
|
+
|
|
57
|
+
[Unreleased]: https://github.com/jamesnjuguna0419/natra/compare/v2.0.0...HEAD
|
|
58
|
+
[2.0.0]: https://github.com/jamesnjuguna0419/natra/compare/v0.0.8...v2.0.0
|
data/CODE_OF_CONDUCT.md
CHANGED
|
File without changes
|
data/Gemfile
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
source 'https://rubygems.org/'
|
|
4
|
+
|
|
2
5
|
gemspec
|
|
3
|
-
|
|
4
|
-
gem '
|
|
6
|
+
|
|
7
|
+
gem 'active_model_serializers', '~> 0.10.16'
|
|
8
|
+
|
|
5
9
|
group :development do
|
|
6
|
-
gem 'rake'
|
|
7
|
-
gem 'pry'
|
|
8
10
|
gem 'guard'
|
|
9
|
-
gem 'rspec'
|
|
10
|
-
gem 'guard-rubocop'
|
|
11
11
|
gem 'guard-rspec', require: false
|
|
12
|
+
gem 'guard-rubocop'
|
|
13
|
+
gem 'parallel', '< 2'
|
|
14
|
+
gem 'pry'
|
|
15
|
+
gem 'rake'
|
|
16
|
+
gem 'rspec'
|
|
17
|
+
gem 'simplecov', require: false
|
|
12
18
|
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,63 +1,76 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
natra (0.0
|
|
5
|
-
activesupport (
|
|
6
|
-
thor (~>
|
|
4
|
+
natra (2.0.0)
|
|
5
|
+
activesupport (>= 6.1, < 9)
|
|
6
|
+
thor (~> 1.3)
|
|
7
7
|
|
|
8
8
|
GEM
|
|
9
9
|
remote: https://rubygems.org/
|
|
10
10
|
specs:
|
|
11
|
-
actionpack (
|
|
12
|
-
actionview (=
|
|
13
|
-
activesupport (=
|
|
14
|
-
|
|
11
|
+
actionpack (8.1.4)
|
|
12
|
+
actionview (= 8.1.4)
|
|
13
|
+
activesupport (= 8.1.4)
|
|
14
|
+
nokogiri (>= 1.8.5)
|
|
15
|
+
rack (>= 2.2.4)
|
|
16
|
+
rack-session (>= 1.0.1)
|
|
15
17
|
rack-test (>= 0.6.3)
|
|
16
|
-
rails-dom-testing (~> 2.
|
|
17
|
-
rails-html-sanitizer (~> 1.
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
rails-dom-testing (~> 2.2)
|
|
19
|
+
rails-html-sanitizer (~> 1.6)
|
|
20
|
+
useragent (~> 0.16)
|
|
21
|
+
actionview (8.1.4)
|
|
22
|
+
activesupport (= 8.1.4)
|
|
20
23
|
builder (~> 3.1)
|
|
21
|
-
erubi (~> 1.
|
|
22
|
-
rails-dom-testing (~> 2.
|
|
23
|
-
rails-html-sanitizer (~> 1.
|
|
24
|
-
active_model_serializers (0.10.
|
|
25
|
-
actionpack (>= 4.1
|
|
26
|
-
activemodel (>= 4.1
|
|
24
|
+
erubi (~> 1.11)
|
|
25
|
+
rails-dom-testing (~> 2.2)
|
|
26
|
+
rails-html-sanitizer (~> 1.6)
|
|
27
|
+
active_model_serializers (0.10.16)
|
|
28
|
+
actionpack (>= 4.1)
|
|
29
|
+
activemodel (>= 4.1)
|
|
27
30
|
case_transform (>= 0.2)
|
|
28
31
|
jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
|
|
29
|
-
activemodel (
|
|
30
|
-
activesupport (=
|
|
31
|
-
activesupport (
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
activemodel (8.1.4)
|
|
33
|
+
activesupport (= 8.1.4)
|
|
34
|
+
activesupport (8.1.4)
|
|
35
|
+
base64
|
|
36
|
+
bigdecimal
|
|
37
|
+
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
38
|
+
connection_pool (>= 2.2.5)
|
|
39
|
+
drb
|
|
40
|
+
i18n (>= 1.6, < 2)
|
|
41
|
+
json
|
|
42
|
+
logger (>= 1.4.2)
|
|
43
|
+
minitest (>= 5.1)
|
|
44
|
+
securerandom (>= 0.3)
|
|
45
|
+
tzinfo (~> 2.0, >= 2.0.5)
|
|
46
|
+
uri (>= 0.13.1)
|
|
47
|
+
ast (2.4.3)
|
|
48
|
+
base64 (0.3.0)
|
|
49
|
+
bigdecimal (4.1.3)
|
|
50
|
+
builder (3.3.0)
|
|
38
51
|
case_transform (0.2)
|
|
39
52
|
activesupport
|
|
40
|
-
coderay (1.1.
|
|
41
|
-
concurrent-ruby (1.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
guard (2.14.2)
|
|
53
|
+
coderay (1.1.3)
|
|
54
|
+
concurrent-ruby (1.3.8)
|
|
55
|
+
connection_pool (3.0.2)
|
|
56
|
+
crass (1.0.7)
|
|
57
|
+
diff-lcs (1.6.2)
|
|
58
|
+
drb (2.2.3)
|
|
59
|
+
erubi (1.13.1)
|
|
60
|
+
ffi (1.17.4)
|
|
61
|
+
ffi (1.17.4-aarch64-linux-gnu)
|
|
62
|
+
ffi (1.17.4-arm64-darwin)
|
|
63
|
+
ffi (1.17.4-x86_64-linux-gnu)
|
|
64
|
+
formatador (1.2.3)
|
|
65
|
+
reline
|
|
66
|
+
guard (2.20.2)
|
|
55
67
|
formatador (>= 0.2.4)
|
|
56
68
|
listen (>= 2.7, < 4.0)
|
|
69
|
+
logger (~> 1.6)
|
|
57
70
|
lumberjack (>= 1.0.12, < 2.0)
|
|
58
71
|
nenv (~> 0.1)
|
|
59
72
|
notiffany (~> 0.0)
|
|
60
|
-
pry (>= 0.
|
|
73
|
+
pry (>= 0.13.0)
|
|
61
74
|
shellany (~> 0.0)
|
|
62
75
|
thor (>= 0.18.1)
|
|
63
76
|
guard-compat (1.2.1)
|
|
@@ -65,103 +78,131 @@ GEM
|
|
|
65
78
|
guard (~> 2.1)
|
|
66
79
|
guard-compat (~> 1.1)
|
|
67
80
|
rspec (>= 2.99.0, < 4.0)
|
|
68
|
-
guard-rubocop (1.
|
|
81
|
+
guard-rubocop (1.5.0)
|
|
69
82
|
guard (~> 2.0)
|
|
70
|
-
rubocop (
|
|
71
|
-
i18n (1.
|
|
83
|
+
rubocop (< 2.0)
|
|
84
|
+
i18n (1.15.2)
|
|
72
85
|
concurrent-ruby (~> 1.0)
|
|
73
|
-
|
|
74
|
-
json (
|
|
75
|
-
jsonapi-renderer (0.2.
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
86
|
+
io-console (0.9.4)
|
|
87
|
+
json (3.0.2)
|
|
88
|
+
jsonapi-renderer (0.2.2)
|
|
89
|
+
language_server-protocol (3.17.0.6)
|
|
90
|
+
lint_roller (1.1.0)
|
|
91
|
+
listen (3.10.1)
|
|
92
|
+
logger
|
|
93
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
|
94
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
|
95
|
+
logger (1.7.0)
|
|
96
|
+
loofah (2.25.2)
|
|
81
97
|
crass (~> 1.0.2)
|
|
82
|
-
nokogiri (>= 1.
|
|
83
|
-
lumberjack (1.
|
|
84
|
-
method_source (
|
|
85
|
-
mini_portile2 (2.
|
|
86
|
-
minitest (
|
|
98
|
+
nokogiri (>= 1.12.0)
|
|
99
|
+
lumberjack (1.4.2)
|
|
100
|
+
method_source (1.1.0)
|
|
101
|
+
mini_portile2 (2.8.9)
|
|
102
|
+
minitest (6.0.6)
|
|
103
|
+
drb (~> 2.0)
|
|
104
|
+
prism (~> 1.5)
|
|
87
105
|
nenv (0.3.0)
|
|
88
|
-
nokogiri (1.
|
|
89
|
-
mini_portile2 (~> 2.
|
|
90
|
-
|
|
106
|
+
nokogiri (1.19.4)
|
|
107
|
+
mini_portile2 (~> 2.8.2)
|
|
108
|
+
racc (~> 1.4)
|
|
109
|
+
nokogiri (1.19.4-aarch64-linux-gnu)
|
|
110
|
+
racc (~> 1.4)
|
|
111
|
+
nokogiri (1.19.4-arm64-darwin)
|
|
112
|
+
racc (~> 1.4)
|
|
113
|
+
nokogiri (1.19.4-x86_64-linux-gnu)
|
|
114
|
+
racc (~> 1.4)
|
|
115
|
+
notiffany (0.1.3)
|
|
91
116
|
nenv (~> 0.1)
|
|
92
117
|
shellany (~> 0.0)
|
|
93
|
-
parallel (1.
|
|
94
|
-
parser (
|
|
95
|
-
ast (~> 2.4.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
118
|
+
parallel (1.28.0)
|
|
119
|
+
parser (3.3.12.0)
|
|
120
|
+
ast (~> 2.4.1)
|
|
121
|
+
racc
|
|
122
|
+
prism (1.9.0)
|
|
123
|
+
pry (0.16.0)
|
|
124
|
+
coderay (~> 1.1)
|
|
125
|
+
method_source (~> 1.0)
|
|
126
|
+
reline (>= 0.6.0)
|
|
127
|
+
racc (1.8.1)
|
|
128
|
+
rack (3.2.7)
|
|
129
|
+
rack-session (2.1.2)
|
|
130
|
+
base64 (>= 0.1.0)
|
|
131
|
+
rack (>= 3.0.0)
|
|
132
|
+
rack-test (2.2.0)
|
|
133
|
+
rack (>= 1.3)
|
|
134
|
+
rails-dom-testing (2.3.0)
|
|
135
|
+
activesupport (>= 5.0.0)
|
|
136
|
+
minitest
|
|
105
137
|
nokogiri (>= 1.6)
|
|
106
|
-
rails-html-sanitizer (1.
|
|
107
|
-
loofah (~> 2.
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
rb-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
rspec
|
|
118
|
-
rspec-
|
|
119
|
-
|
|
138
|
+
rails-html-sanitizer (1.7.1)
|
|
139
|
+
loofah (~> 2.25, >= 2.25.2)
|
|
140
|
+
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
|
|
141
|
+
rainbow (3.1.1)
|
|
142
|
+
rake (13.4.2)
|
|
143
|
+
rb-fsevent (0.11.2)
|
|
144
|
+
rb-inotify (0.11.1)
|
|
145
|
+
ffi (~> 1.0)
|
|
146
|
+
regexp_parser (2.13.1)
|
|
147
|
+
reline (0.7.0)
|
|
148
|
+
io-console (~> 0.5)
|
|
149
|
+
rspec (3.13.2)
|
|
150
|
+
rspec-core (~> 3.13.0)
|
|
151
|
+
rspec-expectations (~> 3.13.0)
|
|
152
|
+
rspec-mocks (~> 3.13.0)
|
|
153
|
+
rspec-core (3.13.6)
|
|
154
|
+
rspec-support (~> 3.13.0)
|
|
155
|
+
rspec-expectations (3.13.5)
|
|
120
156
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
121
|
-
rspec-support (~> 3.
|
|
122
|
-
rspec-mocks (3.8
|
|
157
|
+
rspec-support (~> 3.13.0)
|
|
158
|
+
rspec-mocks (3.13.8)
|
|
123
159
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
124
|
-
rspec-support (~> 3.
|
|
125
|
-
rspec-support (3.
|
|
126
|
-
rubocop (
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
160
|
+
rspec-support (~> 3.13.0)
|
|
161
|
+
rspec-support (3.13.7)
|
|
162
|
+
rubocop (1.91.0)
|
|
163
|
+
json (>= 2.3)
|
|
164
|
+
language_server-protocol (~> 3.17.0.2)
|
|
165
|
+
lint_roller (~> 1.1.0)
|
|
166
|
+
parallel (>= 1.10)
|
|
167
|
+
parser (>= 3.3.0.2)
|
|
131
168
|
rainbow (>= 2.2.2, < 4.0)
|
|
169
|
+
regexp_parser (>= 2.9.3, < 3.0)
|
|
170
|
+
rubocop-ast (>= 1.49.0, < 2.0)
|
|
132
171
|
ruby-progressbar (~> 1.7)
|
|
133
|
-
unicode-display_width (
|
|
134
|
-
|
|
135
|
-
|
|
172
|
+
unicode-display_width (>= 2.4.0, < 4.0)
|
|
173
|
+
rubocop-ast (1.50.0)
|
|
174
|
+
parser (>= 3.3.7.2)
|
|
175
|
+
prism (~> 1.7)
|
|
176
|
+
ruby-progressbar (1.13.0)
|
|
177
|
+
securerandom (0.4.1)
|
|
136
178
|
shellany (0.0.1)
|
|
137
|
-
simplecov (
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
tins (1.18.0)
|
|
147
|
-
tzinfo (1.2.5)
|
|
148
|
-
thread_safe (~> 0.1)
|
|
149
|
-
unicode-display_width (1.4.0)
|
|
179
|
+
simplecov (1.3.2)
|
|
180
|
+
thor (1.5.0)
|
|
181
|
+
tzinfo (2.0.6)
|
|
182
|
+
concurrent-ruby (~> 1.0)
|
|
183
|
+
unicode-display_width (3.3.0)
|
|
184
|
+
unicode-emoji (~> 4.3)
|
|
185
|
+
unicode-emoji (4.3.0)
|
|
186
|
+
uri (1.1.1)
|
|
187
|
+
useragent (0.16.11)
|
|
150
188
|
|
|
151
189
|
PLATFORMS
|
|
190
|
+
aarch64-linux
|
|
191
|
+
arm64-darwin
|
|
152
192
|
ruby
|
|
193
|
+
x86_64-linux
|
|
153
194
|
|
|
154
195
|
DEPENDENCIES
|
|
155
|
-
active_model_serializers (~> 0.10.
|
|
156
|
-
bundler (~> 1.16)
|
|
157
|
-
coveralls
|
|
196
|
+
active_model_serializers (~> 0.10.16)
|
|
158
197
|
guard
|
|
159
198
|
guard-rspec
|
|
160
199
|
guard-rubocop
|
|
161
200
|
natra!
|
|
201
|
+
parallel (< 2)
|
|
162
202
|
pry
|
|
163
203
|
rake
|
|
164
204
|
rspec
|
|
205
|
+
simplecov
|
|
165
206
|
|
|
166
207
|
BUNDLED WITH
|
|
167
|
-
|
|
208
|
+
2.7.2
|
data/Guardfile
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
guard :rspec, cmd: 'bundle exec rspec' do
|
|
4
|
+
require 'guard/rspec/dsl'
|
|
3
5
|
dsl = Guard::RSpec::Dsl.new(self)
|
|
4
6
|
|
|
5
7
|
# Feel free to open issues for suggestions and improvements
|
|
@@ -15,7 +17,7 @@ guard :rspec, cmd: "bundle exec rspec" do
|
|
|
15
17
|
dsl.watch_spec_files_for(ruby.lib_files)
|
|
16
18
|
|
|
17
19
|
# Rails files
|
|
18
|
-
rails = dsl.rails(view_extensions: %w
|
|
20
|
+
rails = dsl.rails(view_extensions: %w[erb haml slim])
|
|
19
21
|
dsl.watch_spec_files_for(rails.app_files)
|
|
20
22
|
dsl.watch_spec_files_for(rails.views)
|
|
21
23
|
|
|
@@ -39,11 +41,11 @@ guard :rspec, cmd: "bundle exec rspec" do
|
|
|
39
41
|
# Turnip features and steps
|
|
40
42
|
watch(%r{^spec/acceptance/(.+)\.feature$})
|
|
41
43
|
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) do |m|
|
|
42
|
-
Dir[File.join("**/#{m[1]}.feature")][0] ||
|
|
44
|
+
Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance'
|
|
43
45
|
end
|
|
44
46
|
end
|
|
45
47
|
|
|
46
48
|
guard :rubocop do
|
|
47
|
-
watch(
|
|
49
|
+
watch(/.+\.rb$/)
|
|
48
50
|
watch(%r{(?:.+/)?\.rubocop(?:_todo)?\.yml$}) { |m| File.dirname(m[0]) }
|
|
49
51
|
end
|
data/LICENSE.txt
CHANGED
|
File without changes
|