Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add Rails 6.1 which has been out a long while * Remove Rails 5.2 which is nearing end of life * Remove Ruby 2.4 which is past end of life * Stop allowing failure on Rails master When first adding 6.1 to the matrix, some of the tests failed with aborted transactions. Inspecting the postgres log I was able to see that Rails was trying to query a non-existent `schema_migrations` table. It seems that in Rails 6.1, the `schema_migrations` table is created differently from previous versions -- perhaps on demand when the database is first accessed? This is important because we wrap our tests that use the database in DatabaseCleaner using the transaction strategy. When DB cleaner rolls back the transaction at the end of the test, it was also rolling back the creation of the `schema_migrations` table. To get around this, I call `SchemaMigration.create_table` before every DB-dependent test. I've stopped allowing failure on Rails master because it hid this error (which is only an issue in tests, really) from us for too long. Additionally, I wanted to add Ruby 3 as part of this change, but there were some build failures so I will handle that separately.
- Loading branch information