-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feature/APPEALS-34124-43428-29105-28925-33581 - Rails 6.1 upgrade #22518
feature/APPEALS-34124-43428-29105-28925-33581 - Rails 6.1 upgrade #22518
Commits on Aug 13, 2024
-
🔧 Assume defaults for `config.action_dispatch.use_cookies_with_metada…
…ta` and `config.action_mailer.delivery_job` The following config settings are not backwards compatible: - config.action_dispatch.use_cookies_with_metadata - config.action_mailer.delivery_job Now that Rails 6.0 is stable on production, we can assume their default values going forward.
Configuration menu - View commit details
-
Copy full SHA for 717c673 - Browse repository at this point
Copy the full SHA 717c673View commit details -
Configuration menu - View commit details
-
Copy full SHA for 96a2d19 - Browse repository at this point
Copy the full SHA 96a2d19View commit details -
🔧 Assume default for `config.action_dispatch.use_authenticated_cookie…
…_encryption` Since we are making other cookie configuration changes in this PR for Rails 6.0, this is an opportune time to migrate this Rails 5.2 cookie setting to its default value as well.
Configuration menu - View commit details
-
Copy full SHA for 6b138a0 - Browse repository at this point
Copy the full SHA 6b138a0View commit details
Commits on Aug 16, 2024
-
⏪️ Restore overrides for `config.action_dispatch.use_authenticated_co…
…okie_encryption` and `config.action_dispatch.use_cookies_with_metadata` While testing in PreProd, we discovered that, without these cookie config overrides, re-authentication was broken -- after logging out, a user could not log back in. Since the default settings are still optional going forward, we can restore these overrides and devise a solution to migrate cookies later. For more details, see Jira story APPEALS-54897: https://jira.devops.va.gov/browse/APPEALS-54897
Configuration menu - View commit details
-
Copy full SHA for 6b0e2fa - Browse repository at this point
Copy the full SHA 6b0e2faView commit details -
✨ Add new utility module for adding DB indexes concurrently
Introduces `Caseflow::Migrations::AddIndexConcurrently` as a replacement for `Caseflow::Migration` for migrations on ActiveRecord 6.0 and beyond, since `Caseflow::Migration` is forever coupled to ActiveRecord 5.1 due to its extensive use on legacy migrations and should be deprecated moving forward.
Configuration menu - View commit details
-
Copy full SHA for 7b0d9e3 - Browse repository at this point
Copy the full SHA 7b0d9e3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 69ff99a - Browse repository at this point
Copy the full SHA 69ff99aView commit details -
Configuration menu - View commit details
-
Copy full SHA for a3b2e5c - Browse repository at this point
Copy the full SHA a3b2e5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6f08c1d - Browse repository at this point
Copy the full SHA 6f08c1dView commit details -
✨ Introduce
SslRedirectExclusionPolicy
To be used in the environment configuration settings for excluding exempt request paths from SSL redirects when `config. force_ssl = true`
Configuration menu - View commit details
-
Copy full SHA for 8d15e43 - Browse repository at this point
Copy the full SHA 8d15e43View commit details -
♻️ Replace deprecated controller-level
force_ssl
Replace deprecated controller-level `force_ssl` with equivalent configuration settings in preparation for the Rails 6.1 upgrade.
Configuration menu - View commit details
-
Copy full SHA for 5b091e3 - Browse repository at this point
Copy the full SHA 5b091e3View commit details -
🔥 Remove deprecated config setting `config.active_record.sqlite3.repr…
…esent_boolean_as_integer` This will have no implications for Caseflow, since we are only using the `sqlite3` adapter nominally for the `demo_vacols` database, which is not actually being used in our demo environments (demo environments are deployed as `development` envs).
Configuration menu - View commit details
-
Copy full SHA for dae20d2 - Browse repository at this point
Copy the full SHA dae20d2View commit details -
⬆️ Update
caseflow-commons
to resolve sub-dependency conflictsRemoves unneeded gems `bourbon` and `neat`, which had a sub-dependency conflict on `thor`.
Configuration menu - View commit details
-
Copy full SHA for 230b009 - Browse repository at this point
Copy the full SHA 230b009View commit details -
Configuration menu - View commit details
-
Copy full SHA for c89ef39 - Browse repository at this point
Copy the full SHA c89ef39View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c59a13 - Browse repository at this point
Copy the full SHA 8c59a13View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4fc06d8 - Browse repository at this point
Copy the full SHA 4fc06d8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f43969 - Browse repository at this point
Copy the full SHA 7f43969View commit details -
🔧 Assume default for
config.active_storage.track_variants
We're not currently using ActiveStorage in Caseflow, so it is safe to just assume the default here.
Configuration menu - View commit details
-
Copy full SHA for 6faf742 - Browse repository at this point
Copy the full SHA 6faf742View commit details -
🔧 Override default for
config.active_job.retry_jitter
The default jitter is probably safe, however, I'm not 100% sure that we don't have any jobs that need to be requeued with exact wait times. So we let's override this for now to stay on the safe side.
Configuration menu - View commit details
-
Copy full SHA for 374a81d - Browse repository at this point
Copy the full SHA 374a81dView commit details -
🔧 Assume default for `config.active_job.skip_after_callbacks_if_termi…
…nated` We're not currently using `throw :abort` within any `before_enqueue`/`before_perform` callbacks on existing Caseflow jobs, so the default should be fine here. For more background, see https://lilyreile.medium.com/rails-6-1-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-c546b70f0c5e#4c60
Configuration menu - View commit details
-
Copy full SHA for 9eb5214 - Browse repository at this point
Copy the full SHA 9eb5214View commit details -
🔧 Assume default for `config.action_dispatch.cookies_same_site_protec…
…tion` This setting controls the `SameSite` optional attribute for the `Set-Cookie` header. `SameSite=Lax` means that the cookie is not sent on cross-site requests, such as on requests to load images or frames, but is sent when a user is navigating to the origin site from an external site (for example, when following a link). This is the default behavior if the SameSite attribute is not specified. `Lax` is currently the default assumed by both Chrome and Edge browsers when this attribute is left unspecified, so assuming this value should be sensible. It allows us to have our cake (blocking CSRF attacks) and eat it too (providing a logged-in experience when users navigate to Caseflow across origins). For more background, see - https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#samesitesamesite-value - https://lilyreile.medium.com/rails-6-1-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-c546b70f0c5e#1f15
Configuration menu - View commit details
-
Copy full SHA for 5031b14 - Browse repository at this point
Copy the full SHA 5031b14View commit details -
Configuration menu - View commit details
-
Copy full SHA for ac81e07 - Browse repository at this point
Copy the full SHA ac81e07View commit details -
🔧 Assume default for `ActiveSupport.utc_to_local_returns_utc_offset_t…
…imes` We're not using `ActiveSupport::TimeZone.utc_to_local` anywhere, so the default is safe to assume here.
Configuration menu - View commit details
-
Copy full SHA for 1e11d54 - Browse repository at this point
Copy the full SHA 1e11d54View commit details -
🔧 Assume default for `config.action_dispatch.ssl_default_redirect_sta…
…tus` The default is safe to assume. For more background, see https://lilyreile.medium.com/rails-6-1-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-c546b70f0c5e#4c3e
Configuration menu - View commit details
-
Copy full SHA for 3c4a9aa - Browse repository at this point
Copy the full SHA 3c4a9aaView commit details -
🔧 Assume default for
config.active_record.legacy_connection_handling
The default should be safe to assume here, as we do not do any role or shard switching on database connections. For more background, see https://lilyreile.medium.com/rails-6-1-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-c546b70f0c5e#8007
Configuration menu - View commit details
-
Copy full SHA for c3420af - Browse repository at this point
Copy the full SHA c3420afView commit details -
🔧 Assume default for `config.action_view.form_with_generates_remote_f…
…orms` We don't use the `form_with` helper anywhere, so this behavior change is inconsequential for us, and we can safely assume the new default.
Configuration menu - View commit details
-
Copy full SHA for 50e2616 - Browse repository at this point
Copy the full SHA 50e2616View commit details -
🔧 Assume default for
config.active_storage.queues.analysis
We do not use ActiveStorage, so the default is safe to assume here.
Configuration menu - View commit details
-
Copy full SHA for cff18e1 - Browse repository at this point
Copy the full SHA cff18e1View commit details -
🔧 Assume default for
config.active_storage.queues.purge
We do not use ActiveStorage, so the default is safe to assume here.
Configuration menu - View commit details
-
Copy full SHA for 0d6ef6d - Browse repository at this point
Copy the full SHA 0d6ef6dView commit details -
🔧 Assume default for
config.action_mailbox.queues.incineration
We don't use ActionMailbox, so the new default is safe to assume here.
Configuration menu - View commit details
-
Copy full SHA for 557f6f4 - Browse repository at this point
Copy the full SHA 557f6f4View commit details -
🔧 Assume default for
config.action_mailbox.queues.routing
We do not use ActionMailbox, so the default is safe to assume here.
Configuration menu - View commit details
-
Copy full SHA for d6b3a9e - Browse repository at this point
Copy the full SHA d6b3a9eView commit details -
🔧 Assume default for
config.action_mailer.deliver_later_queue_name
We're not using `ActionMailer::MessageDelivery #deliver_later` anywhere, so the default is safe to assume.
Configuration menu - View commit details
-
Copy full SHA for e41f065 - Browse repository at this point
Copy the full SHA e41f065View commit details -
🔧 Assume default for
config.action_view.preload_links_header
This flag can be safely uncommented. Browsers that support Link headers will get a performance boost. Browsers that don’t will ignore them. We override in `development` environments to avoid an edge case leading to an HTTP response header overflow. For more background, see https://lilyreile.medium.com/rails-6-1-new-framework-defaults-what-they-do-and-how-to-safely-uncomment-them-c546b70f0c5e#3679
Configuration menu - View commit details
-
Copy full SHA for d870261 - Browse repository at this point
Copy the full SHA d870261View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3f7081 - Browse repository at this point
Copy the full SHA c3f7081View commit details -
Configuration menu - View commit details
-
Copy full SHA for be983a7 - Browse repository at this point
Copy the full SHA be983a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1e5c6ac - Browse repository at this point
Copy the full SHA 1e5c6acView commit details -
Configuration menu - View commit details
-
Copy full SHA for e929402 - Browse repository at this point
Copy the full SHA e929402View commit details -
Configuration menu - View commit details
-
Copy full SHA for a08b8e8 - Browse repository at this point
Copy the full SHA a08b8e8View commit details -
🩹 Add forgotten disallowed deprecation warning
This deprecation warning was addressed by the following PR, but we forgot to add it to the list of disallowed deprecation warnings: #21614
Configuration menu - View commit details
-
Copy full SHA for a22ca15 - Browse repository at this point
Copy the full SHA a22ca15View commit details -
Task `rake routes` has been replaced with `rails routes`
Configuration menu - View commit details
-
Copy full SHA for c601713 - Browse repository at this point
Copy the full SHA c601713View commit details -
✅ Update test to account for change to `ActionDispatch::Response#cont…
…ent_type` `ActionDispatch::Response#content_type` now returns the full Content-Type header
Configuration menu - View commit details
-
Copy full SHA for 61a6d85 - Browse repository at this point
Copy the full SHA 61a6d85View commit details -
Configuration menu - View commit details
-
Copy full SHA for 710d3cc - Browse repository at this point
Copy the full SHA 710d3ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for d143468 - Browse repository at this point
Copy the full SHA d143468View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5571bc5 - Browse repository at this point
Copy the full SHA 5571bc5View commit details -
♻️ Arrange 'database.yml' configs by environment
Group DB configs by environment in anticipation of reformatting for Rails 6+ multi-DB configuration.
Configuration menu - View commit details
-
Copy full SHA for 96a0a5f - Browse repository at this point
Copy the full SHA 96a0a5fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a2ecad - Browse repository at this point
Copy the full SHA 4a2ecadView commit details -
Configuration menu - View commit details
-
Copy full SHA for b14ddd9 - Browse repository at this point
Copy the full SHA b14ddd9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c2e9af - Browse repository at this point
Copy the full SHA 2c2e9afView commit details -
♻️ Use new database-specific rake tasks
After migrating to the Rails 6+ native multi-database configuration, the behavior of some DB management tasks, such as `rake db:migrate` changed such that they now act on ALL databases and not just the primary database. So we must replace the invocations of these tasks with their new, database-specific counterparts.
Configuration menu - View commit details
-
Copy full SHA for ff364e6 - Browse repository at this point
Copy the full SHA ff364e6View commit details -
Now that we have fiully transitioned to Rails-native multi-database support, we are no longer reliant on the 'multiverse' gem and can remove it.
Configuration menu - View commit details
-
Copy full SHA for 7b93645 - Browse repository at this point
Copy the full SHA 7b93645View commit details -
🗃️ Prohibit execution of vacols DB and non-DB-specific rake tasks
After transitioning to Rails-native multi-DB support, the behavior of some DB tasks changed such that they will now act on ALL databases and not just the primary database (ex. `rake db:migrate` will now migrate ALL databases). To avoid accidents, we re-define these tasks here to no-op and output a helpful message to redirect developers toward using their new database-specific counterparts instead.
Configuration menu - View commit details
-
Copy full SHA for 1c2c90b - Browse repository at this point
Copy the full SHA 1c2c90bView commit details -
♻️ Create new environment for GH workflow 'Make-docs-to-webpage'
Instead of performing a bunch of hard-to-maintain `sed` gymnastics to modify the existing 'test' environment, let's create a new 'make_docs' environment (based off of 'test') and configure it appropriately for use by the 'Make-docs-to-webpage' GH workflow.
Configuration menu - View commit details
-
Copy full SHA for 916055f - Browse repository at this point
Copy the full SHA 916055fView commit details -
💚 Remove redundant DB migrations from CI workflow
Task `db:schema:load` already loads the checked in schema, so there should be no need to run `db:migrate` afterwards.
Configuration menu - View commit details
-
Copy full SHA for dce962a - Browse repository at this point
Copy the full SHA dce962aView commit details -
🐛 Fix
spec/mailers/hearing_mailer_spec.rb
-NoMethodError
Addresses the following error: NoMethodError: undefined method `build_lookup_context' for ActionView::Base:Class
Configuration menu - View commit details
-
Copy full SHA for c7ebce5 - Browse repository at this point
Copy the full SHA c7ebce5View commit details -
🐛 Fix
spec/workflows/post_decision_motion_updater_spec.rb
- `Frozen……Error` Addresses the following error: FrozenError: can't modify frozen Hash: {}
Configuration menu - View commit details
-
Copy full SHA for 7bc8e02 - Browse repository at this point
Copy the full SHA 7bc8e02View commit details -
Configuration menu - View commit details
-
Copy full SHA for aeed812 - Browse repository at this point
Copy the full SHA aeed812View commit details -
🐛 Fix
spec/models/schedule_period_spec.rb
- `ActiveRecord::RecordIn……valid` Apparently, there were some changes to the inner workings of `ActiveModel::Errors` in Rails 6.1, causing a model to be considered invalid in the case that `errors[:base] == [[]]`. This makes sense, as `[[]]` is not considered "empty". Unfortunately, this was causing `RoSchedulePeriod #validate_spreadsheet` to inadvertently mark the model as invalid upon creation. `HearingSchedule::ValidateRoSpreadsheet #validate` returns an empty array (`[]`) when valid, which gets pushes onto the `RoSchedulePeriod` `errors[:base]` array, resulting in a non-empty array (`[[]]`) and an erroneously invalid disposition. Furthermore, calling `<<` to an `ActiveModel::Errors` message array in order to add an error is a deprecated, so we can take this opportunity to use the new `#add` API to hit two birds with one stone. The change implemented here is not a pure refactoring, however the end-user experience is unchanged in terms of how errors are presented when attempting to upload a spreadsheet with multiple non-conformities. Down the road, we may want to consider moving `HearingSchedule::ValidateRoSpreadsheet` toward using `ActiveModel::Validations` in order to leverage the full `ActiveModel::Errors` API and construct the errors object in the prescribed manner. For more details see - https://api.rubyonrails.org/v6.1.7.7/classes/ActiveModel/Validations.html - https://api.rubyonrails.org/v6.1.7.7/classes/ActiveModel/Errors.html
Configuration menu - View commit details
-
Copy full SHA for 66c96c9 - Browse repository at this point
Copy the full SHA 66c96c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for b063896 - Browse repository at this point
Copy the full SHA b063896View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc33489 - Browse repository at this point
Copy the full SHA cc33489View commit details -
✅ Fix
spec/sql/ama_cases_sql_spec.rb
Addresses failures such as the below: 0) AMA Cases Tableau data source expected report calculates age and AOD based on person.dob Failure/Error: expect(aod_case["aod_veteran.age"]).to eq("76") expected: "76" got: 0.76e2
Configuration menu - View commit details
-
Copy full SHA for 996285a - Browse repository at this point
Copy the full SHA 996285aView commit details -
✅ Fix multiple specs -
Minitest::UnexpectedError
Test helper method `#perform_enqueued_jobs` now wraps exceptions in an `Minitest::UnexpectedError`: https://github.com/rails/rails/blob/914caca2d31bd753f47f9168f2a375921d9e91cc/activejob/lib/active_job/test_helper.rb#L591 So, to assert that a specific exception is raised during execution of the `#perform_enqueued_jobs` block, we must rescue the `Minitest::UnexpectedError` and make the assertion on its error message instead.
Configuration menu - View commit details
-
Copy full SHA for 0f2afe7 - Browse repository at this point
Copy the full SHA 0f2afe7View commit details -
Configuration menu - View commit details
-
Copy full SHA for d890e08 - Browse repository at this point
Copy the full SHA d890e08View commit details -
✅ Fix
spec/controllers/api/v1/jobs_controller_spec.rb
In Rails 6.1, `ActiveJob #perform_now` was changed to behave as it did once before (at the behest of GitHub), returning the value fo the job instead of true/false. See related GH issue: rails/rails#38040
Configuration menu - View commit details
-
Copy full SHA for a0f6eab - Browse repository at this point
Copy the full SHA a0f6eabView commit details -
🐛 Fix
spec/controllers/appeals_controller_spec.rb
-NoMethodError
Addresses error: NoMethodError: undefined method `workflow' for #<CaseSearchResultsForVeteranFileNumber:0x00007f9a030966c8> 0) AppealsController GET appeals when current user is a System Admin when request header does not contain Veteran ID responds with an error Failure/Error: errors: errors.messages[:workflow], NoMethodError: undefined method `workflow' for #<CaseSearchResultsForVeteranFileNumber:0x00007f9a030966c8> # ./app/workflows/case_search_results_base.rb:31:in `search_call'
Configuration menu - View commit details
-
Copy full SHA for 645b739 - Browse repository at this point
Copy the full SHA 645b739View commit details -
🐛 Fix
CaseSearchResultsBase
validationsAddresses test failures in `spec/controllers/appeals_controller_spec.rb` similar to the below: AppealsController GET appeals when current user is a System Admin when request header does not contain Veteran ID responds with an error Failure/Error: expect(response_body["errors"][0]["title"]).to eq "Veteran file number missing" expected: "Veteran file number missing" got: nil Using `ActiveModel::Errors` to store error data in an arbitrary format may have been somewhat permissible in the past, but it is an abuse of the object's intended use and is also proving incompatible with the more formalized `ActiveModels::Errors` API in Rails 6.1. In order to preserve the existing response shape of the affected JSON endpoints, we need to move away from the `ActiveModel::Validations` implementation on `CaseSearchResultsBase` (and its descendent classes) to a more bespoke method of performing validations and aggregating errors, since Rails 6.1 `ActiveModel::Errors` is no longer appropriate for our needs here.
Configuration menu - View commit details
-
Copy full SHA for 4a47ab9 - Browse repository at this point
Copy the full SHA 4a47ab9View commit details -
✅ Fix
spec/controllers/application_controller_spec.rb
-- Cache-Cont……rol error Addresses the test failure below: ApplicationController no cache headers when toggle set sets Cache-Control etc Failure/Error: expect(response.headers["Cache-Control"]).to eq "no-cache, no-store" expected: "no-cache, no-store" got: "no-store" (compared using ==) # ./spec/controllers/application_controller_spec.rb:59:in `block (4 levels) in <top (required)>' In Rails 6.1, the `no-store` directive is exclusive of any others that are set on the `Cache-Control` header, which makes sense given the specification https://datatracker.ietf.org/doc/html/rfc7234#section-3 This change was implemented in PR rails/rails#39461 Since it no longer makese sense to set both `no-store` and `no-cache` directives, we will only set `no-store` here, as that is the stronger of the two.
Configuration menu - View commit details
-
Copy full SHA for e133da0 - Browse repository at this point
Copy the full SHA e133da0View commit details -
🐛 Fix multiple specs -
ActiveRecord::EagerLoadPolymorphicError
Addresses multiple test failures caused by the error below: QueueConfig.to_hash title when assigned to an org is formatted as expected Failure/Error: tasks.with_assignees.group("assignees.display_name").count(:all).each_pair.map do |option, count| label = self.class.format_option_label(option, count) self.class.filter_option_hash(option, label) end ActiveRecord::EagerLoadPolymorphicError: Cannot eagerly load the polymorphic association :appeal # ./app/models/queue_column.rb:110:in `assignee_options'
Configuration menu - View commit details
-
Copy full SHA for b5f4e3c - Browse repository at this point
Copy the full SHA b5f4e3cView commit details -
🐛 Fix
spec/models/task_spec.rb
-update_all
clears query cacheIn Rails 6.1.7.7, the method `ActiveRecord::Relation #update_all` will now clear any records cached by the calling relation. This was altering the behavior of `Task #cancel_task_and_child_subtasks` and causing the following test failure: Task#cancel_task_and_child_subtasks cancels all tasks and child subtasks Failure/Error: expect(second_level_tasks[0].versions.count).to eq(initial_versions + 2) expected: 3 got: 2 (compared using ==) # ./spec/models/task_spec.rb:368:in `block (3 levels) in <top (required)>' To remedy, we will now cache the necessary Task records in an Array, which can be used for generating PaperTrail versions both before and after the `update_all`.
Configuration menu - View commit details
-
Copy full SHA for 1c6a2b8 - Browse repository at this point
Copy the full SHA 1c6a2b8View commit details -
🐛 Fix
spec/services/hearings/calendar_service_spec.rb
- template re……ndering error Addresses the following test failure: Hearings::CalendarService.confirmation_calendar_invite returns appropriate iCalendar event Failure/Error: expect(ical_event.description).to eq(expected_description) expected: "You're scheduled for a virtual hearing with a Veterans Law Judge of the Board of Veterans' Appeals.\...to reschedule or cancel your virtual hearing, contact us by email at bvahearingteamhotline@va.gov\n" got: #<Icalendar::Values::Text("You're scheduled for a virtual hearing with a Veterans Law Judge of the Bo... reschedule or cancel your virtual hearing, contact us by email at bvahearingteamhotline@va.gov\n")>
Configuration menu - View commit details
-
Copy full SHA for 714b607 - Browse repository at this point
Copy the full SHA 714b607View commit details -
🐛 Fix YAML syntax error caused by whitespace in ENV var
Address the following error, found during demo deployment: rake aborted! Cannot load database configuration: YAML syntax error occurred while parsing /caseflow/config/database.yml. Please note that YAML must be consistently indented using spaces. Tabs are not allowed. Error: (<unknown>): could not find expected ':' while scanning a simple key at line 49 column 5
Configuration menu - View commit details
-
Copy full SHA for 7ad559e - Browse repository at this point
Copy the full SHA 7ad559eView commit details -
⬆️ Update
caseflow-commons
dependency to latest refRemoves `bourbon` and `neat` dependencies.
Configuration menu - View commit details
-
Copy full SHA for 0039454 - Browse repository at this point
Copy the full SHA 0039454View commit details