Skip to content

Releases: DMPRoadmap/roadmap

v4.2.0

11 Apr 13:21
fc047ac
Compare
Choose a tag to compare

Note this upgrade is mainly a migration from Bootstrap 3 to Bootstrap 5.

Note that this will have a significant impact on any scss and html customizations you may have made to your fork of this project.

The following links will be helpful:

Get started with Bootstrap v5.2.3

Migrating to v4

How to Migrate from Bootstrap Version 3 to 4

Migrating to v5

How to Migrate from Bootstrap Version 4 to 5

Use Bootstrap 5 with Ruby on Rails 6 and webpack

What happened to $grid-float-breakpoint in Bootstrap 4. And screen size breakpoint shift from 3 -> 4

What are media queries in Bootstrap 4?

Key changes

  • Node package changes:
    • Changed version of bootstrap "^3.4.1" --> "^5.2.3"
    • Added @popperjs/core.
    • Removed bootstrap-3-typeahead, bootstrap-sass & popper.js
  • Stylesheet changes
    • In app/assets/stylesheets/application.scss:

      • removed bootstrap-sass import

        and replaced with

        @import "../../../node_modules/bootstrap/scss/bootstrap";
    • The order of the import statements have been changed to import the blocks/ and utils/ after the default bootstrap stylesheets

    • In app/assets/stylesheets/blocks/:

      • Replaced in relevant files:
        • @use "../../../../node_modules/bootstrap-sass/assets/stylesheets/_bootstrap.scss" as * ;

          with

          @use "../../../../node_modules/bootstrap/scss/bootstrap" as *;
      • Enclosed all division calculations using symbol / with calc() function,

        e.g., replaced

        padding-right: $grid-gutter-width / 2;

        with

        padding-right: calc($grid-gutter-width / 2);
      • Replaced breaking media queries since Bootstrap 3:
        • @media (max-width: $grid-float-breakpoint-max) {}

          with

          @include media-breakpoint-down(md){}

        • @media (max-width: $grid-float-breakpoint-max) {}

          with

          @include media-breakpoint-down(md) {}

    • Deleted app/javascript/src/utils/popoverHelper.js.

  • Mixins
    • Media query mixins parameters have changed for a more logical approach.
      • media-breakpoint-down() uses the breakpoint itself instead of the next breakpoint (e.g., media-breakpoint-down(lg) instead of media-breakpoint-down(md) targets viewports smaller than lg).
  • Color system
    • All lighten()and darken() functions replaced. These functions will mix the color with either white or black instead of changing its lightness by a fixed amount.
      • Replaced lighten() by tint-color().
      • Replaced darken() by shade-color().

Components & HTML

Note many of these Bootstrap changes has required us to rewrite or change some of the Javascript files.

When we use a native DOM element in Javascript, we obtain it by applying get() to the Jquery element (cf., https://api.jquery.com/get/).
We sometimes use the button native Dom element to programmatically click, as the Jquery button element with trigger('click') won't work because the trigger() function cannot be used to mimic native browser events, such as clicking (cf., https://learn.jquery.com/events/triggering-event-handlers/ )

  • Accordion & spinners
    • Bespoke versions replaced by Bootstrap 5 accordion and spinner now.
    • Accordion
      • Changed the default Bootstrap arrow icon for the accordion to use the fontawesome icons plus and minus icons. Created a several accordion specific colour variables:

        // Accordion colors

        $color-accordion-button: $color-primary-text;

        $color-accordion-button-icon: $color-primary-text;

        $color-accordion-button-bg: $color-primary-background;

        $color-accordion-button-active-bg: shade-color($color-accordion-button-bg, 30%);

        (See app/assets/stylesheets/blocks/_accordion.scss and app/assets/stylesheets/variables/_colours.scss for details.)
      • The drag icon in app/views/org_admin/sections/_section.html.erb now appears after the plus (or minus) icon.
    • The spinner block now uses classd-none instead ofhidden to hide.
    • In views with multiple accordion sections with "expand all" or "collapse all" links, we use the native Dom element of the accordion buttons to programmatically click, (cf. to note above).
  • Buttons
    • Bootstrap dropped btn-block class for utilities. So we removed any styling using it.
    • Close Buttons: Renamed close tobtn-close.
    • Renamed btn-default to btn-secondary and variable $btn-default-color changed to $btn-secondary-color.
  • Dropdowns
    • Dropdown list items with class dropdown have class dropdown-item added usually withpx-3 for positioning.
    • Added new dropdown-menu-dark variant and associated variables for on-demand dark dropdowns.
    • Data attributes changes required by Bootstrap 5 (as used by accordion and dropdown buttons):
      • data-display --> data-bs-display
      • data-parent --> data-bs-parent
      • data-target --> data-bs-target
      • data-toggle --> data-bs-toggle
    • Bootstrap 5 Popover added to some dropdown-menu items by adding attribute data-bs-toggle="popover"
  • Form
    • form-group class replaced with form-control.
    • Form labels now require form-label or form-check-label to go with form-control and form-check respectively. So all obsolete control-label replaced by form-label and missing ones added.
    • Dropped form-specific layout classes for our grid system. Use Bootstrap grid and utilities instead of form-group, form-row, or form-inline.
    • form-text no longer sets display, allowing you to create inline or block help text as you wish just by changing the HTML element.
    • Input group addons are now specific to their placement relative to an input. So input-group-addon and in our case we replaced with
      input-group-addon.
    • Renamed checkbox and radio into form-check.
  • Images
    • Renamed img-responsive to img-fluid.
  • Labels and badges
    • Class label has been removed and replaced by badge to disambiguate from the <label> element.
      • Renamed label class to badge
      • Replaced label-default by bg-secondary
      • Replaced label-info by bg-info
      • Replaced label-warning by bg-warning .text-dark
      • Replaced label-danger by bg-danger
  • Links
    • Links are underlined by default (not just on hover), unless they're part of specific components. So we had to add css to remove underline in many cases.
  • Modals
    • To programmatically show or hide a Bootstrap modal, we have followed both these approaches:
      • Either, get access to the Jquery modal element and call functions modal('show') or modal('hide').
      • Or, apply click() to the native Dom element of the button to trigger the modal (cf. to note above).
  • Navs & navbars
    • Bootstrap rewrote component with flexbox. Dropped nearly all > selectors for simpler styling via un-nested classes.
      Instead of HTML-specific selectors like .nav > li > a, we use separate classes for navs, nav-items, and nav-links. (Note because the nav-link class has not always been added as it comes with styles not appropriate for our styling for links.)
      This makes your HTML more flexible while bringing along increased extensibility. So we have dropped HTML-specific selectors and css in _navs.scss
      e.g.,

      .nav-tabs > li > a:hover --> nav-tabs nav-link:hover,

      .nav-pills > li > a:hover -->nav-pills .nav-link:hover.
      • Pages with css classes nav andnavbar updated to work with Bootstrap 5. So app/assets/stylesheets/blocks/_navbars.scss and app/assets/stylesheets/blocks/_navs.scss updated.
        • Replacednav navbar-nav combination --> navbar-nav
        • Replacednavbar-toggle --> navbar-toggler
        • Replaced multiple spans innavbar-toggle button with classicon-bar
          --> single span withtoggler-icon
        • Lists with nav navbar-nav have classnav-item added to list elements.
      • Note because the nav-link class include styling that is not appropriate in many places, we have not included it in those cases.
  • Notifications
    • Notifications now use classes d-block and d-none to show and hide respectively.
  • Panels, thumbnails & wells (replacements)
    • Bootstrap 5 dropped panels, thumbnails and wells. So pages with them updated with Bootstrap 5 replacements.
      • All views with css classespanel, panel-body, panel-* Have panel replaced by card to give card, card_body, card-*, etc.
      • As panel-default and some otherpanel css classes don't have card equivalents with same suffixes we have added these classes temporarily in _cards.sccs, e.g.,.card-default, etc.
  • Utilities
    • Bootstrap renamed several utilities to use logical property names instead of directional names with the addition of RTL support:
      • Renamed left-* and right-* to start-* and end-*.
      • Renamed float-left and float-right to float-start and float-end.
      • Renamed ml-* and mr-* to ms-* and me-*.
      • Renamed pl-* and pr-* to ps-* and pe-*.
      • Renamed text-left and text-right to text-start and text-end.
    • The hidden and show classes have been removed because th...
Read more

v4.1.1

16 Oct 16:14
8a0d0fb
Compare
Choose a tag to compare

Added

  • Added MORE_INFO and LESS_INFO JS constants (for the Research Outputs feature)
  • Added a .gitkeep file to the app/assets/builds directory to address potential issues when building the application.css file during production deploys - #3314

Fixed

  • Updated the default font on the 'Download page' to be 'Roboto, Arial, Sans-Serif' - #3337
  • Fixed an issue with API V0 that was causing a 500 Internal Server error - #3316
  • Solved issue where spring was loaded in production mode : ran bin/spring binstub --all
  • Updated fontawesome to V6 - #3328

v4.1.0

13 Apr 16:59
7d9a1d5
Compare
Choose a tag to compare

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

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 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.

All gem and JS dependencies were also updated via bundle update && yarn upgrade

Enhancements

  • Added enum to the funding status attribute of plan model to make the dropdown of 'funding status' being translatable
  • 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.

Developers

When running the application on your development machine, run bin/dev instead of the old rails s approach. This will kick off 'foreman' which will startup jsbuilding and cssbuilding so that they watch your CSS and JS files for changes.

Pay close attention to your customizations in the app/views/branded/ directory and any custom JS or CSS you may have for your instance. You may need to make modifications to work with the new JS/CSS Bundling methods. Most notably:

  • The application.js and application.css files have moved. If you were including your custom JS or CSS in this file, make sure that the new versions are importing your files.
  • If you have custom SCSS files in a separate directory (e.g. not in blocks, variables, etc.), You will need to add an _index.scss file for your directory. See the one in /app/assets/stylesheets/blocks/ for an example.
  • If you reference any variables (e.g. $color-primary-background) in your custom SCSS files, you will need to add @use '../variables/colours' as *; at the top of the file.
  • The way we include the JS and CSS into the ERB has changed. If you have a custom app/views/branded/layouts/application.html.erb make sure that you update the javascript and stylesheet link tags in your <head> section. See app/views/layouts/application.html.erb.
  • Note that the app/javascript/src/utils/tinymce.js file extension has changed from js.erb to js. If you reference this file in your custom JS, you will need to update your import statement.

Upgrade to Ruby 3

  • Upgrade to Ruby version 3.0.5 #3225
  • Bumped all Github actions to use ruby 3.0
  • Removed .freeze from Regex and Range constants since those types are already immutable
  • Fixed Rubocop complaint about redundancy of r.nil? ? nil : r.user, so changed it to r&.user in app/models/plan.rb
  • Fixed Rubocop complaint about redundant :: in config.log_formatter = ::Logger::Formatter.new in config/environments/production.rb
  • Froze lib/deprecators/*.rb constants that were Strings
  • Updated places that were incorrectly using keyword args. See this article for an overview

Upgraded TinyMCE to v6

  • Upgraded TinyMCE to v6 (v5 EOL is April 20 2023)
  • Adjusted JS code to conform to new TinyMCE version
  • Adjusted views to work with the new version
  • Updated variables.scss file to fix issue with button text/background color contrast
  • Updated blocks/_tables.scss to fix issue with dropdown menu overlap against table
  • 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

Removed webpacker gem

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.

  • Removed webpacker gem
  • Added jsbundling-rails
  • Updated webpack and its configuration to V5
  • Moved app/javascript/packs/application.js to app/javascript/application.js
  • Removed ruby-sass gem
  • Added cssbundling-rails gem and DartSass JS library
  • Updated SASS stylesheets following the migration to the latest version of the sass package (See below).
  • Removed font-awesome-sass gem and used @fortawesome/fontawesome-free npm package
  • 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.

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.

SASS update : removal of the @import keyword

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 :

  • @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
  • 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.
  • In most cases @import can be replaced by @use when importing a file.
  • @forward makes mixins, functions and variables available when a stylesheet is loaded.
  • 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 *;)
  • Sass variables are no longer declared globally and have to be included in files where they are used.
    For more detailed explanation, please refer to this video : https://www.youtube.com/watch?v=CR-a8upNjJ0

Introduction of RackAttack

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.

  • Using Rack-attack address vulnerabilities pointed out in password reset and login: there was no request rate limit.#3214

Cleanup of Capybara configuration

  • Cleaned up Gemfile by:
    • removing gems that were already commented out
    • removed selenium-webdriver and capybara-webmock
    • removing version restrictions on: danger, font-awesome-sass, webdrivers
  • Cleaned up spec/rails_helper.rb and spec/spec_helper.rb
  • Simplified the spec/support/capybara.rb helper to work with the latest version of Capybara and use its built in headless Chrome driver

Rubocop updates

  • Installed rubocop-performance gem and made suggested changes
  • Added lib tasks as exclusive from debugger rubocop check after rubocop upgrading to >= v1.45 #3291

GitHub actions updates

  • Added node version specification (v16) to eslint, PostgreSQL and MySQL github action to eliminate digital routine enveloped error #319

New Rake task for updating dependencies

  • Added a new bin/rails update:all task that will update the gem and JS dependencies and also add the x86_64-linux environment to the bundle's supported platform list

v4.0.2

03 Feb 09:52
d95a1a9
Compare
Choose a tag to compare

Bug Fixes

  • Updated sans-serif font used in PDF downloads to Roboto since Google API no longer offers Helvetica
  • Fixed discrepencies with default/max per_page values for API and UI pagination
  • Updated JS that used to call the TinyMCE setMode() function so that it now calls mode.set() because the former is now deprecated.
  • Patched an issue that was causing a template's visibility to change to 'organizationally_visible' when saving on the template details page.
  • Fixed an issue with the Rails 6 keyword arguments change that was causing the paginable_sort_link to fail

Changes

  • 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
  • Added popover for org profile page and added explanation for public plan
  • Updated the CSV export so that it now includes research outputs
  • Change csv file name for statistics from 'Completed' to 'Created'

Developers

  • Added CHANGELOG.md and Danger Github Action #3257
  • Froze mail gem version #3254
  • Added scss files to EditorConfig
  • Updated Ruby & JS dependencies

v4.0.1

01 Dec 16:12
a803f43
Compare
Choose a tag to compare

Bug Fixes

  • Fixed bin/rails db:schema:load issue in version 4.0.0 and enhanced bin/setup command to improve the installation process #3216
  • Added patches to 4.0.0 version for Rails 6 fixes
    • Removed translation.io error message from the system email to users
    • Added new translations to usage page, feedback notification page and guidance group page
  • Accessibility fixes #3211
  • Fixed potential plan visibility issue
  • Added header translation and removed the extra 'Affiliation' row in the downloaded csv file
  • Fixed Tried to load unspecified class: Symbol error that some users encountered in download page

Developers

  • Added EditorConfig file to help maintain constant coding style
  • Updated some coding style #3249
  • Kept Github Actions using ubuntu-20.04 as the OS for test #3247

Dependency Updates

  • Bumped engine.io from 6.2.0 to 6.2.1
  • Bumped Webdriver from version 4 to 5.2
  • Bumped nokogiri from 1.13.18 to 1.13.9

v4.0.0

26 Oct 22:21
c16f001
Compare
Choose a tag to compare

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 and DEFAULT_LOCALE in the config/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 with updates since update_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 to JsonLinkValidator
    • Updated models so that any JSON fields have their default values defined prior to serialization
    • Updated deprecated occurrences of record.errors[:model] << 'foo' to record.errors.add(:model, 'foo')
    • Updated JS babel configuration
    • Updated the config/environments/*.rb files to use the new DMPROADMAP_HOST environment variable to defined the Rails.application.routes.default_url_options and new config.hosts setting.
    • Added a new download_coversheet_tickbox_checked flag to the config/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 the find_or_create_by instead of create! to prevent duplicates when the DB already exists.
    • Updated and fixed tests as needed

v3.1.1

12 May 11:12
47be9ba
Compare
Choose a tag to compare

This release is primarily a bug fix release from v3.1.0

It is worth moving to fairly soon as it contains a couple of bugs which seriously degrade the user experience.

Fixes include:

  • 'expand all/collapse all' buttons in multi-section plans
  • 'View All' when looking at templates as Org Admin
  • margins and default zoom settings of exported PDFs
  • font-face of PDF downloads
  • download plan with coversheet
  • API calls which were failing due to a timeout.
  • plan with conditional questions causing page to go blank (#3163 )
  • download template with pre-ticked answers not working (#3104 )
  • research outputs metadata standards not always appearing
  • sharing plans where plan has to be 100% complete. (#3086 )

New Contributors

Full Changelog: v3.1.0...v3.3.1

v3.1.0

08 Apr 15:55
9589862
Compare
Choose a tag to compare

Researchers

Researchers can now expand/collapse the Guidance and Comments sections when editing their DMPs. This gives the researcher more space to see their answers. Clicking on the 'Comments & Guidance' label will collapse/expand the section for that question. (Thanks to @benjaminfaure for contributing this feature #3123)

Screenshot of the new collapsible guidance/comments section:
Screen Shot 2022-04-06 at 1 31 48 PM

Changes to the 'Project Details' page (must be enabled):

  • Users can now specify a primary research domain for their project (e.g. Biology, Computer Science, Humanities, etc.). This information appears in the DMP's JSON as a 'tag'.
  • Users can now indicate and describe any ethical concerns that concern their research data. Clicking the checkbox will display a field to describe the concerns and a URL field to link to a report. This information appears in the DMP's JSON.

A new 'Research Outputs' tab that allows users to specify information about their intended research outputs (must be enabled) (thanks to @briri and @nicolasfranck for these contributions #2738 #2814 #3134)

Screenshot of the new Research Outputs tab:
Screen Shot 2022-04-06 at 12 29 45 PM

The 'Research Outputs' tab allows users to:

  • Specify the type (e.g. dataset, software, image, etc.), name and a description of the output, size (if applicable), whether or not it contains sensitive info or PII, what the initial access level will be (e.g. open, restricted, closed) and the anticipated publication date.
  • Select an appropriate license (must be enabled) (note that the options come from the SPDX license registry) (#2607)
  • Select any metadata standards that will be followed (e.g. Dublin Core) (must be enabled) (note that the list of standards comes from the RDA Metadata standards catalog) (#2798)
  • Select the repositories they intend to preserve the object in (e.g. Dryad, Zenodo, GitHub, or an institutional repository) (must be enabled) (note that the list of repositories comes from the re3data registry) (#2605)

Screenshot of the Repository selection window (functionality for Metadata Standards is similar):
Screen Shot 2022-04-06 at 12 31 19 PM

After a user enters information about their research outputs, the data will appear in the PDF as an addendum in a table format (#2812) (the Download page includes a checkbox to include/exclude this new addendum)

Screenshot of Research Outputs as an addendum to the PDF:
Screen Shot 2022-04-06 at 12 28 46 PM

The research output information will also appear in the JSON output (and API v1 output) for the DMP:

Screenshot of new JSON Output (also delivered by API v1) showing a Research Output translated into the RDA Common Standard:
Screen Shot 2022-04-06 at 12 26 40 PM

Organisational Administrators

Admins may now specify a helpdesk email address when editing their Organisation's details. This email will be used in the email signature for emails sent from the system (assuming the recipient of the email is a member of the same Organisation) (thanks to @johnpinto1 #3140)

Note that, if enabled, the new 'Research Outputs' tab may duplicate data entry for users if your templates are already asking for specific information about the intended research outputs (e.g. which repositories, what licenses, etc.). You can prevent this duplication of effort by editing your template and removing/rewording those questions. The new research output info appears in an addendum to the PDF of the DMP. It also appears as 'Dataset' information in the JSON output (see above screenshots). If you do change your template, do not forget to re-publish once you have made your changes!

Bug Fixes:

  • Fixed an issue that was preventing Org Admins from seeing the 'Share' tab #3131
  • Fixed an issue that was causing errors when Org Admins tried to save changes to a template #3038
  • Patched an issue that continued to show users as collaborators on a Plan's Share tab even after they had removed themselves from the Plan #3126
  • Fixed an issue that was causing TinyMCE editors to have an incorrect size when they initially load #3141
  • Various fixes for the APIs
    • Patched issue that was always using the default template when creating a new DMP in API v1 #3137
    • Fixed an issue that was preventing plans from being created via API v0 #3135
    • Addressed an issue that was preventing users from being unassigned from a department in API v0 #3132

Developers

Enabling new functionality

By default, your guidance and comments section of the 'Write Plan' page will be expanded. If you want to change this so that it is collapsed by default, you can change the guidance_comments_opened_by_default setting in the config/initializers/_dmproadmap.rb file. If you want to disable this functionality entirely you can change the guidance_comments_toggleable setting.

The 'Research domain' dropdown and 'Ethical issues' fields on the Project Details page and the new 'Research outputs' tab are disabled by default. If you would like to use them, you must enable them (enable_research_domain, enable_ethical_issues and enable_research_outputs) in the config/initializers/_dmproadmap.rb file. Note that changes to this file require a restart of the application.
There are a few additional configuration options for components of the 'Research outputs' page:

  • To allow your users to select metadata standards for a research output, you should:
    • enable the setting in the _dmproadmap.rb initializer - enable_metadata_standard_selection
    • Run bin/rails external_api:load_rdamsc_standards RAILS_ENV=[env] to populate the metadata_standards table
  • To allow your users to select repositories for a research output, you should:
    • enable the setting in the _dmproadmap.rb initializer - enable_repository_selection
    • Run bin/rails external_api:load_re3data_repos RAILS_ENV=[env] to populate the repositories table
  • To allow your users to select a license for their research outputs, you should:
    • enable the setting in the _dmproadmap.rb initializer - enable_license_selection
    • Run bin/rails external_api:load_spdx_licenses RAILS_ENV=[env] to populate the licenses table with data
    • Review the list of 'preferred' licenses in the _dmproadmap.rb initializer and modify if needed. Note that if you should use the %{latest} token we 'preferring' a license that have a version (see example in the config file).

We have added information to the Administration Wiki page about enabling/disabling functionality and our recommendations on which Rake tasks should be run on a schedule.

Additional changes:

  • Updated API V1 to convey the new Research Output info as Datasets in the JSON output (see screenshot above)
  • Added a new generic modal search dialog (currently used for repository and metadata standard selection). This component allows the page to define its own search/filter options and display search results in its own way. (Included a README.md in the app/views/layouts/modal_search dir to help describe how to implement for new data)
  • Modification to the way the Plan is associated with its grant (basically a shortcut to get at the identifier record)
  • Added new Services (and corresponding config files) to services/external_apis that fetch data for the License, Metadata Standard and Repository tables. These also have callable Rake tasks in lib/tasks/utils/external_api.rake to help you initialize the tables and update the contents on a regular basis
  • Reverted change to our use of string format tokens that was made during an upgrade of Rubocop. The preferred format is once again Some %{variable_name} text #3128
  • Synced latest translations from Translation.io
  • Updated all Gem and JS dependencies

v3.0.6

15 Feb 18:21
0c719e8
Compare
Choose a tag to compare
  • Fixes for downloading PDFs

v3.0.5

14 Feb 17:35
c76d896
Compare
Choose a tag to compare

Bug Fixes:

  • Fix for pagination of plans retreived using the REST API V0 #3105
  • Security vulnerability patches #3100, #3097, #3093, #3083, #3077
  • Fixed issues/inconsistencies with policies #3099, #3084
  • Fix for issue downloading PDFs #3098, #3054, #3049
  • Fix for issue displaying users as collaborators on a plan after they have removed themselves #3095
  • Fix for API v0 not supplying the owner email address #3094
  • Fix for bug preventing Super Admins from creating new Orgs #3091
  • Fix for issue causing deleted plans to appear in the Org Admin list of plans #3087
  • Fix for CSV downloads #3085, #3075
  • Fix for pagination and search on the Admin plans page #3069, #3073
  • Fix for strings that were not included in translation content #3081, #3050
  • Fix for issue with contributor org logic not adhering to the restrict_orgs config flag #3078, #3060
  • Fix for adding contributors #3071
  • Removed phone number field from contributor page #3067
  • Fixed issue with merging users #3065
  • Fixed issue with emails #3052
  • Fix for users unable to see API page #3047
  • Upgraded Rubocop and updated all files accordingly #3045, #3048

We have also updated most Gem and JS dependencies

Upgrade instructions:

  • Run bundle install
  • Run yarn install