company_number 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.codeclimate.yml +4 -0
- data/.github/workflows/ci.yml +76 -0
- data/.rubocop.yml +12 -13
- data/.simplecov +6 -0
- data/CHANGELOG.md +5 -0
- data/CODE_OF_CONDUCT.md +2 -2
- data/Gemfile +3 -1
- data/README.md +24 -20
- data/Rakefile +5 -5
- data/bin/setup +1 -1
- data/company_number.gemspec +8 -8
- data/config/dictionary.yml +3 -3
- data/lib/company_number/dictionary.rb +1 -1
- data/lib/company_number/version.rb +1 -1
- data/lib/company_number.rb +3 -3
- data/rubocop/rubocop.html +433 -0
- metadata +23 -34
- data/.github/workflows/build.yml +0 -93
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c02ace863de99e8b6d41ff12185285c5c4bff2131e45d23873981cf0115e03ee
|
4
|
+
data.tar.gz: 81ab67bc56f3de3edf78432cdb679ede3237d7fdcb40266f666ed6713c3dde35
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6b6ff3493c540f62461a948d05de2ee4206ee0c2851d366eaf46e632802f74d7c9fc21c1a232404eef724197e70ee1194ec99ec3dea3c2363c53879352736799
|
7
|
+
data.tar.gz: 8973da310ae9ba856ca2553c3d1e8c27fdd3f0a20ff03044b1487539a735f6548ee9b8f51974fc4635421297fcb95320ab1a9cc1bc2be6939a4aa354d7c7b94f
|
data/.codeclimate.yml
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
name: "CI"
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches:
|
6
|
+
- "*"
|
7
|
+
pull_request:
|
8
|
+
branches:
|
9
|
+
- "*"
|
10
|
+
|
11
|
+
jobs:
|
12
|
+
lint:
|
13
|
+
name: "RuboCop"
|
14
|
+
timeout-minutes: 5
|
15
|
+
runs-on: "ubuntu-latest"
|
16
|
+
steps:
|
17
|
+
- uses: "actions/checkout@v3"
|
18
|
+
|
19
|
+
- name: "Set up Ruby"
|
20
|
+
uses: "ruby/setup-ruby@v1"
|
21
|
+
with:
|
22
|
+
ruby-version: "3.1"
|
23
|
+
bundler-cache: true
|
24
|
+
|
25
|
+
- name: "Run RuboCop"
|
26
|
+
run: "bundle exec rubocop"
|
27
|
+
|
28
|
+
test:
|
29
|
+
runs-on: "ubuntu-latest"
|
30
|
+
strategy:
|
31
|
+
fail-fast: false
|
32
|
+
matrix:
|
33
|
+
ruby-version:
|
34
|
+
- "2.5"
|
35
|
+
- "2.6"
|
36
|
+
- "2.7"
|
37
|
+
- "3.0"
|
38
|
+
- "3.1"
|
39
|
+
|
40
|
+
steps:
|
41
|
+
- uses: "actions/checkout@v3"
|
42
|
+
|
43
|
+
- name: "Set up Ruby"
|
44
|
+
uses: "ruby/setup-ruby@v1"
|
45
|
+
with:
|
46
|
+
ruby-version: "${{ matrix.ruby-version }}"
|
47
|
+
bundler-cache: true
|
48
|
+
|
49
|
+
- name: "Run specs"
|
50
|
+
run: "bundle exec rspec"
|
51
|
+
|
52
|
+
- name: "Upload artifacts"
|
53
|
+
uses: "actions/upload-artifact@v3"
|
54
|
+
with:
|
55
|
+
name: "coverage-artifacts"
|
56
|
+
path: "${{github.workspace}}/coverage/coverage.json"
|
57
|
+
retention-days: 1
|
58
|
+
|
59
|
+
coverage:
|
60
|
+
name: "Report coverage to Code Climate"
|
61
|
+
runs-on: "ubuntu-20.04"
|
62
|
+
needs: "test"
|
63
|
+
if: "success() && github.ref == 'refs/heads/master'"
|
64
|
+
env:
|
65
|
+
CC_TEST_REPORTER_ID: "${{ secrets.CC_TEST_REPORTER_ID }}"
|
66
|
+
|
67
|
+
steps:
|
68
|
+
- uses: "actions/checkout@v3"
|
69
|
+
|
70
|
+
- name: "Download coverage artifacts from test job"
|
71
|
+
uses: "actions/download-artifact@v3"
|
72
|
+
with:
|
73
|
+
name: "coverage-artifacts"
|
74
|
+
- uses: "paambaati/codeclimate-action@v3.2.0"
|
75
|
+
with:
|
76
|
+
coverageLocations: "coverage.json:simplecov"
|
data/.rubocop.yml
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
AllCops:
|
2
|
-
TargetRubyVersion: 2.
|
2
|
+
TargetRubyVersion: 2.5
|
3
|
+
NewCops: enable
|
4
|
+
SuggestExtensions: false
|
5
|
+
Exclude:
|
6
|
+
- "vendor/**/*"
|
3
7
|
|
4
8
|
Style/FrozenStringLiteralComment:
|
5
9
|
Enabled: false
|
6
10
|
|
7
11
|
Style/StringLiterals:
|
8
|
-
|
12
|
+
EnforcedStyle: double_quotes
|
9
13
|
|
10
14
|
Style/Documentation:
|
11
15
|
Enabled: false
|
12
16
|
|
13
|
-
Metrics/BlockLength:
|
14
|
-
Exclude:
|
15
|
-
- spec/**/*
|
16
|
-
|
17
17
|
Metrics/CyclomaticComplexity:
|
18
18
|
Enabled: true
|
19
19
|
|
@@ -22,17 +22,16 @@ Metrics/MethodLength:
|
|
22
22
|
|
23
23
|
Metrics/BlockLength:
|
24
24
|
Exclude:
|
25
|
-
-
|
26
|
-
-
|
25
|
+
- "spec/**/*_spec.rb"
|
26
|
+
- "*.gemspec"
|
27
27
|
|
28
28
|
Layout/LineLength:
|
29
|
-
Max: 80
|
30
29
|
Exclude:
|
31
|
-
-
|
32
|
-
-
|
30
|
+
- "spec/**/*_spec.rb"
|
31
|
+
- "*.gemspec"
|
33
32
|
|
34
33
|
Naming/MemoizedInstanceVariableName:
|
35
|
-
|
34
|
+
EnforcedStyleForLeadingUnderscores: optional
|
36
35
|
|
37
|
-
Gemspec/
|
36
|
+
Gemspec/RequireMFA:
|
38
37
|
Enabled: false
|
data/.simplecov
ADDED
data/CHANGELOG.md
CHANGED
data/CODE_OF_CONDUCT.md
CHANGED
@@ -22,7 +22,7 @@ Examples of unacceptable behavior include:
|
|
22
22
|
advances of any kind
|
23
23
|
* Trolling, insulting or derogatory comments, and personal or political attacks
|
24
24
|
* Public or private harassment
|
25
|
-
* Publishing others
|
25
|
+
* Publishing others" private information, such as a physical or email
|
26
26
|
address, without their explicit permission
|
27
27
|
* Other conduct which could reasonably be considered inappropriate in a
|
28
28
|
professional setting
|
@@ -76,7 +76,7 @@ Community leaders will follow these Community Impact Guidelines in determining t
|
|
76
76
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 2.0,
|
77
77
|
available at https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
78
78
|
|
79
|
-
Community Impact Guidelines were inspired by [Mozilla
|
79
|
+
Community Impact Guidelines were inspired by [Mozilla"s code of conduct enforcement ladder](https://github.com/mozilla/diversity).
|
80
80
|
|
81
81
|
[homepage]: https://www.contributor-covenant.org
|
82
82
|
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,15 +1,19 @@
|
|
1
1
|
# CompanyNumber
|
2
2
|
|
3
|
-
[![
|
3
|
+
[![Gem Version](https://badge.fury.io/rb/company_number.svg)](https://badge.fury.io/rb/company_number)
|
4
|
+
[![Build Status](https://github.com/VictorAuthiat/company_number/actions/workflows/ci.yml/badge.svg)](https://github.com/VictorAuthiat/company_number/actions/workflows/ci.yml)
|
5
|
+
[![Code Climate](https://codeclimate.com/github/VictorAuthiat/company_number/badges/gpa.svg)](https://codeclimate.com/github/VictorAuthiat/company_number)
|
6
|
+
[![Test Coverage](https://codeclimate.com/github/VictorAuthiat/company_number/badges/coverage.svg)](https://codeclimate.com/github/VictorAuthiat/company_number/coverage)
|
7
|
+
[![Issue Count](https://codeclimate.com/github/VictorAuthiat/company_number/badges/issue_count.svg)](https://codeclimate.com/github/VictorAuthiat/company_number)
|
4
8
|
|
5
9
|
CompanyNumber is a gem allowing you to validate company number based on a country code
|
6
10
|
|
7
11
|
## Installation
|
8
12
|
|
9
|
-
Add this line to your application
|
13
|
+
Add this line to your application"s Gemfile:
|
10
14
|
|
11
15
|
```ruby
|
12
|
-
gem
|
16
|
+
gem "company_number"
|
13
17
|
```
|
14
18
|
|
15
19
|
And then execute:
|
@@ -25,7 +29,7 @@ Or install it yourself as:
|
|
25
29
|
You can obtain a `CompanyNumber::Number` object calling `parse` method:
|
26
30
|
|
27
31
|
```ruby
|
28
|
-
company_number = CompanyNumber.parse(
|
32
|
+
company_number = CompanyNumber.parse("123456789", :fr)
|
29
33
|
|
30
34
|
# => #<CompanyNumber::Number:0x00007fc015d04e18 @company_number="123456789", @country_code=:fr, @metadata={:country=>"France", :name=>"Numéro SIREN ou SIRET", :regexp=>"^(\\d{9}|\\d{14})$", :pattern=>"9 numbers (XXXXXXXXX) or 14 numbers (XXXXXXXXXXXXXX)"}>
|
31
35
|
```
|
@@ -69,7 +73,7 @@ company_number.to_h
|
|
69
73
|
You can compare 2 instances of `CompanyNumber::Number` with `==` method
|
70
74
|
|
71
75
|
```ruby
|
72
|
-
CompanyNumber.parse(
|
76
|
+
CompanyNumber.parse("123") == CompanyNumber.parse("123")
|
73
77
|
# => true
|
74
78
|
```
|
75
79
|
|
@@ -92,15 +96,15 @@ Available metadata keys:
|
|
92
96
|
|
93
97
|
**Example:**
|
94
98
|
```ruby
|
95
|
-
CompanyNumber.parse(
|
96
|
-
CompanyNumber.parse(
|
99
|
+
CompanyNumber.parse("123456789", :fr).valid? # => true
|
100
|
+
CompanyNumber.parse("12345678901234", :fr).valid? # => true
|
97
101
|
|
98
102
|
CompanyNumber.configure do |config|
|
99
|
-
config.custom_dictionary = { fr: { regexp:
|
103
|
+
config.custom_dictionary = { fr: { regexp: "^\d{14}$" } }
|
100
104
|
end
|
101
105
|
|
102
|
-
CompanyNumber.parse(
|
103
|
-
CompanyNumber.parse(
|
106
|
+
CompanyNumber.parse("123456789", :fr).valid? # => false
|
107
|
+
CompanyNumber.parse("12345678901234", :fr).valid? # => true
|
104
108
|
```
|
105
109
|
|
106
110
|
**strict_validation:**
|
@@ -108,36 +112,36 @@ CompanyNumber.parse('12345678901234', :fr).valid? # => true
|
|
108
112
|
You can also enable strict validation to reject unknow countries:
|
109
113
|
|
110
114
|
```ruby
|
111
|
-
CompanyNumber.parse(
|
112
|
-
CompanyNumber.parse(
|
115
|
+
CompanyNumber.parse("123456789").valid? # => true
|
116
|
+
CompanyNumber.parse("123456789", :tt).valid? # => true
|
113
117
|
|
114
118
|
CompanyNumber.configure do |config|
|
115
119
|
config.strict_validation = true
|
116
120
|
end
|
117
121
|
|
118
|
-
CompanyNumber.parse(
|
119
|
-
CompanyNumber.parse(
|
122
|
+
CompanyNumber.parse("123456789").valid? # => false
|
123
|
+
CompanyNumber.parse("123456789", :tt).valid? # => false
|
120
124
|
```
|
121
125
|
|
122
126
|
**excluded_countries:**
|
123
127
|
|
124
|
-
You may want to exclude some countries, this allows you to automatically validate the country
|
128
|
+
You may want to exclude some countries, this allows you to automatically validate the country"s company number when strict validation is not enabled. You can also exclude a country to overwrite all its metadata and define it later in a custom dictionary.
|
125
129
|
|
126
130
|
**Example:**
|
127
131
|
```ruby
|
128
|
-
CompanyNumber.parse(
|
132
|
+
CompanyNumber.parse("123456789", :be).valid? # => false
|
129
133
|
|
130
134
|
CompanyNumber.configure do |config|
|
131
135
|
config.excluded_countries = [:be]
|
132
136
|
end
|
133
137
|
|
134
|
-
CompanyNumber.parse(
|
138
|
+
CompanyNumber.parse("123456789", :be).valid? # => true
|
135
139
|
```
|
136
140
|
|
137
141
|
## Default dictionary:
|
138
142
|
|
139
143
|
- `:at` - **Austria** - Firmenbuchnummer
|
140
|
-
- `:be` - **Belgium** - Numéro d
|
144
|
+
- `:be` - **Belgium** - Numéro d"entreprise Vestigingseenheidsnummer
|
141
145
|
- `:bg` - **Bulgaria** - ЕИК (EIK)/ПИК (PIK) (UIC/PIC)
|
142
146
|
- `:hr` - **Croatia** - Matični broj poslovnog subjekta (MBS)
|
143
147
|
- `:cy` - **Cyprus** - Αριθμός Μητρώου Εταιρίας Şirket kayıt numarası
|
@@ -155,7 +159,7 @@ CompanyNumber.parse('123456789', :be).valid? # => true
|
|
155
159
|
- `:lv` - **Latvia** - Reģistrācijas numurs
|
156
160
|
- `:li` - **Liechtenstein** - UID
|
157
161
|
- `:lt` - **Lithuania** - Juridinio asmens kodas
|
158
|
-
- `:lu` - **Luxembourg** - Numéro d
|
162
|
+
- `:lu` - **Luxembourg** - Numéro d"immatriculation
|
159
163
|
- `:mt` - **Malta** - Registration Number
|
160
164
|
- `:nl` - **Netherlands** - KvK-nummer
|
161
165
|
- `:no` - **Norway** - TIN
|
@@ -184,4 +188,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
|
|
184
188
|
|
185
189
|
## Code of Conduct
|
186
190
|
|
187
|
-
Everyone interacting in the CompanyNumber project
|
191
|
+
Everyone interacting in the CompanyNumber project"s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/victorauthiat/company_number/blob/master/CODE_OF_CONDUCT.md).
|
data/Rakefile
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "bundler/setup"
|
3
4
|
require "bundler/gem_tasks"
|
4
|
-
require "rspec/core/rake_task"
|
5
|
-
|
6
|
-
RSpec::Core::RakeTask.new(:spec)
|
7
5
|
|
6
|
+
require "rspec/core/rake_task"
|
8
7
|
require "rubocop/rake_task"
|
9
8
|
|
10
|
-
|
9
|
+
RSpec::Core::RakeTask.new(:test)
|
10
|
+
RuboCop::RakeTask.new(:rubocop)
|
11
11
|
|
12
|
-
task default: %i[
|
12
|
+
task default: %i[rubocop test]
|
data/bin/setup
CHANGED
data/company_number.gemspec
CHANGED
@@ -8,9 +8,10 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.authors = ["victorauthiat"]
|
9
9
|
spec.email = ["authiatv@gmail.com"]
|
10
10
|
|
11
|
-
spec.summary =
|
12
|
-
spec.homepage =
|
13
|
-
spec.license =
|
11
|
+
spec.summary = "Validate a company number according to a country code"
|
12
|
+
spec.homepage = "https://github.com/victorauthiat/company_number"
|
13
|
+
spec.license = "MIT"
|
14
|
+
spec.required_ruby_version = ">= 2.5"
|
14
15
|
|
15
16
|
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
16
17
|
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
|
@@ -19,9 +20,8 @@ Gem::Specification.new do |spec|
|
|
19
20
|
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
20
21
|
spec.require_paths = ["lib"]
|
21
22
|
|
22
|
-
spec.add_development_dependency
|
23
|
-
spec.add_development_dependency
|
24
|
-
spec.add_development_dependency
|
25
|
-
spec.add_development_dependency
|
26
|
-
spec.add_development_dependency 'simplecov', '~> 0.21.2'
|
23
|
+
spec.add_development_dependency "bundler"
|
24
|
+
spec.add_development_dependency "rake"
|
25
|
+
spec.add_development_dependency "rspec"
|
26
|
+
spec.add_development_dependency "simplecov"
|
27
27
|
end
|
data/config/dictionary.yml
CHANGED
@@ -7,7 +7,7 @@ at:
|
|
7
7
|
|
8
8
|
be:
|
9
9
|
country: Belgium
|
10
|
-
name: Numéro d
|
10
|
+
name: Numéro d"entreprise Vestigingseenheidsnummer
|
11
11
|
regexp: ^\d{10}$
|
12
12
|
pattern: 10 numbers (XXXXXXXXXX)
|
13
13
|
|
@@ -124,9 +124,9 @@ lt:
|
|
124
124
|
|
125
125
|
lu:
|
126
126
|
country: Luxembourg
|
127
|
-
name: Numéro d
|
127
|
+
name: Numéro d"immatriculation
|
128
128
|
regexp: ^[a-zA-Z]{1}\d{6}|[a-jA-J]\d{3}$
|
129
|
-
pattern: 1 letter + 6 numbers (LXXXXXX)
|
129
|
+
pattern: 1 letter + 6 numbers (LXXXXXX)"
|
130
130
|
variations: 1 letter (from A to J) + 3 numbers (AXXX)
|
131
131
|
|
132
132
|
mt:
|
@@ -5,7 +5,7 @@ module CompanyNumber
|
|
5
5
|
attr_reader :country_codes_metadata, :default_hash
|
6
6
|
|
7
7
|
def self.default_dictionary_path
|
8
|
-
File.join(File.dirname(__FILE__),
|
8
|
+
File.join(File.dirname(__FILE__), "../../config/dictionary.yml")
|
9
9
|
end
|
10
10
|
|
11
11
|
def initialize(country_codes_metadata = {})
|
data/lib/company_number.rb
CHANGED
@@ -5,9 +5,9 @@ require_relative "company_number/version"
|
|
5
5
|
require_relative "company_number/validation"
|
6
6
|
|
7
7
|
module CompanyNumber
|
8
|
-
autoload :Configuration,
|
9
|
-
autoload :Dictionary,
|
10
|
-
autoload :Number,
|
8
|
+
autoload :Configuration, "company_number/configuration"
|
9
|
+
autoload :Dictionary, "company_number/dictionary"
|
10
|
+
autoload :Number, "company_number/number"
|
11
11
|
|
12
12
|
class << self
|
13
13
|
def parse(company_number, country_code = nil)
|
@@ -0,0 +1,433 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset='UTF-8' />
|
5
|
+
<title>RuboCop Inspection Report</title>
|
6
|
+
|
7
|
+
<style>
|
8
|
+
* {
|
9
|
+
-webkit-box-sizing: border-box;
|
10
|
+
-moz-box-sizing: border-box;
|
11
|
+
box-sizing: border-box;
|
12
|
+
}
|
13
|
+
|
14
|
+
body, html {
|
15
|
+
font-size: 62.5%;
|
16
|
+
}
|
17
|
+
body {
|
18
|
+
background-color: #ecedf0;
|
19
|
+
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
|
20
|
+
margin: 0;
|
21
|
+
}
|
22
|
+
code {
|
23
|
+
font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
|
24
|
+
font-size: 85%;
|
25
|
+
}
|
26
|
+
#header {
|
27
|
+
background: #f9f9f9;
|
28
|
+
color: #333;
|
29
|
+
border-bottom: 3px solid #ccc;
|
30
|
+
height: 50px;
|
31
|
+
padding: 0;
|
32
|
+
}
|
33
|
+
#header .logo {
|
34
|
+
float: left;
|
35
|
+
margin: 5px 12px 7px 20px;
|
36
|
+
width: 38px;
|
37
|
+
height: 38px;
|
38
|
+
}
|
39
|
+
#header .title {
|
40
|
+
display: inline-block;
|
41
|
+
float: left;
|
42
|
+
height: 50px;
|
43
|
+
font-size: 2.4rem;
|
44
|
+
letter-spacing: normal;
|
45
|
+
line-height: 50px;
|
46
|
+
margin: 0;
|
47
|
+
}
|
48
|
+
|
49
|
+
.information, #offenses {
|
50
|
+
width: 100%;
|
51
|
+
padding: 20px;
|
52
|
+
color: #333;
|
53
|
+
}
|
54
|
+
#offenses {
|
55
|
+
padding: 0 20px;
|
56
|
+
}
|
57
|
+
|
58
|
+
.information .infobox {
|
59
|
+
border-left: 3px solid;
|
60
|
+
border-radius: 4px;
|
61
|
+
background-color: #fff;
|
62
|
+
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
63
|
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
64
|
+
padding: 15px;
|
65
|
+
border-color: #0088cc;
|
66
|
+
font-size: 1.4rem;
|
67
|
+
}
|
68
|
+
.information .infobox .info-title {
|
69
|
+
font-size: 1.8rem;
|
70
|
+
line-height: 2.2rem;
|
71
|
+
margin: 0 0 0.5em;
|
72
|
+
}
|
73
|
+
.information .offenses-list li {
|
74
|
+
line-height: 1.8rem
|
75
|
+
}
|
76
|
+
.information .offenses-list {
|
77
|
+
padding-left: 20px;
|
78
|
+
margin-bottom: 0;
|
79
|
+
}
|
80
|
+
|
81
|
+
#offenses .offense-box {
|
82
|
+
border-radius: 4px;
|
83
|
+
margin-bottom: 20px;
|
84
|
+
background-color: #fff;
|
85
|
+
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
86
|
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
87
|
+
}
|
88
|
+
.fixed .box-title {
|
89
|
+
position: fixed;
|
90
|
+
top: 0;
|
91
|
+
z-index: 10;
|
92
|
+
width: 100%;
|
93
|
+
}
|
94
|
+
.box-title-placeholder {
|
95
|
+
display: none;
|
96
|
+
}
|
97
|
+
.fixed .box-title-placeholder {
|
98
|
+
display: block;
|
99
|
+
}
|
100
|
+
#offenses .offense-box .box-title h3, #offenses .offense-box .box-title-placeholder h3 {
|
101
|
+
color: #33353f;
|
102
|
+
background-color: #f6f6f6;
|
103
|
+
font-size: 2rem;
|
104
|
+
line-height: 2rem;
|
105
|
+
display: block;
|
106
|
+
padding: 15px;
|
107
|
+
border-radius: 5px;
|
108
|
+
margin: 0;
|
109
|
+
}
|
110
|
+
#offenses .offense-box .offense-reports {
|
111
|
+
padding: 0 15px;
|
112
|
+
}
|
113
|
+
#offenses .offense-box .offense-reports .report {
|
114
|
+
border-bottom: 1px dotted #ddd;
|
115
|
+
padding: 15px 0px;
|
116
|
+
position: relative;
|
117
|
+
font-size: 1.3rem;
|
118
|
+
}
|
119
|
+
#offenses .offense-box .offense-reports .report:last-child {
|
120
|
+
border-bottom: none;
|
121
|
+
}
|
122
|
+
#offenses .offense-box .offense-reports .report pre code {
|
123
|
+
display: block;
|
124
|
+
background: #000;
|
125
|
+
color: #fff;
|
126
|
+
padding: 10px 15px;
|
127
|
+
border-radius: 5px;
|
128
|
+
line-height: 1.6rem;
|
129
|
+
}
|
130
|
+
#offenses .offense-box .offense-reports .report .location {
|
131
|
+
font-weight: bold;
|
132
|
+
}
|
133
|
+
#offenses .offense-box .offense-reports .report .message code {
|
134
|
+
padding: 0.3em;
|
135
|
+
background-color: rgba(0,0,0,0.07);
|
136
|
+
border-radius: 3px;
|
137
|
+
}
|
138
|
+
.severity {
|
139
|
+
text-transform: capitalize;
|
140
|
+
font-weight: bold;
|
141
|
+
}
|
142
|
+
.highlight {
|
143
|
+
padding: 2px;
|
144
|
+
border-radius: 2px;
|
145
|
+
font-weight: bold;
|
146
|
+
}
|
147
|
+
|
148
|
+
.severity.refactor {
|
149
|
+
color: rgba(237, 156, 40, 1.0);
|
150
|
+
}
|
151
|
+
.highlight.refactor {
|
152
|
+
background-color: rgba(237, 156, 40, 0.6);
|
153
|
+
border: 1px solid rgba(237, 156, 40, 0.4);
|
154
|
+
}
|
155
|
+
|
156
|
+
.severity.convention {
|
157
|
+
color: rgba(237, 156, 40, 1.0);
|
158
|
+
}
|
159
|
+
.highlight.convention {
|
160
|
+
background-color: rgba(237, 156, 40, 0.6);
|
161
|
+
border: 1px solid rgba(237, 156, 40, 0.4);
|
162
|
+
}
|
163
|
+
|
164
|
+
.severity.warning {
|
165
|
+
color: rgba(150, 40, 239, 1.0);
|
166
|
+
}
|
167
|
+
.highlight.warning {
|
168
|
+
background-color: rgba(150, 40, 239, 0.6);
|
169
|
+
border: 1px solid rgba(150, 40, 239, 0.4);
|
170
|
+
}
|
171
|
+
|
172
|
+
.severity.error {
|
173
|
+
color: rgba(210, 50, 45, 1.0);
|
174
|
+
}
|
175
|
+
.highlight.error {
|
176
|
+
background-color: rgba(210, 50, 45, 0.6);
|
177
|
+
border: 1px solid rgba(210, 50, 45, 0.4);
|
178
|
+
}
|
179
|
+
|
180
|
+
.severity.fatal {
|
181
|
+
color: rgba(210, 50, 45, 1.0);
|
182
|
+
}
|
183
|
+
.highlight.fatal {
|
184
|
+
background-color: rgba(210, 50, 45, 0.6);
|
185
|
+
border: 1px solid rgba(210, 50, 45, 0.4);
|
186
|
+
}
|
187
|
+
|
188
|
+
footer {
|
189
|
+
margin-bottom: 20px;
|
190
|
+
margin-right: 20px;
|
191
|
+
font-size: 1.3rem;
|
192
|
+
color: #777;
|
193
|
+
text-align: right;
|
194
|
+
}
|
195
|
+
.extra-code {
|
196
|
+
color: #ED9C28
|
197
|
+
}
|
198
|
+
</style>
|
199
|
+
|
200
|
+
<script>
|
201
|
+
(function() {
|
202
|
+
// floating headers. requires classList support.
|
203
|
+
if (!('classList' in document.createElement("_"))) return;
|
204
|
+
|
205
|
+
var loaded = false,
|
206
|
+
boxes,
|
207
|
+
boxPositions;
|
208
|
+
|
209
|
+
window.onload = function() {
|
210
|
+
var scrollY = window.scrollY;
|
211
|
+
boxes = document.querySelectorAll('.offense-box');
|
212
|
+
boxPositions = [];
|
213
|
+
for (var i = 0; i < boxes.length; i++)
|
214
|
+
// need to add scrollY because the page might be somewhere other than the top when loaded.
|
215
|
+
boxPositions[i] = boxes[i].getBoundingClientRect().top + scrollY;
|
216
|
+
loaded = true;
|
217
|
+
};
|
218
|
+
|
219
|
+
window.onscroll = function() {
|
220
|
+
if (!loaded) return;
|
221
|
+
var i,
|
222
|
+
idx,
|
223
|
+
scrollY = window.scrollY;
|
224
|
+
for (i = 0; i < boxPositions.length; i++) {
|
225
|
+
if (scrollY <= boxPositions[i] - 1) {
|
226
|
+
idx = i;
|
227
|
+
break;
|
228
|
+
}
|
229
|
+
}
|
230
|
+
if (typeof idx == 'undefined') idx = boxes.length;
|
231
|
+
if (idx > 0)
|
232
|
+
boxes[idx - 1].classList.add('fixed');
|
233
|
+
for (i = 0; i < boxes.length; i++) {
|
234
|
+
if (i < idx) continue;
|
235
|
+
boxes[i].classList.remove('fixed');
|
236
|
+
}
|
237
|
+
};
|
238
|
+
})();
|
239
|
+
</script>
|
240
|
+
</head>
|
241
|
+
<body>
|
242
|
+
<div id="header">
|
243
|
+
<img class="logo" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEwAAABMCAYAAADHl1ErAAAKQWlDQ1BJQ0Mg
|
244
|
+
UHJvZmlsZQAASA2dlndUU9kWh8+9N73QEiIgJfQaegkg0jtIFQRRiUmAUAKG
|
245
|
+
hCZ2RAVGFBEpVmRUwAFHhyJjRRQLg4Ji1wnyEFDGwVFEReXdjGsJ7601896a
|
246
|
+
/cdZ39nnt9fZZ+9917oAUPyCBMJ0WAGANKFYFO7rwVwSE8vE9wIYEAEOWAHA
|
247
|
+
4WZmBEf4RALU/L09mZmoSMaz9u4ugGS72yy/UCZz1v9/kSI3QyQGAApF1TY8
|
248
|
+
fiYX5QKUU7PFGTL/BMr0lSkyhjEyFqEJoqwi48SvbPan5iu7yZiXJuShGlnO
|
249
|
+
Gbw0noy7UN6aJeGjjAShXJgl4GejfAdlvVRJmgDl9yjT0/icTAAwFJlfzOcm
|
250
|
+
oWyJMkUUGe6J8gIACJTEObxyDov5OWieAHimZ+SKBIlJYqYR15hp5ejIZvrx
|
251
|
+
s1P5YjErlMNN4Yh4TM/0tAyOMBeAr2+WRQElWW2ZaJHtrRzt7VnW5mj5v9nf
|
252
|
+
Hn5T/T3IevtV8Sbsz55BjJ5Z32zsrC+9FgD2JFqbHbO+lVUAtG0GQOXhrE/v
|
253
|
+
IADyBQC03pzzHoZsXpLE4gwnC4vs7GxzAZ9rLivoN/ufgm/Kv4Y595nL7vtW
|
254
|
+
O6YXP4EjSRUzZUXlpqemS0TMzAwOl89k/fcQ/+PAOWnNycMsnJ/AF/GF6FVR
|
255
|
+
6JQJhIlou4U8gViQLmQKhH/V4X8YNicHGX6daxRodV8AfYU5ULhJB8hvPQBD
|
256
|
+
IwMkbj96An3rWxAxCsi+vGitka9zjzJ6/uf6Hwtcim7hTEEiU+b2DI9kciWi
|
257
|
+
LBmj34RswQISkAd0oAo0gS4wAixgDRyAM3AD3iAAhIBIEAOWAy5IAmlABLJB
|
258
|
+
PtgACkEx2AF2g2pwANSBetAEToI2cAZcBFfADXALDIBHQAqGwUswAd6BaQiC
|
259
|
+
8BAVokGqkBakD5lC1hAbWgh5Q0FQOBQDxUOJkBCSQPnQJqgYKoOqoUNQPfQj
|
260
|
+
dBq6CF2D+qAH0CA0Bv0BfYQRmALTYQ3YALaA2bA7HAhHwsvgRHgVnAcXwNvh
|
261
|
+
SrgWPg63whfhG/AALIVfwpMIQMgIA9FGWAgb8URCkFgkAREha5EipAKpRZqQ
|
262
|
+
DqQbuY1IkXHkAwaHoWGYGBbGGeOHWYzhYlZh1mJKMNWYY5hWTBfmNmYQM4H5
|
263
|
+
gqVi1bGmWCesP3YJNhGbjS3EVmCPYFuwl7ED2GHsOxwOx8AZ4hxwfrgYXDJu
|
264
|
+
Na4Etw/XjLuA68MN4SbxeLwq3hTvgg/Bc/BifCG+Cn8cfx7fjx/GvyeQCVoE
|
265
|
+
a4IPIZYgJGwkVBAaCOcI/YQRwjRRgahPdCKGEHnEXGIpsY7YQbxJHCZOkxRJ
|
266
|
+
hiQXUiQpmbSBVElqIl0mPSa9IZPJOmRHchhZQF5PriSfIF8lD5I/UJQoJhRP
|
267
|
+
ShxFQtlOOUq5QHlAeUOlUg2obtRYqpi6nVpPvUR9Sn0vR5Mzl/OX48mtk6uR
|
268
|
+
a5Xrl3slT5TXl3eXXy6fJ18hf0r+pvy4AlHBQMFTgaOwVqFG4bTCPYVJRZqi
|
269
|
+
lWKIYppiiWKD4jXFUSW8koGStxJPqUDpsNIlpSEaQtOledK4tE20Otpl2jAd
|
270
|
+
Rzek+9OT6cX0H+i99AllJWVb5SjlHOUa5bPKUgbCMGD4M1IZpYyTjLuMj/M0
|
271
|
+
5rnP48/bNq9pXv+8KZX5Km4qfJUilWaVAZWPqkxVb9UU1Z2qbapP1DBqJmph
|
272
|
+
atlq+9Uuq43Pp893ns+dXzT/5PyH6rC6iXq4+mr1w+o96pMamhq+GhkaVRqX
|
273
|
+
NMY1GZpumsma5ZrnNMe0aFoLtQRa5VrntV4wlZnuzFRmJbOLOaGtru2nLdE+
|
274
|
+
pN2rPa1jqLNYZ6NOs84TXZIuWzdBt1y3U3dCT0svWC9fr1HvoT5Rn62fpL9H
|
275
|
+
v1t/ysDQINpgi0GbwaihiqG/YZ5ho+FjI6qRq9Eqo1qjO8Y4Y7ZxivE+41sm
|
276
|
+
sImdSZJJjclNU9jU3lRgus+0zwxr5mgmNKs1u8eisNxZWaxG1qA5wzzIfKN5
|
277
|
+
m/krCz2LWIudFt0WXyztLFMt6ywfWSlZBVhttOqw+sPaxJprXWN9x4Zq42Oz
|
278
|
+
zqbd5rWtqS3fdr/tfTuaXbDdFrtOu8/2DvYi+yb7MQc9h3iHvQ732HR2KLuE
|
279
|
+
fdUR6+jhuM7xjOMHJ3snsdNJp9+dWc4pzg3OowsMF/AX1C0YctFx4bgccpEu
|
280
|
+
ZC6MX3hwodRV25XjWuv6zE3Xjed2xG3E3dg92f24+ysPSw+RR4vHlKeT5xrP
|
281
|
+
C16Il69XkVevt5L3Yu9q76c+Oj6JPo0+E752vqt9L/hh/QL9dvrd89fw5/rX
|
282
|
+
+08EOASsCegKpARGBFYHPgsyCRIFdQTDwQHBu4IfL9JfJFzUFgJC/EN2hTwJ
|
283
|
+
NQxdFfpzGC4sNKwm7Hm4VXh+eHcELWJFREPEu0iPyNLIR4uNFksWd0bJR8VF
|
284
|
+
1UdNRXtFl0VLl1gsWbPkRoxajCCmPRYfGxV7JHZyqffS3UuH4+ziCuPuLjNc
|
285
|
+
lrPs2nK15anLz66QX8FZcSoeGx8d3xD/iRPCqeVMrvRfuXflBNeTu4f7kufG
|
286
|
+
K+eN8V34ZfyRBJeEsoTRRJfEXYljSa5JFUnjAk9BteB1sl/ygeSplJCUoykz
|
287
|
+
qdGpzWmEtPi000IlYYqwK10zPSe9L8M0ozBDuspp1e5VE6JA0ZFMKHNZZruY
|
288
|
+
jv5M9UiMJJslg1kLs2qy3mdHZZ/KUcwR5vTkmuRuyx3J88n7fjVmNXd1Z752
|
289
|
+
/ob8wTXuaw6thdauXNu5Tnddwbrh9b7rj20gbUjZ8MtGy41lG99uit7UUaBR
|
290
|
+
sL5gaLPv5sZCuUJR4b0tzlsObMVsFWzt3WazrWrblyJe0fViy+KK4k8l3JLr
|
291
|
+
31l9V/ndzPaE7b2l9qX7d+B2CHfc3em681iZYlle2dCu4F2t5czyovK3u1fs
|
292
|
+
vlZhW3FgD2mPZI+0MqiyvUqvakfVp+qk6oEaj5rmvep7t+2d2sfb17/fbX/T
|
293
|
+
AY0DxQc+HhQcvH/I91BrrUFtxWHc4azDz+ui6rq/Z39ff0TtSPGRz0eFR6XH
|
294
|
+
wo911TvU1zeoN5Q2wo2SxrHjccdv/eD1Q3sTq+lQM6O5+AQ4ITnx4sf4H++e
|
295
|
+
DDzZeYp9qukn/Z/2ttBailqh1tzWibakNml7THvf6YDTnR3OHS0/m/989Iz2
|
296
|
+
mZqzymdLz5HOFZybOZ93fvJCxoXxi4kXhzpXdD66tOTSna6wrt7LgZevXvG5
|
297
|
+
cqnbvfv8VZerZ645XTt9nX297Yb9jdYeu56WX+x+aem172296XCz/ZbjrY6+
|
298
|
+
BX3n+l37L972un3ljv+dGwOLBvruLr57/17cPel93v3RB6kPXj/Mejj9aP1j
|
299
|
+
7OOiJwpPKp6qP6391fjXZqm99Oyg12DPs4hnj4a4Qy//lfmvT8MFz6nPK0a0
|
300
|
+
RupHrUfPjPmM3Xqx9MXwy4yX0+OFvyn+tveV0auffnf7vWdiycTwa9HrmT9K
|
301
|
+
3qi+OfrW9m3nZOjk03dp76anit6rvj/2gf2h+2P0x5Hp7E/4T5WfjT93fAn8
|
302
|
+
8ngmbWbm3/eE8/syOll+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEJGlUWHRY
|
303
|
+
TUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9i
|
304
|
+
ZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRm
|
305
|
+
OlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjIt
|
306
|
+
cmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjph
|
307
|
+
Ym91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRv
|
308
|
+
YmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0
|
309
|
+
cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5z
|
310
|
+
OmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAg
|
311
|
+
ICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAv
|
312
|
+
Ij4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MTwvdGlmZjpSZXNv
|
313
|
+
bHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlm
|
314
|
+
ZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8
|
315
|
+
L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9u
|
316
|
+
PjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0
|
317
|
+
aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhl
|
318
|
+
bFhEaW1lbnNpb24+NzY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAg
|
319
|
+
ICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAg
|
320
|
+
ICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjc2PC9leGlmOlBpeGVsWURpbWVu
|
321
|
+
c2lvbj4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6
|
322
|
+
U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1v
|
323
|
+
ZGlmeURhdGU+MjAxNDowOToyMyAyMjowOToxNDwveG1wOk1vZGlmeURhdGU+
|
324
|
+
CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjIuMTwv
|
325
|
+
eG1wOkNyZWF0b3JUb29sPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAg
|
326
|
+
PC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KkpvroQAABkNJREFUeAHtm0uIHFUY
|
327
|
+
hWveM8ZpHN/RYCIS34mKGGSMMmLA6CKILmQwBOJCEcwqKzELceVWN+IyIgQM
|
328
|
+
4gt84SMqBpNBkBiJGkEFMRFNMmSSzEzm5fmG7qEpbt1bt7q6XuOBQ3Xfuvf/
|
329
|
+
z/nr3qrq6u6OIH9cLAlrxGvr20e0vVsE34rviL+Lv9W3J7XNDR05Zb5deR8U
|
330
|
+
7xfXiVeKnaIN89p5XPxB/EL8WPxerCxqcrZd3CdOiwstkhj7RGISuzLol5On
|
331
|
+
xSNiq0WKGk9scpCr1LhP6veLUUbTbicXOUuHHil+QZwS0y6KKx45yY2GUuAy
|
332
|
+
qXxXdBlr9340oKXQWC11Y2K7ixE3PlrQVEhcI1WHxLhmsuqHJrQVCtx8cpOZ
|
333
|
+
VRF886ANjYVAl1TsFX1NZN0fjWjNHTulIGvzSfOhNVfcpuwTYlIDWY9DK5pz
|
334
|
+
AdP7EzFr063mQ3MuS/PREharUWy0Zwruog+IDQFl26I9008Cm0tcrMbBxYM3
|
335
|
+
XM+gogI+GbWjRO2ZebhKRTklNo5UWbd4wIsXksywEWW4yCtLMTvjYcRXWpKC
|
336
|
+
bfJNUuD+3l58C9Yt83cWuAC+0vCCp7aBT/3nxbKet8K68eL1JMO3unzLtFtk
|
337
|
+
WwVQwKp4Kebx8KnurbLwjLhBHCimHW9VkxpxUHxVPOw92jJgi/bxjXP4HFCV
|
338
|
+
93jDYypYrSj/iFUpTpQPPK4RrYhzW7FVES61RqnGTjw+4bISp2B3uIJUaL/T
|
339
|
+
a5yC9VaoIC4rTq9xCjbrylKh/U6vroLdpGKsr1BBXFbwiudE4NP8j2LUVaWq
|
340
|
+
7XiOfBpjm2HbNPBmcbkBz3g3wnanf1ojBo2j6o1DnZ3B6IpasL6nb/Hng0y5
|
341
|
+
IgKT8+Khmelgz9nTwal53lnB13E1Uw9bwaz+r+jqCvZcsjIY7hsIZhdXrSl8
|
342
|
+
sdq69Tl7//RkMHriWPD33JxLnLE2vk8rlpLsGBwKhvsHggn30Voak/+LhUXN
|
343
|
+
aN81/m8iObZzWGRABg339QfTC9ZJGDk+zx1oRnsi4xKeaBxlmlJi45zNsxox
|
344
|
+
cqMZ7UkPdeKCvX3uTNCrkpWpaGhFM9qTFizxOWy3rjZru3uD7RfWgoGOcpRt
|
345
|
+
UjPrlYnxAO1JYXN6QEF5WGgFtxQ39vQGXbZI1gjZ7JzTlPpp5vzirUWMjGPq
|
346
|
+
4/QejjOiBmbuciTevcH57TWRu7zlUjS84jnRuV3jFr+z+1Lb5VKwr+qe8W6E
|
347
|
+
q5I87jhpHFnNxhOyZX3E4yoYZcnl13o5HQ+n1zgFS34Nzsl1C2mdXuMU7PMW
|
348
|
+
BJRtaCpeecTDfUnVT/x4tD7O8jn616nz1xUuGt7w6ITP/Xmfoj0s8n/sFSIz
|
349
|
+
Low4Szw8Jov33F+FgfezIn+r+UDkH77/I+0K+MywRm7+0P6hGF7vM2rbIh4V
|
350
|
+
i4S1EvOeGP6ZOY+hHxKPi7GR5GkFYxDBsmwGS5RlWzSg6QYxPDlYjt7+vQfU
|
351
|
+
q2G6G6bNdF6rD1naPKZXHNk0wEx/yxEITWgLzzCTB0eoBBV2RrR3eEC7Xxcv
|
352
|
+
sHeLvXdUPcfFz2KPaLFjllc1foD7hphWsbBOLGISOxMkXZJJxLEMuWAALuEY
|
353
|
+
PcebBKBQW0XOT8Qk9ndiIbFKqlgGnBuayS+SbxGj0KUdz4sUaUdUJ492YhCL
|
354
|
+
mMSOAppMv/zGA17ajqQFawhj+YSvWI19PltixFmKqRYsyyXZKEZaS4fZnVas
|
355
|
+
hjbnNo+ChUVtVMP1omvWUaCfxW/EUuFqqTX9m21W7es8nTyl/oxrPhfaXtOX
|
356
|
+
MT5AkykHHvDSdgwpw1+iyRgfjeLiHnU8I5ri2NoYw9i4QJMpHh7w0nZw7zYm
|
357
|
+
mkS8GTP7SvX7JSKGKW64jbHEiIO96hQez3s8ZHYf+nKECKb+NtEGzpvviyYT
|
358
|
+
Pm3EcJ2D0WJajuTBQ2bYqEz8wMpkcErtu8TLxTC4X3pJNI1L0kYs0z0YudGA
|
359
|
+
FlNctOPBG64rU1RARH4kborqoPZj4mGx8cUCuVaJG8Q0cVDB/hQpDKiJ/C/K
|
360
|
+
tmQ/1f7NovNXdeqTGu5SJB6RmI5gkdvQjPZc8KyyFrk4Jm1ozhXPKTvPzE3i
|
361
|
+
itSGRrQWAo9LxR9ikQrUrAVtaCwUOMm+KB4Vm8Xm+RotaLJdALQ7Xwwq/b3i
|
362
|
+
TvFXMeuCkZPcaEBLqvgPBhCuiZo8+sAAAAAASUVORK5CYII=
|
363
|
+
" alt="">
|
364
|
+
<h1 class="title">RuboCop Inspection Report</h1>
|
365
|
+
</div>
|
366
|
+
<div class="information">
|
367
|
+
<div class="infobox">
|
368
|
+
<div class="total">
|
369
|
+
16 files inspected,
|
370
|
+
no offenses detected:
|
371
|
+
</div>
|
372
|
+
<ul class="offenses-list">
|
373
|
+
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
|
383
|
+
|
384
|
+
|
385
|
+
|
386
|
+
|
387
|
+
|
388
|
+
|
389
|
+
|
390
|
+
</ul>
|
391
|
+
</div>
|
392
|
+
</div>
|
393
|
+
<div id="offenses">
|
394
|
+
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
|
403
|
+
|
404
|
+
|
405
|
+
|
406
|
+
|
407
|
+
|
408
|
+
|
409
|
+
|
410
|
+
|
411
|
+
|
412
|
+
|
413
|
+
|
414
|
+
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
|
425
|
+
|
426
|
+
|
427
|
+
</div>
|
428
|
+
<footer>
|
429
|
+
Generated by <a href="https://github.com/rubocop/rubocop">RuboCop</a>
|
430
|
+
<span class="version">1.23.0</span>
|
431
|
+
</footer>
|
432
|
+
</body>
|
433
|
+
</html>
|
metadata
CHANGED
@@ -1,85 +1,71 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: company_number
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- victorauthiat
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-04
|
11
|
+
date: 2022-11-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: pry
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 0.14.1
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 0.14.1
|
26
|
+
version: '0'
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
28
|
name: rake
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
44
30
|
requirements:
|
45
|
-
- - "
|
31
|
+
- - ">="
|
46
32
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
33
|
+
version: '0'
|
48
34
|
type: :development
|
49
35
|
prerelease: false
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
51
37
|
requirements:
|
52
|
-
- - "
|
38
|
+
- - ">="
|
53
39
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
40
|
+
version: '0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: rspec
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
58
44
|
requirements:
|
59
|
-
- - "
|
45
|
+
- - ">="
|
60
46
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
47
|
+
version: '0'
|
62
48
|
type: :development
|
63
49
|
prerelease: false
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
65
51
|
requirements:
|
66
|
-
- - "
|
52
|
+
- - ">="
|
67
53
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
54
|
+
version: '0'
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
56
|
name: simplecov
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
72
58
|
requirements:
|
73
|
-
- - "
|
59
|
+
- - ">="
|
74
60
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0
|
61
|
+
version: '0'
|
76
62
|
type: :development
|
77
63
|
prerelease: false
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
|
-
- - "
|
66
|
+
- - ">="
|
81
67
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0
|
68
|
+
version: '0'
|
83
69
|
description:
|
84
70
|
email:
|
85
71
|
- authiatv@gmail.com
|
@@ -87,10 +73,12 @@ executables: []
|
|
87
73
|
extensions: []
|
88
74
|
extra_rdoc_files: []
|
89
75
|
files:
|
90
|
-
- ".
|
76
|
+
- ".codeclimate.yml"
|
77
|
+
- ".github/workflows/ci.yml"
|
91
78
|
- ".gitignore"
|
92
79
|
- ".rspec"
|
93
80
|
- ".rubocop.yml"
|
81
|
+
- ".simplecov"
|
94
82
|
- CHANGELOG.md
|
95
83
|
- CODE_OF_CONDUCT.md
|
96
84
|
- Gemfile
|
@@ -107,6 +95,7 @@ files:
|
|
107
95
|
- lib/company_number/number.rb
|
108
96
|
- lib/company_number/validation.rb
|
109
97
|
- lib/company_number/version.rb
|
98
|
+
- rubocop/rubocop.html
|
110
99
|
homepage: https://github.com/victorauthiat/company_number
|
111
100
|
licenses:
|
112
101
|
- MIT
|
@@ -119,7 +108,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
108
|
requirements:
|
120
109
|
- - ">="
|
121
110
|
- !ruby/object:Gem::Version
|
122
|
-
version: '
|
111
|
+
version: '2.5'
|
123
112
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
124
113
|
requirements:
|
125
114
|
- - ">="
|
data/.github/workflows/build.yml
DELETED
@@ -1,93 +0,0 @@
|
|
1
|
-
name: build
|
2
|
-
|
3
|
-
on: [ push ]
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
rubocop:
|
7
|
-
runs-on: ubuntu-latest
|
8
|
-
steps:
|
9
|
-
- uses: actions/checkout@v2
|
10
|
-
- uses: actions/setup-ruby@v1
|
11
|
-
- name: Run Rubocop
|
12
|
-
run: |
|
13
|
-
gem install rubocop
|
14
|
-
mkdir rubocop
|
15
|
-
rubocop --format html -o rubocop/rubocop.html || true
|
16
|
-
- name: Store Rubocop artifacts
|
17
|
-
uses: actions/upload-artifact@v2
|
18
|
-
with:
|
19
|
-
name: rubocop-report
|
20
|
-
path: rubocop/rubocop.html
|
21
|
-
|
22
|
-
rubycritic:
|
23
|
-
runs-on: ubuntu-latest
|
24
|
-
steps:
|
25
|
-
- uses: actions/checkout@v2
|
26
|
-
- uses: actions/setup-ruby@v1
|
27
|
-
- name: Run RubyCritic
|
28
|
-
run: |
|
29
|
-
gem install rubycritic
|
30
|
-
rubycritic lib --no-browser
|
31
|
-
- name: Store RubyCritic artifacts
|
32
|
-
uses: actions/upload-artifact@v2
|
33
|
-
with:
|
34
|
-
name: rubycritic-report
|
35
|
-
path: tmp/rubycritic
|
36
|
-
|
37
|
-
fukuzatsu:
|
38
|
-
runs-on: ubuntu-latest
|
39
|
-
steps:
|
40
|
-
- uses: actions/checkout@v2
|
41
|
-
- uses: actions/setup-ruby@v1
|
42
|
-
- name: Run Fukuzatsu
|
43
|
-
run: |
|
44
|
-
gem install fukuzatsu
|
45
|
-
fuku check lib -f html
|
46
|
-
- name: Store Fukuzatsu artifacts
|
47
|
-
uses: actions/upload-artifact@v2
|
48
|
-
with:
|
49
|
-
name: fukuzatsu-report
|
50
|
-
path: doc/fukuzatsu/htm
|
51
|
-
|
52
|
-
fasterer:
|
53
|
-
runs-on: ubuntu-latest
|
54
|
-
steps:
|
55
|
-
- uses: actions/checkout@v2
|
56
|
-
- uses: actions/setup-ruby@v1
|
57
|
-
- name: Install Fasterer
|
58
|
-
run: gem install fasterer
|
59
|
-
- name: Configure Fasterer
|
60
|
-
run: |
|
61
|
-
cat << EOF > .fasterer.yml
|
62
|
-
exclude_paths:
|
63
|
-
- 'vendor/**/*.rb'
|
64
|
-
EOF
|
65
|
-
- name: Run Fasterer
|
66
|
-
run: fasterer || true
|
67
|
-
|
68
|
-
rspec:
|
69
|
-
runs-on: ubuntu-latest
|
70
|
-
steps:
|
71
|
-
- uses: actions/checkout@v2
|
72
|
-
- uses: actions/setup-ruby@v1
|
73
|
-
- name: Setup
|
74
|
-
run: gem install simplecov pry rspec
|
75
|
-
- name: Run RSpec
|
76
|
-
run: rspec --format progress
|
77
|
-
- name: Store SimpleCov artifacts
|
78
|
-
uses: actions/upload-artifact@v2
|
79
|
-
with:
|
80
|
-
name: simplecov-report
|
81
|
-
path: coverage
|
82
|
-
|
83
|
-
audit:
|
84
|
-
runs-on: ubuntu-latest
|
85
|
-
steps:
|
86
|
-
- uses: actions/checkout@v2
|
87
|
-
- uses: actions/setup-ruby@v1
|
88
|
-
- name: Setup
|
89
|
-
run : |
|
90
|
-
gem install bundler:2.2.25 bundler-audit:0.9.0.1
|
91
|
-
bundle install
|
92
|
-
- name: Run Bundler Audit
|
93
|
-
run : bundle audit --update
|