-
Notifications
You must be signed in to change notification settings - Fork 8
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-46558 - Rails 6.1 upgrade (release) #1683
Merged
sbashamoni
merged 31 commits into
release/FY24Q4.4.2
from
feature/APPEALS-46558-rails-6-1-upgrade-release4.4.2
Sep 10, 2024
Merged
feature/APPEALS-46558 - Rails 6.1 upgrade (release) #1683
sbashamoni
merged 31 commits into
release/FY24Q4.4.2
from
feature/APPEALS-46558-rails-6-1-upgrade-release4.4.2
Sep 10, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Removes `bourbon` and `neat` dependencies.
During assets precompile in a 'production' environment, we encountered the following error: Uglifier::Error: Unexpected token: name (compare1). To use ES6 syntax, harmony mode must be enabled with Uglifier.new(:harmony => true). Per the `uglifier` README: UglifyJS only works with ES5. If you need to compress ES6, `ruby-terser` is a better option. Looking at the Caseflow git history for comparison, it looks like the `uglifier` gem was removed in favor of using Webpack to perform JS compression via the `UglifyjsWebpackPlugin`. Later, the `UglifyjsWebpackPlugin` was removed when Webpack v4 incorporated the `TerserWebpackPlugin` out-of-the-box: https://github.com/department-of-veterans-affairs/caseflow-efolder/blob/9853eaeb98692099f1e62435de9a4dc08292fa53/client/yarn.lock#L6119 It appears that there may need to be some additional configuration added to the `webpack.config.js` file in order to leverage the Terser plugin: https://v4.webpack.js.org/plugins/terser-webpack-plugin/ However, the Caseflow `webpack.config.js` does not include the Terser configuration at this time, and so, in keeping parity with Caseflow, we will omit this configuration in eFolder as well and leave it as a future exercise should it be necessary to enact JS compression.
…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
sbashamoni
approved these changes
Sep 10, 2024
sbashamoni
pushed a commit
that referenced
this pull request
Sep 13, 2024
* Removed depreciated 5.2 default represent_boolean_as_integer * caseflow-commons update - bourbon/neat removal * Rails gem updated to 6.1.7.4 * app:update bin/rails * app:update bin/rake * app:update bin/setup * app:update bin/spring * app:update bin/yarn * app:update config.ru * app:update application.rb * app:update config/boot.rb * app:update config/environment.rb * app:update config/environments/development.rb * app:update config/enviroments/production.rb * app:update config/environments/test.rb * app:update config/initializers/backtrace_silencers.rb * app:update config/initializers/filter_parameter_logging.rb * app:update config/initializers/permissions_policy.rb * app:update config/puma.rb * app:update config/routes.rb * Updated PG gem for postgres adapter * bourbon/neat code removed * Bundler version correction * final newline error fix * Review changes * ⬆️ Update `caseflow-commons` dependency to latest ref Removes `bourbon` and `neat` dependencies. * Added accidental deletion back in * 🔥 Remove `uglifier` During assets precompile in a 'production' environment, we encountered the following error: Uglifier::Error: Unexpected token: name (compare1). To use ES6 syntax, harmony mode must be enabled with Uglifier.new(:harmony => true). Per the `uglifier` README: UglifyJS only works with ES5. If you need to compress ES6, `ruby-terser` is a better option. Looking at the Caseflow git history for comparison, it looks like the `uglifier` gem was removed in favor of using Webpack to perform JS compression via the `UglifyjsWebpackPlugin`. Later, the `UglifyjsWebpackPlugin` was removed when Webpack v4 incorporated the `TerserWebpackPlugin` out-of-the-box: https://github.com/department-of-veterans-affairs/caseflow-efolder/blob/9853eaeb98692099f1e62435de9a4dc08292fa53/client/yarn.lock#L6119 It appears that there may need to be some additional configuration added to the `webpack.config.js` file in order to leverage the Terser plugin: https://v4.webpack.js.org/plugins/terser-webpack-plugin/ However, the Caseflow `webpack.config.js` does not include the Terser configuration at this time, and so, in keeping parity with Caseflow, we will omit this configuration in eFolder as well and leave it as a future exercise should it be necessary to enact JS compression. * ⏪️ Restore overrides for `config.action_dispatch.use_authenticated_cookie_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 * PG updated to 1.5.7 * PG regressed from 1.5.7 to 1.1.4 for seperate branches --------- Co-authored-by: Alec Kagebein <[email protected]>
sbashamoni
added a commit
that referenced
this pull request
Sep 13, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Contains changes from the following PR(s):