Skip to content

BETYdb 4.21

Compare
Choose a tag to compare
@gsrohde gsrohde released this 18 Jun 21:36
· 312 commits to master since this release
c7f98a8

Add Foreign-Key Constraints and Database Maintenance Scripts

Summary of Changes

This release includes a migration to add all missing foreign-key constraints and changes the update rule of several existing ones to ON UPDATE CASCADE. It includes some Ruby scripts to detect and repair database problems. A few bug fixes are included and new features are added to the Bulk Upload Wizard.

New features

  • The Bulk Upload Wizard now supports putting the time of day into the date column and supports a method column (see issue #545).

  • Several scripts for diagnosing and fixing problems with BETYdb databases have been added. See the file script/db_maintenance/README for a summary.

Bug fixes

  • The migration in this release adds all missing foreign-key constraints.

  • The Covariate Show page has been cleaned up (see issue #280).

  • The Editing Format page has been fixed so that editing of related variables works properly (see issue #481).

  • reCaptcha VI Shutdown #588

    This bug, which prevented new users from signing up, has been fixed.

Steps Needed for Upgrade

  1. Log in to the server.
  2. cd to the Rails root directory.
  3. Check that you are currently on the 4.20 release. You can do this by running
git describe --tags --exact-match

It should return betydb_4.20. It's possible that you are on the correct version but somehow didn't pull
down the tag name. In that case, you should get

fatal: no tag exactly matches 'a763a495a2a9bb0a5ca3192b29d6e4e41832a03c'`.

To fix this problem, run git fetch and then re-run git describe --tags --exact-match.
If you are not on the correct version, upgrade to BETYdb 4.20 before doing this upgrade.

  1. Run git pull to get the latest version of the master branch.
  2. Get the new recaptcha Gem with
bundle
  1. Run the migration in the new release with
bundle exec rake db:migrate RAILS_ENV=production
  1. Restart the Rails server with
touch tmp/restart.txt

Status of RSpec Tests

All non-pending tests pass when run in the default environment. (There is one pending test having to do with site-group editing permissions.)

Complete details for running the RSpec tests are at https://pecan.gitbooks.io/betydb-documentation/content/automated_tests.html.