splitta 4.2.5 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d8e46cae786dd0a359ae4ba07fc88991c8655957635a12e24acc73954005a9c
4
- data.tar.gz: 835385acb2401790fd2c077607c77b7a45621e02317b8b83fd7cff869898aefc
3
+ metadata.gz: 4796446098b41660e0d2964aa4f07bab8eaf29604260fe62146168ccd1eb6f09
4
+ data.tar.gz: a0cdef7d9fe32d8326cd36f90efa2354e35a2f482df04f35e75db02b9c2f382f
5
5
  SHA512:
6
- metadata.gz: 698ac3cbdaf4671b86f931e963c2b1bd7cbb193c381ac4ffb5817b66a6849a8da8a28c73ce2a1a322e6891736765802a80f1e7a43da4ff977e998b97e5adb392
7
- data.tar.gz: f959bd4dd3a79f687321aafc78fd1e20e8f39964610da758779d7b52038232b3f41e150ea5c11b197b8bd58313c048a956a069eeb5a89e8b4bd3477b2bbe9cd7
6
+ metadata.gz: 8fa2ee2a00aa39b5185bd959cf93bc36a485ebd531ff6fe06eafe08e2651e46a707a04462638415217b8bbb95f545ad9d4d67a94a31f0de930ec8c525a76fe57
7
+ data.tar.gz: b2cbf956fba309f7131160a8ab44d8a5b24c80bce8765940b5a676b3c3d2c7e4d3dc18b0fafd4c4ddf128730eb7d9d126239af4353b4166aa1da96e7bd7e4428
data/.codeclimate.yml CHANGED
@@ -4,15 +4,24 @@ engines:
4
4
  enabled: true
5
5
  config:
6
6
  languages:
7
+ - c
7
8
  - ruby
8
9
  checks:
9
10
  Similar code:
10
11
  enabled: false
11
12
  fixme:
12
13
  enabled: true
14
+ flog:
15
+ enabled: true
16
+ config:
17
+ score_threshold: 20.0
13
18
  rubocop:
14
19
  enabled: true
15
- channel: rubocop-0-85
20
+ exclude_fingerprints:
21
+ - 4218049e28199ed950d3cd721df86dce
22
+ - c8179d0de3a9df18a2c45750d3f8647e
23
+ - 03f6eee11d86507da564695007106721
24
+ channel: rubocop-1-23-0
16
25
  ratings:
17
26
  paths:
18
27
  - "**.rb"
@@ -0,0 +1,37 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+
9
+ jobs:
10
+ test:
11
+
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ matrix:
15
+ ruby-version: ['3.0']
16
+
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Set up Ruby
20
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
21
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
22
+ # uses: ruby/setup-ruby@v1
23
+ uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
24
+ with:
25
+ ruby-version: ${{ matrix.ruby-version }}
26
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
27
+ - name: Run tests
28
+ run: bundle exec rake spec
29
+ - name: Rubocop
30
+ run: bundle exec rubocop
31
+ - name: Send coverage to Code Climate
32
+ uses: paambaati/codeclimate-action@v3.0.0
33
+ env:
34
+ CC_TEST_REPORTER_ID: 35dd438da367278dc0d80cb7e21b3b0cd6eb207f60890a05c3fe1f0882981e64
35
+ with:
36
+ coverageLocations: ${{github.workspace}}/coverage/coverage.json:simplecov
37
+ coverageCommand: bundle exec rake coverage
data/.gitignore CHANGED
@@ -1,4 +1,5 @@
1
1
  /.bundle/
2
+ /.rake_tasks
2
3
  /.yardoc
3
4
  /Gemfile.lock
4
5
  /_yardoc/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.rubocop.yml CHANGED
@@ -1,135 +1,202 @@
1
1
  AllCops:
2
2
  Exclude:
3
- - splitta.gemspec
4
- - Rakefile
5
-
3
+ - ext/**/*
4
+ - tmp/**/*
5
+ - vendor/**/*
6
+ Gemspec/DateAssignment:
7
+ Enabled: true
8
+ Gemspec/RequireMFA:
9
+ Enabled: true
6
10
  Layout/EmptyLinesAroundAttributeAccessor:
7
11
  Enabled: true
8
-
9
12
  Layout/EmptyLinesAroundClassBody:
10
13
  EnforcedStyle: empty_lines_except_namespace
11
-
12
14
  Layout/EmptyLinesAroundModuleBody:
13
15
  EnforcedStyle: empty_lines_except_namespace
14
-
15
16
  Layout/ExtraSpacing:
16
17
  Enabled: false
17
-
18
+ Layout/HashAlignment:
19
+ EnforcedHashRocketStyle: table
20
+ EnforcedColonStyle: table
21
+ Layout/LineEndStringConcatenationIndentation:
22
+ Enabled: true
18
23
  Layout/LineLength:
19
24
  Max: 120
20
25
  Enabled: false
21
-
22
26
  Layout/SpaceAroundMethodCallOperator:
23
27
  Enabled: true
24
-
28
+ Layout/SpaceBeforeBrackets:
29
+ Enabled: true
30
+ Lint/AmbiguousAssignment:
31
+ Enabled: true
32
+ Lint/AmbiguousOperatorPrecedence:
33
+ Enabled: true
34
+ Lint/AmbiguousRange:
35
+ Enabled: true
36
+ Lint/DeprecatedConstants:
37
+ Enabled: true
25
38
  Lint/DeprecatedOpenSSLConstant:
26
39
  Enabled: true
27
-
40
+ Lint/DuplicateBranch:
41
+ Enabled: true
42
+ Lint/DuplicateRegexpCharacterClassElement:
43
+ Enabled: true
44
+ Lint/EmptyBlock:
45
+ Enabled: true
46
+ Lint/EmptyClass:
47
+ Enabled: true
48
+ Lint/EmptyInPattern:
49
+ Enabled: true
50
+ Lint/IncompatibleIoSelectWithFiberScheduler:
51
+ Enabled: true
52
+ Lint/LambdaWithoutLiteralBlock:
53
+ Enabled: true
28
54
  Lint/MixedRegexpCaptureTypes:
29
55
  Enabled: true
30
-
56
+ Lint/NoReturnInBeginEndBlocks:
57
+ Enabled: true
58
+ Lint/NumberedParameterAssignment:
59
+ Enabled: true
60
+ Lint/OrAssignmentToConstant:
61
+ Enabled: true
31
62
  Lint/RaiseException:
32
63
  Enabled: true
33
-
64
+ Lint/RedundantDirGlobSort:
65
+ Enabled: true
66
+ Lint/RequireRelativeSelfPath:
67
+ Enabled: true
34
68
  Lint/StructNewOverride:
35
69
  Enabled: true
36
-
70
+ Lint/SymbolConversion:
71
+ Enabled: true
72
+ Lint/ToEnumArguments:
73
+ Enabled: true
74
+ Lint/TripleQuotes:
75
+ Enabled: true
76
+ Lint/UnexpectedBlockArity:
77
+ Enabled: true
78
+ Lint/UnmodifiedReduceAccumulator:
79
+ Enabled: true
80
+ Lint/UselessRuby2Keywords:
81
+ Enabled: true
37
82
  Metrics/AbcSize:
38
83
  Max: 50
39
84
  Enabled: false
40
-
41
85
  Metrics/BlockLength:
42
86
  Max: 50
43
87
  Enabled: false
44
-
45
88
  Metrics/ClassLength:
46
89
  Max: 50
47
90
  Enabled: false
48
-
49
91
  Metrics/CyclomaticComplexity:
50
92
  Max: 30
51
93
  Enabled: false
52
-
53
94
  Metrics/MethodLength:
54
95
  Max: 20
55
96
  Enabled: false
56
-
57
97
  Metrics/ModuleLength:
58
98
  Max: 1000
59
99
  Enabled: false
60
-
61
100
  Metrics/PerceivedComplexity:
62
101
  Max: 30
63
102
  Enabled: false
64
-
103
+ Naming/BlockForwarding:
104
+ Enabled: true
105
+ Security/IoMethods:
106
+ Enabled: true
65
107
  Security/MarshalLoad:
66
108
  Enabled: false
67
-
68
109
  Style/AndOr:
69
110
  Enabled: false
70
-
111
+ Style/ArgumentsForwarding:
112
+ Enabled: true
71
113
  Style/CaseEquality:
72
114
  Enabled: false
73
-
115
+ Style/CollectionCompact:
116
+ Enabled: true
117
+ Style/DocumentDynamicEvalDefinition:
118
+ Enabled: true
74
119
  Style/Documentation:
75
120
  Enabled: false
76
-
77
121
  Style/DoubleNegation:
78
122
  Enabled: false
79
-
123
+ Style/EndlessMethod:
124
+ Enabled: true
80
125
  Style/ExponentialNotation:
81
126
  Enabled: true
82
-
127
+ Style/FileRead:
128
+ Enabled: true
129
+ Style/FileWrite:
130
+ Enabled: true
83
131
  Style/FrozenStringLiteralComment:
84
132
  Enabled: false
85
-
86
133
  Style/GuardClause:
87
134
  Enabled: false
88
-
135
+ Style/HashConversion:
136
+ Enabled: true
89
137
  Style/HashEachMethods:
90
138
  Enabled: true
91
-
139
+ Style/HashExcept:
140
+ Enabled: true
141
+ Style/HashSyntax:
142
+ Enabled: true
92
143
  Style/HashTransformKeys:
93
144
  Enabled: true
94
-
95
145
  Style/HashTransformValues:
96
146
  Enabled: true
97
-
98
147
  Style/IfUnlessModifier:
99
148
  Enabled: false
100
-
149
+ Style/IfWithBooleanLiteralBranches:
150
+ Enabled: true
151
+ Style/InPatternThen:
152
+ Enabled: true
153
+ Style/MapToHash:
154
+ Enabled: true
101
155
  Style/MultilineBlockChain:
102
156
  Enabled: false
103
-
104
157
  Style/MultilineIfModifier:
105
158
  Enabled: false
106
-
159
+ Style/MultilineInPatternThen:
160
+ Enabled: true
107
161
  Style/MutableConstant:
108
162
  Enabled: false
109
-
163
+ Style/NegatedIfElseCondition:
164
+ Enabled: true
165
+ Style/NilLambda:
166
+ Enabled: true
167
+ Style/NumberedParameters:
168
+ Enabled: true
169
+ Style/NumberedParametersLimit:
170
+ Enabled: true
171
+ Style/OpenStructUse:
172
+ Enabled: true
173
+ Style/QuotedSymbols:
174
+ Enabled: true
175
+ Style/RedundantArgument:
176
+ Enabled: true
110
177
  Style/RedundantRegexpCharacterClass:
111
178
  Enabled: true
112
-
113
179
  Style/RedundantRegexpEscape:
114
180
  Enabled: true
115
-
181
+ Style/RedundantSelfAssignmentBranch:
182
+ Enabled: true
116
183
  Style/RescueModifier:
117
184
  Enabled: false
118
-
119
185
  Style/RescueStandardError:
120
186
  Enabled: false
121
-
187
+ Style/SelectByRegexp:
188
+ Enabled: true
122
189
  Style/SlicingWithRange:
123
190
  Enabled: true
124
-
191
+ Style/StringChars:
192
+ Enabled: true
193
+ Style/SwapValues:
194
+ Enabled: true
125
195
  Style/TrailingCommaInArguments:
126
196
  EnforcedStyleForMultiline: comma
127
-
128
197
  Style/TrailingCommaInArrayLiteral:
129
198
  EnforcedStyleForMultiline: consistent_comma
130
-
131
199
  Style/TrailingCommaInHashLiteral:
132
200
  EnforcedStyleForMultiline: consistent_comma
133
-
134
201
  Style/ZeroLengthPredicate:
135
202
  Enabled: false
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.5.1
1
+ 3.0.3
data/.yardopts ADDED
@@ -0,0 +1,6 @@
1
+ --readme README.md
2
+ --title 'Splitta Documentation'
3
+ --charset utf-8
4
+ --markup-provider=redcarpet
5
+ --markup markdown
6
+ 'lib/**/*.rb' - '*.md'
data/CODE_OF_CONDUCT.md CHANGED
@@ -1,49 +1,133 @@
1
- # Contributor Code of Conduct
2
1
 
3
- As contributors and maintainers of this project, and in the interest of
4
- fostering an open and welcoming community, we pledge to respect all people who
5
- contribute through reporting issues, posting feature requests, updating
6
- documentation, submitting pull requests or patches, and other activities.
2
+ # Contributor Covenant Code of Conduct
7
3
 
8
- We are committed to making participation in this project a harassment-free
9
- experience for everyone, regardless of level of experience, gender, gender
10
- identity and expression, sexual orientation, disability, personal appearance,
11
- body size, race, ethnicity, age, religion, or nationality.
4
+ ## Our Pledge
12
5
 
13
- Examples of unacceptable behavior by participants include:
6
+ We as members, contributors, and leaders pledge to make participation in our
7
+ community a harassment-free experience for everyone, regardless of age, body
8
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
9
+ identity and expression, level of experience, education, socio-economic status,
10
+ nationality, personal appearance, race, caste, color, religion, or sexual
11
+ identity and orientation.
14
12
 
15
- * The use of sexualized language or imagery
16
- * Personal attacks
17
- * Trolling or insulting/derogatory comments
13
+ We pledge to act and interact in ways that contribute to an open, welcoming,
14
+ diverse, inclusive, and healthy community.
15
+
16
+ ## Our Standards
17
+
18
+ Examples of behavior that contributes to a positive environment for our
19
+ community include:
20
+
21
+ * Demonstrating empathy and kindness toward other people
22
+ * Being respectful of differing opinions, viewpoints, and experiences
23
+ * Giving and gracefully accepting constructive feedback
24
+ * Accepting responsibility and apologizing to those affected by our mistakes,
25
+ and learning from the experience
26
+ * Focusing on what is best not just for us as individuals, but for the overall
27
+ community
28
+
29
+ Examples of unacceptable behavior include:
30
+
31
+ * The use of sexualized language or imagery, and sexual attention or advances of
32
+ any kind
33
+ * Trolling, insulting or derogatory comments, and personal or political attacks
18
34
  * Public or private harassment
19
- * Publishing other's private information, such as physical or electronic
20
- addresses, without explicit permission
21
- * Other unethical or unprofessional conduct
35
+ * Publishing others' private information, such as a physical or email address,
36
+ without their explicit permission
37
+ * Other conduct which could reasonably be considered inappropriate in a
38
+ professional setting
39
+
40
+ ## Enforcement Responsibilities
41
+
42
+ Community leaders are responsible for clarifying and enforcing our standards of
43
+ acceptable behavior and will take appropriate and fair corrective action in
44
+ response to any behavior that they deem inappropriate, threatening, offensive,
45
+ or harmful.
22
46
 
23
- Project maintainers have the right and responsibility to remove, edit, or
24
- reject comments, commits, code, wiki edits, issues, and other contributions
25
- that are not aligned to this Code of Conduct, or to ban temporarily or
26
- permanently any contributor for other behaviors that they deem inappropriate,
27
- threatening, offensive, or harmful.
47
+ Community leaders have the right and responsibility to remove, edit, or reject
48
+ comments, commits, code, wiki edits, issues, and other contributions that are
49
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
50
+ decisions when appropriate.
28
51
 
29
- By adopting this Code of Conduct, project maintainers commit themselves to
30
- fairly and consistently applying these principles to every aspect of managing
31
- this project. Project maintainers who do not follow or enforce the Code of
32
- Conduct may be permanently removed from the project team.
52
+ ## Scope
33
53
 
34
- This code of conduct applies both within project spaces and in public spaces
35
- when an individual is representing the project or its community.
54
+ This Code of Conduct applies within all community spaces, and also applies when
55
+ an individual is officially representing the community in public spaces.
56
+ Examples of representing our community include using an official e-mail address,
57
+ posting via an official social media account, or acting as an appointed
58
+ representative at an online or offline event.
59
+
60
+ ## Enforcement
36
61
 
37
62
  Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
- reported by contacting a project maintainer at david@bloomfire.com. All
39
- complaints will be reviewed and investigated and will result in a response that
40
- is deemed necessary and appropriate to the circumstances. Maintainers are
41
- obligated to maintain confidentiality with regard to the reporter of an
42
- incident.
63
+ reported to the community leaders responsible for enforcement at
64
+ [INSERT CONTACT METHOD].
65
+ All complaints will be reviewed and investigated promptly and fairly.
66
+
67
+ All community leaders are obligated to respect the privacy and security of the
68
+ reporter of any incident.
69
+
70
+ ## Enforcement Guidelines
71
+
72
+ Community leaders will follow these Community Impact Guidelines in determining
73
+ the consequences for any action they deem in violation of this Code of Conduct:
74
+
75
+ ### 1. Correction
76
+
77
+ **Community Impact**: Use of inappropriate language or other behavior deemed
78
+ unprofessional or unwelcome in the community.
79
+
80
+ **Consequence**: A private, written warning from community leaders, providing
81
+ clarity around the nature of the violation and an explanation of why the
82
+ behavior was inappropriate. A public apology may be requested.
83
+
84
+ ### 2. Warning
85
+
86
+ **Community Impact**: A violation through a single incident or series of
87
+ actions.
88
+
89
+ **Consequence**: A warning with consequences for continued behavior. No
90
+ interaction with the people involved, including unsolicited interaction with
91
+ those enforcing the Code of Conduct, for a specified period of time. This
92
+ includes avoiding interactions in community spaces as well as external channels
93
+ like social media. Violating these terms may lead to a temporary or permanent
94
+ ban.
95
+
96
+ ### 3. Temporary Ban
97
+
98
+ **Community Impact**: A serious violation of community standards, including
99
+ sustained inappropriate behavior.
100
+
101
+ **Consequence**: A temporary ban from any sort of interaction or public
102
+ communication with the community for a specified period of time. No public or
103
+ private interaction with the people involved, including unsolicited interaction
104
+ with those enforcing the Code of Conduct, is allowed during this period.
105
+ Violating these terms may lead to a permanent ban.
106
+
107
+ ### 4. Permanent Ban
108
+
109
+ **Community Impact**: Demonstrating a pattern of violation of community
110
+ standards, including sustained inappropriate behavior, harassment of an
111
+ individual, or aggression toward or disparagement of classes of individuals.
112
+
113
+ **Consequence**: A permanent ban from any sort of public interaction within the
114
+ community.
115
+
116
+ ## Attribution
43
117
 
44
118
  This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
- version 1.3.0, available at
46
- [http://contributor-covenant.org/version/1/3/0/][version]
119
+ version 2.1, available at
120
+ [https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
121
+
122
+ Community Impact Guidelines were inspired by
123
+ [Mozilla's code of conduct enforcement ladder][Mozilla CoC].
124
+
125
+ For answers to common questions about this code of conduct, see the FAQ at
126
+ [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
127
+ [https://www.contributor-covenant.org/translations][translations].
47
128
 
48
- [homepage]: http://contributor-covenant.org
49
- [version]: http://contributor-covenant.org/version/1/3/0/
129
+ [homepage]: https://www.contributor-covenant.org
130
+ [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
131
+ [Mozilla CoC]: https://github.com/mozilla/diversity
132
+ [FAQ]: https://www.contributor-covenant.org/faq
133
+ [translations]: https://www.contributor-covenant.org/translations
data/README.md CHANGED
@@ -8,9 +8,10 @@
8
8
  ## Status
9
9
 
10
10
  [![Gem Version](https://badge.fury.io/rb/splitta.svg)](https://badge.fury.io/rb/splitta)
11
- [![Travis Build Status](https://travis-ci.org/david-mccullars/ruby-splitta.svg?branch=master)](https://travis-ci.org/david-mccullars/ruby-splitta)
11
+ [![Build Status](https://github.com/david-mccullars/ruby-splitta/workflows/CI/badge.svg)](https://github.com/david-mccullars/ruby-splitta/actions?workflow=CI)
12
12
  [![Code Climate](https://codeclimate.com/github/david-mccullars/ruby-splitta/badges/gpa.svg)](https://codeclimate.com/github/david-mccullars/ruby-splitta)
13
13
  [![Test Coverage](https://codeclimate.com/github/david-mccullars/ruby-splitta/badges/coverage.svg)](https://codeclimate.com/github/david-mccullars/ruby-splitta/coverage)
14
+ [![MIT License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
14
15
 
15
16
  ## Description
16
17
 
data/Rakefile CHANGED
@@ -1,36 +1,17 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+ require 'yard'
3
4
 
4
5
  RSpec::Core::RakeTask.new(:spec)
5
6
 
6
- task :default => :spec
7
+ task default: :spec
7
8
 
8
- require 'rdoc/task'
9
- RDoc::Task.new do |rdoc|
10
- rdoc.main = "README.md"
11
- rdoc.rdoc_files.include("README.md", "lib/**/*.rb")
12
- end
9
+ YARD::Rake::YardocTask.new
13
10
 
14
11
  def unpickle(file)
15
- require 'rubypython'
16
-
17
- RubyPython.run do
18
- cPickle = import 'cPickle'
19
- gzip = import 'gzip'
20
-
21
- io = gzip.open(file, 'rb')
22
- data = cPickle.load(io)
23
- io.close()
24
-
25
- data = data.rubify
26
- if data.keys.first.is_a?(RubyPython::Tuple)
27
- data = data.each_with_object({}) do |(k, v), h|
28
- h[k.to_a] = v
29
- end
30
- end
31
-
32
- return data
33
- end
12
+ out, status = Open3.capture2e("bin/pickle2json #{file.inspect}")
13
+ abort out unless status.success?
14
+ JSON.parse(out).to_h
34
15
  end
35
16
 
36
17
  def gzip_dump(file, obj)
@@ -44,12 +25,19 @@ def gzip_dump(file, obj)
44
25
  end
45
26
 
46
27
  task :unpickle, [:file] do |_t, args|
28
+ require 'json'
29
+ require 'open3'
30
+
47
31
  files = Dir[args[:file] || 'data/src/**/*'].select do |f|
48
32
  File.file?(f)
49
33
  end
50
34
 
51
- files.each do |src|
52
- puts "Unpickling #{src} ..."
53
- gzip_dump(src.sub('/src/', '/'), unpickle(src))
54
- end
35
+ files.map do |src|
36
+ fork do
37
+ puts "Unpickling #{src} ..."
38
+ gzip_dump(src.sub('/src/', '/'), unpickle(src))
39
+ end
40
+ end.map do |pid|
41
+ Process.wait2(pid).last
42
+ end.all?(&:success?) or exit(1)
55
43
  end
data/bin/pickle2json ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env python
2
+ import gzip
3
+ import json
4
+ import pickle
5
+ import sys
6
+
7
+ if len(sys.argv) < 2:
8
+ sys.exit('Usage: pickle2json <GZIP PICKLE FILE>')
9
+
10
+ with gzip.open(sys.argv[1], 'rb') as f:
11
+ data = pickle.load(f)
12
+ if type(data) is dict and type(next(iter(data))) is tuple:
13
+ data = [[[k[0], k[1]], v] for k, v in data.items()]
14
+ print(json.dumps(data))
data/data/feats CHANGED
Binary file
data/data/lower_words CHANGED
Binary file
data/data/non_abbrs CHANGED
Binary file
@@ -1,6 +1,6 @@
1
1
  module Splitta
2
2
 
3
3
  # Current gem version
4
- VERSION = '4.2.5'
4
+ VERSION = '5.0.0'
5
5
 
6
6
  end
data/splitta.gemspec CHANGED
@@ -1,4 +1,4 @@
1
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
2
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require 'splitta/version'
4
4
 
@@ -18,10 +18,19 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ['lib']
20
20
 
21
+ spec.required_ruby_version = '>= 3.0.0'
22
+
21
23
  spec.add_development_dependency 'bundler'
24
+ spec.add_development_dependency 'github-markup'
22
25
  spec.add_development_dependency 'rake'
26
+ spec.add_development_dependency 'redcarpet'
23
27
  spec.add_development_dependency 'rspec'
24
28
  spec.add_development_dependency 'rubocop'
25
- spec.add_development_dependency 'rubypython'
29
+ spec.add_development_dependency 'rubocop-rake'
30
+ spec.add_development_dependency 'rubocop-rspec'
26
31
  spec.add_development_dependency 'simplecov', '~> 0.17.0' # 0.18 not supported by code climate
32
+ spec.add_development_dependency 'yard'
33
+ spec.metadata = {
34
+ 'rubygems_mfa_required' => 'true',
35
+ }
27
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: splitta
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.5
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David McCullars
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-10 00:00:00.000000000 Z
11
+ date: 2022-01-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: github-markup
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +52,20 @@ dependencies:
38
52
  - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: redcarpet
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
41
69
  - !ruby/object:Gem::Dependency
42
70
  name: rspec
43
71
  requirement: !ruby/object:Gem::Requirement
@@ -67,7 +95,21 @@ dependencies:
67
95
  - !ruby/object:Gem::Version
68
96
  version: '0'
69
97
  - !ruby/object:Gem::Dependency
70
- name: rubypython
98
+ name: rubocop-rake
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop-rspec
71
113
  requirement: !ruby/object:Gem::Requirement
72
114
  requirements:
73
115
  - - ">="
@@ -94,6 +136,20 @@ dependencies:
94
136
  - - "~>"
95
137
  - !ruby/object:Gem::Version
96
138
  version: 0.17.0
139
+ - !ruby/object:Gem::Dependency
140
+ name: yard
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
97
153
  description: Implementation of Splitta in Ruby. See https://code.google.com/archive/p/splitta/
98
154
  email:
99
155
  - david.mccullars@gmail.com
@@ -102,15 +158,18 @@ extensions: []
102
158
  extra_rdoc_files: []
103
159
  files:
104
160
  - ".codeclimate.yml"
161
+ - ".github/workflows/ci.yml"
105
162
  - ".gitignore"
163
+ - ".rspec"
106
164
  - ".rubocop.yml"
107
165
  - ".ruby-version"
108
- - ".travis.yml"
166
+ - ".yardopts"
109
167
  - CODE_OF_CONDUCT.md
110
168
  - Gemfile
111
169
  - LICENSE
112
170
  - README.md
113
171
  - Rakefile
172
+ - bin/pickle2json
114
173
  - data/feats
115
174
  - data/lower_words
116
175
  - data/non_abbrs
@@ -127,8 +186,9 @@ files:
127
186
  homepage: https://github.com/david-mccullars/ruby-splitta
128
187
  licenses:
129
188
  - MIT
130
- metadata: {}
131
- post_install_message:
189
+ metadata:
190
+ rubygems_mfa_required: 'true'
191
+ post_install_message:
132
192
  rdoc_options: []
133
193
  require_paths:
134
194
  - lib
@@ -136,16 +196,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
136
196
  requirements:
137
197
  - - ">="
138
198
  - !ruby/object:Gem::Version
139
- version: '0'
199
+ version: 3.0.0
140
200
  required_rubygems_version: !ruby/object:Gem::Requirement
141
201
  requirements:
142
202
  - - ">="
143
203
  - !ruby/object:Gem::Version
144
204
  version: '0'
145
205
  requirements: []
146
- rubyforge_project:
147
- rubygems_version: 2.7.6
148
- signing_key:
206
+ rubygems_version: 3.2.32
207
+ signing_key:
149
208
  specification_version: 4
150
209
  summary: Implementation of Splitta in Ruby
151
210
  test_files: []
data/.travis.yml DELETED
@@ -1,15 +0,0 @@
1
- env:
2
- global:
3
- - CC_TEST_REPORTER_ID=35dd438da367278dc0d80cb7e21b3b0cd6eb207f60890a05c3fe1f0882981e64
4
- language: ruby
5
- rvm:
6
- - 2.5.1
7
- before_install: gem install bundler -v 1.17.3
8
- before_script:
9
- - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
10
- - chmod +x ./cc-test-reporter
11
- - ./cc-test-reporter before-build
12
- script:
13
- - bundle exec rspec
14
- after_script:
15
- - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT