Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
3c23892
Update Ruby to version 3.4.9
depfu[bot] Mar 19, 2026
2bf6011
Update json to version 2.19.2
depfu[bot] Mar 19, 2026
ac34f56
Merge pull request #660 from sanger/depfu/update/json-2.19.2
depfu[bot] Mar 19, 2026
f4ae240
Update oj to version 3.16.16
depfu[bot] Mar 19, 2026
f4cd5e2
Merge pull request #662 from sanger/depfu/update/oj-3.16.16
depfu[bot] Mar 19, 2026
4d62fce
Update mocha to version 3.1.0
depfu[bot] Mar 21, 2026
dcae81f
Merge pull request #663 from sanger/depfu/update/mocha-3.1.0
depfu[bot] Mar 21, 2026
efaa656
Update rubocop to version 1.85.1
depfu[bot] Mar 23, 2026
8d09c0d
style: remove empty classes
StephenHulme Mar 23, 2026
ae08313
style: update rubocop config and todo
StephenHulme Mar 23, 2026
eba77c2
Merge pull request #664 from sanger/depfu/update/rubocop-1.85.1
depfu[bot] Mar 23, 2026
17f7704
fix: add request logger middleware
StephenHulme Mar 24, 2026
59aea60
style: lint
StephenHulme Mar 24, 2026
a966639
fix: add inspired favicon
StephenHulme Mar 24, 2026
1802d4b
Merge pull request #669 from sanger/sh51/add-inspired-favicon
StephenHulme Mar 24, 2026
27c1b4b
Merge pull request #667 from sanger/sh51/add-request-logger-middleware
StephenHulme Mar 24, 2026
dbba25e
Update mcp to version 0.9.2
depfu[bot] Mar 27, 2026
434526a
Merge pull request #671 from sanger/depfu/update/mcp-0.9.2
depfu[bot] Mar 27, 2026
e733aa7
Merge pull request #659 from sanger/depfu/engine/ruby-3.4.9
StephenHulme Mar 30, 2026
8ef110b
Update rubocop to version 1.86.0
depfu[bot] Mar 30, 2026
682718a
Merge pull request #672 from sanger/depfu/update/rubocop-1.86.0
depfu[bot] Mar 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ AllCops:
- vendor/**/*
NewCops: enable

Layout/IndentationWidth:
EnforcedStyleAlignWith: relative_to_receiver

Rails/InverseOf:
Enabled: false

Expand Down
46 changes: 13 additions & 33 deletions .rubocop_todo.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This configuration was generated by
# `rubocop --auto-gen-config --no-exclude-limit`
# on 2025-08-27 14:16:51 UTC using RuboCop version 1.79.2.
# on 2026-03-23 09:57:06 UTC using RuboCop version 1.85.1.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
Expand All @@ -21,7 +21,7 @@ Layout/ExtraSpacing:
Exclude:
- 'test/controllers/users_controller_test.rb'

# Offense count: 31
# Offense count: 32
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle, IndentationWidth.
# SupportedStyles: special_inside_parentheses, consistent, align_braces
Expand Down Expand Up @@ -49,13 +49,6 @@ Lint/EmptyBlock:
- 'Gemfile'
- 'config/routes.rb'

# Offense count: 2
# Configuration parameters: AllowComments.
Lint/EmptyClass:
Exclude:
- 'app/models/presenter.rb'
- 'test/test_helper.rb'

# Offense count: 3
# Configuration parameters: AllowedParentClasses.
Lint/MissingSuper:
Expand All @@ -71,7 +64,7 @@ Lint/ParenthesesAsGroupedExpression:

# Offense count: 5
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AutoCorrect, IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
# Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
Lint/UnusedBlockArgument:
Exclude:
- 'app/controllers/qc_assets_controller.rb'
Expand All @@ -81,22 +74,20 @@ Lint/UnusedBlockArgument:

# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AutoCorrect, AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods, NotImplementedExceptions.
# Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods, NotImplementedExceptions.
# NotImplementedExceptions: NotImplementedError
Lint/UnusedMethodArgument:
Exclude:
- 'app/helpers/application_helper.rb'
- 'app/models/gatekeeper/robot.rb'
- 'app/models/presenter/lot.rb'

# Offense count: 4
# Offense count: 3
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: AutoCorrect.
Lint/UselessAssignment:
Exclude:
- 'app/helpers/application_helper.rb'
- 'app/models/gatekeeper/robot.rb'
- 'lib/tasks/config.rake'

# Offense count: 21
# Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes, Max.
Expand Down Expand Up @@ -214,8 +205,6 @@ Rails/Delegate:
- 'test/mock_api.rb'

# Offense count: 5
# Configuration parameters: Include.
# Include: **/app/controllers/**/*.rb, **/app/mailers/**/*.rb
Rails/LexicallyScopedActionFilter:
Exclude:
- 'app/controllers/assets_controller.rb'
Expand Down Expand Up @@ -271,21 +260,6 @@ Style/IfUnlessModifier:
- 'lib/tasks/config.rake'
- 'test/mock_api.rb'

# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: EnforcedStyle.
# SupportedStyles: line_count_dependent, lambda, literal
Style/Lambda:
Exclude:
- 'lib/tasks/config.rake'

# Offense count: 1
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: .
# SupportedStyles: call, braces
Style/LambdaCall:
EnforcedStyle: braces

# Offense count: 5
Style/MissingRespondToMissing:
Exclude:
Expand Down Expand Up @@ -344,6 +318,12 @@ Style/PreferredHashMethods:
- 'app/models/qc_asset_creator/plate_conversion.rb'
- 'test/mock_api.rb'

# Offense count: 1
# This cop supports unsafe autocorrection (--autocorrect-all).
Style/ReduceToHash:
Exclude:
- 'app/models/qc_asset_creator/multiple_tag2_conversion.rb'

# Offense count: 4
# This cop supports safe autocorrection (--autocorrect).
Style/StderrPuts:
Expand Down Expand Up @@ -391,9 +371,9 @@ Style/ZeroLengthPredicate:
- 'app/models/gatekeeper/plate.rb'
- 'app/models/gatekeeper/tube.rb'

# Offense count: 78
# Offense count: 76
# This cop supports safe autocorrection (--autocorrect).
# Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, IgnoreCopDirectives, AllowedPatterns, SplitStrings.
# Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
# URISchemes: http, https
Layout/LineLength:
Exclude:
Expand Down
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.4.8
3.4.9
20 changes: 10 additions & 10 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -88,14 +88,14 @@ GEM
mutex_m
securerandom (>= 0.3)
tzinfo (~> 2.0)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
addressable (2.8.9)
public_suffix (>= 2.0.2, < 8.0)
ast (2.4.3)
autoprefixer-rails (10.4.7.0)
execjs (~> 2)
base64 (0.3.0)
benchmark (0.5.0)
bigdecimal (4.0.1)
bigdecimal (4.1.0)
bootsnap (1.23.0)
msgpack (~> 1.2)
bootstrap-datepicker-rails (1.10.0.1)
Expand Down Expand Up @@ -152,7 +152,7 @@ GEM
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (2.18.1)
json (2.19.3)
json_api_client (1.23.0)
activemodel (>= 6.0.0)
activesupport (>= 6.0.0)
Expand Down Expand Up @@ -191,7 +191,7 @@ GEM
minitest-rails-capybara (0.0.2)
capybara
minitest-rails
mocha (3.0.2)
mocha (3.1.0)
ruby2_keywords (>= 0.0.5)
msgpack (1.8.0)
multi_json (1.15.0)
Expand All @@ -214,12 +214,12 @@ GEM
racc (~> 1.4)
nokogiri (1.19.1-x86_64-linux-gnu)
racc (~> 1.4)
oj (3.16.15)
oj (3.16.16)
bigdecimal (>= 3.0)
ostruct (>= 0.2)
ostruct (0.6.3)
parallel (1.27.0)
parser (3.3.10.1)
parser (3.3.11.1)
ast (~> 2.4.1)
racc
prism (1.9.0)
Expand All @@ -228,7 +228,7 @@ GEM
method_source (~> 1.0)
pry-rails (0.3.11)
pry (>= 0.13.0)
public_suffix (6.0.1)
public_suffix (7.0.5)
puma (7.2.0)
nio4r (~> 2.0)
racc (1.8.1)
Expand Down Expand Up @@ -277,7 +277,7 @@ GEM
roo (2.8.3)
nokogiri (~> 1)
rubyzip (>= 1.3.0, < 3.0.0)
rubocop (1.84.1)
rubocop (1.86.0)
json (~> 2.3)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.1.0)
Expand All @@ -288,7 +288,7 @@ GEM
rubocop-ast (>= 1.49.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 4.0)
rubocop-ast (1.49.0)
rubocop-ast (1.49.1)
parser (>= 3.3.7.2)
prism (~> 1.7)
rubocop-rails (2.34.3)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[![Ruby Tests](https://github.com/sanger/gatekeeper/actions/workflows/ruby_test.yml/badge.svg)](https://github.com/sanger/gatekeeper/actions/workflows/ruby_test.yml)
[![codecov](https://codecov.io/gh/sanger/gatekeeper/graph/badge.svg?token=VbxDtCNFAh)](https://codecov.io/gh/sanger/gatekeeper)

# Gatekeeper
# <img src="public/images/gate-kk.svg" alt="Reflected K Logo" height="20pt" /> Gatekeeper

Gatekeeper is used to track the production and validation of batches of tag plates for sequencing.
It is designed to interface with the [Sequencescape](https://github.com/sanger/sequencescape) LIMS.
Expand Down
1 change: 1 addition & 0 deletions app/assets/config/manifest.js
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
//= link application.css
//= link application.js
//= link gate-kk.svg
63 changes: 63 additions & 0 deletions app/assets/images/gate-kk.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions app/assets/stylesheets/gatekeeper.scss
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,12 @@ h1 {
padding: 0.5em;
}

.logo {
margin-bottom: -11px;
margin-right: -11px;
vertical-align: baseline;
}

.gk-section {
text-align: justify;
}
Expand Down
7 changes: 0 additions & 7 deletions app/models/presenter.rb

This file was deleted.

5 changes: 4 additions & 1 deletion app/views/pages/index.erb
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
<div id='gk-index-page' class='gk-page'>
<h1 id='gk-index-title' class='gk-page-title'><%= Gatekeeper::Application.config.name %></h1>
<h1 id='gk-index-title' class='gk-page-title'>
<%= image_tag 'gate-kk.svg', alt: 'Reflected K Logo', class: 'logo'%>
<%= Gatekeeper::Application.config.name %>
</h1>
<div class="col-sm-6">
<div id='gk-index-menu' class='panel panel-primary'>
<div class="panel-heading">Register Lots</div>
Expand Down
2 changes: 1 addition & 1 deletion config/application.rb
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class Application < Rails::Application
config.i18n.fallbacks = [I18n.default_locale]

# Ensures precompiling is faster by not loading the application
config.assets.initialize_on_precompile = false
config.assets.initialize_on_precompile = true
config.disable_animations = false

config.destroyable_states = %w[pending available]
Expand Down
11 changes: 11 additions & 0 deletions config/initializers/request_logger.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

require_relative '../../lib/middleware/request_logger'

Rails.application.configure do
# Insert RequestLogger near the top, before Rails::Rack::Logger
config.middleware.insert_before(Rails::Rack::Logger, Middleware::RequestLogger)
end

# Add backtrace silencers for middleware so that we don't see it in backtraces.
Rails.backtrace_cleaner.add_silencer { |line| line.include?('request_logger') }
Loading
Loading