Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ variables:
FF_SCRIPT_SECTIONS: 'true'
JUNIT_OUTPUT: 'true'
ECR_REGISTRY: '${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com'
IDP_CI_SHA: 'sha256:37766e5b4aaeaad72dc8d18aa73236558ae5abd478073f5005783c44d6d6e87e'
IDP_CI_SHA: 'sha256:96e9cfbcedcc8d2c6736d736ebc6462bbd2fed3250f513facb632f6f87c0c862'
PKI_IMAGE_TAG: 'main'
DASHBOARD_IMAGE_TAG: 'main'
APPLICATION_MANIFEST: dockerfiles/application.yaml
Expand Down
2 changes: 1 addition & 1 deletion .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ AllCops:
- 'tmp/**/*'
- 'vendor/**/*'
- 'public/**/*'
TargetRubyVersion: 3.3.0
TargetRubyVersion: 3.4
TargetRailsVersion: 8.0
UseCache: true
DisabledByDefault: true
Expand Down
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.3.6
3.4.1
3 changes: 1 addition & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,9 @@ group :development, :test do
gem 'knapsack'
gem 'listen'
gem 'net-http-persistent', '~> 4.0.2', require: false
gem 'nokogiri', '~> 1.16.0'
gem 'nokogiri', '~> 1.18.0'
gem 'pg_query', require: false
gem 'pry-byebug'
gem 'pry-doc'
gem 'pry-rails'
gem 'psych'
gem 'rspec', '~> 3.13.0'
Expand Down
24 changes: 10 additions & 14 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ GEM
smart_properties
bigdecimal (3.1.9)
bindata (2.4.15)
bootsnap (1.18.3)
bootsnap (1.18.4)
msgpack (~> 1.2)
brakeman (6.2.2)
racc
Expand Down Expand Up @@ -338,7 +338,7 @@ GEM
net-http (>= 0.5.0)
faraday-retry (2.0.0)
faraday (~> 2.0)
ffi (1.17.0)
ffi (1.17.1)
ffi-compiler (1.3.2)
ffi (>= 1.15.5)
rake
Expand All @@ -358,7 +358,7 @@ GEM
fugit (>= 1.11.0)
railties (>= 6.1.0)
thor (>= 1.0.0)
google-protobuf (4.29.1)
google-protobuf (4.29.3)
bigdecimal
rake (>= 13)
hashdiff (1.1.2)
Expand Down Expand Up @@ -440,7 +440,7 @@ GEM
mini_mime (1.1.5)
mini_portile2 (2.8.8)
minitest (5.25.4)
msgpack (1.7.5)
msgpack (1.8.0)
multiset (0.5.3)
net-http (0.6.0)
uri
Expand All @@ -460,7 +460,7 @@ GEM
net-ssh (6.1.0)
newrelic_rpm (9.7.0)
nio4r (2.7.4)
nokogiri (1.16.8)
nokogiri (1.18.2)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
numbers_and_words (0.11.12)
Expand Down Expand Up @@ -501,12 +501,9 @@ GEM
pry-byebug (3.10.1)
byebug (~> 11.0)
pry (>= 0.13, < 0.15)
pry-doc (1.5.0)
pry (~> 0.11)
yard (~> 0.9.11)
pry-rails (0.3.11)
pry (>= 0.13.0)
psych (5.2.1)
psych (5.2.3)
date
stringio
public_suffix (6.0.1)
Expand Down Expand Up @@ -688,7 +685,7 @@ GEM
simplecov_json_formatter (0.1.4)
simpleidn (0.2.3)
smart_properties (1.17.0)
sqlite3 (2.4.1)
sqlite3 (2.5.0)
mini_portile2 (~> 2.8.0)
stringex (2.8.5)
stringio (3.1.2)
Expand Down Expand Up @@ -820,7 +817,7 @@ DEPENDENCIES
net-http-persistent (~> 4.0.2)
net-sftp
newrelic_rpm (~> 9.0)
nokogiri (~> 1.16.0)
nokogiri (~> 1.18.0)
numbers_and_words (~> 0.11.12)
pg
pg_query
Expand All @@ -830,7 +827,6 @@ DEPENDENCIES
prometheus_exporter
propshaft
pry-byebug
pry-doc
pry-rails
psych
puma (~> 6.0)
Expand Down Expand Up @@ -888,7 +884,7 @@ DEPENDENCIES
zxcvbn (= 0.1.12)

RUBY VERSION
ruby 3.3.6p108
ruby 3.4.1p0

BUNDLED WITH
2.5.23
2.6.3
2 changes: 1 addition & 1 deletion db/schema.rb
Original file line number Diff line number Diff line change
Expand Up @@ -516,7 +516,7 @@
t.boolean "piv_cac_scoped_by_email", default: false, comment: "sensitive=false"
t.boolean "pkce", comment: "sensitive=false"
t.string "push_notification_url", comment: "sensitive=false"
t.jsonb "help_text", default: {"sign_in"=>{}, "sign_up"=>{}, "forgot_password"=>{}}, comment: "sensitive=false"
t.jsonb "help_text", default: {"sign_in" => {}, "sign_up" => {}, "forgot_password" => {}}, comment: "sensitive=false"
t.boolean "allow_prompt_login", default: false, comment: "sensitive=false"
t.boolean "signed_response_message_requested", default: false, comment: "sensitive=false"
t.string "remote_logo_key", comment: "sensitive=false"
Expand Down
2 changes: 1 addition & 1 deletion dockerfiles/idp_ci.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM public.ecr.aws/docker/library/ruby:3.3.6-bullseye
FROM public.ecr.aws/docker/library/ruby:3.4.1-bullseye

ENV NODE_MAJOR 22

Expand Down
10 changes: 5 additions & 5 deletions dockerfiles/idp_deploy.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# avoid having build-essential and the large-files token be in the
# main image.
#########################################################################
FROM public.ecr.aws/docker/library/ruby:3.3.6-slim as builder
FROM public.ecr.aws/docker/library/ruby:3.4.1-slim as builder

# Set environment variables
ENV RAILS_ROOT /app
Expand All @@ -17,7 +17,7 @@ ENV RAILS_LOG_LEVEL debug
ENV BUNDLE_PATH /app/vendor/bundle
ENV YARN_VERSION 1.22.5
ENV NODE_VERSION 22.11.0
ENV BUNDLER_VERSION 2.5.6
ENV BUNDLER_VERSION 2.6.3

# Install dependencies
RUN apt-get update -qq && \
Expand Down Expand Up @@ -140,7 +140,7 @@ RUN openssl req -x509 -sha256 -nodes -newkey rsa:2048 -days 1825 \
#########################################################################
# This is the main image.
#########################################################################
FROM public.ecr.aws/docker/library/ruby:3.3.6-slim as main
FROM public.ecr.aws/docker/library/ruby:3.4.1-slim as main

# Set environment variables
ENV RAILS_ROOT /app
Expand All @@ -150,7 +150,7 @@ ENV RAILS_SERVE_STATIC_FILES true
ENV RAILS_LOG_TO_STDOUT true
ENV RAILS_LOG_LEVEL debug
ENV BUNDLE_PATH /app/vendor/bundle
ENV BUNDLER_VERSION 2.5.6
ENV BUNDLER_VERSION 2.6.3
ENV POSTGRES_SSLMODE prefer
ENV POSTGRES_NAME idp
ENV POSTGRES_HOST postgres
Expand Down Expand Up @@ -228,7 +228,7 @@ COPY --from=builder $RAILS_ROOT/keys/localhost.crt $RAILS_ROOT/keys/
# make everything the proper perms after everything is initialized
RUN chown -R app:app $RAILS_ROOT/tmp && \
chown -R app:app $RAILS_ROOT/log && \
find $RAILS_ROOT -type d | xargs chmod 755
find $RAILS_ROOT -type d | xargs -d '\n' chmod 755

# get rid of suid/sgid binaries
RUN find / -perm /4000 -type f | xargs chmod u-s
Expand Down
4 changes: 2 additions & 2 deletions dockerfiles/idp_review_app.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ruby:3.3.6-slim
FROM ruby:3.4.1-slim

# Set environment variables
ENV RAILS_ROOT /app
Expand All @@ -11,7 +11,7 @@ ENV RAILS_LOG_LEVEL debug
ENV BUNDLE_PATH /usr/local/bundle
ENV YARN_VERSION 1.22.5
ENV NODE_VERSION 22.11.0
ENV BUNDLER_VERSION 2.5.6
ENV BUNDLER_VERSION 2.6.3
ENV POSTGRES_SSLMODE prefer
ENV POSTGRES_NAME idp
ENV POSTGRES_HOST postgres
Expand Down
2 changes: 1 addition & 1 deletion spec/support/fake_analytics.rb
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ def track_event(event, original_attributes = {})
method_name = caller
.grep(/analytics_events\.rb/)
&.first
&.match(/:in `(?<method_name>[^']+)'/)
&.match(/:in '[\w\d]*#(?<method_name>[^']+)'/)
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The caller method returns a different format in 3.4:

- "identity-idp/app/services/analytics_events.rb:4409:in `idv_phone_confirmation_otp_submitted'"
+ "identity-idp/app/services/analytics_events.rb:4409:in 'AnalyticsEvents#idv_phone_confirmation_otp_submitted'"

&.[](:method_name)
&.to_sym

Expand Down
36 changes: 18 additions & 18 deletions spec/support/fake_analytics_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@
Expected that FakeAnalytics would have received event :my_event

Events received:
{:my_other_event=>[{}]}
{my_other_event: [{}]}
MESSAGE
end
end
Expand Down Expand Up @@ -110,7 +110,7 @@
Expected that FakeAnalytics would have received event :my_event once but it was received twice

Events received:
{:my_event=>[{}, {}]}
{my_event: [{}, {}]}
MESSAGE
end
end
Expand All @@ -133,7 +133,7 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event
with {:arg1=>42}
with {arg1: 42}

Events received:
{}
Expand All @@ -148,10 +148,10 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event
with {:arg1=>42}
with {arg1: 42}

Events received:
{:my_other_event=>[{}]}
{my_other_event: [{}]}
MESSAGE
end
end
Expand All @@ -163,8 +163,8 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event
expected: {:arg1=>42}
got: {:arg1=>43}
expected: {arg1: 42}
got: {arg1: 43}

Diff:
@@ -1 +1 @@
Expand All @@ -181,8 +181,8 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event
expected: {:arg1=>42}
got: {:arg1=>42, :arg2=>43}
expected: {arg1: 42}
got: {arg1: 42, arg2: 43}

Diff:
@@ -1,2 +1,3 @@
Expand Down Expand Up @@ -232,7 +232,7 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event once but it was received 0 times
with {:arg1=>42}
with {arg1: 42}

Events received:
{}
Expand All @@ -254,10 +254,10 @@
.to raise_error(RSpec::Expectations::ExpectationNotMetError) do |err|
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received event :my_event once but it was received twice
with {:arg1=>42}
with {arg1: 42}

Events received:
{:my_event=>[{:arg1=>42}, {:arg1=>42}]}
{my_event: [{arg1: 42}, {arg1: 42}]}
MESSAGE
end
end
Expand Down Expand Up @@ -302,7 +302,7 @@
with include(arg1: 42)

Events received:
{:my_other_event=>[{}]}
{my_other_event: [{}]}
MESSAGE
end
end
Expand All @@ -315,7 +315,7 @@
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received matching event :my_event
expected: include(arg1: 42)
got: {:arg1=>43}
got: {arg1: 43}

Diff:
@@ -1 +1 @@
Expand Down Expand Up @@ -390,7 +390,7 @@
with include(arg1: 42)

Events received:
{:my_event=>[{:arg1=>42}, {:arg1=>42}]}
{my_event: [{arg1: 42}, {arg1: 42}]}
MESSAGE
end
end
Expand Down Expand Up @@ -435,7 +435,7 @@
with hash_including(arg1: 42)

Events received:
{:my_other_event=>[{}]}
{my_other_event: [{}]}
MESSAGE
end
end
Expand All @@ -448,7 +448,7 @@
assert_error_messages_equal(err, <<~MESSAGE)
Expected that FakeAnalytics would have received matching event :my_event
expected: hash_including(arg1: 42)
got: {:arg1=>43}
got: {arg1: 43}

Diff:
@@ -1 +1 @@
Expand Down Expand Up @@ -545,7 +545,7 @@
with hash_including(arg1: 42)

Events received:
{:my_event=>[{:arg1=>42, :arg2=>43}, {:arg1=>42, :arg2=>43}]}
{my_event: [{arg1: 42, arg2: 43}, {arg1: 42, arg2: 43}]}
MESSAGE
end
end
Expand Down