case_transform2 1.0.0 → 1.1.1
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/.codeclimate.yml +4 -23
- data/.github/workflows/audit.yml +22 -0
- data/.github/workflows/codeql-analysis.yml +70 -0
- data/.github/workflows/coverage.yml +32 -0
- data/.github/workflows/gem-push.yml +45 -0
- data/.github/workflows/test.yml +22 -0
- data/Gemfile +4 -2
- data/Gemfile.lock +77 -18
- data/Guardfile +6 -32
- data/README.md +12 -10
- data/Rakefile +2 -2
- data/bin/brakeman +29 -0
- data/bin/bundler-audit +29 -0
- data/bin/console +4 -3
- data/bin/setup +0 -0
- data/case_transform2.gemspec +24 -17
- data/docker-compose.yml +9 -0
- data/lib/case_transform2/hash_ext.rb +2 -2
- data/lib/case_transform2/string_ext.rb +8 -6
- data/lib/case_transform2/version.rb +1 -1
- data/lib/case_transform2.rb +13 -7
- metadata +95 -19
- data/.rubocop.yml +0 -146
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f91f4c7a5388436882985fd646c3020cdeaabc64f41042b68735ef1ca06742c6
|
4
|
+
data.tar.gz: a6126223e52e567b6a5ff7740071e5cf250929d6a9b204f0fccd74652bf03c5d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2d9dfa09085f2ec2b57991bfd7c077fe663119b8a45b00074c352f4f6a376e2c01c4f4f5c9f96b91e12cd65dfd8deb35dbad92626282dffd0944c7528351a9b4
|
7
|
+
data.tar.gz: eccecfd65968097e566f252e3a58bbc5b21a8e881832f9f2cdaa0a73ed44498a29521401daae7089572b3280aaa926735b4489dae21e32d181176676816601b2
|
data/.codeclimate.yml
CHANGED
@@ -9,31 +9,12 @@
|
|
9
9
|
# For more details, see here:
|
10
10
|
# http://docs.codeclimate.com/article/289-configuring-your-repository-via-codeclimate-yml#platform
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
engines:
|
16
|
-
# to turn on an engine, add it here and set enabled to `true`
|
17
|
-
# to turn off an engine, set enabled to `false` or remove it
|
12
|
+
plugins:
|
13
|
+
bundler-audit:
|
14
|
+
enabled: true
|
18
15
|
rubocop:
|
19
16
|
enabled: true
|
20
|
-
|
21
|
-
# enabled: true
|
22
|
-
# gofmt:
|
23
|
-
# enabled: true
|
24
|
-
# eslint:
|
25
|
-
# enabled: true
|
26
|
-
# csslint:
|
27
|
-
# enabled: true
|
28
|
-
|
29
|
-
# Engines can analyze files and report issues on them, but you can separately
|
30
|
-
# decide which files will receive ratings based on those issues. This is
|
31
|
-
# specified by path patterns under the ratings key.
|
32
|
-
|
33
|
-
# For more details see here:
|
34
|
-
# http://docs.codeclimate.com/article/289-configuring-your-repository-via-codeclimate-yml#platform
|
35
|
-
|
36
|
-
# Note: If the ratings key is not specified, this will result in a 0.0 GPA on your dashboard.
|
17
|
+
channel: rubocop-1-22-3
|
37
18
|
|
38
19
|
ratings:
|
39
20
|
paths:
|
@@ -0,0 +1,22 @@
|
|
1
|
+
name: Audit
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
jobs:
|
9
|
+
audit:
|
10
|
+
runs-on: ubuntu-latest
|
11
|
+
steps:
|
12
|
+
- name: Checkout code
|
13
|
+
uses: actions/checkout@v2
|
14
|
+
|
15
|
+
- name: Setup Ruby and install gems
|
16
|
+
uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
|
17
|
+
with:
|
18
|
+
ruby-version: 2.7
|
19
|
+
bundler-cache: true
|
20
|
+
- name: Run security checks
|
21
|
+
run: |
|
22
|
+
bin/bundler-audit --update
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
2
|
+
# to commit it to your repository.
|
3
|
+
#
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
+
# or to provide custom queries or build logic.
|
6
|
+
#
|
7
|
+
# ******** NOTE ********
|
8
|
+
# We have attempted to detect the languages in your repository. Please check
|
9
|
+
# the `language` matrix defined below to confirm you have the correct set of
|
10
|
+
# supported CodeQL languages.
|
11
|
+
#
|
12
|
+
name: "CodeQL"
|
13
|
+
|
14
|
+
on:
|
15
|
+
push:
|
16
|
+
branches: [ master ]
|
17
|
+
pull_request:
|
18
|
+
# The branches below must be a subset of the branches above
|
19
|
+
branches: [ master ]
|
20
|
+
schedule:
|
21
|
+
- cron: '21 10 * * 4'
|
22
|
+
|
23
|
+
jobs:
|
24
|
+
analyze:
|
25
|
+
name: Analyze
|
26
|
+
runs-on: ubuntu-latest
|
27
|
+
permissions:
|
28
|
+
actions: read
|
29
|
+
contents: read
|
30
|
+
security-events: write
|
31
|
+
|
32
|
+
strategy:
|
33
|
+
fail-fast: false
|
34
|
+
matrix:
|
35
|
+
language: [ 'ruby' ]
|
36
|
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
37
|
+
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
38
|
+
|
39
|
+
steps:
|
40
|
+
- name: Checkout repository
|
41
|
+
uses: actions/checkout@v2
|
42
|
+
|
43
|
+
# Initializes the CodeQL tools for scanning.
|
44
|
+
- name: Initialize CodeQL
|
45
|
+
uses: github/codeql-action/init@v1
|
46
|
+
with:
|
47
|
+
languages: ${{ matrix.language }}
|
48
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
49
|
+
# By default, queries listed here will override any specified in a config file.
|
50
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
51
|
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
52
|
+
|
53
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
54
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
55
|
+
- name: Autobuild
|
56
|
+
uses: github/codeql-action/autobuild@v1
|
57
|
+
|
58
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
59
|
+
# 📚 https://git.io/JvXDl
|
60
|
+
|
61
|
+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
62
|
+
# and modify them (or add more) to build your code if your project
|
63
|
+
# uses a compiled language
|
64
|
+
|
65
|
+
#- run: |
|
66
|
+
# make bootstrap
|
67
|
+
# make release
|
68
|
+
|
69
|
+
- name: Perform CodeQL Analysis
|
70
|
+
uses: github/codeql-action/analyze@v1
|
@@ -0,0 +1,32 @@
|
|
1
|
+
name: Test Coverage
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
coverage:
|
11
|
+
name: coverage
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
steps:
|
14
|
+
- uses: actions/checkout@v2
|
15
|
+
- name: Set up Ruby
|
16
|
+
uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
|
17
|
+
with:
|
18
|
+
ruby-version: 2.7
|
19
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
20
|
+
- name: Install cc-test-reporter and prebuild notification
|
21
|
+
run: |
|
22
|
+
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
23
|
+
chmod +x ./cc-test-reporter
|
24
|
+
./cc-test-reporter before-build
|
25
|
+
- name: Run tests
|
26
|
+
env:
|
27
|
+
COVERAGE: 1
|
28
|
+
run: bundle exec rspec
|
29
|
+
- name: CodeClimate Post-build upload
|
30
|
+
env:
|
31
|
+
CC_TEST_REPORTER_ID: 7eaf794e2ffbbd1bbe4eccd967a5428a6318cad2a33b8fd0baf42d6335a334a0
|
32
|
+
run: ./cc-test-reporter -d -t simplecov after-build
|
@@ -0,0 +1,45 @@
|
|
1
|
+
name: Push to Rubygems
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [master]
|
6
|
+
pull_request:
|
7
|
+
branches: [master]
|
8
|
+
|
9
|
+
jobs:
|
10
|
+
build:
|
11
|
+
name: Build + Publish
|
12
|
+
runs-on: ubuntu-latest
|
13
|
+
permissions:
|
14
|
+
contents: read
|
15
|
+
packages: write
|
16
|
+
|
17
|
+
steps:
|
18
|
+
- uses: actions/checkout@v2
|
19
|
+
- name: Set up Ruby 2.7
|
20
|
+
uses: actions/setup-ruby@v1
|
21
|
+
with:
|
22
|
+
ruby-version: 2.7.x
|
23
|
+
|
24
|
+
- name: Publish to GPR
|
25
|
+
run: |
|
26
|
+
mkdir -p $HOME/.gem
|
27
|
+
touch $HOME/.gem/credentials
|
28
|
+
chmod 0600 $HOME/.gem/credentials
|
29
|
+
printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
30
|
+
gem build *.gemspec
|
31
|
+
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
|
32
|
+
env:
|
33
|
+
GEM_HOST_API_KEY: "Bearer ${{secrets.GPR_TOKEN}}"
|
34
|
+
OWNER: ${{ github.repository_owner }}
|
35
|
+
|
36
|
+
- name: Publish to RubyGems
|
37
|
+
run: |
|
38
|
+
mkdir -p $HOME/.gem
|
39
|
+
touch $HOME/.gem/credentials
|
40
|
+
chmod 0600 $HOME/.gem/credentials
|
41
|
+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
42
|
+
gem build *.gemspec
|
43
|
+
gem push *.gem
|
44
|
+
env:
|
45
|
+
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
|
@@ -0,0 +1,22 @@
|
|
1
|
+
name: Test
|
2
|
+
|
3
|
+
on:
|
4
|
+
- push
|
5
|
+
- pull_request
|
6
|
+
|
7
|
+
jobs:
|
8
|
+
test:
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
strategy:
|
11
|
+
matrix:
|
12
|
+
ruby-version: ['2.5', '2.6', '2.7', '3.0']
|
13
|
+
|
14
|
+
steps:
|
15
|
+
- uses: actions/checkout@v2
|
16
|
+
- name: Set up Ruby
|
17
|
+
uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
|
18
|
+
with:
|
19
|
+
ruby-version: ${{ matrix.ruby-version }}
|
20
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
21
|
+
- name: Run tests
|
22
|
+
run: bundle exec rspec
|
data/Gemfile
CHANGED
@@ -1,6 +1,8 @@
|
|
1
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
3
|
+
source 'https://rubygems.org'
|
4
|
+
|
5
|
+
git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
|
4
6
|
|
5
7
|
# Specify your gem's dependencies in case_transform2.gemspec
|
6
8
|
gemspec
|
data/Gemfile.lock
CHANGED
@@ -1,21 +1,59 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
case_transform2 (1.
|
4
|
+
case_transform2 (1.1.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
9
|
+
ast (2.4.2)
|
10
|
+
bundle-audit (0.1.0)
|
11
|
+
bundler-audit
|
12
|
+
bundler-audit (0.9.0.1)
|
13
|
+
bundler (>= 1.2.0, < 3)
|
14
|
+
thor (~> 1.0)
|
15
|
+
coderay (1.1.3)
|
16
|
+
diff-lcs (1.4.4)
|
17
|
+
docile (1.4.0)
|
18
|
+
ffi (1.15.4)
|
19
|
+
formatador (0.3.0)
|
20
|
+
guard (2.18.0)
|
21
|
+
formatador (>= 0.2.4)
|
22
|
+
listen (>= 2.7, < 4.0)
|
23
|
+
lumberjack (>= 1.0.12, < 2.0)
|
24
|
+
nenv (~> 0.1)
|
25
|
+
notiffany (~> 0.0)
|
26
|
+
pry (>= 0.13.0)
|
27
|
+
shellany (~> 0.0)
|
28
|
+
thor (>= 0.18.1)
|
29
|
+
guard-compat (1.2.1)
|
30
|
+
guard-rspec (4.7.3)
|
31
|
+
guard (~> 2.1)
|
32
|
+
guard-compat (~> 1.1)
|
33
|
+
rspec (>= 2.99.0, < 4.0)
|
34
|
+
json (2.6.1)
|
35
|
+
listen (3.7.0)
|
36
|
+
rb-fsevent (~> 0.10, >= 0.10.3)
|
37
|
+
rb-inotify (~> 0.9, >= 0.9.10)
|
38
|
+
lumberjack (1.2.8)
|
39
|
+
method_source (1.0.0)
|
40
|
+
nenv (0.3.0)
|
41
|
+
notiffany (0.1.3)
|
42
|
+
nenv (~> 0.1)
|
43
|
+
shellany (~> 0.0)
|
44
|
+
parallel (1.21.0)
|
45
|
+
parser (3.0.2.0)
|
46
|
+
ast (~> 2.4.1)
|
47
|
+
pry (0.14.1)
|
48
|
+
coderay (~> 1.1)
|
49
|
+
method_source (~> 1.0)
|
50
|
+
rainbow (3.0.0)
|
51
|
+
rake (13.0.6)
|
52
|
+
rb-fsevent (0.11.0)
|
53
|
+
rb-inotify (0.10.1)
|
54
|
+
ffi (~> 1.0)
|
55
|
+
regexp_parser (2.1.1)
|
56
|
+
rexml (3.2.5)
|
19
57
|
rspec (3.7.0)
|
20
58
|
rspec-core (~> 3.7.0)
|
21
59
|
rspec-expectations (~> 3.7.0)
|
@@ -29,23 +67,44 @@ GEM
|
|
29
67
|
diff-lcs (>= 1.2.0, < 2.0)
|
30
68
|
rspec-support (~> 3.7.0)
|
31
69
|
rspec-support (3.7.1)
|
32
|
-
|
70
|
+
rubocop (1.22.3)
|
71
|
+
parallel (~> 1.10)
|
72
|
+
parser (>= 3.0.0.0)
|
73
|
+
rainbow (>= 2.2.2, < 4.0)
|
74
|
+
regexp_parser (>= 1.8, < 3.0)
|
75
|
+
rexml
|
76
|
+
rubocop-ast (>= 1.12.0, < 2.0)
|
77
|
+
ruby-progressbar (~> 1.7)
|
78
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
79
|
+
rubocop-ast (1.12.0)
|
80
|
+
parser (>= 3.0.1.1)
|
81
|
+
rubocop-rspec (2.5.0)
|
82
|
+
rubocop (~> 1.19)
|
83
|
+
ruby-progressbar (1.11.0)
|
84
|
+
shellany (0.0.1)
|
85
|
+
simplecov (0.17.1)
|
33
86
|
docile (~> 1.1)
|
34
87
|
json (>= 1.8, < 3)
|
35
88
|
simplecov-html (~> 0.10.0)
|
36
89
|
simplecov-html (0.10.2)
|
37
|
-
|
90
|
+
thor (1.1.0)
|
91
|
+
unicode-display_width (2.1.0)
|
38
92
|
|
39
93
|
PLATFORMS
|
40
94
|
ruby
|
41
95
|
|
42
96
|
DEPENDENCIES
|
43
|
-
|
97
|
+
bundle-audit (~> 0.1.0)
|
98
|
+
bundler (>= 2.2.30)
|
44
99
|
case_transform2!
|
45
|
-
|
46
|
-
|
100
|
+
guard (~> 2.18.0)
|
101
|
+
guard-rspec (~> 4.7.3)
|
102
|
+
pry (~> 0.14.1)
|
103
|
+
rake (>= 13.0.6)
|
47
104
|
rspec (~> 3.7.0)
|
48
|
-
|
105
|
+
rubocop (~> 1.22)
|
106
|
+
rubocop-rspec (~> 2.5.0)
|
107
|
+
simplecov (~> 0.17.1)
|
49
108
|
|
50
109
|
BUNDLED WITH
|
51
|
-
|
110
|
+
2.2.30
|
data/Guardfile
CHANGED
@@ -1,9 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
# A sample Guardfile
|
2
4
|
# More info at https://github.com/guard/guard#readme
|
3
5
|
|
4
6
|
## Uncomment and set this to only include directories you want to watch
|
5
7
|
# directories %w(app lib config test spec features) \
|
6
|
-
# .select{|d| Dir.
|
8
|
+
# .select{|d| Dir.exist?(d) ? d : UI.warning("Directory #{d} does not exist")}
|
7
9
|
|
8
10
|
## Note: if you are using the `directories` clause above and you are not
|
9
11
|
## watching the project directory ('.'), then you will want to move
|
@@ -15,7 +17,7 @@
|
|
15
17
|
#
|
16
18
|
# and, you'll have to watch "config/Guardfile" instead of "Guardfile"
|
17
19
|
|
18
|
-
#
|
20
|
+
# NOTE: The cmd option is now required due to the increasing number of ways
|
19
21
|
# rspec may be run, below are examples of the most common uses.
|
20
22
|
# * bundler: 'bundle exec rspec'
|
21
23
|
# * bundler binstubs: 'bin/rspec'
|
@@ -24,8 +26,8 @@
|
|
24
26
|
# * zeus: 'zeus rspec' (requires the server to be started separately)
|
25
27
|
# * 'just' rspec: 'rspec'
|
26
28
|
|
27
|
-
guard :rspec, cmd:
|
28
|
-
require
|
29
|
+
guard :rspec, cmd: 'bundle exec rspec' do
|
30
|
+
require 'guard/rspec/dsl'
|
29
31
|
dsl = Guard::RSpec::Dsl.new(self)
|
30
32
|
|
31
33
|
# Feel free to open issues for suggestions and improvements
|
@@ -39,32 +41,4 @@ guard :rspec, cmd: "bundle exec rspec" do
|
|
39
41
|
# Ruby files
|
40
42
|
ruby = dsl.ruby
|
41
43
|
dsl.watch_spec_files_for(ruby.lib_files)
|
42
|
-
|
43
|
-
# Rails files
|
44
|
-
rails = dsl.rails(view_extensions: %w(erb haml slim))
|
45
|
-
dsl.watch_spec_files_for(rails.app_files)
|
46
|
-
dsl.watch_spec_files_for(rails.views)
|
47
|
-
|
48
|
-
watch(rails.controllers) do |m|
|
49
|
-
[
|
50
|
-
rspec.spec.call("routing/#{m[1]}_routing"),
|
51
|
-
rspec.spec.call("controllers/#{m[1]}_controller"),
|
52
|
-
rspec.spec.call("acceptance/#{m[1]}")
|
53
|
-
]
|
54
|
-
end
|
55
|
-
|
56
|
-
# Rails config changes
|
57
|
-
watch(rails.spec_helper) { rspec.spec_dir }
|
58
|
-
watch(rails.routes) { "#{rspec.spec_dir}/routing" }
|
59
|
-
watch(rails.app_controller) { "#{rspec.spec_dir}/controllers" }
|
60
|
-
|
61
|
-
# Capybara features specs
|
62
|
-
watch(rails.view_dirs) { |m| rspec.spec.call("features/#{m[1]}") }
|
63
|
-
watch(rails.layouts) { |m| rspec.spec.call("features/#{m[1]}") }
|
64
|
-
|
65
|
-
# Turnip features and steps
|
66
|
-
watch(%r{^spec/acceptance/(.+)\.feature$})
|
67
|
-
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) do |m|
|
68
|
-
Dir[File.join("**/#{m[1]}.feature")][0] || "spec/acceptance"
|
69
|
-
end
|
70
44
|
end
|
data/README.md
CHANGED
@@ -1,20 +1,21 @@
|
|
1
1
|
<!-- vim-markdown-toc GFM -->
|
2
2
|
|
3
3
|
+ [case_transform2](#case_transform2)
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
4
|
+
* [Why](#why)
|
5
|
+
* [Install](#install)
|
6
|
+
* [Warning](#warning)
|
7
|
+
* [Usage](#usage)
|
8
|
+
* [Transforms](#transforms)
|
9
|
+
* [NOTE](#note)
|
10
10
|
|
11
11
|
<!-- vim-markdown-toc -->
|
12
12
|
|
13
13
|
# case_transform2
|
14
14
|
|
15
|
-
[](https://travis-ci.org/saiqulhaq/case_transform)
|
16
|
-
[](https://codeclimate.com/github/saiqulhaq/case_transform/test_coverage)
|
17
15
|
[](https://codeclimate.com/github/saiqulhaq/case_transform/maintainability)
|
16
|
+
[](https://github.com/saiqulhaq/case_transform/actions/workflows/audit.yml)
|
17
|
+
[](https://github.com/saiqulhaq/case_transform/actions/workflows/test.yml)
|
18
|
+
[](https://codeclimate.com/github/saiqulhaq/case_transform/test_coverage)
|
18
19
|
|
19
20
|
|
20
21
|
Transforms string letter case to camel, snake, dash and underscore without activesupport dependencies.
|
@@ -73,8 +74,9 @@ Any other object type will just be returned.
|
|
73
74
|
| dash | dash-case |
|
74
75
|
| underscore | under_score |
|
75
76
|
|
76
|
-
##
|
77
|
+
## Ruby Version Support
|
77
78
|
|
78
|
-
|
79
|
+
See `.github/workflows/github-actions.yml` to find out the latest Ruby version support
|
80
|
+
The target is above 2.5 and above
|
79
81
|
|
80
82
|
License: See LICENSE.txt file
|
data/Rakefile
CHANGED
data/bin/brakeman
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
#
|
5
|
+
# This file was generated by Bundler.
|
6
|
+
#
|
7
|
+
# The application 'brakeman' is installed as part of a gem, and
|
8
|
+
# this file is here to facilitate running it.
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
13
|
+
Pathname.new(__FILE__).realpath)
|
14
|
+
|
15
|
+
bundle_binstub = File.expand_path('bundle', __dir__)
|
16
|
+
|
17
|
+
if File.file?(bundle_binstub)
|
18
|
+
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
19
|
+
load(bundle_binstub)
|
20
|
+
else
|
21
|
+
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
22
|
+
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
require 'bundler/setup'
|
28
|
+
|
29
|
+
load Gem.bin_path('brakeman', 'brakeman')
|
data/bin/bundler-audit
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
#
|
5
|
+
# This file was generated by Bundler.
|
6
|
+
#
|
7
|
+
# The application 'bundler-audit' is installed as part of a gem, and
|
8
|
+
# this file is here to facilitate running it.
|
9
|
+
#
|
10
|
+
|
11
|
+
require 'pathname'
|
12
|
+
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile',
|
13
|
+
Pathname.new(__FILE__).realpath)
|
14
|
+
|
15
|
+
bundle_binstub = File.expand_path('bundle', __dir__)
|
16
|
+
|
17
|
+
if File.file?(bundle_binstub)
|
18
|
+
if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
|
19
|
+
load(bundle_binstub)
|
20
|
+
else
|
21
|
+
abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
|
22
|
+
Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
require 'rubygems'
|
27
|
+
require 'bundler/setup'
|
28
|
+
|
29
|
+
load Gem.bin_path('bundler-audit', 'bundler-audit')
|
data/bin/console
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
2
3
|
|
3
|
-
require
|
4
|
-
require
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'case_transform2'
|
5
6
|
|
6
7
|
# You can add fixtures and/or initialization code here to make experimenting
|
7
8
|
# with your gem easier. You can also use a different console, if you like.
|
@@ -10,5 +11,5 @@ require "case_transform2"
|
|
10
11
|
# require "pry"
|
11
12
|
# Pry.start
|
12
13
|
|
13
|
-
require
|
14
|
+
require 'irb'
|
14
15
|
IRB.start(__FILE__)
|
data/bin/setup
CHANGED
File without changes
|
data/case_transform2.gemspec
CHANGED
@@ -1,32 +1,39 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
lib = File.expand_path(
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
4
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
-
require
|
5
|
+
require 'case_transform2/version'
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
|
-
s.name =
|
8
|
+
s.name = 'case_transform2'
|
9
9
|
s.version = CaseTransform2::VERSION
|
10
|
-
s.license =
|
11
|
-
s.authors = [
|
12
|
-
s.email =
|
13
|
-
s.homepage =
|
14
|
-
s.summary =
|
15
|
-
|
16
|
-
s.
|
10
|
+
s.license = 'MIT'
|
11
|
+
s.authors = ['L. Preston Sego III', 'Ben Mills', 'Saiqul Haq']
|
12
|
+
s.email = 'saiqulhaq@gmail.com'
|
13
|
+
s.homepage = 'https://github.com/saiqulhaq/case_transform2'
|
14
|
+
s.summary = 'Transforms string letter case to camel, snake,' \
|
15
|
+
'dash and underscore without activesupport dependencies'
|
16
|
+
s.description = "#{s.summary}. Forked from https://github.com/rails-api/case_transform"
|
17
|
+
s.metadata['yard.run'] = 'yri'
|
17
18
|
s.files = `git ls-files -z`.split("\x0").reject do |f|
|
18
19
|
f.match(%r{^(test|spec|features)/})
|
19
20
|
end
|
21
|
+
s.required_ruby_version = '>= 2.5'
|
20
22
|
|
21
|
-
s.bindir =
|
23
|
+
s.bindir = 'exe'
|
22
24
|
s.executables = s.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
23
|
-
s.require_path = [
|
25
|
+
s.require_path = ['lib']
|
24
26
|
|
25
27
|
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
26
28
|
|
27
|
-
s.add_development_dependency
|
28
|
-
s.add_development_dependency
|
29
|
-
s.add_development_dependency
|
30
|
-
s.add_development_dependency
|
31
|
-
s.add_development_dependency
|
29
|
+
s.add_development_dependency 'bundle-audit', '~> 0.1.0'
|
30
|
+
s.add_development_dependency 'bundler', '>= 2.2.30'
|
31
|
+
s.add_development_dependency 'guard', '~> 2.18.0'
|
32
|
+
s.add_development_dependency 'guard-rspec', '~> 4.7.3'
|
33
|
+
s.add_development_dependency 'pry', '~> 0.14.1'
|
34
|
+
s.add_development_dependency 'rake', '>= 13.0.6'
|
35
|
+
s.add_development_dependency 'rspec', '~> 3.7.0'
|
36
|
+
s.add_development_dependency 'rubocop', '~> 1.22'
|
37
|
+
s.add_development_dependency 'rubocop-rspec', '~> 2.5.0'
|
38
|
+
s.add_development_dependency 'simplecov', '~> 0.17.1'
|
32
39
|
end
|
data/docker-compose.yml
ADDED
@@ -0,0 +1,9 @@
|
|
1
|
+
version: '2'
|
2
|
+
|
3
|
+
services:
|
4
|
+
app:
|
5
|
+
tty: true # Enables debugging capabilities when attached to this container.
|
6
|
+
image: bitnami/ruby:2.7
|
7
|
+
# command: "sh -c 'bundle install && bundle exec rspec'"
|
8
|
+
volumes:
|
9
|
+
- .:/app # docker run -it --name ruby bitnami/ruby:2.7-prod
|
@@ -9,10 +9,10 @@ module CaseTransform2
|
|
9
9
|
|
10
10
|
private
|
11
11
|
|
12
|
-
def _deep_transform_keys_in_object!(object, &block)
|
12
|
+
def _deep_transform_keys_in_object!(object, &block) # rubocop:disable Metrics/MethodLength
|
13
13
|
case object
|
14
14
|
when Hash
|
15
|
-
object.keys.each do |key|
|
15
|
+
object.keys.each do |key| # rubocop:disable Style/HashEachMethods
|
16
16
|
value = object.delete(key)
|
17
17
|
object[yield(key)] = _deep_transform_keys_in_object!(value, &block)
|
18
18
|
end
|
@@ -6,26 +6,28 @@ module CaseTransform2
|
|
6
6
|
# @api private
|
7
7
|
class StringExt
|
8
8
|
def camelize(string, first_letter = :upper)
|
9
|
-
raise ArgumentError,
|
9
|
+
raise ArgumentError, 'Argument can not be nil' unless %i[upper lower].include?(first_letter)
|
10
|
+
|
10
11
|
str = string.to_s
|
11
12
|
str = str.gsub(/^[a-z\d]*/, &:capitalize) if first_letter == :upper
|
12
|
-
str.gsub(
|
13
|
+
str.gsub(%r{(?:_|(/))([a-z\d]*)}i) do
|
13
14
|
"#{Regexp.last_match(1)}#{Regexp.last_match(2).capitalize}"
|
14
|
-
end.gsub(
|
15
|
+
end.gsub('/', '::')
|
15
16
|
end
|
16
17
|
|
17
18
|
def dasherize(string)
|
18
|
-
string.tr(
|
19
|
+
string.tr('_', '-')
|
19
20
|
end
|
20
21
|
|
21
22
|
# Only support camel to underscore
|
22
23
|
def underscore(string)
|
23
24
|
str = string.to_s
|
24
25
|
return str unless str =~ /[A-Z-]|::/
|
25
|
-
|
26
|
+
|
27
|
+
str.gsub('::', '/')
|
26
28
|
.gsub(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2')
|
27
29
|
.gsub(/([a-z\d])([A-Z])/, '\1_\2')
|
28
|
-
.tr(
|
30
|
+
.tr('-', '_')
|
29
31
|
.downcase
|
30
32
|
end
|
31
33
|
end
|
data/lib/case_transform2.rb
CHANGED
@@ -1,16 +1,17 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
4
|
-
require
|
5
|
-
require
|
3
|
+
require 'case_transform2/hash_ext'
|
4
|
+
require 'case_transform2/string_ext'
|
5
|
+
require 'case_transform2/version'
|
6
6
|
|
7
|
+
# Lightweight version of Case Transform gem
|
7
8
|
module CaseTransform2
|
8
9
|
class << self
|
9
10
|
# Transforms values to UpperCamelCase or PascalCase.
|
10
11
|
#
|
11
12
|
# @example
|
12
13
|
# "some_key" => "SomeKey",
|
13
|
-
def camel(value)
|
14
|
+
def camel(value) # rubocop:disable Metrics/MethodLength
|
14
15
|
case value
|
15
16
|
when Array
|
16
17
|
value.map { |item| camel(item) }
|
@@ -29,7 +30,7 @@ module CaseTransform2
|
|
29
30
|
#
|
30
31
|
# @example
|
31
32
|
# "some_key" => "someKey",
|
32
|
-
def camel_lower(value)
|
33
|
+
def camel_lower(value) # rubocop:disable Metrics/MethodLength
|
33
34
|
case value
|
34
35
|
when Array
|
35
36
|
value.map { |item| camel_lower(item) }
|
@@ -48,7 +49,7 @@ module CaseTransform2
|
|
48
49
|
#
|
49
50
|
# @example
|
50
51
|
# "some_key" => "some-key",
|
51
|
-
def dash(value)
|
52
|
+
def dash(value) # rubocop:disable Metrics/MethodLength
|
52
53
|
case value
|
53
54
|
when Array
|
54
55
|
value.map { |item| dash(item) }
|
@@ -67,7 +68,7 @@ module CaseTransform2
|
|
67
68
|
#
|
68
69
|
# @example
|
69
70
|
# "some-key" => "some_key",
|
70
|
-
def underscore(value)
|
71
|
+
def underscore(value) # rubocop:disable Metrics/MethodLength
|
71
72
|
case value
|
72
73
|
when Array
|
73
74
|
value.map { |item| underscore(item) }
|
@@ -82,6 +83,11 @@ module CaseTransform2
|
|
82
83
|
end
|
83
84
|
end
|
84
85
|
|
86
|
+
# Returns the value unaltered
|
87
|
+
def unaltered(value)
|
88
|
+
value
|
89
|
+
end
|
90
|
+
|
85
91
|
private
|
86
92
|
|
87
93
|
def string_ext
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: case_transform2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- L. Preston Sego III
|
@@ -10,50 +10,92 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2021-11-06 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: bundle-audit
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.1.0
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 0.1.0
|
15
29
|
- !ruby/object:Gem::Dependency
|
16
30
|
name: bundler
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 2.2.30
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: 2.2.30
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: guard
|
17
45
|
requirement: !ruby/object:Gem::Requirement
|
18
46
|
requirements:
|
19
47
|
- - "~>"
|
20
48
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
49
|
+
version: 2.18.0
|
22
50
|
type: :development
|
23
51
|
prerelease: false
|
24
52
|
version_requirements: !ruby/object:Gem::Requirement
|
25
53
|
requirements:
|
26
54
|
- - "~>"
|
27
55
|
- !ruby/object:Gem::Version
|
28
|
-
version:
|
56
|
+
version: 2.18.0
|
29
57
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
58
|
+
name: guard-rspec
|
31
59
|
requirement: !ruby/object:Gem::Requirement
|
32
60
|
requirements:
|
33
61
|
- - "~>"
|
34
62
|
- !ruby/object:Gem::Version
|
35
|
-
version:
|
63
|
+
version: 4.7.3
|
36
64
|
type: :development
|
37
65
|
prerelease: false
|
38
66
|
version_requirements: !ruby/object:Gem::Requirement
|
39
67
|
requirements:
|
40
68
|
- - "~>"
|
41
69
|
- !ruby/object:Gem::Version
|
42
|
-
version:
|
70
|
+
version: 4.7.3
|
43
71
|
- !ruby/object:Gem::Dependency
|
44
|
-
name:
|
72
|
+
name: pry
|
45
73
|
requirement: !ruby/object:Gem::Requirement
|
46
74
|
requirements:
|
47
75
|
- - "~>"
|
48
76
|
- !ruby/object:Gem::Version
|
49
|
-
version:
|
77
|
+
version: 0.14.1
|
50
78
|
type: :development
|
51
79
|
prerelease: false
|
52
80
|
version_requirements: !ruby/object:Gem::Requirement
|
53
81
|
requirements:
|
54
82
|
- - "~>"
|
55
83
|
- !ruby/object:Gem::Version
|
56
|
-
version:
|
84
|
+
version: 0.14.1
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: rake
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: 13.0.6
|
92
|
+
type: :development
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 13.0.6
|
57
99
|
- !ruby/object:Gem::Dependency
|
58
100
|
name: rspec
|
59
101
|
requirement: !ruby/object:Gem::Requirement
|
@@ -68,21 +110,49 @@ dependencies:
|
|
68
110
|
- - "~>"
|
69
111
|
- !ruby/object:Gem::Version
|
70
112
|
version: 3.7.0
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: rubocop
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - "~>"
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '1.22'
|
120
|
+
type: :development
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
requirements:
|
124
|
+
- - "~>"
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: '1.22'
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: rubocop-rspec
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - "~>"
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 2.5.0
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - "~>"
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: 2.5.0
|
71
141
|
- !ruby/object:Gem::Dependency
|
72
142
|
name: simplecov
|
73
143
|
requirement: !ruby/object:Gem::Requirement
|
74
144
|
requirements:
|
75
145
|
- - "~>"
|
76
146
|
- !ruby/object:Gem::Version
|
77
|
-
version: 0.
|
147
|
+
version: 0.17.1
|
78
148
|
type: :development
|
79
149
|
prerelease: false
|
80
150
|
version_requirements: !ruby/object:Gem::Requirement
|
81
151
|
requirements:
|
82
152
|
- - "~>"
|
83
153
|
- !ruby/object:Gem::Version
|
84
|
-
version: 0.
|
85
|
-
description: Transforms string letter case to camel, snake,
|
154
|
+
version: 0.17.1
|
155
|
+
description: Transforms string letter case to camel, snake,dash and underscore without
|
86
156
|
activesupport dependencies. Forked from https://github.com/rails-api/case_transform
|
87
157
|
email: saiqulhaq@gmail.com
|
88
158
|
executables: []
|
@@ -90,9 +160,13 @@ extensions: []
|
|
90
160
|
extra_rdoc_files: []
|
91
161
|
files:
|
92
162
|
- ".codeclimate.yml"
|
163
|
+
- ".github/workflows/audit.yml"
|
164
|
+
- ".github/workflows/codeql-analysis.yml"
|
165
|
+
- ".github/workflows/coverage.yml"
|
166
|
+
- ".github/workflows/gem-push.yml"
|
167
|
+
- ".github/workflows/test.yml"
|
93
168
|
- ".gitignore"
|
94
169
|
- ".rspec"
|
95
|
-
- ".rubocop.yml"
|
96
170
|
- ".travis.yml"
|
97
171
|
- CODE_OF_CONDUCT.md
|
98
172
|
- Gemfile
|
@@ -101,14 +175,17 @@ files:
|
|
101
175
|
- LICENSE.txt
|
102
176
|
- README.md
|
103
177
|
- Rakefile
|
178
|
+
- bin/brakeman
|
179
|
+
- bin/bundler-audit
|
104
180
|
- bin/console
|
105
181
|
- bin/setup
|
106
182
|
- case_transform2.gemspec
|
183
|
+
- docker-compose.yml
|
107
184
|
- lib/case_transform2.rb
|
108
185
|
- lib/case_transform2/hash_ext.rb
|
109
186
|
- lib/case_transform2/string_ext.rb
|
110
187
|
- lib/case_transform2/version.rb
|
111
|
-
homepage: https://github.com/saiqulhaq/
|
188
|
+
homepage: https://github.com/saiqulhaq/case_transform2
|
112
189
|
licenses:
|
113
190
|
- MIT
|
114
191
|
metadata:
|
@@ -121,17 +198,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
121
198
|
requirements:
|
122
199
|
- - ">="
|
123
200
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
201
|
+
version: '2.5'
|
125
202
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
126
203
|
requirements:
|
127
204
|
- - ">="
|
128
205
|
- !ruby/object:Gem::Version
|
129
206
|
version: '0'
|
130
207
|
requirements: []
|
131
|
-
|
132
|
-
rubygems_version: 2.7.3
|
208
|
+
rubygems_version: 3.1.6
|
133
209
|
signing_key:
|
134
210
|
specification_version: 4
|
135
|
-
summary: Transforms string letter case to camel, snake,
|
211
|
+
summary: Transforms string letter case to camel, snake,dash and underscore without
|
136
212
|
activesupport dependencies
|
137
213
|
test_files: []
|
data/.rubocop.yml
DELETED
@@ -1,146 +0,0 @@
|
|
1
|
-
Metrics/BlockLength:
|
2
|
-
Exclude:
|
3
|
-
- 'Rakefile'
|
4
|
-
- '**/*.rake'
|
5
|
-
- 'spec/**/*.rb'
|
6
|
-
|
7
|
-
# Prefer &&/|| over and/or.
|
8
|
-
Style/AndOr:
|
9
|
-
Enabled: true
|
10
|
-
|
11
|
-
# Do not use braces for hash literals when they are the last argument of a
|
12
|
-
# method call.
|
13
|
-
Style/BracesAroundHashParameters:
|
14
|
-
Enabled: true
|
15
|
-
EnforcedStyle: context_dependent
|
16
|
-
|
17
|
-
# Align `when` with `case`.
|
18
|
-
Layout/CaseIndentation:
|
19
|
-
Enabled: true
|
20
|
-
|
21
|
-
# Align comments with method definitions.
|
22
|
-
Layout/CommentIndentation:
|
23
|
-
Enabled: true
|
24
|
-
|
25
|
-
Layout/ElseAlignment:
|
26
|
-
Enabled: true
|
27
|
-
|
28
|
-
# Align `end` with the matching keyword or starting expression except for
|
29
|
-
# assignments, where it should be aligned with the LHS.
|
30
|
-
Layout/EndAlignment:
|
31
|
-
Enabled: true
|
32
|
-
EnforcedStyleAlignWith: variable
|
33
|
-
AutoCorrect: true
|
34
|
-
|
35
|
-
Layout/EmptyLineAfterMagicComment:
|
36
|
-
Enabled: true
|
37
|
-
|
38
|
-
# In a regular class definition, no empty lines around the body.
|
39
|
-
Layout/EmptyLinesAroundClassBody:
|
40
|
-
Enabled: true
|
41
|
-
|
42
|
-
# In a regular method definition, no empty lines around the body.
|
43
|
-
Layout/EmptyLinesAroundMethodBody:
|
44
|
-
Enabled: true
|
45
|
-
|
46
|
-
# In a regular module definition, no empty lines around the body.
|
47
|
-
Layout/EmptyLinesAroundModuleBody:
|
48
|
-
Enabled: true
|
49
|
-
|
50
|
-
Layout/FirstParameterIndentation:
|
51
|
-
Enabled: true
|
52
|
-
|
53
|
-
# Use Ruby >= 1.9 syntax for hashes. Prefer { a: :b } over { :a => :b }.
|
54
|
-
Style/HashSyntax:
|
55
|
-
Enabled: true
|
56
|
-
|
57
|
-
# Two spaces, no tabs (for indentation).
|
58
|
-
Layout/IndentationWidth:
|
59
|
-
Enabled: true
|
60
|
-
|
61
|
-
Layout/LeadingCommentSpace:
|
62
|
-
Enabled: true
|
63
|
-
|
64
|
-
Layout/SpaceAfterColon:
|
65
|
-
Enabled: true
|
66
|
-
|
67
|
-
Layout/SpaceAfterComma:
|
68
|
-
Enabled: true
|
69
|
-
|
70
|
-
Layout/SpaceAroundEqualsInParameterDefault:
|
71
|
-
Enabled: true
|
72
|
-
|
73
|
-
Layout/SpaceAroundKeyword:
|
74
|
-
Enabled: true
|
75
|
-
|
76
|
-
Layout/SpaceAroundOperators:
|
77
|
-
Enabled: true
|
78
|
-
|
79
|
-
Layout/SpaceBeforeComma:
|
80
|
-
Enabled: true
|
81
|
-
|
82
|
-
Layout/SpaceBeforeFirstArg:
|
83
|
-
Enabled: true
|
84
|
-
|
85
|
-
Style/DefWithParentheses:
|
86
|
-
Enabled: true
|
87
|
-
|
88
|
-
# Defining a method with parameters needs parentheses.
|
89
|
-
Style/MethodDefParentheses:
|
90
|
-
Enabled: true
|
91
|
-
|
92
|
-
Style/FrozenStringLiteralComment:
|
93
|
-
Enabled: true
|
94
|
-
EnforcedStyle: always
|
95
|
-
|
96
|
-
# Use `foo {}` not `foo{}`.
|
97
|
-
Layout/SpaceBeforeBlockBraces:
|
98
|
-
Enabled: true
|
99
|
-
|
100
|
-
# Use `foo { bar }` not `foo {bar}`.
|
101
|
-
Layout/SpaceInsideBlockBraces:
|
102
|
-
Enabled: true
|
103
|
-
|
104
|
-
# Use `{ a: 1 }` not `{a:1}`.
|
105
|
-
Layout/SpaceInsideHashLiteralBraces:
|
106
|
-
Enabled: true
|
107
|
-
|
108
|
-
Layout/SpaceInsideParens:
|
109
|
-
Enabled: true
|
110
|
-
|
111
|
-
# Check quotes usage according to lint rule below.
|
112
|
-
Style/StringLiterals:
|
113
|
-
Enabled: true
|
114
|
-
EnforcedStyle: double_quotes
|
115
|
-
|
116
|
-
# Detect hard tabs, no hard tabs.
|
117
|
-
Layout/Tab:
|
118
|
-
Enabled: true
|
119
|
-
|
120
|
-
# Blank lines should not have any spaces.
|
121
|
-
Layout/TrailingBlankLines:
|
122
|
-
Enabled: true
|
123
|
-
|
124
|
-
# No trailing whitespace.
|
125
|
-
Layout/TrailingWhitespace:
|
126
|
-
Enabled: true
|
127
|
-
|
128
|
-
# Use quotes for string literals when they are enough.
|
129
|
-
Style/UnneededPercentQ:
|
130
|
-
Enabled: true
|
131
|
-
|
132
|
-
# Use my_method(my_arg) not my_method( my_arg ) or my_method my_arg.
|
133
|
-
Lint/RequireParentheses:
|
134
|
-
Enabled: true
|
135
|
-
|
136
|
-
Style/RedundantReturn:
|
137
|
-
Enabled: true
|
138
|
-
AllowMultipleReturnValues: true
|
139
|
-
|
140
|
-
Style/Semicolon:
|
141
|
-
Enabled: true
|
142
|
-
AllowAsExpressionSeparator: true
|
143
|
-
|
144
|
-
# Prefer Foo.method over Foo::method
|
145
|
-
Style/ColonMethodCall:
|
146
|
-
Enabled: true
|