Defect #38199

Fix deprecation warning for db:structure:dump in db:migrate when using sql schema format

Added by Dmitry Makurin 13 days ago. Updated about 5 hours ago.

Status:ResolvedStart date:
Priority:NormalDue date:
Assignee:Go MAEDA% Done:

0%

Category:Rails support
Target version:5.0.5
Resolution:Fixed Affected version:

Description

Running db:migrate using sql schema format shows the deprecation warning:

DEPRECATION WARNING: Using `bin/rails db:structure:dump` is deprecated and will be removed in Rails 7.0. Configure the format using `config.active_record.schema_format = :sql` to use `structure.sql` and run `bin/rails db:schema:dump` instead. (called from block (3 levels) in <top (required)> at lib/tasks/redmine.rake:160)

Redmine invokes db:schema/structures:dump to dump plugins migrations.

31485.patch Magnifier (538 Bytes) Go MAEDA, 2023-01-20 03:46

38199_v2.patch Magnifier (697 Bytes) Dmitry Makurin , 2023-01-20 16:19


Related issues

Related to Redmine - Patch #31485: Add support for :sql ActiveRecord::Base.schema_format in ... Closed

Associated revisions

Revision 22086
Added by Go MAEDA about 5 hours ago

Fix deprecation warning for db:structure:dump in db:migrate when using sql schema format (#38199).

Contributed by Dmitry Makurin.

History

#1 Updated by Go MAEDA 12 days ago

  • Related to Patch #31485: Add support for :sql ActiveRecord::Base.schema_format in redmine:plugins:migrate added

#2 Updated by Go MAEDA 12 days ago

  • Category set to Rails support
  • Status changed from New to Confirmed

Steps to reproduce:

$ echo 'config.active_record.schema_format = :sql' >> config/additional_environment.rb
$ bin/rake redmine:plugins:migrate

#3 Updated by Go MAEDA 12 days ago

Setting the target version to 5.0.5.

#4 Updated by Go MAEDA 12 days ago

  • Subject changed from Using `bin/rails db:structure:dump` is deprecated and will be removed in Rails 7.0. to Fix "DEPRECATION WARNING: Using `bin/rails db:structure:dump`" when migrating plugins using sql schema format

#5 Updated by Dmitry Makurin 12 days ago

I guess we need to provide backward compatibility for Rails 6.1.
db:structure:dump will be removed only in Rails 7.0 but the current trunk works on 6.1+.
Attaching a new patch 38199_v2.patch.

#6 Updated by Go MAEDA 11 days ago

  • Target version changed from 5.0.5 to 5.1.0

#7 Updated by Go MAEDA 11 days ago

  • Target version changed from 5.1.0 to 5.0.5

#8 Updated by Go MAEDA 11 days ago

Dmitry Makurin wrote:

I guess we need to provide backward compatibility for Rails 6.1.
db:structure:dump will be removed only in Rails 7.0 but the current trunk works on 6.1+.
Attaching a new patch 38199_v2.patch.

I think the first patch work with Rails 6.1. It seems that db:schema:dump generates db/structure.sql also with Rails 6.1.

$ rm db/structure.sql
ls db/structure.sql 
ls: db/structure.sql: No such file or directory
$ bin/rake redmine:plugins:migrate
$ ls db/structure.sql 
db/structure.sql

#9 Updated by Go MAEDA about 5 hours ago

  • Subject changed from Fix "DEPRECATION WARNING: Using `bin/rails db:structure:dump`" when migrating plugins using sql schema format to Fix deprecation warning for db:structure:dump in db:migrate when using sql schema format
  • Status changed from Confirmed to Resolved
  • Assignee set to Go MAEDA
  • Resolution set to Fixed

Committed the fix. Thank you.

Also available in: Atom PDF