factbase 0.15.0 → 0.15.2

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.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +5 -5
  3. data/factbase.gemspec +4 -4
  4. data/lib/factbase/fact.rb +1 -1
  5. data/lib/factbase/fact_as_yaml.rb +10 -1
  6. data/lib/factbase/indexed/indexed_term.rb +6 -1
  7. data/lib/factbase/terms/ordering.rb +5 -5
  8. data/lib/factbase/version.rb +1 -1
  9. metadata +7 -87
  10. data/.0pdd.yml +0 -8
  11. data/.gitattributes +0 -7
  12. data/.github/publish-benchmark.sh +0 -24
  13. data/.github/workflows/actionlint.yml +0 -25
  14. data/.github/workflows/benchmark.yml +0 -36
  15. data/.github/workflows/codecov.yml +0 -27
  16. data/.github/workflows/copyrights.yml +0 -19
  17. data/.github/workflows/markdown-lint.yml +0 -23
  18. data/.github/workflows/pdd.yml +0 -19
  19. data/.github/workflows/rake.yml +0 -28
  20. data/.github/workflows/reuse.yml +0 -19
  21. data/.github/workflows/typos.yml +0 -19
  22. data/.github/workflows/xcop.yml +0 -19
  23. data/.github/workflows/yamllint.yml +0 -19
  24. data/.gitignore +0 -11
  25. data/.pdd +0 -7
  26. data/.rubocop.yml +0 -51
  27. data/.rultor.yml +0 -27
  28. data/benchmark/bench_factbase.rb +0 -61
  29. data/benchmark/bench_large_query.rb +0 -128
  30. data/benchmark/bench_query.rb +0 -57
  31. data/benchmark/bench_taped.rb +0 -33
  32. data/fixtures/stories/agg.yml +0 -17
  33. data/fixtures/stories/always.yml +0 -16
  34. data/fixtures/stories/and.yml +0 -19
  35. data/fixtures/stories/as.yml +0 -16
  36. data/fixtures/stories/count.yml +0 -18
  37. data/fixtures/stories/empty.yml +0 -23
  38. data/fixtures/stories/eq.yml +0 -30
  39. data/fixtures/stories/gt.yml +0 -18
  40. data/fixtures/stories/join.yml +0 -22
  41. data/fixtures/stories/max.yml +0 -14
  42. data/fixtures/stories/min.yml +0 -14
  43. data/fixtures/stories/nth.yml +0 -14
  44. data/fixtures/stories/one.yml +0 -14
  45. data/fixtures/stories/or.yml +0 -18
  46. data/fixtures/stories/sprintf.yml +0 -12
  47. data/fixtures/stories/sum.yml +0 -14
  48. data/fixtures/stories/unique.yml +0 -30
  49. data/renovate.json +0 -6
  50. data/test/factbase/cached/test_cached_factbase.rb +0 -44
  51. data/test/factbase/cached/test_cached_query.rb +0 -100
  52. data/test/factbase/indexed/test_indexed_fact.rb +0 -23
  53. data/test/factbase/indexed/test_indexed_factbase.rb +0 -96
  54. data/test/factbase/indexed/test_indexed_query.rb +0 -208
  55. data/test/factbase/indexed/test_indexed_term.rb +0 -140
  56. data/test/factbase/sync/test_sync_factbase.rb +0 -22
  57. data/test/factbase/sync/test_sync_query.rb +0 -30
  58. data/test/factbase/terms/test_aggregates.rb +0 -63
  59. data/test/factbase/terms/test_aliases.rb +0 -58
  60. data/test/factbase/terms/test_casting.rb +0 -33
  61. data/test/factbase/terms/test_debug.rb +0 -111
  62. data/test/factbase/terms/test_defn.rb +0 -48
  63. data/test/factbase/terms/test_logical.rb +0 -57
  64. data/test/factbase/terms/test_math.rb +0 -122
  65. data/test/factbase/terms/test_meta.rb +0 -70
  66. data/test/factbase/terms/test_ordering.rb +0 -44
  67. data/test/factbase/terms/test_strings.rb +0 -36
  68. data/test/factbase/terms/test_system.rb +0 -31
  69. data/test/factbase/test_accum.rb +0 -74
  70. data/test/factbase/test_churn.rb +0 -41
  71. data/test/factbase/test_fact.rb +0 -108
  72. data/test/factbase/test_fact_as_yaml.rb +0 -77
  73. data/test/factbase/test_flatten.rb +0 -28
  74. data/test/factbase/test_impatient.rb +0 -176
  75. data/test/factbase/test_inv.rb +0 -44
  76. data/test/factbase/test_logged.rb +0 -155
  77. data/test/factbase/test_pre.rb +0 -35
  78. data/test/factbase/test_query.rb +0 -445
  79. data/test/factbase/test_rules.rb +0 -128
  80. data/test/factbase/test_syntax.rb +0 -166
  81. data/test/factbase/test_tallied.rb +0 -81
  82. data/test/factbase/test_taped.rb +0 -72
  83. data/test/factbase/test_tee.rb +0 -85
  84. data/test/factbase/test_term.rb +0 -87
  85. data/test/factbase/test_to_json.rb +0 -35
  86. data/test/factbase/test_to_xml.rb +0 -89
  87. data/test/factbase/test_to_yaml.rb +0 -39
  88. data/test/test__helper.rb +0 -41
  89. data/test/test_factbase.rb +0 -509
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0145cce5633262e8ec7e38d5d85e8500ab0bb1e1c7cb43936ef879449e9968d3
4
- data.tar.gz: bc80e63b7f0b8729acec10d3d916576b045b3b1ce65e6972b4985c885eb3a09e
3
+ metadata.gz: 85e37453d7e238f20d15017e452fc39e2068cf86bc1c0bc0c5689439bf732c81
4
+ data.tar.gz: dc91da500dd5e512e041de74ad677dbf98ce24a84cb1972bc910884ddb3c48f3
5
5
  SHA512:
6
- metadata.gz: ffcfcc48eaeb4184b7d14ed7858e47d792e0192aa4451c95b17712190eacbd017d7bb92c44b4f43a69730338bc683210cf33c4321c2d5c1dd977462924a13b3f
7
- data.tar.gz: 2285fe9c3c071795716c294fb1d24d6f863cac5b61cc20a3bb6c05b2d80a558905dd9b0f84a17dc16a16a99a1183eab668e046b6b38d56e04463b098f2487f84
6
+ metadata.gz: 323d7a269d425e503365cd694cdafb224ee9bab256992d740af40c4151245d729cd183aba297f6bc963984d8e3d743ffe6e6099e6fbf3b0514a7994876d00533
7
+ data.tar.gz: 2ede879be19ca0faf61506cdfb9672117f767d66528c8fa5aa52237180848a011202eef6c3982b102e1b56430ebf9777b94fdfaf9b76e96738b25d45d1a549a3
data/Gemfile.lock CHANGED
@@ -3,14 +3,14 @@ PATH
3
3
  specs:
4
4
  factbase (0.0.0)
5
5
  backtrace (~> 0.4)
6
- decoor (~> 0.0)
6
+ decoor (~> 0.1)
7
7
  ellipsized (~> 0.3)
8
8
  json (~> 2.7)
9
9
  logger (~> 1.0)
10
10
  loog (~> 0.6)
11
11
  nokogiri (~> 1.10)
12
- others (~> 0.0)
13
- tago (~> 0.0)
12
+ others (~> 0.1)
13
+ tago (~> 0.1)
14
14
  yaml (~> 0.3)
15
15
 
16
16
  GEM
@@ -70,7 +70,7 @@ GEM
70
70
  rdoc (6.14.2)
71
71
  erb
72
72
  psych (>= 4.0.0)
73
- regexp_parser (2.10.0)
73
+ regexp_parser (2.11.2)
74
74
  rexml (3.4.1)
75
75
  rubocop (1.79.2)
76
76
  json (~> 2.3)
@@ -112,7 +112,7 @@ GEM
112
112
  threads (0.4.1)
113
113
  backtrace (~> 0)
114
114
  concurrent-ruby (~> 1.0)
115
- unicode-display_width (3.1.4)
115
+ unicode-display_width (3.1.5)
116
116
  unicode-emoji (~> 4.0, >= 4.0.4)
117
117
  unicode-emoji (4.0.4)
118
118
  yaml (0.4.0)
data/factbase.gemspec CHANGED
@@ -22,18 +22,18 @@ Gem::Specification.new do |s|
22
22
  s.authors = ['Yegor Bugayenko']
23
23
  s.email = 'yegor256@gmail.com'
24
24
  s.homepage = 'https://github.com/yegor256/factbase.rb'
25
- s.files = `git ls-files`.split($RS)
25
+ s.files = `git ls-files | grep -v -E '^(test/|\\.|fixtures|benchmark|renovate)'`.split($RS)
26
26
  s.rdoc_options = ['--charset=UTF-8']
27
27
  s.extra_rdoc_files = ['README.md', 'LICENSE.txt']
28
28
  s.add_dependency 'backtrace', '~>0.4'
29
- s.add_dependency 'decoor', '~>0.0'
29
+ s.add_dependency 'decoor', '~>0.1'
30
30
  s.add_dependency 'ellipsized', '~>0.3'
31
31
  s.add_dependency 'json', '~>2.7'
32
32
  s.add_dependency 'logger', '~>1.0'
33
33
  s.add_dependency 'loog', '~>0.6'
34
34
  s.add_dependency 'nokogiri', '~>1.10'
35
- s.add_dependency 'others', '~>0.0'
36
- s.add_dependency 'tago', '~>0.0'
35
+ s.add_dependency 'others', '~>0.1'
36
+ s.add_dependency 'tago', '~>0.1'
37
37
  s.add_dependency 'yaml', '~>0.3'
38
38
  s.metadata['rubygems_mfa_required'] = 'true'
39
39
  end
data/lib/factbase/fact.rb CHANGED
@@ -37,7 +37,7 @@ class Factbase::Fact
37
37
  # Convert it to a string.
38
38
  # @return [String] String representation of it (in JSON)
39
39
  def to_s
40
- "[ #{@map.map { |k, v| "#{k}: #{v}" }.join(', ')} ]"
40
+ "[ #{@map.map { |k, v| "#{k}: #{v}" }.sort.join(', ')} ]"
41
41
  end
42
42
 
43
43
  # Get a list of all props.
@@ -35,7 +35,16 @@ class Factbase::FactAsYaml
35
35
  hash[p] = v.is_a?(Array) ? v : [v]
36
36
  end
37
37
  hash.sort.to_h.map do |k, vv|
38
- "#{k}: [#{vv.map { |v| v.is_a?(String) ? v.ellipsized : v }.map(&:inspect).join(', ')}]"
38
+ [
39
+ k,
40
+ ': [',
41
+ vv.map do |v|
42
+ v = v.ellipsized if v.is_a?(String)
43
+ v = v.utc.iso8601 if v.is_a?(Time)
44
+ v
45
+ end.map(&:inspect).join(', '),
46
+ ']'
47
+ ].join
39
48
  end.join("\n")
40
49
  end
41
50
  end
@@ -22,6 +22,8 @@ module Factbase::IndexedTerm
22
22
  def predict(maps, params)
23
23
  key = [maps.object_id, @operands.first, @op]
24
24
  case @op
25
+ when :unique
26
+ maps
25
27
  when :one
26
28
  if @idx[key].nil?
27
29
  @idx[key] = []
@@ -145,7 +147,10 @@ module Factbase::IndexedTerm
145
147
  else
146
148
  @operands.each do |o|
147
149
  n = o.predict(maps, params)
148
- break if n.nil?
150
+ if n.nil?
151
+ r = maps
152
+ break
153
+ end
149
154
  if r.nil?
150
155
  r = n
151
156
  else
@@ -22,22 +22,22 @@ module Factbase::Ordering
22
22
  def unique(fact, maps, fb)
23
23
  @uniques = {} if @uniques.nil?
24
24
  raise "Too few operands for 'unique' (at least 1 expected)" if @operands.empty?
25
- results = []
25
+ dups = 0
26
26
  @operands.each_with_index do |_, i|
27
27
  @uniques[i] = [] if @uniques[i].nil?
28
28
  vv = _values(i, fact, maps, fb)
29
29
  return false if vv.nil?
30
30
  vv = [vv] unless vv.respond_to?(:to_a)
31
+ exists = false
31
32
  vv.each do |v|
32
33
  if @uniques[i].include?(v)
33
- results << false
34
+ exists = true
34
35
  else
35
36
  @uniques[i] << v
36
- results << true
37
37
  end
38
38
  end
39
+ dups += 1 if exists
39
40
  end
40
- return false if results.all?(false)
41
- true
41
+ dups < @operands.size
42
42
  end
43
43
  end
@@ -9,5 +9,5 @@
9
9
  # License:: MIT
10
10
  class Factbase
11
11
  # Current version of the gem (changed by .rultor.yml on every release)
12
- VERSION = '0.15.0' unless const_defined?(:VERSION)
12
+ VERSION = '0.15.2' unless const_defined?(:VERSION)
13
13
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: factbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.15.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
@@ -29,14 +29,14 @@ dependencies:
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: '0.0'
32
+ version: '0.1'
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '0.0'
39
+ version: '0.1'
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: ellipsized
42
42
  requirement: !ruby/object:Gem::Requirement
@@ -113,28 +113,28 @@ dependencies:
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '0.0'
116
+ version: '0.1'
117
117
  type: :runtime
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '0.0'
123
+ version: '0.1'
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: tago
126
126
  requirement: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: '0.0'
130
+ version: '0.1'
131
131
  type: :runtime
132
132
  prerelease: false
133
133
  version_requirements: !ruby/object:Gem::Requirement
134
134
  requirements:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
- version: '0.0'
137
+ version: '0.1'
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: yaml
140
140
  requirement: !ruby/object:Gem::Requirement
@@ -161,24 +161,6 @@ extra_rdoc_files:
161
161
  - LICENSE.txt
162
162
  - README.md
163
163
  files:
164
- - ".0pdd.yml"
165
- - ".gitattributes"
166
- - ".github/publish-benchmark.sh"
167
- - ".github/workflows/actionlint.yml"
168
- - ".github/workflows/benchmark.yml"
169
- - ".github/workflows/codecov.yml"
170
- - ".github/workflows/copyrights.yml"
171
- - ".github/workflows/markdown-lint.yml"
172
- - ".github/workflows/pdd.yml"
173
- - ".github/workflows/rake.yml"
174
- - ".github/workflows/reuse.yml"
175
- - ".github/workflows/typos.yml"
176
- - ".github/workflows/xcop.yml"
177
- - ".github/workflows/yamllint.yml"
178
- - ".gitignore"
179
- - ".pdd"
180
- - ".rubocop.yml"
181
- - ".rultor.yml"
182
164
  - Gemfile
183
165
  - Gemfile.lock
184
166
  - LICENSE.txt
@@ -186,28 +168,7 @@ files:
186
168
  - README.md
187
169
  - REUSE.toml
188
170
  - Rakefile
189
- - benchmark/bench_factbase.rb
190
- - benchmark/bench_large_query.rb
191
- - benchmark/bench_query.rb
192
- - benchmark/bench_taped.rb
193
171
  - factbase.gemspec
194
- - fixtures/stories/agg.yml
195
- - fixtures/stories/always.yml
196
- - fixtures/stories/and.yml
197
- - fixtures/stories/as.yml
198
- - fixtures/stories/count.yml
199
- - fixtures/stories/empty.yml
200
- - fixtures/stories/eq.yml
201
- - fixtures/stories/gt.yml
202
- - fixtures/stories/join.yml
203
- - fixtures/stories/max.yml
204
- - fixtures/stories/min.yml
205
- - fixtures/stories/nth.yml
206
- - fixtures/stories/one.yml
207
- - fixtures/stories/or.yml
208
- - fixtures/stories/sprintf.yml
209
- - fixtures/stories/sum.yml
210
- - fixtures/stories/unique.yml
211
172
  - lib/factbase.rb
212
173
  - lib/factbase/accum.rb
213
174
  - lib/factbase/cached/cached_fact.rb
@@ -251,47 +212,6 @@ files:
251
212
  - lib/factbase/to_xml.rb
252
213
  - lib/factbase/to_yaml.rb
253
214
  - lib/factbase/version.rb
254
- - renovate.json
255
- - test/factbase/cached/test_cached_factbase.rb
256
- - test/factbase/cached/test_cached_query.rb
257
- - test/factbase/indexed/test_indexed_fact.rb
258
- - test/factbase/indexed/test_indexed_factbase.rb
259
- - test/factbase/indexed/test_indexed_query.rb
260
- - test/factbase/indexed/test_indexed_term.rb
261
- - test/factbase/sync/test_sync_factbase.rb
262
- - test/factbase/sync/test_sync_query.rb
263
- - test/factbase/terms/test_aggregates.rb
264
- - test/factbase/terms/test_aliases.rb
265
- - test/factbase/terms/test_casting.rb
266
- - test/factbase/terms/test_debug.rb
267
- - test/factbase/terms/test_defn.rb
268
- - test/factbase/terms/test_logical.rb
269
- - test/factbase/terms/test_math.rb
270
- - test/factbase/terms/test_meta.rb
271
- - test/factbase/terms/test_ordering.rb
272
- - test/factbase/terms/test_strings.rb
273
- - test/factbase/terms/test_system.rb
274
- - test/factbase/test_accum.rb
275
- - test/factbase/test_churn.rb
276
- - test/factbase/test_fact.rb
277
- - test/factbase/test_fact_as_yaml.rb
278
- - test/factbase/test_flatten.rb
279
- - test/factbase/test_impatient.rb
280
- - test/factbase/test_inv.rb
281
- - test/factbase/test_logged.rb
282
- - test/factbase/test_pre.rb
283
- - test/factbase/test_query.rb
284
- - test/factbase/test_rules.rb
285
- - test/factbase/test_syntax.rb
286
- - test/factbase/test_tallied.rb
287
- - test/factbase/test_taped.rb
288
- - test/factbase/test_tee.rb
289
- - test/factbase/test_term.rb
290
- - test/factbase/test_to_json.rb
291
- - test/factbase/test_to_xml.rb
292
- - test/factbase/test_to_yaml.rb
293
- - test/test__helper.rb
294
- - test/test_factbase.rb
295
215
  homepage: https://github.com/yegor256/factbase.rb
296
216
  licenses:
297
217
  - MIT
data/.0pdd.yml DELETED
@@ -1,8 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- errors:
5
- - yegor256@gmail.com
6
- # alerts:
7
- # github:
8
- # - yegor256
data/.gitattributes DELETED
@@ -1,7 +0,0 @@
1
- # Check out all text files in UNIX format, with LF as end of line
2
- # Don't change this file. If you have any ideas about it, please
3
- # submit a separate issue about it and we'll discuss.
4
-
5
- * text=auto eol=lf
6
- *.java ident
7
- *.xml ident
@@ -1,24 +0,0 @@
1
- #!/bin/bash
2
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
- # SPDX-License-Identifier: MIT
4
-
5
- set -x
6
-
7
- sum=$(
8
- echo '```text'
9
- cut -c -71 < stdout.txt
10
- echo '```'
11
- echo
12
- echo "The results were calculated in [this GHA job][benchmark-gha]"
13
- echo "on $(date +'%Y-%m-%d') at $(date +'%H:%M'),"
14
- echo "on $(uname) with $(nproc --all) CPUs."
15
- )
16
-
17
- export sum
18
-
19
- perl -i -0777 -pe 's/(?<=<!-- benchmark_begin -->).*(?=<!-- benchmark_end -->)/\n$ENV{sum}\n/gs;' README.md
20
- url=${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}
21
-
22
- export url
23
- perl -i -0777 -pe 's/(?<=\[benchmark-gha\]: )[^\n]+(?=\n)/$ENV{url}/gs;' README.md
24
- rm stdout.txt
@@ -1,25 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: actionlint
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- actionlint:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - name: Download actionlint
20
- id: get_actionlint
21
- run: bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
22
- shell: bash
23
- - name: Check workflow files
24
- run: ${{ steps.get_actionlint.outputs.executable }} -color
25
- shell: bash
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
4
- # SPDX-License-Identifier: MIT
5
- ---
6
- # yamllint disable rule:line-length
7
- name: benchmark
8
- 'on':
9
- push:
10
- paths-ignore: ['README.md']
11
- concurrency:
12
- group: benchmark-${{ github.ref }}
13
- cancel-in-progress: true
14
- jobs:
15
- benchmark:
16
- timeout-minutes: 15
17
- runs-on: ubuntu-24.04
18
- steps:
19
- - uses: actions/checkout@v5
20
- - uses: ruby/setup-ruby@v1
21
- with:
22
- ruby-version: 3.3
23
- bundler-cache: true
24
- - run: bundle config set --global path "$(pwd)/vendor/bundle"
25
- - run: bundle install --no-color
26
- - run: bundle exec rake benchmark > stdout.txt
27
- - run: .github/publish-benchmark.sh
28
- - uses: peter-evans/create-pull-request@v7
29
- with:
30
- sign-commits: true
31
- branch: benchmark-results
32
- commit-message: 'new benchmarking results'
33
- delete-branch: true
34
- title: 'New Benchmarking Results'
35
- reviewers: yegor256
36
- base: master
@@ -1,27 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: codecov
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- jobs:
11
- codecov:
12
- timeout-minutes: 15
13
- runs-on: ubuntu-24.04
14
- steps:
15
- - uses: actions/checkout@v5
16
- - uses: ruby/setup-ruby@v1
17
- with:
18
- ruby-version: 3.3
19
- bundler-cache: true
20
- - run: bundle config set --global path "$(pwd)/vendor/bundle"
21
- - run: bundle install --no-color
22
- - run: bundle exec rake test
23
- - uses: codecov/codecov-action@v5
24
- with:
25
- token: ${{ secrets.CODECOV_TOKEN }}
26
- files: coverage/.resultset.json
27
- fail_ci_if_error: true
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: copyrights
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- copyrights:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: yegor256/copyrights-action@0.0.12
@@ -1,23 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: markdown-lint
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- paths-ignore: ['paper/**', 'sandbox/**']
14
- concurrency:
15
- group: markdown-lint-${{ github.ref }}
16
- cancel-in-progress: true
17
- jobs:
18
- markdown-lint:
19
- timeout-minutes: 15
20
- runs-on: ubuntu-24.04
21
- steps:
22
- - uses: actions/checkout@v5
23
- - uses: DavidAnson/markdownlint-cli2-action@v20.0.0
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: pdd
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- pdd:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: volodya-lombrozo/pdd-action@master
@@ -1,28 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: rake
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- rake:
15
- strategy:
16
- matrix:
17
- os: [ubuntu-24.04, macos-15, windows-2022]
18
- ruby: [3.3]
19
- runs-on: ${{ matrix.os }}
20
- steps:
21
- - uses: actions/checkout@v5
22
- - uses: ruby/setup-ruby@v1
23
- with:
24
- ruby-version: ${{ matrix.ruby }}
25
- bundler-cache: true
26
- - run: bundle config set --global path "$(pwd)/vendor/bundle"
27
- - run: bundle install --no-color
28
- - run: bundle exec rake
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: reuse
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- reuse:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: fsfe/reuse-action@v5
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: typos
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- typos:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: crate-ci/typos@v1.35.4
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: xcop
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- xcop:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: g4s8/xcop-action@master
@@ -1,19 +0,0 @@
1
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
2
- # SPDX-License-Identifier: MIT
3
- ---
4
- # yamllint disable rule:line-length
5
- name: yamllint
6
- 'on':
7
- push:
8
- branches:
9
- - master
10
- pull_request:
11
- branches:
12
- - master
13
- jobs:
14
- yamllint:
15
- timeout-minutes: 15
16
- runs-on: ubuntu-24.04
17
- steps:
18
- - uses: actions/checkout@v5
19
- - uses: ibiqlik/action-yamllint@v3
data/.gitignore DELETED
@@ -1,11 +0,0 @@
1
- .bundle/
2
- .DS_Store
3
- .idea/
4
- .yardoc/
5
- *.gem
6
- coverage/
7
- doc/
8
- node_modules/
9
- rdoc/
10
- vendor/
11
- .claude/
data/.pdd DELETED
@@ -1,7 +0,0 @@
1
- --source=.
2
- --verbose
3
- --exclude target/**/*
4
- --exclude coverage/**/*
5
- --rule min-words:20
6
- --rule min-estimate:15
7
- --rule max-estimate:90