v4.0.0
Researchers
- Updated the PDF coversheet to include all Contributors
- Fixed an issue that was causing the link to organizational guidance to repeat
Administrators
- Fixed an issue that was impacting API v0 and preventing the batch assignment of users to departments
- Fixed an issue that was preventing admins from performing a search on the Templates page #3217
- Removed case sensitivity from the validation rules for Org and Department names.
- Fixed issues with API v1
- Fixed an issue that was causing plans that were based off of templates with conditional questions to disappear when the user triggered the condition #3163
- Fixed an issue that was causing plans to not appear in the publicly visible if 100% of their questions had not been answered #3086
Developers
This release includes a major upgrade of Rails (5.x to 6.1) and an upgrade from Ruby 2.6 to 2.7.6. Please review the following release notes as well as our upgrade guide and be aware that you will most likely need to adjust/modify any local customizations you may have made within your local fork of the code.
This release includes an upgrade from Ruby 2.6 to Ruby 2.7.6 and Rails 5.x to Rails 6.1!
You will need to do the following:
- Review the new default configuration options for Rails 6.1 and adjust as necessary for your implementation. The config settings can be found in
config/initializers/new_framework_defaults_6_1.rb
- Set a
DMPROADMAP_HOST
environment variable. Rails 6+ introduces new middleware that helps mitigate DNS rebinding attacks. This includes a hostname whitelist. The value you assign to this environment variable will be added to the whitelist. - Update the
SUPPORTED_LOCALES
CLIENT_LOCALES
andDEFAULT_LOCALE
in theconfig/initializers/translation.rb
for your instance - If you have any raw SQL queries were deprecated in Rails 5.2. You may need to convert these over. See this article
Updates:
- Updated Ruby from 2.6.3 to 2.7.6 #3139
- Updated Rails from 5.2 to 6.1 #3103 #3187
- Updated the TinyMCE editor to v5 and installed the 'oxide' skin #2942
- Switched from Turbolinks to Turbo
- Updated all JS and gem dependencies
- Fixed an issue that allowed researchers to add an ORCID for a contributor that included spaces resulting in URLs that looked like
https://orcid.org// 0000-0000-0000-0000.
#3212 - Made some minor modifications to improve query responsiveness on the Contributors, Guidances, Plans, Orgs, Users and Templates pages
- Replaced all occurrences of
update_attributes
withupdates
sinceupdate_attributes
was deprecated - Upgraded chart.js which is used on the Usage page to render the bar and pie charts
- You can now set a flag that makes the 'coversheet' checkbox on the Plan Downloads page to be checked by default #3063 #3104
- Made changes to accommodate the new Zeitwerk autoloader (which has stricter convention-over-configuration rules):
- Changed the name of the
JSONLinkValidator
class file toJsonLinkValidator
- Updated models so that any JSON fields have their default values defined prior to serialization
- Updated deprecated occurrences of
record.errors[:model] << 'foo'
torecord.errors.add(:model, 'foo')
- Updated JS babel configuration
- Updated the
config/environments/*.rb
files to use the newDMPROADMAP_HOST
environment variable to defined theRails.application.routes.default_url_options
and newconfig.hosts
setting. - Added a new
download_coversheet_tickbox_checked
flag to theconfig/initializers/_dmproadmap.rb
initializer that will default the Plans Download page to default that checkbox to be true - Removed the out-of-date eslint package from webpacker. We will investigate re-introducing a JS linter in a future release
- Fix to the
db/seeds.rb
file that is used for new installations so that it uses thefind_or_create_by
instead ofcreate!
to prevent duplicates when the DB already exists. - Updated and fixed tests as needed
- Changed the name of the