You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+84-2Lines changed: 84 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,13 +1,95 @@
1
1
# Changelog
2
2
3
-
### Added
3
+
## v4.1.0
4
+
5
+
**Note this upgrade is a migration from Ruby v2.7.6 to v3.0.5.** Note that this could have an impact on any customizations you may have made to your fork of this project. Please see https://www.fastruby.io/blog/ruby/upgrades/upgrade-ruby-from-2.7-to-3.0.html for further information on what to check. In particular, please note the changes to the way [Ruby 3 handles keyword arguments](https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/)
6
+
7
+
**Note that the Webpacker gem has been removed in favor of jsbundling-rails.** This was done in preparation for the future migration to Rails 7. See [issue #3185](https://github.com/DMPRoadmap/roadmap/issues/3185) for more details on this change. If, after migrating to this version, you see 'Sprockets' related errors in your application you will need to rebuild you asset library. To do this run `bin/rails assets:clobber && bin/rails assets:precompile` from the project directory.
8
+
9
+
All gem and JS dependencies were also updated via `bundle update && yarn upgrade`
10
+
11
+
### Upgrade to Ruby 3
12
+
13
+
- Upgrade to Ruby version 3.0.5 [#3225](https://github.com/DMPRoadmap/roadmap/issues/3225)
14
+
- Bumped all Github actions to use ruby 3.0
15
+
- Removed `.freeze` from Regex and Range constants since those types are already immutable
16
+
- Fixed Rubocop complaint about redundancy of `r.nil? ? nil : r.user`, so changed it to `r&.user` in `app/models/plan.rb`
17
+
- Fixed Rubocop complaint about redundant `::` in config.log_formatter = `::Logger::Formatter.new` in `config/environments/production.rb`
18
+
- Froze `lib/deprecators/*.rb` constants that were Strings
19
+
- Updated places that were incorrectly using keyword args. See [this article](https://makandracards.com/makandra/496481-changes-to-positional-and-keyword-args-in-ruby-3-0) for an overview
20
+
21
+
#### Upgraded TinyMCE to v6
22
+
23
+
- Upgraded TinyMCE to v6 (v5 EOL is April 20 2023)
24
+
- Adjusted JS code to conform to new TinyMCE version
25
+
- Adjusted views to work with the new version
26
+
- Updated variables.scss file to fix issue with button text/background color contrast
27
+
- Updated blocks/_tables.scss to fix issue with dropdown menu overlap against table
28
+
- updated config/initializers/assets.rb to copy over the tinymce skins and bootstrap glyphicons to the public directory so that they are accessible by TinyMCE and Bootstrap code
29
+
30
+
#### Removed webpacker gem
31
+
32
+
As Webpacker is no longer maintained by the Rails community, we have replaced it by `jsbundling-rails` and `cssbundling-rails` for the Javascript & CSS compilation.
33
+
34
+
- Removed `webpacker` gem
35
+
- Added `jsbundling-rails`
36
+
- Updated webpack and its configuration to V5
37
+
- Moved `app/javascript/packs/application.js` to `app/javascript/application.js`
38
+
- Removed `ruby-sass` gem
39
+
- Added `cssbundling-rails` gem and DartSass JS library
40
+
- Updated SASS stylesheets following the migration to the latest version of the `sass` package (See below).
41
+
- Removed `font-awesome-sass` gem and used `@fortawesome/fontawesome-free` npm package
42
+
- Issue with `@import 'font-awesome-sprockets';` line in `app/assets/stylesheets/application.scss`. Removed that line after referring to the latest font-awesome install/setup guide which no longer includes it.
43
+
44
+
With the removal of Webpacker, the Javascript/SASS code is no longer automaticaly compiled when using the `rails server` command. It has been replaced by the `bin/dev` command that launch the rails server and the processes that watch for changes in the SASS and Javascript code.
45
+
46
+
#### SASS update : removal of the `@import` keyword
4
47
48
+
With the removal of the webpacker gem, the DartSass package has been installed to ensure the compilation of the Sass stylesheet and with it, an update to the Sass version used by the code :
49
+
-`@import` keyword for custom stylesheets has been removed (although we can still import stylesheets from externals packages) and has been replaced by `@use` and `@forward`
50
+
- An `_index.scss` file have to be created in folders containing multiple sass files. Each file have to be included in the index with the `@use` or `@forward` keyword.
51
+
- In most cases `@import` can be replaced by `@use` when importing a file.
52
+
-`@forward` makes mixins, functions and variables available when a stylesheet is loaded.
53
+
- When imported, Sass variables are now namespaced with the file name in which they are declared (ex : `color: colors.$red`). A namespace can be renamed (ex : `@use "colours" as c;`) or removed when included (ex : `@use "colours" as *;`)
54
+
- Sass variables are no longer declared globally and have to be included in files where they are used.
55
+
For more detailed explanation, please refer to this video : https://www.youtube.com/watch?v=CR-a8upNjJ0
56
+
57
+
### Introduction of RackAttack
58
+
[Rack Attack](https://github.com/rack/rack-attack) is middleware that can be used to help protect the application from malicious activity. You can establish white/black lists for specific IP addresses and also define rate limits.
59
+
60
+
- Using Rack-attack address vulnerabilities pointed out in password reset and login: there was no request rate limit.[#3214](https://github.com/DMPRoadmap/roadmap/issues/3214)
61
+
62
+
### Cleanup of Capybara configuration
63
+
- Cleaned up Gemfile by:
64
+
- removing gems that were already commented out
65
+
- removed selenium-webdriver and capybara-webmock
66
+
- removing version restrictions on: danger, font-awesome-sass, webdrivers
67
+
- Cleaned up `spec/rails_helper.rb` and `spec/spec_helper.rb`
68
+
- Simplified the `spec/support/capybara.rb` helper to work with the latest version of Capybara and use its built in headless Chrome driver
69
+
70
+
### Rubocop updates
71
+
- Installed rubocop-performance gem and made suggested changes
72
+
- Added lib tasks as exclusive from debugger rubocop check after rubocop upgrading to >= v1.45 [#3291](https://github.com/DMPRoadmap/roadmap/issues/3291)
73
+
74
+
### GitHub actions updates
75
+
- Added node version specification (v16) to eslint, PostgreSQL and MySQL github action to eliminate `digital routine enveloped` error [#319](https://github.com/portagenetwork/roadmap/issues/319)
76
+
77
+
### Enhancements
78
+
- Added enum to the funding status attribute of plan model to make the dropdown of 'funding status' being translatable
79
+
- Allow users to download both single phase and in PDF, TEXT and DOCX format. CSV file can only download single phase instead of all phases.
80
+
81
+
### Bug Fixes
82
+
83
+
## v4.0.2
84
+
85
+
### Added
5
86
- Added CHANGELOG.md and Danger Github Action [#3257](https://github.com/DMPRoadmap/roadmap/issues/3257)
6
87
- Added validation with custom error message in research_output.rb to ensure a user does not enter a very large value as 'Anticipated file size'. [#3161](https://github.com/DMPRoadmap/roadmap/issues/3161)
7
88
- Added popover for org profile page and added explanation for public plan
8
89
9
-
### Fixed
90
+
- Added rack-attack version 6.6.1 gem. https://rubygems.org/gems/rack-attack/versions/6.6.1
10
91
92
+
### Fixed
11
93
- Fixed an issue that was preventing uses from leaving the research output byte_size field blank
12
94
- Patched issue that was causing template visibility to default to organizationally visible after saving
13
95
- Froze mail gem version [#3254](https://github.com/DMPRoadmap/roadmap/issues/3254)
0 commit comments