Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
No results found
Show changes
Commits on Source (5)
include:
- project: pub/nexus-code-quality
file: /code-quality-template.yaml
image: docker:latest
variables:
......@@ -6,8 +10,10 @@ variables:
stages:
- prebuild
- test
- release
docker_lint:
stage: prebuild
image: hadolint/hadolint:latest-debian
......
......@@ -2,6 +2,14 @@
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
### [1.3.1](https://gitlab.nexdev.uk/pub/rails-base-image-builder/-/compare/v1.3.0...v1.3.1) (2021-05-10)
### Bug Fixes
* pin apt-get versions ([6bce15c](https://gitlab.nexdev.uk/pub/rails-base-image-builder/-/commit/6bce15c330037e0e329b28354e843f99fab2ad12))
* updated to rails 6.1.3.2 ([9369aac](https://gitlab.nexdev.uk/pub/rails-base-image-builder/-/commit/9369aac623e74965f209cd98f1fe213871f0640c))
## [1.3.0](https://gitlab.nexdev.uk/pub/rails-base-image-builder/-/compare/v1.2.0...v1.3.0) (2021-03-29)
......
......@@ -2,19 +2,18 @@ FROM ruby:2.7.2-slim
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
cmake \
pkg-config \
default-libmysqlclient-dev \
nodejs \
curl \
git \
ruby-dev \
telnet \
nano \
build-essential \
cmake pkg-config \
libpq-dev \
shared-mime-info \
cmake=3.13.4-1 \
pkg-config=0.29-6 \
default-libmysqlclient-dev=1.0.* \
nodejs=10.24.* \
curl=7.64.* \
git=1:* \
ruby-dev=1:2.5.* \
telnet=0.17-* \
nano=3.2-* \
build-essential=12.* \
libpq-dev=11.* \
shared-mime-info=1.10-1 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
......
# frozen_string_literal: true
source 'https://rubygems.org'
ruby '2.7.2'
gem 'rails', '6.1.3'
gem 'rails', '6.1.3.2'
gem 'puma', '4.3.7'
gem 'sass-rails', '5.1.0'
gem 'uglifier', '4.2.0'
......@@ -15,8 +16,8 @@ gem 'pg', '1.2.3'
gem 'mysql2', '0.5.3'
gem 'active_model_serializers', '0.10.12'
gem 'rqrcode_png', '0.1.5'
gem 'hcaptcha', git: 'https://github.com/Nexus-Mods/hcaptcha.git'
gem 'faker', git: 'https://github.com/faker-ruby/faker.git', branch: 'master'
gem 'hcaptcha', '7.1.0'
gem 'faker', '2.17.0'
gem 'bunny_events', '0.3.2'
gem 'bunny-mock', '1.7.0'
gem 'audited', '4.10.0'
......@@ -25,7 +26,7 @@ gem 'ddtrace', '0.46.0'
gem 'delayed_job_active_record', '4.1.5'
gem 'dotenv-rails', '2.7.6'
gem 'redis-rails', '5.0.2'
gem 'ruby-mailchecker', '4.0.6'
gem 'ruby-mailchecker', '4.0.7'
gem 'httparty', '0.18.1'
gem 'rack-cors', '1.1.1'
gem 'useragent', '0.16.10'
......@@ -49,6 +50,3 @@ gem 'pundit', '2.1.0'
gem 'pundit-matchers', '1.6.0'
gem 'nexus_domain_events', '1.1.2'
gem 'batch-loader', '1.4.1'
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: %i[mingw mswin x64_mingw jruby]
GIT
remote: https://github.com/Nexus-Mods/hcaptcha.git
revision: a2135327e0f22ddba170d77dbba86827cd05c2cb
specs:
hcaptcha (7.1.0)
json
GIT
remote: https://github.com/faker-ruby/faker.git
revision: cfb382e4579233b5a198122e4cc0a427f6e933fb
branch: master
specs:
faker (2.17.0)
i18n (>= 1.6, < 2)
GEM
remote: https://rubygems.org/
specs:
actioncable (6.1.3)
actionpack (= 6.1.3)
activesupport (= 6.1.3)
actioncable (6.1.3.2)
actionpack (= 6.1.3.2)
activesupport (= 6.1.3.2)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
actionmailbox (6.1.3)
actionpack (= 6.1.3)
activejob (= 6.1.3)
activerecord (= 6.1.3)
activestorage (= 6.1.3)
activesupport (= 6.1.3)
actionmailbox (6.1.3.2)
actionpack (= 6.1.3.2)
activejob (= 6.1.3.2)
activerecord (= 6.1.3.2)
activestorage (= 6.1.3.2)
activesupport (= 6.1.3.2)
mail (>= 2.7.1)
actionmailer (6.1.3)
actionpack (= 6.1.3)
actionview (= 6.1.3)
activejob (= 6.1.3)
activesupport (= 6.1.3)
actionmailer (6.1.3.2)
actionpack (= 6.1.3.2)
actionview (= 6.1.3.2)
activejob (= 6.1.3.2)
activesupport (= 6.1.3.2)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (6.1.3)
actionview (= 6.1.3)
activesupport (= 6.1.3)
actionpack (6.1.3.2)
actionview (= 6.1.3.2)
activesupport (= 6.1.3.2)
rack (~> 2.0, >= 2.0.9)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.2.0)
actionpack-cloudflare (1.1.0)
actionpack (>= 3.2)
actiontext (6.1.3)
actionpack (= 6.1.3)
activerecord (= 6.1.3)
activestorage (= 6.1.3)
activesupport (= 6.1.3)
actiontext (6.1.3.2)
actionpack (= 6.1.3.2)
activerecord (= 6.1.3.2)
activestorage (= 6.1.3.2)
activesupport (= 6.1.3.2)
nokogiri (>= 1.8.5)
actionview (6.1.3)
activesupport (= 6.1.3)
actionview (6.1.3.2)
activesupport (= 6.1.3.2)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
......@@ -61,22 +46,22 @@ GEM
activemodel (>= 4.1, < 6.2)
case_transform (>= 0.2)
jsonapi-renderer (>= 0.1.1.beta1, < 0.3)
activejob (6.1.3)
activesupport (= 6.1.3)
activejob (6.1.3.2)
activesupport (= 6.1.3.2)
globalid (>= 0.3.6)
activemodel (6.1.3)
activesupport (= 6.1.3)
activerecord (6.1.3)
activemodel (= 6.1.3)
activesupport (= 6.1.3)
activestorage (6.1.3)
actionpack (= 6.1.3)
activejob (= 6.1.3)
activerecord (= 6.1.3)
activesupport (= 6.1.3)
marcel (~> 0.3.1)
mimemagic (~> 0.3.2)
activesupport (6.1.3)
activemodel (6.1.3.2)
activesupport (= 6.1.3.2)
activerecord (6.1.3.2)
activemodel (= 6.1.3.2)
activesupport (= 6.1.3.2)
activestorage (6.1.3.2)
actionpack (= 6.1.3.2)
activejob (= 6.1.3.2)
activerecord (= 6.1.3.2)
activesupport (= 6.1.3.2)
marcel (~> 1.0.0)
mini_mime (~> 1.0.2)
activesupport (6.1.3.2)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
......@@ -90,8 +75,8 @@ GEM
autoprefixer-rails (10.2.4.0)
execjs
aws-eventstream (1.1.1)
aws-partitions (1.436.0)
aws-sdk-core (3.113.0)
aws-partitions (1.452.0)
aws-sdk-core (3.114.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.239.0)
aws-sigv4 (~> 1.1)
......@@ -147,6 +132,8 @@ GEM
factory_bot_rails (6.1.0)
factory_bot (~> 6.1.0)
railties (>= 5.0.0)
faker (2.17.0)
i18n (>= 1.6, < 2)
ffi (1.15.0)
generator_spec (0.9.4)
activesupport (>= 3.0.0)
......@@ -154,12 +141,14 @@ GEM
globalid (0.4.2)
activesupport (>= 4.2.0)
hashdiff (1.0.1)
hcaptcha (7.1.0)
json
health_check (3.0.0)
railties (>= 5.0)
httparty (0.18.1)
mime-types (~> 3.0)
multi_xml (>= 0.5.2)
i18n (1.8.9)
i18n (1.8.10)
concurrent-ruby (~> 1.0)
ibsciss-middleware (0.4.2)
jmespath (1.4.0)
......@@ -171,7 +160,7 @@ GEM
jsonapi-renderer (0.2.2)
jwt (2.2.2)
libv8 (8.4.255.0)
listen (3.5.0)
listen (3.5.1)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
lograge (0.11.2)
......@@ -179,22 +168,18 @@ GEM
activesupport (>= 4)
railties (>= 4)
request_store (~> 1.0)
loofah (2.9.0)
loofah (2.9.1)
crass (~> 1.0.2)
nokogiri (>= 1.5.9)
mail (2.7.1)
mini_mime (>= 0.1.1)
marcel (0.3.3)
mimemagic (~> 0.3.2)
marcel (1.0.1)
method_source (1.0.0)
mime-types (3.3.1)
mime-types-data (~> 3.2015)
mime-types-data (3.2021.0225)
mimemagic (0.3.10)
nokogiri (~> 1)
rake
mini_mime (1.0.3)
mini_portile2 (2.5.0)
mini_portile2 (2.5.1)
mini_racer (0.3.1)
libv8 (~> 8.4.255)
minitest (5.14.4)
......@@ -213,7 +198,7 @@ GEM
activesupport
bunny
nio4r (2.5.7)
nokogiri (1.11.2)
nokogiri (1.11.3)
mini_portile2 (~> 2.5.0)
racc (~> 1.4)
pg (1.2.3)
......@@ -233,20 +218,20 @@ GEM
rack (>= 2.0.0)
rack-test (1.1.0)
rack (>= 1.0, < 3)
rails (6.1.3)
actioncable (= 6.1.3)
actionmailbox (= 6.1.3)
actionmailer (= 6.1.3)
actionpack (= 6.1.3)
actiontext (= 6.1.3)
actionview (= 6.1.3)
activejob (= 6.1.3)
activemodel (= 6.1.3)
activerecord (= 6.1.3)
activestorage (= 6.1.3)
activesupport (= 6.1.3)
rails (6.1.3.2)
actioncable (= 6.1.3.2)
actionmailbox (= 6.1.3.2)
actionmailer (= 6.1.3.2)
actionpack (= 6.1.3.2)
actiontext (= 6.1.3.2)
actionview (= 6.1.3.2)
activejob (= 6.1.3.2)
activemodel (= 6.1.3.2)
activerecord (= 6.1.3.2)
activestorage (= 6.1.3.2)
activesupport (= 6.1.3.2)
bundler (>= 1.15.0)
railties (= 6.1.3)
railties (= 6.1.3.2)
sprockets-rails (>= 2.0.0)
rails-controller-testing (1.0.5)
actionpack (>= 5.0.1.rc1)
......@@ -257,9 +242,9 @@ GEM
nokogiri (>= 1.6)
rails-html-sanitizer (1.3.0)
loofah (~> 2.3)
railties (6.1.3)
actionpack (= 6.1.3)
activesupport (= 6.1.3)
railties (6.1.3.2)
actionpack (= 6.1.3.2)
activesupport (= 6.1.3.2)
method_source
rake (>= 0.8.7)
thor (~> 1.0)
......@@ -286,11 +271,11 @@ GEM
redis (>= 4, < 5)
request_store (1.5.0)
rack (>= 1.4)
rexml (3.2.4)
rqrcode (1.2.0)
rexml (3.2.5)
rqrcode (2.0.0)
chunky_png (~> 1.0)
rqrcode_core (~> 0.2)
rqrcode_core (0.2.0)
rqrcode_core (~> 1.0)
rqrcode_core (1.0.0)
rqrcode_png (0.1.5)
chunky_png
rqrcode
......@@ -311,7 +296,7 @@ GEM
rspec-mocks (~> 3.10)
rspec-support (~> 3.10)
rspec-support (3.10.2)
ruby-mailchecker (4.0.6)
ruby-mailchecker (4.0.7)
sass (3.7.4)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
......@@ -341,7 +326,7 @@ GEM
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.12.3)
simplecov_json_formatter (0.1.2)
simplecov_json_formatter (0.1.3)
sneakers (2.12.0)
bunny (~> 2.14)
concurrent-ruby (~> 1.0)
......@@ -402,8 +387,8 @@ DEPENDENCIES
discard (= 1.2.0)
dotenv-rails (= 2.7.6)
factory_bot_rails (= 6.1.0)
faker!
hcaptcha!
faker (= 2.17.0)
hcaptcha (= 7.1.0)
health_check (= 3.0.0)
httparty (= 0.18.1)
jquery-rails (= 4.4.0)
......@@ -420,26 +405,25 @@ DEPENDENCIES
pundit-matchers (= 1.6.0)
rack-attack (= 6.5.0)
rack-cors (= 1.1.1)
rails (= 6.1.3)
rails (= 6.1.3.2)
rails-controller-testing (= 1.0.5)
redis-rails (= 5.0.2)
rqrcode_png (= 0.1.5)
rspec-rails (= 4.1.2)
ruby-mailchecker (= 4.0.6)
ruby-mailchecker (= 4.0.7)
sass-rails (= 5.1.0)
shoulda-matchers (= 4.5.1)
simplecov (= 0.21.2)
sneakers (= 2.12.0)
spring-watcher-listen (= 2.0.1)
turbolinks (= 5.2.1)
tzinfo-data
uglifier (= 4.2.0)
useragent (= 0.16.10)
web-console (= 4.1.0)
webmock (= 3.12.2)
RUBY VERSION
ruby 2.7.1p83
ruby 2.7.2p137
BUNDLED WITH
2.1.4
<!DOCTYPE html>
<html>
<head>
<meta charset='UTF-8' />
<title>RuboCop Inspection Report</title>
<style>
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
body, html {
font-size: 62.5%;
}
body {
background-color: #ecedf0;
font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
margin: 0;
}
code {
font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 85%;
}
#header {
background: #f9f9f9;
color: #333;
border-bottom: 3px solid #ccc;
height: 50px;
padding: 0;
}
#header .logo {
float: left;
margin: 5px 12px 7px 20px;
width: 38px;
height: 38px;
}
#header .title {
display: inline-block;
float: left;
height: 50px;
font-size: 2.4rem;
letter-spacing: normal;
line-height: 50px;
margin: 0;
}
.information, #offenses {
width: 100%;
padding: 20px;
color: #333;
}
#offenses {
padding: 0 20px;
}
.information .infobox {
border-left: 3px solid;
border-radius: 4px;
background-color: #fff;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
padding: 15px;
border-color: #0088cc;
font-size: 1.4rem;
}
.information .infobox .info-title {
font-size: 1.8rem;
line-height: 2.2rem;
margin: 0 0 0.5em;
}
.information .offenses-list li {
line-height: 1.8rem
}
.information .offenses-list {
padding-left: 20px;
margin-bottom: 0;
}
#offenses .offense-box {
border-radius: 4px;
margin-bottom: 20px;
background-color: #fff;
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.fixed .box-title {
position: fixed;
top: 0;
z-index: 10;
width: 100%;
}
.box-title-placeholder {
display: none;
}
.fixed .box-title-placeholder {
display: block;
}
#offenses .offense-box .box-title h3, #offenses .offense-box .box-title-placeholder h3 {
color: #33353f;
background-color: #f6f6f6;
font-size: 2rem;
line-height: 2rem;
display: block;
padding: 15px;
border-radius: 5px;
margin: 0;
}
#offenses .offense-box .offense-reports {
padding: 0 15px;
}
#offenses .offense-box .offense-reports .report {
border-bottom: 1px dotted #ddd;
padding: 15px 0px;
position: relative;
font-size: 1.3rem;
}
#offenses .offense-box .offense-reports .report:last-child {
border-bottom: none;
}
#offenses .offense-box .offense-reports .report pre code {
display: block;
background: #000;
color: #fff;
padding: 10px 15px;
border-radius: 5px;
line-height: 1.6rem;
}
#offenses .offense-box .offense-reports .report .location {
font-weight: bold;
}
#offenses .offense-box .offense-reports .report .message code {
padding: 0.3em;
background-color: rgba(0,0,0,0.07);
border-radius: 3px;
}
.severity {
text-transform: capitalize;
font-weight: bold;
}
.highlight {
padding: 2px;
border-radius: 2px;
font-weight: bold;
}
.severity.refactor {
color: rgba(237, 156, 40, 1.0);
}
.highlight.refactor {
background-color: rgba(237, 156, 40, 0.6);
border: 1px solid rgba(237, 156, 40, 0.4);
}
.severity.convention {
color: rgba(237, 156, 40, 1.0);
}
.highlight.convention {
background-color: rgba(237, 156, 40, 0.6);
border: 1px solid rgba(237, 156, 40, 0.4);
}
.severity.warning {
color: rgba(150, 40, 239, 1.0);
}
.highlight.warning {
background-color: rgba(150, 40, 239, 0.6);
border: 1px solid rgba(150, 40, 239, 0.4);
}
.severity.error {
color: rgba(210, 50, 45, 1.0);
}
.highlight.error {
background-color: rgba(210, 50, 45, 0.6);
border: 1px solid rgba(210, 50, 45, 0.4);
}
.severity.fatal {
color: rgba(210, 50, 45, 1.0);
}
.highlight.fatal {
background-color: rgba(210, 50, 45, 0.6);
border: 1px solid rgba(210, 50, 45, 0.4);
}
footer {
margin-bottom: 20px;
margin-right: 20px;
font-size: 1.3rem;
color: #777;
text-align: right;
}
.extra-code {
color: #ED9C28
}
</style>
<script>
(function() {
// floating headers. requires classList support.
if (!('classList' in document.createElement("_"))) return;
var loaded = false,
boxes,
boxPositions;
window.onload = function() {
var scrollY = window.scrollY;
boxes = document.querySelectorAll('.offense-box');
boxPositions = [];
for (var i = 0; i < boxes.length; i++)
// need to add scrollY because the page might be somewhere other than the top when loaded.
boxPositions[i] = boxes[i].getBoundingClientRect().top + scrollY;
loaded = true;
};
window.onscroll = function() {
if (!loaded) return;
var i,
idx,
scrollY = window.scrollY;
for (i = 0; i < boxPositions.length; i++) {
if (scrollY <= boxPositions[i] - 1) {
idx = i;
break;
}
}
if (typeof idx == 'undefined') idx = boxes.length;
if (idx > 0)
boxes[idx - 1].classList.add('fixed');
for (i = 0; i < boxes.length; i++) {
if (i < idx) continue;
boxes[i].classList.remove('fixed');
}
};
})();
</script>
</head>
<body>
<div id="header">
<img class="logo" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEwAAABMCAYAAADHl1ErAAAKQWlDQ1BJQ0Mg
UHJvZmlsZQAASA2dlndUU9kWh8+9N73QEiIgJfQaegkg0jtIFQRRiUmAUAKG
hCZ2RAVGFBEpVmRUwAFHhyJjRRQLg4Ji1wnyEFDGwVFEReXdjGsJ7601896a
/cdZ39nnt9fZZ+9917oAUPyCBMJ0WAGANKFYFO7rwVwSE8vE9wIYEAEOWAHA
4WZmBEf4RALU/L09mZmoSMaz9u4ugGS72yy/UCZz1v9/kSI3QyQGAApF1TY8
fiYX5QKUU7PFGTL/BMr0lSkyhjEyFqEJoqwi48SvbPan5iu7yZiXJuShGlnO
Gbw0noy7UN6aJeGjjAShXJgl4GejfAdlvVRJmgDl9yjT0/icTAAwFJlfzOcm
oWyJMkUUGe6J8gIACJTEObxyDov5OWieAHimZ+SKBIlJYqYR15hp5ejIZvrx
s1P5YjErlMNN4Yh4TM/0tAyOMBeAr2+WRQElWW2ZaJHtrRzt7VnW5mj5v9nf
Hn5T/T3IevtV8Sbsz55BjJ5Z32zsrC+9FgD2JFqbHbO+lVUAtG0GQOXhrE/v
IADyBQC03pzzHoZsXpLE4gwnC4vs7GxzAZ9rLivoN/ufgm/Kv4Y595nL7vtW
O6YXP4EjSRUzZUXlpqemS0TMzAwOl89k/fcQ/+PAOWnNycMsnJ/AF/GF6FVR
6JQJhIlou4U8gViQLmQKhH/V4X8YNicHGX6daxRodV8AfYU5ULhJB8hvPQBD
IwMkbj96An3rWxAxCsi+vGitka9zjzJ6/uf6Hwtcim7hTEEiU+b2DI9kciWi
LBmj34RswQISkAd0oAo0gS4wAixgDRyAM3AD3iAAhIBIEAOWAy5IAmlABLJB
PtgACkEx2AF2g2pwANSBetAEToI2cAZcBFfADXALDIBHQAqGwUswAd6BaQiC
8BAVokGqkBakD5lC1hAbWgh5Q0FQOBQDxUOJkBCSQPnQJqgYKoOqoUNQPfQj
dBq6CF2D+qAH0CA0Bv0BfYQRmALTYQ3YALaA2bA7HAhHwsvgRHgVnAcXwNvh
SrgWPg63whfhG/AALIVfwpMIQMgIA9FGWAgb8URCkFgkAREha5EipAKpRZqQ
DqQbuY1IkXHkAwaHoWGYGBbGGeOHWYzhYlZh1mJKMNWYY5hWTBfmNmYQM4H5
gqVi1bGmWCesP3YJNhGbjS3EVmCPYFuwl7ED2GHsOxwOx8AZ4hxwfrgYXDJu
Na4Etw/XjLuA68MN4SbxeLwq3hTvgg/Bc/BifCG+Cn8cfx7fjx/GvyeQCVoE
a4IPIZYgJGwkVBAaCOcI/YQRwjRRgahPdCKGEHnEXGIpsY7YQbxJHCZOkxRJ
hiQXUiQpmbSBVElqIl0mPSa9IZPJOmRHchhZQF5PriSfIF8lD5I/UJQoJhRP
ShxFQtlOOUq5QHlAeUOlUg2obtRYqpi6nVpPvUR9Sn0vR5Mzl/OX48mtk6uR
a5Xrl3slT5TXl3eXXy6fJ18hf0r+pvy4AlHBQMFTgaOwVqFG4bTCPYVJRZqi
lWKIYppiiWKD4jXFUSW8koGStxJPqUDpsNIlpSEaQtOledK4tE20Otpl2jAd
Rzek+9OT6cX0H+i99AllJWVb5SjlHOUa5bPKUgbCMGD4M1IZpYyTjLuMj/M0
5rnP48/bNq9pXv+8KZX5Km4qfJUilWaVAZWPqkxVb9UU1Z2qbapP1DBqJmph
atlq+9Uuq43Pp893ns+dXzT/5PyH6rC6iXq4+mr1w+o96pMamhq+GhkaVRqX
NMY1GZpumsma5ZrnNMe0aFoLtQRa5VrntV4wlZnuzFRmJbOLOaGtru2nLdE+
pN2rPa1jqLNYZ6NOs84TXZIuWzdBt1y3U3dCT0svWC9fr1HvoT5Rn62fpL9H
v1t/ysDQINpgi0GbwaihiqG/YZ5ho+FjI6qRq9Eqo1qjO8Y4Y7ZxivE+41sm
sImdSZJJjclNU9jU3lRgus+0zwxr5mgmNKs1u8eisNxZWaxG1qA5wzzIfKN5
m/krCz2LWIudFt0WXyztLFMt6ywfWSlZBVhttOqw+sPaxJprXWN9x4Zq42Oz
zqbd5rWtqS3fdr/tfTuaXbDdFrtOu8/2DvYi+yb7MQc9h3iHvQ732HR2KLuE
fdUR6+jhuM7xjOMHJ3snsdNJp9+dWc4pzg3OowsMF/AX1C0YctFx4bgccpEu
ZC6MX3hwodRV25XjWuv6zE3Xjed2xG3E3dg92f24+ysPSw+RR4vHlKeT5xrP
C16Il69XkVevt5L3Yu9q76c+Oj6JPo0+E752vqt9L/hh/QL9dvrd89fw5/rX
+08EOASsCegKpARGBFYHPgsyCRIFdQTDwQHBu4IfL9JfJFzUFgJC/EN2hTwJ
NQxdFfpzGC4sNKwm7Hm4VXh+eHcELWJFREPEu0iPyNLIR4uNFksWd0bJR8VF
1UdNRXtFl0VLl1gsWbPkRoxajCCmPRYfGxV7JHZyqffS3UuH4+ziCuPuLjNc
lrPs2nK15anLz66QX8FZcSoeGx8d3xD/iRPCqeVMrvRfuXflBNeTu4f7kufG
K+eN8V34ZfyRBJeEsoTRRJfEXYljSa5JFUnjAk9BteB1sl/ygeSplJCUoykz
qdGpzWmEtPi000IlYYqwK10zPSe9L8M0ozBDuspp1e5VE6JA0ZFMKHNZZruY
jv5M9UiMJJslg1kLs2qy3mdHZZ/KUcwR5vTkmuRuyx3J88n7fjVmNXd1Z752
/ob8wTXuaw6thdauXNu5Tnddwbrh9b7rj20gbUjZ8MtGy41lG99uit7UUaBR
sL5gaLPv5sZCuUJR4b0tzlsObMVsFWzt3WazrWrblyJe0fViy+KK4k8l3JLr
31l9V/ndzPaE7b2l9qX7d+B2CHfc3em681iZYlle2dCu4F2t5czyovK3u1fs
vlZhW3FgD2mPZI+0MqiyvUqvakfVp+qk6oEaj5rmvep7t+2d2sfb17/fbX/T
AY0DxQc+HhQcvH/I91BrrUFtxWHc4azDz+ui6rq/Z39ff0TtSPGRz0eFR6XH
wo911TvU1zeoN5Q2wo2SxrHjccdv/eD1Q3sTq+lQM6O5+AQ4ITnx4sf4H++e
DDzZeYp9qukn/Z/2ttBailqh1tzWibakNml7THvf6YDTnR3OHS0/m/989Iz2
mZqzymdLz5HOFZybOZ93fvJCxoXxi4kXhzpXdD66tOTSna6wrt7LgZevXvG5
cqnbvfv8VZerZ645XTt9nX297Yb9jdYeu56WX+x+aem172296XCz/ZbjrY6+
BX3n+l37L972un3ljv+dGwOLBvruLr57/17cPel93v3RB6kPXj/Mejj9aP1j
7OOiJwpPKp6qP6391fjXZqm99Oyg12DPs4hnj4a4Qy//lfmvT8MFz6nPK0a0
RupHrUfPjPmM3Xqx9MXwy4yX0+OFvyn+tveV0auffnf7vWdiycTwa9HrmT9K
3qi+OfrW9m3nZOjk03dp76anit6rvj/2gf2h+2P0x5Hp7E/4T5WfjT93fAn8
8ngmbWbm3/eE8/syOll+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEJGlUWHRY
TUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9i
ZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRm
OlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjIt
cmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjph
Ym91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRv
YmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0
cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICAgICAgICAgIHhtbG5z
OmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAg
ICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAv
Ij4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MTwvdGlmZjpSZXNv
bHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlm
ZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8
L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9u
PjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0
aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhl
bFhEaW1lbnNpb24+NzY8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAg
ICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAg
ICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjc2PC9leGlmOlBpeGVsWURpbWVu
c2lvbj4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6
U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1v
ZGlmeURhdGU+MjAxNDowOToyMyAyMjowOToxNDwveG1wOk1vZGlmeURhdGU+
CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjIuMTwv
eG1wOkNyZWF0b3JUb29sPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAg
PC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KkpvroQAABkNJREFUeAHtm0uIHFUY
hWveM8ZpHN/RYCIS34mKGGSMMmLA6CKILmQwBOJCEcwqKzELceVWN+IyIgQM
4gt84SMqBpNBkBiJGkEFMRFNMmSSzEzm5fmG7qEpbt1bt7q6XuOBQ3Xfuvf/
z/nr3qrq6u6OIH9cLAlrxGvr20e0vVsE34rviL+Lv9W3J7XNDR05Zb5deR8U
7xfXiVeKnaIN89p5XPxB/EL8WPxerCxqcrZd3CdOiwstkhj7RGISuzLol5On
xSNiq0WKGk9scpCr1LhP6veLUUbTbicXOUuHHil+QZwS0y6KKx45yY2GUuAy
qXxXdBlr9340oKXQWC11Y2K7ixE3PlrQVEhcI1WHxLhmsuqHJrQVCtx8cpOZ
VRF886ANjYVAl1TsFX1NZN0fjWjNHTulIGvzSfOhNVfcpuwTYlIDWY9DK5pz
AdP7EzFr063mQ3MuS/PREharUWy0Zwruog+IDQFl26I9008Cm0tcrMbBxYM3
XM+gogI+GbWjRO2ZebhKRTklNo5UWbd4wIsXksywEWW4yCtLMTvjYcRXWpKC
bfJNUuD+3l58C9Yt83cWuAC+0vCCp7aBT/3nxbKet8K68eL1JMO3unzLtFtk
WwVQwKp4Kebx8KnurbLwjLhBHCimHW9VkxpxUHxVPOw92jJgi/bxjXP4HFCV
93jDYypYrSj/iFUpTpQPPK4RrYhzW7FVES61RqnGTjw+4bISp2B3uIJUaL/T
a5yC9VaoIC4rTq9xCjbrylKh/U6vroLdpGKsr1BBXFbwiudE4NP8j2LUVaWq
7XiOfBpjm2HbNPBmcbkBz3g3wnanf1ojBo2j6o1DnZ3B6IpasL6nb/Hng0y5
IgKT8+Khmelgz9nTwal53lnB13E1Uw9bwaz+r+jqCvZcsjIY7hsIZhdXrSl8
sdq69Tl7//RkMHriWPD33JxLnLE2vk8rlpLsGBwKhvsHggn30Voak/+LhUXN
aN81/m8iObZzWGRABg339QfTC9ZJGDk+zx1oRnsi4xKeaBxlmlJi45zNsxox
cqMZ7UkPdeKCvX3uTNCrkpWpaGhFM9qTFizxOWy3rjZru3uD7RfWgoGOcpRt
UjPrlYnxAO1JYXN6QEF5WGgFtxQ39vQGXbZI1gjZ7JzTlPpp5vzirUWMjGPq
4/QejjOiBmbuciTevcH57TWRu7zlUjS84jnRuV3jFr+z+1Lb5VKwr+qe8W6E
q5I87jhpHFnNxhOyZX3E4yoYZcnl13o5HQ+n1zgFS34Nzsl1C2mdXuMU7PMW
BJRtaCpeecTDfUnVT/x4tD7O8jn616nz1xUuGt7w6ITP/Xmfoj0s8n/sFSIz
Low4Szw8Jov33F+FgfezIn+r+UDkH77/I+0K+MywRm7+0P6hGF7vM2rbIh4V
i4S1EvOeGP6ZOY+hHxKPi7GR5GkFYxDBsmwGS5RlWzSg6QYxPDlYjt7+vQfU
q2G6G6bNdF6rD1naPKZXHNk0wEx/yxEITWgLzzCTB0eoBBV2RrR3eEC7Xxcv
sHeLvXdUPcfFz2KPaLFjllc1foD7hphWsbBOLGISOxMkXZJJxLEMuWAALuEY
PcebBKBQW0XOT8Qk9ndiIbFKqlgGnBuayS+SbxGj0KUdz4sUaUdUJ492YhCL
mMSOAppMv/zGA17ajqQFawhj+YSvWI19PltixFmKqRYsyyXZKEZaS4fZnVas
hjbnNo+ChUVtVMP1omvWUaCfxW/EUuFqqTX9m21W7es8nTyl/oxrPhfaXtOX
MT5AkykHHvDSdgwpw1+iyRgfjeLiHnU8I5ri2NoYw9i4QJMpHh7w0nZw7zYm
mkS8GTP7SvX7JSKGKW64jbHEiIO96hQez3s8ZHYf+nKECKb+NtEGzpvviyYT
Pm3EcJ2D0WJajuTBQ2bYqEz8wMpkcErtu8TLxTC4X3pJNI1L0kYs0z0YudGA
FlNctOPBG64rU1RARH4kborqoPZj4mGx8cUCuVaJG8Q0cVDB/hQpDKiJ/C/K
tmQ/1f7NovNXdeqTGu5SJB6RmI5gkdvQjPZc8KyyFrk4Jm1ozhXPKTvPzE3i
itSGRrQWAo9LxR9ikQrUrAVtaCwUOMm+KB4Vm8Xm+RotaLJdALQ7Xwwq/b3i
TvFXMeuCkZPcaEBLqvgPBhCuiZo8+sAAAAAASUVORK5CYII=
" alt="">
<h1 class="title">RuboCop Inspection Report</h1>
</div>
<div class="information">
<div class="infobox">
<div class="total">
1 file inspected,
1 offense detected:
</div>
<ul class="offenses-list">
<li>
<a href="#offense_Gemfile">
Gemfile - 1 offense
</a>
</li>
</ul>
</div>
</div>
<div id="offenses">
<div class="offense-box" id="offense_Gemfile">
<div class="box-title-placeholder"><h3>&nbsp;</h3></div>
<div class="box-title"><h3>Gemfile - 1 offense</h3></div>
<div class="offense-reports">
<div class="report">
<div class="meta">
<span class="location">Line #1</span>
<span class="severity convention">convention:</span>
<span class="message">Style/FrozenStringLiteralComment: Missing frozen string literal comment.</span>
</div>
<pre><code><span class="highlight convention">s</span>ource &#39;https://rubygems.org&#39;</code></pre>
</div>
</div>
</div>
</div>
<footer>
Generated by <a href="https://github.com/rubocop/rubocop">RuboCop</a>
<span class="version">1.11.0</span>
</footer>
</body>
</html>