skittlize 1.1.0 → 1.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/ci.yaml +37 -0
- data/.rubocop.yml +21 -0
- data/CHANGELOG.md +15 -2
- data/Gemfile +2 -0
- data/Rakefile +3 -1
- data/bin/console +1 -0
- data/lib/skittlize.rb +25 -11
- data/lib/skittlize/version.rb +3 -1
- data/skittlize.gemspec +7 -1
- metadata +33 -4
- data/.travis.yml +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b0e0ed1da3549288c7739538b5098b1dc210aa011904116be1a131ca0c625a6
|
4
|
+
data.tar.gz: a0cca47d6b3eca5a2c790c4e4f1bd97a8a20c78e15df4f1238ff9db59470e3a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a728bd5f61b70aa28cca12c6f76db86f44880c5d070a7a3b3aa2978836913405cce90486be3e90205121693a126b7b962cf2c6f37f32cef4b3c9b940197ebb03
|
7
|
+
data.tar.gz: 88de0af410e891cabd33f58c2f9664d0be12341d0865880a32bf40d32f3b869f33f787f0b388f9ae9183ece1f06a93516b29a3217fb69677e964a27dfaa4506e
|
@@ -0,0 +1,37 @@
|
|
1
|
+
---
|
2
|
+
name: CI
|
3
|
+
|
4
|
+
on:
|
5
|
+
push:
|
6
|
+
branches:
|
7
|
+
- master
|
8
|
+
pull_request:
|
9
|
+
branches:
|
10
|
+
- master
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
ci:
|
14
|
+
name: Run checks
|
15
|
+
|
16
|
+
strategy:
|
17
|
+
matrix:
|
18
|
+
ruby_version:
|
19
|
+
- 2.4
|
20
|
+
- 2.5
|
21
|
+
- 2.6
|
22
|
+
- 2.7
|
23
|
+
- 3.0
|
24
|
+
|
25
|
+
runs-on: 'ubuntu-18.04'
|
26
|
+
steps:
|
27
|
+
- uses: actions/checkout@v2
|
28
|
+
- name: Install ruby version ${{ env.ruby_version }}
|
29
|
+
uses: ruby/setup-ruby@v1
|
30
|
+
with:
|
31
|
+
ruby-version: ${{ matrix.ruby_version }}
|
32
|
+
bundler-cache: true
|
33
|
+
|
34
|
+
- name: RSpec
|
35
|
+
run: |
|
36
|
+
bundle exec rake spec
|
37
|
+
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
AllCops:
|
2
|
+
TargetRubyVersion: 2.5
|
3
|
+
CacheRootDirectory: '/tmp/skittlize-rubocop-cache'
|
4
|
+
|
5
|
+
Metrics/BlockLength:
|
6
|
+
ExcludedMethods: ['describe', 'context']
|
7
|
+
|
8
|
+
Style/Documentation:
|
9
|
+
Enabled: false
|
10
|
+
|
11
|
+
Style/SymbolArray:
|
12
|
+
Enabled: false
|
13
|
+
|
14
|
+
Style/WordArray:
|
15
|
+
Enabled: false
|
16
|
+
|
17
|
+
Style/TrailingCommaInArrayLiteral:
|
18
|
+
EnforcedStyleForMultiline: "comma"
|
19
|
+
|
20
|
+
Style/TrailingCommaInHashLiteral:
|
21
|
+
EnforcedStyleForMultiline: "comma"
|
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,21 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
## [
|
3
|
+
## [v1.2.0](https://github.com/smortex/skittlize/tree/v1.2.0) (2021-05-02)
|
4
4
|
|
5
|
-
[Full Changelog](https://github.com/smortex/skittlize/compare/v1.
|
5
|
+
[Full Changelog](https://github.com/smortex/skittlize/compare/v1.1.0...v1.2.0)
|
6
|
+
|
7
|
+
**Implemented enhancements:**
|
8
|
+
|
9
|
+
- Add a test suite [\#4](https://github.com/smortex/skittlize/pull/4) ([smortex](https://github.com/smortex))
|
10
|
+
- Allow to skittlize parts of strings [\#3](https://github.com/smortex/skittlize/pull/3) ([smortex](https://github.com/smortex))
|
11
|
+
|
12
|
+
**Fixed bugs:**
|
13
|
+
|
14
|
+
- Fix future-version in CHANGELOG [\#2](https://github.com/smortex/skittlize/pull/2) ([smortex](https://github.com/smortex))
|
15
|
+
|
16
|
+
## [v1.1.0](https://github.com/smortex/skittlize/tree/v1.1.0) (2021-01-04)
|
17
|
+
|
18
|
+
[Full Changelog](https://github.com/smortex/skittlize/compare/v1.0.0...v1.1.0)
|
6
19
|
|
7
20
|
**Implemented enhancements:**
|
8
21
|
|
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'bundler/gem_tasks'
|
2
4
|
require 'rspec/core/rake_task'
|
3
5
|
|
@@ -8,7 +10,7 @@ require 'github_changelog_generator/task'
|
|
8
10
|
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
9
11
|
config.user = 'smortex'
|
10
12
|
config.project = 'skittlize'
|
11
|
-
config.future_release = Skittlize::VERSION
|
13
|
+
config.future_release = "v#{Skittlize::VERSION}"
|
12
14
|
end
|
13
15
|
|
14
16
|
task default: :spec
|
data/bin/console
CHANGED
data/lib/skittlize.rb
CHANGED
@@ -1,21 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'digest'
|
2
4
|
|
3
5
|
class Array
|
4
|
-
def skittlize
|
6
|
+
def skittlize(options = {})
|
5
7
|
map do |cell|
|
6
8
|
case cell
|
7
|
-
when Array
|
8
|
-
cell.skittlize
|
9
|
-
when String
|
10
|
-
cell.skittlize
|
9
|
+
when Array, String
|
10
|
+
cell.skittlize(options)
|
11
11
|
else
|
12
12
|
cell
|
13
13
|
end
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
|
-
def skittlize!
|
18
|
-
replace(skittlize)
|
17
|
+
def skittlize!(options = {})
|
18
|
+
replace(skittlize(options))
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
@@ -27,11 +27,25 @@ class String
|
|
27
27
|
n
|
28
28
|
end
|
29
29
|
|
30
|
-
def skittlize
|
31
|
-
|
30
|
+
def skittlize(options = {})
|
31
|
+
check_options(options)
|
32
|
+
|
33
|
+
if options[:split]
|
34
|
+
split(options[:split]).map(&:skittlize).join(options[:join] || options[:split])
|
35
|
+
else
|
36
|
+
"\033[38;5;#{skittle_color}m#{self}\033[0m"
|
37
|
+
end
|
32
38
|
end
|
33
39
|
|
34
|
-
def skittlize!
|
35
|
-
replace(skittlize)
|
40
|
+
def skittlize!(options = {})
|
41
|
+
replace(skittlize(options))
|
42
|
+
end
|
43
|
+
|
44
|
+
private
|
45
|
+
|
46
|
+
def check_options(options)
|
47
|
+
extra_options = options.keys - [:split, :join]
|
48
|
+
|
49
|
+
raise "Unsupported options: #{extra_options}" if extra_options.any?
|
36
50
|
end
|
37
51
|
end
|
data/lib/skittlize/version.rb
CHANGED
data/skittlize.gemspec
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
lib = File.expand_path('lib', __dir__)
|
2
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
3
5
|
require 'skittlize/version'
|
@@ -12,6 +14,8 @@ Gem::Specification.new do |spec|
|
|
12
14
|
spec.homepage = 'https://github.com/smortex/skittlize'
|
13
15
|
spec.license = 'MIT'
|
14
16
|
|
17
|
+
spec.required_ruby_version = 2.4
|
18
|
+
|
15
19
|
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
16
20
|
|
17
21
|
spec.metadata['homepage_uri'] = spec.homepage
|
@@ -28,7 +32,9 @@ Gem::Specification.new do |spec|
|
|
28
32
|
spec.require_paths = ['lib']
|
29
33
|
|
30
34
|
spec.add_development_dependency 'bundler', '~> 2.0'
|
35
|
+
spec.add_development_dependency 'github_changelog_generator'
|
31
36
|
spec.add_development_dependency 'rake', '~> 10.0'
|
32
37
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
33
|
-
spec.add_development_dependency '
|
38
|
+
spec.add_development_dependency 'rubocop'
|
39
|
+
spec.add_development_dependency 'rubocop-rspec'
|
34
40
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skittlize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Romain Tartière
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-05-02 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: '2.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: github_changelog_generator
|
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
|
@@ -53,7 +67,21 @@ dependencies:
|
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '3.0'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
70
|
+
name: rubocop
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rubocop-rspec
|
57
85
|
requirement: !ruby/object:Gem::Requirement
|
58
86
|
requirements:
|
59
87
|
- - ">="
|
@@ -73,9 +101,10 @@ executables: []
|
|
73
101
|
extensions: []
|
74
102
|
extra_rdoc_files: []
|
75
103
|
files:
|
104
|
+
- ".github/workflows/ci.yaml"
|
76
105
|
- ".gitignore"
|
77
106
|
- ".rspec"
|
78
|
-
- ".
|
107
|
+
- ".rubocop.yml"
|
79
108
|
- CHANGELOG.md
|
80
109
|
- CODE_OF_CONDUCT.md
|
81
110
|
- Gemfile
|