Skip to content

Releases: Invoca/declare_schema

Release v0.6.3

19 Jan 16:32

Choose a tag to compare

Added

  • Added add_foreign_key native rails call in DeclareSchema::Model::ForeignKeyDefinition#to_add_statement.

Fixed

  • Fixed a bug in migration generation caused by DeclareSchema::Migration#create_constraints
    calling DeclareSchema::Model::ForeignKeyDefinition#to_add_statement with unused parameters.

  • Fixed a bug in DeclareSchema::Migration#remove_foreign_key where special characters would not be quoted properly.

Release v0.6.2

13 Jan 23:53
30851c4

Choose a tag to compare

Added

  • Added sqlite3 as dev dependency for local development

Fixed

  • Fixed a bug in migration generation caused by DeclareSchema::Model::ForeignKeyDefinition#to_add_statement
    not being passed proper arguments.

Release v0.6.1

06 Jan 16:14

Choose a tag to compare

Added

  • Added Appraisals for MySQL as well as SQLite.

Fixed

  • Fixed case where primary key index will be gone by the time we get to dropping that primary key
    because all of the existing primary key columns are being removed.

Release v0.6.0

23 Dec 19:04

Choose a tag to compare

Added

  • Fields may now be declared with :bigint type which is identical to :integer, limit 8
  • FieldSpec#initialize interface now includes position keyword argument and **options hash.

Fixed

  • Fixed cycle in which FieldSpec#initialize was calling model.field_specs

Changed

  • Changed ci support from Travis to Github Workflow

Release v0.5.0

21 Dec 14:59

Choose a tag to compare

Added

  • Added support for configuring the character set and collation for MySQL databases
    at the global, table, and field level

Release v0.4.2

05 Dec 18:08

Choose a tag to compare

Fixed

  • Generalize the fix below to sqlite || Rails 4.

Release v0.4.1

05 Dec 04:13

Choose a tag to compare

Fixed

  • Fixed a bug detecting compound primary keys in Rails 4.

Release v0.4.0

21 Nov 10:02

Choose a tag to compare

Added

  • Fields may be declared with serialize: true or serialize: <serializeable-class>, where <serializeable-class>
    may be Array (Array stored as YAML) or Hash (Hash stored as YAML), (Array or Hash or any scalar value stored as JSON)
    or any custom serializable class.
    This invokes ActiveSupport's serialize macro for that field, passing the serializable class, if given.

    Note: when serialize: is used, any default: should be given in a matching Ruby type--for example, [] or {} or { 'currency' => 'USD' }--in
    which case the serializeable class will be used to determine the serialized default value and that will be set as the SQL default.

Fixed

  • Sqlite now correctly infers the PRIMARY KEY so it won't attempt to add that index again.