expressir 2.1.30 → 2.2.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/workflows/docs.yml +99 -0
- data/.github/workflows/links.yml +100 -0
- data/.github/workflows/rake.yml +4 -0
- data/.github/workflows/release.yml +11 -0
- data/.github/workflows/validate_schemas.yml +1 -1
- data/.gitignore +3 -0
- data/.rubocop.yml +1 -1
- data/.rubocop_todo.yml +267 -53
- data/Gemfile +2 -1
- data/README.adoc +993 -55
- data/docs/Gemfile +12 -0
- data/docs/_config.yml +141 -0
- data/docs/_guides/changes/changes-format.adoc +778 -0
- data/docs/_guides/changes/importing-eengine.adoc +898 -0
- data/docs/_guides/changes/index.adoc +396 -0
- data/docs/_guides/changes/programmatic-usage.adoc +1038 -0
- data/docs/_guides/changes/validating-changes.adoc +681 -0
- data/docs/_guides/cli/benchmark-performance.adoc +834 -0
- data/docs/_guides/cli/coverage-analysis.adoc +921 -0
- data/docs/_guides/cli/format-schemas.adoc +547 -0
- data/docs/_guides/cli/index.adoc +8 -0
- data/docs/_guides/cli/managing-changes.adoc +927 -0
- data/docs/_guides/cli/validate-ascii.adoc +645 -0
- data/docs/_guides/cli/validate-schemas.adoc +534 -0
- data/docs/_guides/formatter/formatter-architecture.adoc +401 -0
- data/docs/_guides/index.adoc +165 -0
- data/docs/_guides/ler/creating-packages.adoc +664 -0
- data/docs/_guides/ler/index.adoc +305 -0
- data/docs/_guides/ler/loading-packages.adoc +707 -0
- data/docs/_guides/ler/package-formats.adoc +748 -0
- data/docs/_guides/ler/querying-packages.adoc +826 -0
- data/docs/_guides/ler/validating-packages.adoc +750 -0
- data/docs/_guides/liquid/basic-templates.adoc +813 -0
- data/docs/_guides/liquid/documentation-generation.adoc +1042 -0
- data/docs/_guides/liquid/drops-reference.adoc +829 -0
- data/docs/_guides/liquid/filters-and-tags.adoc +912 -0
- data/docs/_guides/liquid/index.adoc +468 -0
- data/docs/_guides/manifests/creating-manifests.adoc +483 -0
- data/docs/_guides/manifests/index.adoc +307 -0
- data/docs/_guides/manifests/resolving-manifests.adoc +557 -0
- data/docs/_guides/manifests/validating-manifests.adoc +713 -0
- data/docs/_guides/ruby-api/formatting-schemas.adoc +605 -0
- data/docs/_guides/ruby-api/index.adoc +257 -0
- data/docs/_guides/ruby-api/parsing-files.adoc +421 -0
- data/docs/_guides/ruby-api/search-engine.adoc +609 -0
- data/docs/_guides/ruby-api/working-with-repository.adoc +577 -0
- data/docs/_pages/data-model.adoc +665 -0
- data/docs/_pages/express-language.adoc +506 -0
- data/docs/_pages/getting-started.adoc +414 -0
- data/docs/_pages/index.adoc +116 -0
- data/docs/_pages/introduction.adoc +256 -0
- data/docs/_pages/ler-packages.adoc +837 -0
- data/docs/_pages/parsers.adoc +709 -0
- data/docs/_pages/schema-manifests.adoc +431 -0
- data/docs/_references/index.adoc +228 -0
- data/docs/_tutorials/creating-ler-package.adoc +735 -0
- data/docs/_tutorials/documentation-coverage.adoc +795 -0
- data/docs/_tutorials/index.adoc +221 -0
- data/docs/_tutorials/liquid-templates.adoc +806 -0
- data/docs/_tutorials/parsing-your-first-schema.adoc +522 -0
- data/docs/_tutorials/querying-schemas.adoc +751 -0
- data/docs/_tutorials/working-with-multiple-schemas.adoc +676 -0
- data/docs/index.adoc +242 -0
- data/docs/lychee.toml +87 -0
- data/examples/demo_ler_usage.sh +86 -0
- data/examples/ler/README.md +111 -0
- data/examples/ler/simple_example.ler +0 -0
- data/examples/ler/simple_schema.exp +33 -0
- data/examples/ler_build.rb +75 -0
- data/examples/ler_cli.rb +79 -0
- data/examples/ler_demo_complete.rb +276 -0
- data/examples/ler_query.rb +91 -0
- data/examples/ler_query_examples.rb +305 -0
- data/examples/ler_stats.rb +81 -0
- data/examples/phase3_demo.rb +159 -0
- data/examples/query_demo_simple.rb +131 -0
- data/expressir.gemspec +4 -2
- data/lib/expressir/benchmark.rb +6 -6
- data/lib/expressir/cli.rb +21 -4
- data/lib/expressir/commands/format.rb +28 -0
- data/lib/expressir/commands/manifest.rb +427 -0
- data/lib/expressir/commands/package.rb +1274 -0
- data/lib/expressir/commands/validate.rb +70 -37
- data/lib/expressir/commands/validate_ascii.rb +607 -0
- data/lib/expressir/commands/validate_load.rb +88 -0
- data/lib/expressir/coverage.rb +15 -11
- data/lib/expressir/express/builder.rb +350 -0
- data/lib/expressir/express/builders/attribute_decl_builder.rb +38 -0
- data/lib/expressir/express/builders/built_in_builder.rb +88 -0
- data/lib/expressir/express/builders/constant_builder.rb +115 -0
- data/lib/expressir/express/builders/declaration_builder.rb +24 -0
- data/lib/expressir/express/builders/derive_clause_builder.rb +16 -0
- data/lib/expressir/express/builders/derived_attr_builder.rb +28 -0
- data/lib/expressir/express/builders/domain_rule_builder.rb +21 -0
- data/lib/expressir/express/builders/entity_decl_builder.rb +108 -0
- data/lib/expressir/express/builders/explicit_attr_builder.rb +52 -0
- data/lib/expressir/express/builders/expression_builder.rb +453 -0
- data/lib/expressir/express/builders/function_decl_builder.rb +84 -0
- data/lib/expressir/express/builders/helpers.rb +148 -0
- data/lib/expressir/express/builders/interface_builder.rb +171 -0
- data/lib/expressir/express/builders/inverse_attr_builder.rb +45 -0
- data/lib/expressir/express/builders/inverse_attr_type_builder.rb +36 -0
- data/lib/expressir/express/builders/inverse_clause_builder.rb +16 -0
- data/lib/expressir/express/builders/literal_builder.rb +107 -0
- data/lib/expressir/express/builders/procedure_decl_builder.rb +80 -0
- data/lib/expressir/express/builders/qualifier_builder.rb +128 -0
- data/lib/expressir/express/builders/reference_builder.rb +27 -0
- data/lib/expressir/express/builders/rule_decl_builder.rb +95 -0
- data/lib/expressir/express/builders/schema_body_decl_builder.rb +22 -0
- data/lib/expressir/express/builders/schema_decl_builder.rb +62 -0
- data/lib/expressir/express/builders/schema_version_builder.rb +40 -0
- data/lib/expressir/express/builders/simple_id_builder.rb +26 -0
- data/lib/expressir/express/builders/statement_builder.rb +250 -0
- data/lib/expressir/express/builders/subtype_constraint_builder.rb +188 -0
- data/lib/expressir/express/builders/syntax_builder.rb +19 -0
- data/lib/expressir/express/builders/token_builder.rb +15 -0
- data/lib/expressir/express/builders/type_builder.rb +264 -0
- data/lib/expressir/express/builders/type_decl_builder.rb +32 -0
- data/lib/expressir/express/builders/unique_clause_builder.rb +22 -0
- data/lib/expressir/express/builders/unique_rule_builder.rb +36 -0
- data/lib/expressir/express/builders/where_clause_builder.rb +22 -0
- data/lib/expressir/express/builders.rb +43 -0
- data/lib/expressir/express/error.rb +18 -2
- data/lib/expressir/express/formatter.rb +23 -1509
- data/lib/expressir/express/formatters/data_types_formatter.rb +317 -0
- data/lib/expressir/express/formatters/declarations_formatter.rb +689 -0
- data/lib/expressir/express/formatters/expressions_formatter.rb +160 -0
- data/lib/expressir/express/formatters/literals_formatter.rb +46 -0
- data/lib/expressir/express/formatters/references_formatter.rb +42 -0
- data/lib/expressir/express/formatters/remark_formatter.rb +296 -0
- data/lib/expressir/express/formatters/remark_item_formatter.rb +25 -0
- data/lib/expressir/express/formatters/statements_formatter.rb +224 -0
- data/lib/expressir/express/formatters/supertype_expressions_formatter.rb +48 -0
- data/lib/expressir/express/parser.rb +155 -7
- data/lib/expressir/express/pretty_formatter.rb +624 -0
- data/lib/expressir/express/remark_attacher.rb +1155 -0
- data/lib/expressir/express/resolve_references_model_visitor.rb +1 -0
- data/lib/expressir/express/streaming_builder.rb +467 -0
- data/lib/expressir/express/transformer/remark_handling.rb +196 -0
- data/lib/expressir/manifest/resolver.rb +213 -0
- data/lib/expressir/manifest/validator.rb +195 -0
- data/lib/expressir/model/declarations/entity.rb +6 -0
- data/lib/expressir/model/dependency_resolver.rb +270 -0
- data/lib/expressir/model/identifier.rb +1 -1
- data/lib/expressir/model/indexes/entity_index.rb +103 -0
- data/lib/expressir/model/indexes/reference_index.rb +148 -0
- data/lib/expressir/model/indexes/type_index.rb +149 -0
- data/lib/expressir/model/interface_validator.rb +384 -0
- data/lib/expressir/model/model_element.rb +30 -2
- data/lib/expressir/model/remark_info.rb +51 -0
- data/lib/expressir/model/repository.rb +400 -5
- data/lib/expressir/model/repository_validator.rb +295 -0
- data/lib/expressir/model/search_engine.rb +574 -0
- data/lib/expressir/model.rb +4 -94
- data/lib/expressir/package/builder.rb +200 -0
- data/lib/expressir/package/metadata.rb +81 -0
- data/lib/expressir/package/reader.rb +165 -0
- data/lib/expressir/schema_manifest.rb +11 -1
- data/lib/expressir/version.rb +1 -1
- data/lib/expressir.rb +20 -3
- metadata +168 -9
- data/docs/benchmarking.adoc +0 -107
- data/docs/liquid_drops.adoc +0 -1547
- data/lib/expressir/express/visitor.rb +0 -2815
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 50f641491331a6faa4d3d4f1e85ad279e97b3aeb98bedb93d323feff1cb8ac51
|
|
4
|
+
data.tar.gz: 1fd6c283f17387d978a8af4b425fcbef8cbb90e6515d8c56a8841a70310317dc
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 95330409badd0fd0991db258eca184f0e4e2c08c53bd6356f01b7cedbd6a8500972509bc235c896d3ca5e25329251c492dbea5b13138a20c85beeb29ad607bee
|
|
7
|
+
data.tar.gz: b009c202b816d473e80ffc326ff3f0ca9d4841a754313f8332dc8dde8fcc8add7f0025af9a3ad1ed1009e3cf32da4b3c1bcbbfd76298a0e6e25236af21c52307
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
name: Deploy Documentation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main, master]
|
|
6
|
+
paths:
|
|
7
|
+
- 'docs/**'
|
|
8
|
+
- '.github/workflows/docs.yml'
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [main, master]
|
|
11
|
+
paths:
|
|
12
|
+
- 'docs/**'
|
|
13
|
+
workflow_dispatch:
|
|
14
|
+
|
|
15
|
+
# Allow only one concurrent deployment
|
|
16
|
+
concurrency:
|
|
17
|
+
group: "pages"
|
|
18
|
+
cancel-in-progress: true
|
|
19
|
+
|
|
20
|
+
jobs:
|
|
21
|
+
build:
|
|
22
|
+
runs-on: ubuntu-latest
|
|
23
|
+
|
|
24
|
+
steps:
|
|
25
|
+
- name: Checkout repository
|
|
26
|
+
uses: actions/checkout@v4
|
|
27
|
+
|
|
28
|
+
- name: Setup Ruby
|
|
29
|
+
uses: ruby/setup-ruby@v1
|
|
30
|
+
with:
|
|
31
|
+
ruby-version: '3.2'
|
|
32
|
+
bundler-cache: false
|
|
33
|
+
working-directory: docs
|
|
34
|
+
|
|
35
|
+
- name: Cache gems
|
|
36
|
+
uses: actions/cache@v4
|
|
37
|
+
with:
|
|
38
|
+
path: docs/vendor/bundle
|
|
39
|
+
key: ${{ runner.os }}-gems-${{ hashFiles('docs/Gemfile.lock') }}
|
|
40
|
+
restore-keys: |
|
|
41
|
+
${{ runner.os }}-gems-
|
|
42
|
+
|
|
43
|
+
- name: Install dependencies
|
|
44
|
+
working-directory: docs
|
|
45
|
+
run: |
|
|
46
|
+
bundle config path vendor/bundle
|
|
47
|
+
bundle install --jobs 4 --retry 3
|
|
48
|
+
|
|
49
|
+
- name: Build Jekyll site
|
|
50
|
+
working-directory: docs
|
|
51
|
+
run: bundle exec jekyll build --trace
|
|
52
|
+
env:
|
|
53
|
+
JEKYLL_ENV: production
|
|
54
|
+
|
|
55
|
+
- name: Test built site
|
|
56
|
+
working-directory: docs
|
|
57
|
+
run: |
|
|
58
|
+
if [ ! -f "_site/index.html" ]; then
|
|
59
|
+
echo "Error: index.html not found in _site/"
|
|
60
|
+
exit 1
|
|
61
|
+
fi
|
|
62
|
+
echo "Site built successfully"
|
|
63
|
+
echo "Site contains $(find _site -type f | wc -l) files"
|
|
64
|
+
|
|
65
|
+
- name: Upload artifact
|
|
66
|
+
uses: actions/upload-pages-artifact@v3
|
|
67
|
+
with:
|
|
68
|
+
path: docs/_site
|
|
69
|
+
|
|
70
|
+
deploy:
|
|
71
|
+
# Only deploy on push to main/master, not on PRs
|
|
72
|
+
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master')
|
|
73
|
+
|
|
74
|
+
needs: build
|
|
75
|
+
|
|
76
|
+
permissions:
|
|
77
|
+
pages: write
|
|
78
|
+
id-token: write
|
|
79
|
+
contents: write
|
|
80
|
+
|
|
81
|
+
environment:
|
|
82
|
+
name: github-pages
|
|
83
|
+
url: ${{ steps.deployment.outputs.page_url }}
|
|
84
|
+
|
|
85
|
+
runs-on: ubuntu-latest
|
|
86
|
+
|
|
87
|
+
steps:
|
|
88
|
+
- name: Deploy to GitHub Pages
|
|
89
|
+
id: deployment
|
|
90
|
+
uses: actions/deploy-pages@v4
|
|
91
|
+
|
|
92
|
+
- name: Comment on commit
|
|
93
|
+
if: success()
|
|
94
|
+
uses: peter-evans/commit-comment@v3
|
|
95
|
+
with:
|
|
96
|
+
body: |
|
|
97
|
+
:white_check_mark: Documentation deployed successfully!
|
|
98
|
+
|
|
99
|
+
View at: ${{ steps.deployment.outputs.page_url }}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
name: Check Links
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main, master]
|
|
6
|
+
paths:
|
|
7
|
+
- 'docs/**'
|
|
8
|
+
- '.github/workflows/links.yml'
|
|
9
|
+
- 'lychee.toml'
|
|
10
|
+
pull_request:
|
|
11
|
+
branches: [main, master]
|
|
12
|
+
paths:
|
|
13
|
+
- 'docs/**'
|
|
14
|
+
schedule:
|
|
15
|
+
# Run weekly on Monday at 9:00 UTC
|
|
16
|
+
- cron: '0 9 * * 1'
|
|
17
|
+
workflow_dispatch:
|
|
18
|
+
|
|
19
|
+
jobs:
|
|
20
|
+
link-check:
|
|
21
|
+
runs-on: ubuntu-latest
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- name: Checkout repository
|
|
25
|
+
uses: actions/checkout@v4
|
|
26
|
+
|
|
27
|
+
- name: Setup Ruby
|
|
28
|
+
uses: ruby/setup-ruby@v1
|
|
29
|
+
with:
|
|
30
|
+
ruby-version: '3.2'
|
|
31
|
+
bundler-cache: false
|
|
32
|
+
working-directory: docs
|
|
33
|
+
|
|
34
|
+
- name: Cache gems
|
|
35
|
+
uses: actions/cache@v4
|
|
36
|
+
with:
|
|
37
|
+
path: docs/vendor/bundle
|
|
38
|
+
key: ${{ runner.os }}-gems-${{ hashFiles('docs/Gemfile.lock') }}
|
|
39
|
+
restore-keys: |
|
|
40
|
+
${{ runner.os }}-gems-
|
|
41
|
+
|
|
42
|
+
- name: Install dependencies
|
|
43
|
+
working-directory: docs
|
|
44
|
+
run: |
|
|
45
|
+
bundle config path vendor/bundle
|
|
46
|
+
bundle install --jobs 4 --retry 3
|
|
47
|
+
|
|
48
|
+
- name: Build Jekyll site
|
|
49
|
+
working-directory: docs
|
|
50
|
+
run: bundle exec jekyll build --trace
|
|
51
|
+
env:
|
|
52
|
+
JEKYLL_ENV: production
|
|
53
|
+
|
|
54
|
+
- name: Check links with lychee
|
|
55
|
+
uses: lycheeverse/lychee-action@v1
|
|
56
|
+
with:
|
|
57
|
+
args: |
|
|
58
|
+
--config docs/lychee.toml
|
|
59
|
+
--verbose
|
|
60
|
+
--no-progress
|
|
61
|
+
--format markdown
|
|
62
|
+
'docs/_site/**/*.html'
|
|
63
|
+
fail: true
|
|
64
|
+
output: link-check-report.md
|
|
65
|
+
|
|
66
|
+
- name: Upload link check report
|
|
67
|
+
if: always()
|
|
68
|
+
uses: actions/upload-artifact@v4
|
|
69
|
+
with:
|
|
70
|
+
name: link-check-report
|
|
71
|
+
path: link-check-report.md
|
|
72
|
+
retention-days: 30
|
|
73
|
+
|
|
74
|
+
- name: Comment on PR with results
|
|
75
|
+
if: failure() && github.event_name == 'pull_request'
|
|
76
|
+
uses: marocchino/sticky-pull-request-comment@v2
|
|
77
|
+
with:
|
|
78
|
+
header: link-check
|
|
79
|
+
path: link-check-report.md
|
|
80
|
+
|
|
81
|
+
- name: Create issue for broken links
|
|
82
|
+
if: failure() && github.event_name == 'schedule'
|
|
83
|
+
uses: peter-evans/create-issue-from-file@v5
|
|
84
|
+
with:
|
|
85
|
+
title: Broken links detected in documentation
|
|
86
|
+
content-filepath: link-check-report.md
|
|
87
|
+
labels: |
|
|
88
|
+
documentation
|
|
89
|
+
bug
|
|
90
|
+
automated
|
|
91
|
+
|
|
92
|
+
- name: Summary
|
|
93
|
+
if: always()
|
|
94
|
+
run: |
|
|
95
|
+
echo "## Link Check Results" >> $GITHUB_STEP_SUMMARY
|
|
96
|
+
if [ -f "link-check-report.md" ]; then
|
|
97
|
+
cat link-check-report.md >> $GITHUB_STEP_SUMMARY
|
|
98
|
+
else
|
|
99
|
+
echo "No broken links found! :white_check_mark:" >> $GITHUB_STEP_SUMMARY
|
|
100
|
+
fi
|
data/.github/workflows/rake.yml
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
name: release
|
|
2
2
|
|
|
3
|
+
permissions:
|
|
4
|
+
contents: write
|
|
5
|
+
packages: write
|
|
6
|
+
pull-requests: write
|
|
7
|
+
id-token: write
|
|
8
|
+
|
|
3
9
|
on:
|
|
4
10
|
workflow_dispatch:
|
|
5
11
|
inputs:
|
|
@@ -15,6 +21,11 @@ on:
|
|
|
15
21
|
jobs:
|
|
16
22
|
release:
|
|
17
23
|
uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
|
|
24
|
+
permissions:
|
|
25
|
+
id-token: write
|
|
26
|
+
contents: write
|
|
27
|
+
packages: write
|
|
28
|
+
pull-requests: write
|
|
18
29
|
with:
|
|
19
30
|
next_version: ${{ github.event.inputs.next_version }}
|
|
20
31
|
release_command: rake release
|
|
@@ -44,5 +44,5 @@ jobs:
|
|
|
44
44
|
|
|
45
45
|
- name: Validate schemas ${{ matrix.test-group }}
|
|
46
46
|
run: |
|
|
47
|
-
yq '.schemas[].path | sub("schemas", "iso-10303/schemas")' ${{ matrix.test-group }} | xargs bundle exec ./exe/expressir validate
|
|
47
|
+
yq '.schemas[].path | sub("schemas", "iso-10303/schemas")' ${{ matrix.test-group }} | xargs bundle exec ./exe/expressir validate load
|
|
48
48
|
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
data/.rubocop_todo.yml
CHANGED
|
@@ -1,23 +1,64 @@
|
|
|
1
1
|
# This configuration was generated by
|
|
2
2
|
# `rubocop --auto-gen-config`
|
|
3
|
-
# on
|
|
3
|
+
# on 2026-03-05 05:14:10 UTC using RuboCop version 1.85.0.
|
|
4
4
|
# The point is for the user to remove these configuration records
|
|
5
5
|
# one by one as the offenses are removed from the code base.
|
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
|
8
8
|
|
|
9
|
-
# Offense count:
|
|
9
|
+
# Offense count: 1
|
|
10
|
+
Gemspec/RequiredRubyVersion:
|
|
11
|
+
Exclude:
|
|
12
|
+
- 'expressir.gemspec'
|
|
13
|
+
|
|
14
|
+
# Offense count: 1
|
|
15
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
16
|
+
# Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
|
|
17
|
+
Layout/ExtraSpacing:
|
|
18
|
+
Exclude:
|
|
19
|
+
- 'lib/expressir/benchmark.rb'
|
|
20
|
+
|
|
21
|
+
# Offense count: 993
|
|
10
22
|
# This cop supports safe autocorrection (--autocorrect).
|
|
11
|
-
# Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes,
|
|
23
|
+
# Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
|
|
12
24
|
# URISchemes: http, https
|
|
13
25
|
Layout/LineLength:
|
|
14
26
|
Enabled: false
|
|
15
27
|
|
|
16
|
-
# Offense count:
|
|
28
|
+
# Offense count: 8
|
|
17
29
|
# Configuration parameters: IgnoreLiteralBranches, IgnoreConstantBranches, IgnoreDuplicateElseBranch.
|
|
18
30
|
Lint/DuplicateBranch:
|
|
19
31
|
Exclude:
|
|
32
|
+
- 'lib/expressir/commands/package.rb'
|
|
20
33
|
- 'lib/expressir/coverage.rb'
|
|
34
|
+
- 'lib/expressir/express/builder.rb'
|
|
35
|
+
- 'lib/expressir/express/formatters/declarations_formatter.rb'
|
|
36
|
+
- 'lib/expressir/express/remark_attacher.rb'
|
|
37
|
+
- 'lib/expressir/model/search_engine.rb'
|
|
38
|
+
|
|
39
|
+
# Offense count: 2
|
|
40
|
+
Lint/DuplicateCaseCondition:
|
|
41
|
+
Exclude:
|
|
42
|
+
- 'lib/expressir/commands/package.rb'
|
|
43
|
+
- 'lib/expressir/express/formatter.rb'
|
|
44
|
+
|
|
45
|
+
# Offense count: 1
|
|
46
|
+
Lint/DuplicateMethods:
|
|
47
|
+
Exclude:
|
|
48
|
+
- 'lib/expressir/commands/validate_ascii.rb'
|
|
49
|
+
|
|
50
|
+
# Offense count: 1
|
|
51
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
52
|
+
Lint/ScriptPermission:
|
|
53
|
+
Exclude:
|
|
54
|
+
- 'regenerate_yaml.rb'
|
|
55
|
+
|
|
56
|
+
# Offense count: 2
|
|
57
|
+
# Configuration parameters: AllowedPatterns.
|
|
58
|
+
# AllowedPatterns: (?-mix:(exactly|at_least|at_most)\(\d+\)\.times)
|
|
59
|
+
Lint/UnreachableLoop:
|
|
60
|
+
Exclude:
|
|
61
|
+
- 'lib/expressir/model/dependency_resolver.rb'
|
|
21
62
|
|
|
22
63
|
# Offense count: 2
|
|
23
64
|
# This cop supports safe autocorrection (--autocorrect).
|
|
@@ -28,66 +69,79 @@ Lint/UnusedMethodArgument:
|
|
|
28
69
|
- 'lib/expressir/express/cache.rb'
|
|
29
70
|
- 'lib/expressir/express/parser.rb'
|
|
30
71
|
|
|
31
|
-
# Offense count:
|
|
72
|
+
# Offense count: 227
|
|
32
73
|
# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes, Max.
|
|
33
74
|
Metrics/AbcSize:
|
|
34
75
|
Enabled: false
|
|
35
76
|
|
|
36
|
-
# Offense count:
|
|
77
|
+
# Offense count: 8
|
|
37
78
|
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns, inherit_mode.
|
|
38
79
|
# AllowedMethods: refine
|
|
39
80
|
Metrics/BlockLength:
|
|
40
|
-
Max:
|
|
81
|
+
Max: 98
|
|
41
82
|
|
|
42
|
-
# Offense count:
|
|
83
|
+
# Offense count: 11
|
|
84
|
+
# Configuration parameters: CountBlocks, CountModifierForms.
|
|
85
|
+
Metrics/BlockNesting:
|
|
86
|
+
Max: 6
|
|
87
|
+
|
|
88
|
+
# Offense count: 189
|
|
43
89
|
# Configuration parameters: AllowedMethods, AllowedPatterns, Max.
|
|
44
90
|
Metrics/CyclomaticComplexity:
|
|
45
|
-
|
|
46
|
-
- 'lib/expressir/benchmark.rb'
|
|
47
|
-
- 'lib/expressir/changes/schema_change.rb'
|
|
48
|
-
- 'lib/expressir/commands/changes_import_eengine.rb'
|
|
49
|
-
- 'lib/expressir/commands/changes_validate.rb'
|
|
50
|
-
- 'lib/expressir/commands/coverage.rb'
|
|
51
|
-
- 'lib/expressir/coverage.rb'
|
|
52
|
-
- 'lib/expressir/express/formatter.rb'
|
|
53
|
-
- 'lib/expressir/express/model_visitor.rb'
|
|
54
|
-
- 'lib/expressir/express/parser.rb'
|
|
55
|
-
- 'lib/expressir/express/visitor.rb'
|
|
56
|
-
- 'lib/expressir/model/declarations/schema.rb'
|
|
57
|
-
- 'lib/expressir/model/model_element.rb'
|
|
58
|
-
- 'spec/support/model_element_helper.rb'
|
|
91
|
+
Enabled: false
|
|
59
92
|
|
|
60
|
-
# Offense count:
|
|
93
|
+
# Offense count: 276
|
|
61
94
|
# Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
|
|
62
95
|
Metrics/MethodLength:
|
|
63
|
-
Max:
|
|
96
|
+
Max: 193
|
|
64
97
|
|
|
65
|
-
# Offense count:
|
|
98
|
+
# Offense count: 6
|
|
99
|
+
# Configuration parameters: CountKeywordArgs, MaxOptionalParameters.
|
|
100
|
+
Metrics/ParameterLists:
|
|
101
|
+
Max: 8
|
|
102
|
+
|
|
103
|
+
# Offense count: 162
|
|
66
104
|
# Configuration parameters: AllowedMethods, AllowedPatterns, Max.
|
|
67
105
|
Metrics/PerceivedComplexity:
|
|
106
|
+
Enabled: false
|
|
107
|
+
|
|
108
|
+
# Offense count: 4
|
|
109
|
+
# Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
|
|
110
|
+
# AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to
|
|
111
|
+
Naming/MethodParameterName:
|
|
68
112
|
Exclude:
|
|
69
|
-
- 'lib/expressir/
|
|
70
|
-
- 'lib/expressir/changes/schema_change.rb'
|
|
71
|
-
- 'lib/expressir/commands/changes_import_eengine.rb'
|
|
72
|
-
- 'lib/expressir/commands/changes_validate.rb'
|
|
73
|
-
- 'lib/expressir/commands/coverage.rb'
|
|
74
|
-
- 'lib/expressir/coverage.rb'
|
|
75
|
-
- 'lib/expressir/express/formatter.rb'
|
|
76
|
-
- 'lib/expressir/express/visitor.rb'
|
|
77
|
-
- 'lib/expressir/model/declarations/schema.rb'
|
|
78
|
-
- 'lib/expressir/model/model_element.rb'
|
|
113
|
+
- 'lib/expressir/model/repository_validator.rb'
|
|
79
114
|
|
|
80
|
-
# Offense count:
|
|
81
|
-
# Configuration parameters:
|
|
82
|
-
#
|
|
83
|
-
|
|
115
|
+
# Offense count: 3
|
|
116
|
+
# Configuration parameters: Mode, AllowedMethods, AllowedPatterns, AllowBangMethods, WaywardPredicates.
|
|
117
|
+
# AllowedMethods: call
|
|
118
|
+
# WaywardPredicates: infinite?, nonzero?
|
|
119
|
+
Naming/PredicateMethod:
|
|
84
120
|
Exclude:
|
|
85
|
-
- 'lib/expressir/
|
|
121
|
+
- 'lib/expressir/model/indexes/reference_index.rb'
|
|
122
|
+
- 'lib/expressir/model/search_engine.rb'
|
|
123
|
+
|
|
124
|
+
# Offense count: 11
|
|
125
|
+
# Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers, AllowedPatterns.
|
|
126
|
+
# SupportedStyles: snake_case, normalcase, non_integer
|
|
127
|
+
# AllowedIdentifiers: TLS1_1, TLS1_2, capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339, x86_64
|
|
128
|
+
Naming/VariableNumber:
|
|
129
|
+
Exclude:
|
|
130
|
+
- 'lib/expressir/commands/validate_ascii.rb'
|
|
131
|
+
- 'spec/expressir/commands/validate_ascii_spec.rb'
|
|
132
|
+
- 'spec/expressir/express/pretty_formatter_spec.rb'
|
|
133
|
+
|
|
134
|
+
# Offense count: 2
|
|
135
|
+
# Configuration parameters: MinSize.
|
|
136
|
+
Performance/CollectionLiteralInLoop:
|
|
137
|
+
Exclude:
|
|
138
|
+
- 'lib/expressir/express/streaming_builder.rb'
|
|
86
139
|
|
|
87
140
|
# Offense count: 5
|
|
88
141
|
Performance/FixedSize:
|
|
89
142
|
Exclude:
|
|
90
|
-
- 'lib/expressir/express/
|
|
143
|
+
- 'lib/expressir/express/formatters/data_types_formatter.rb'
|
|
144
|
+
- 'lib/expressir/express/formatters/declarations_formatter.rb'
|
|
91
145
|
|
|
92
146
|
# Offense count: 6
|
|
93
147
|
Performance/MapMethodChain:
|
|
@@ -96,12 +150,48 @@ Performance/MapMethodChain:
|
|
|
96
150
|
- 'spec/expressir/commands/coverage_ignore_files_spec.rb'
|
|
97
151
|
- 'spec/expressir/coverage_spec.rb'
|
|
98
152
|
|
|
99
|
-
# Offense count:
|
|
153
|
+
# Offense count: 1
|
|
154
|
+
RSpec/AnyInstance:
|
|
155
|
+
Exclude:
|
|
156
|
+
- 'spec/expressir/commands/package_edge_cases_spec.rb'
|
|
157
|
+
|
|
158
|
+
# Offense count: 11
|
|
159
|
+
# Configuration parameters: Prefixes, AllowedPatterns.
|
|
160
|
+
# Prefixes: when, with, without
|
|
161
|
+
RSpec/ContextWording:
|
|
162
|
+
Exclude:
|
|
163
|
+
- 'spec/expressir/commands/manifest_spec.rb'
|
|
164
|
+
- 'spec/expressir/commands/package_nil_guards_spec.rb'
|
|
165
|
+
- 'spec/expressir/commands/validate_ascii_spec.rb'
|
|
166
|
+
- 'spec/expressir/model/repository_spec.rb'
|
|
167
|
+
|
|
168
|
+
# Offense count: 1
|
|
169
|
+
# Configuration parameters: IgnoredMetadata.
|
|
170
|
+
RSpec/DescribeClass:
|
|
171
|
+
Exclude:
|
|
172
|
+
- '**/spec/features/**/*'
|
|
173
|
+
- '**/spec/requests/**/*'
|
|
174
|
+
- '**/spec/routing/**/*'
|
|
175
|
+
- '**/spec/system/**/*'
|
|
176
|
+
- '**/spec/views/**/*'
|
|
177
|
+
- 'spec/expressir/integration/package_roundtrip_spec.rb'
|
|
178
|
+
|
|
179
|
+
# Offense count: 6
|
|
180
|
+
RSpec/DescribeMethod:
|
|
181
|
+
Exclude:
|
|
182
|
+
- 'spec/expressir/commands/package_edge_cases_spec.rb'
|
|
183
|
+
- 'spec/expressir/commands/package_fixtures_spec.rb'
|
|
184
|
+
- 'spec/expressir/commands/package_nil_guards_spec.rb'
|
|
185
|
+
- 'spec/expressir/commands/package_nil_scenarios_spec.rb'
|
|
186
|
+
- 'spec/expressir/model/repository_statistics_spec.rb'
|
|
187
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
188
|
+
|
|
189
|
+
# Offense count: 465
|
|
100
190
|
# Configuration parameters: CountAsOne.
|
|
101
191
|
RSpec/ExampleLength:
|
|
102
192
|
Max: 123
|
|
103
193
|
|
|
104
|
-
# Offense count:
|
|
194
|
+
# Offense count: 51
|
|
105
195
|
# Configuration parameters: Max, AllowedIdentifiers, AllowedPatterns.
|
|
106
196
|
RSpec/IndexedLet:
|
|
107
197
|
Exclude:
|
|
@@ -111,27 +201,106 @@ RSpec/IndexedLet:
|
|
|
111
201
|
- 'spec/expressir/model/data_types/real_spec.rb'
|
|
112
202
|
- 'spec/expressir/model/data_types/set_spec.rb'
|
|
113
203
|
- 'spec/expressir/model/data_types/string_spec.rb'
|
|
204
|
+
- 'spec/expressir/model/indexes/entity_index_spec.rb'
|
|
205
|
+
- 'spec/expressir/model/indexes/reference_index_spec.rb'
|
|
206
|
+
- 'spec/expressir/model/indexes/type_index_spec.rb'
|
|
207
|
+
- 'spec/expressir/model/repository_spec.rb'
|
|
208
|
+
- 'spec/expressir/model/repository_statistics_spec.rb'
|
|
209
|
+
- 'spec/expressir/model/repository_validator_spec.rb'
|
|
210
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
211
|
+
|
|
212
|
+
# Offense count: 1
|
|
213
|
+
# Configuration parameters: AssignmentOnly.
|
|
214
|
+
RSpec/InstanceVariable:
|
|
215
|
+
Exclude:
|
|
216
|
+
- 'spec/expressir/model/interface_validator_spec.rb'
|
|
217
|
+
|
|
218
|
+
# Offense count: 1
|
|
219
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
220
|
+
RSpec/IteratedExpectation:
|
|
221
|
+
Exclude:
|
|
222
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
114
223
|
|
|
115
|
-
# Offense count:
|
|
224
|
+
# Offense count: 2
|
|
225
|
+
# Configuration parameters: EnforcedStyle.
|
|
226
|
+
# SupportedStyles: have_received, receive
|
|
227
|
+
RSpec/MessageSpies:
|
|
228
|
+
Exclude:
|
|
229
|
+
- 'spec/expressir/model/repository_validator_spec.rb'
|
|
230
|
+
- 'spec/expressir/model/search_engine_spec.rb'
|
|
231
|
+
|
|
232
|
+
# Offense count: 580
|
|
116
233
|
RSpec/MultipleExpectations:
|
|
117
234
|
Max: 114
|
|
118
235
|
|
|
119
|
-
# Offense count:
|
|
236
|
+
# Offense count: 117
|
|
120
237
|
# Configuration parameters: AllowSubject.
|
|
121
238
|
RSpec/MultipleMemoizedHelpers:
|
|
122
|
-
Max:
|
|
239
|
+
Max: 19
|
|
123
240
|
|
|
124
241
|
# Offense count: 5
|
|
125
|
-
|
|
242
|
+
# Configuration parameters: AllowedGroups.
|
|
243
|
+
RSpec/NestedGroups:
|
|
244
|
+
Max: 4
|
|
245
|
+
|
|
246
|
+
# Offense count: 35
|
|
247
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
248
|
+
RSpec/Output:
|
|
126
249
|
Exclude:
|
|
127
|
-
- 'spec/
|
|
128
|
-
- 'spec/expressir/
|
|
129
|
-
- 'spec/expressir/
|
|
250
|
+
- 'spec/acceptance/version_spec.rb'
|
|
251
|
+
- 'spec/expressir/express/cache_spec.rb'
|
|
252
|
+
- 'spec/expressir/express/formatter_spec.rb'
|
|
253
|
+
- 'spec/expressir/express/parser_spec.rb'
|
|
254
|
+
- 'spec/expressir/model/model_element_spec.rb'
|
|
255
|
+
- 'spec/spec_helper.rb'
|
|
130
256
|
|
|
131
|
-
# Offense count:
|
|
257
|
+
# Offense count: 28
|
|
258
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
259
|
+
RSpec/ReceiveMessages:
|
|
260
|
+
Exclude:
|
|
261
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
262
|
+
|
|
263
|
+
# Offense count: 1
|
|
264
|
+
RSpec/RemoveConst:
|
|
265
|
+
Exclude:
|
|
266
|
+
- 'spec/expressir/commands/package_nil_scenarios_spec.rb'
|
|
267
|
+
|
|
268
|
+
# Offense count: 20
|
|
132
269
|
RSpec/RepeatedExample:
|
|
133
270
|
Exclude:
|
|
271
|
+
- 'spec/expressir/commands/package_fixtures_spec.rb'
|
|
134
272
|
- 'spec/expressir/model/data_types/logical_spec.rb'
|
|
273
|
+
- 'spec/expressir/model/indexes/entity_index_spec.rb'
|
|
274
|
+
- 'spec/expressir/model/indexes/type_index_spec.rb'
|
|
275
|
+
- 'spec/expressir/model/interface_validator_spec.rb'
|
|
276
|
+
|
|
277
|
+
# Offense count: 7
|
|
278
|
+
# Configuration parameters: CustomTransform, IgnoreMethods, IgnoreMetadata, InflectorPath, EnforcedInflector.
|
|
279
|
+
# SupportedInflectors: default, active_support
|
|
280
|
+
RSpec/SpecFilePathFormat:
|
|
281
|
+
Exclude:
|
|
282
|
+
- '**/spec/routing/**/*'
|
|
283
|
+
- 'spec/expressir/commands/package_edge_cases_spec.rb'
|
|
284
|
+
- 'spec/expressir/commands/package_fixtures_spec.rb'
|
|
285
|
+
- 'spec/expressir/commands/package_nil_guards_spec.rb'
|
|
286
|
+
- 'spec/expressir/commands/package_nil_scenarios_spec.rb'
|
|
287
|
+
- 'spec/expressir/express/visitor/remark_attacher_spec.rb'
|
|
288
|
+
- 'spec/expressir/model/repository_statistics_spec.rb'
|
|
289
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
290
|
+
|
|
291
|
+
# Offense count: 48
|
|
292
|
+
# Configuration parameters: IgnoreNameless, IgnoreSymbolicNames.
|
|
293
|
+
RSpec/VerifiedDoubles:
|
|
294
|
+
Exclude:
|
|
295
|
+
- 'spec/expressir/commands/package_nil_guards_spec.rb'
|
|
296
|
+
- 'spec/expressir/commands/package_nil_scenarios_spec.rb'
|
|
297
|
+
- 'spec/expressir/express/pretty_formatter_spec.rb'
|
|
298
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
299
|
+
|
|
300
|
+
# Offense count: 4
|
|
301
|
+
Security/MarshalLoad:
|
|
302
|
+
Exclude:
|
|
303
|
+
- 'lib/expressir/package/reader.rb'
|
|
135
304
|
|
|
136
305
|
# Offense count: 1
|
|
137
306
|
# This cop supports safe autocorrection (--autocorrect).
|
|
@@ -141,7 +310,52 @@ Style/EmptyElse:
|
|
|
141
310
|
Exclude:
|
|
142
311
|
- 'lib/expressir/commands/changes_validate.rb'
|
|
143
312
|
|
|
313
|
+
# Offense count: 4
|
|
314
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
315
|
+
# Configuration parameters: MaxUnannotatedPlaceholdersAllowed, Mode, AllowedMethods, AllowedPatterns.
|
|
316
|
+
# SupportedStyles: annotated, template, unannotated
|
|
317
|
+
Style/FormatStringToken:
|
|
318
|
+
EnforcedStyle: unannotated
|
|
319
|
+
|
|
320
|
+
# Offense count: 1
|
|
321
|
+
# Configuration parameters: MinBranchesCount.
|
|
322
|
+
Style/HashLikeCase:
|
|
323
|
+
Exclude:
|
|
324
|
+
- 'lib/expressir/express/remark_attacher.rb'
|
|
325
|
+
|
|
326
|
+
# Offense count: 1
|
|
327
|
+
Style/OpenStructUse:
|
|
328
|
+
Exclude:
|
|
329
|
+
- 'spec/expressir/commands/package_tree_spec.rb'
|
|
330
|
+
|
|
331
|
+
# Offense count: 2
|
|
332
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
333
|
+
Style/PartitionInsteadOfDoubleSelect:
|
|
334
|
+
Exclude:
|
|
335
|
+
- 'lib/expressir/express/transformer/remark_handling.rb'
|
|
336
|
+
- 'spec/expressir/model/search_engine_advanced_spec.rb'
|
|
337
|
+
|
|
338
|
+
# Offense count: 2
|
|
339
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
340
|
+
Style/RedundantParentheses:
|
|
341
|
+
Exclude:
|
|
342
|
+
- 'lib/expressir/express/parser.rb'
|
|
343
|
+
|
|
344
|
+
# Offense count: 33
|
|
345
|
+
# This cop supports unsafe autocorrection (--autocorrect-all).
|
|
346
|
+
Style/SelectByKind:
|
|
347
|
+
Exclude:
|
|
348
|
+
- 'lib/expressir/express/builders/function_decl_builder.rb'
|
|
349
|
+
- 'lib/expressir/express/builders/procedure_decl_builder.rb'
|
|
350
|
+
- 'lib/expressir/express/builders/rule_decl_builder.rb'
|
|
351
|
+
- 'lib/expressir/express/builders/schema_decl_builder.rb'
|
|
352
|
+
- 'lib/expressir/model/search_engine.rb'
|
|
353
|
+
- 'spec/expressir/coverage_spec.rb'
|
|
354
|
+
- 'spec/expressir/model/declarations/schema_spec.rb'
|
|
355
|
+
|
|
144
356
|
# Offense count: 1
|
|
145
|
-
|
|
357
|
+
# This cop supports safe autocorrection (--autocorrect).
|
|
358
|
+
# Configuration parameters: AllowModifier.
|
|
359
|
+
Style/SoleNestedConditional:
|
|
146
360
|
Exclude:
|
|
147
|
-
- 'lib/expressir/
|
|
361
|
+
- 'lib/expressir/model/search_engine.rb'
|