{"ecosystem":"cocoapods","package":"GRDB.swift","from_version":null,"to_version":null,"changes":[{"from_version":"v7.8.0","to_version":"v7.9.0","change_type":"breaking","description":"**BREAKING CHANGE**: Accept multiple SQLCipher libraries by @groue in https://github.com/groue/GRDB.swift/pull/1819 This change aims at easing building GRDB against various SQLCipher flavors. **The compiler flag that enables new GRDB APIs for SQLCipher is now `SQLITE_HAS_CODEC`.**","migration_hint":null},{"from_version":"v7.8.0","to_version":"v7.9.0","change_type":"breaking","description":"Fix cancellation of async tasks that use the FTS5 full-text engine. by @groue in https://github.com/groue/GRDB.swift/pull/1839 This workarounds an [SQLite bug](https://sqlite.org/forum/forumpost/137c7662b389fa18) that would trigger a GRDB crash, and improves the robustness of the library regarding cancellation and interruption of database accesses.","migration_hint":null},{"from_version":"v7.8.0","to_version":"v7.9.0","change_type":"breaking","description":"Improve the ergonomics of [`DatabaseMigrator.registerMigration(_:foreignKeyChecks:merging:migrate)`](https://swiftpackageindex.com/groue/grdb.swift/documentation/grdb/databasemigrator/registermigration(_:foreignkeychecks:merging:migrate:)) by accepting that the name of the merged migration is included in the set of merged migrations: ```swift // Used to fail, now OK: migrator.registerMigration(\"v3\", merging: [\"v1\", \"v2\", \"v3\"]) { ... } // ~~~~ ~~~~ // The above code is equivalent to: migrator.re","migration_hint":null},{"from_version":"v7.4.1","to_version":"v7.5.0","change_type":"breaking","description":"enum Columns { ... }","migration_hint":null},{"from_version":"v7.4.1","to_version":"v7.5.0","change_type":"breaking","description":"`TableAlias` is now a generic type. This will break existing code that accepts a `TableAlias` as an argument. You will have to make those methods generic as well.","migration_hint":null},{"from_version":"v7.4.1","to_version":"v7.5.0","change_type":"breaking","description":"public enum Columns { ... } } ```","migration_hint":null},{"from_version":"v7.4.1","to_version":"v7.5.0","change_type":"breaking","description":"If you define a `public` record type with a nested `Columns` enum, you have to make this enum `public` as well. ```diff public struct Player: FetchableRecord, PersistableRecord {","migration_hint":null},{"from_version":"v6.29.3","to_version":"v7.0.0-beta.2","change_type":"breaking","description":"**Breaking Change**: Coding strategies depend on the column by [@groue](https://github.com/groue) in [#1606](https://github.com/groue/GRDB.swift/pull/1606)","migration_hint":null},{"from_version":"v6.29.3","to_version":"v7.0.0-beta.2","change_type":"breaking","description":"**Breaking Change**: Enhance ergonomics of record methods that insert/save/upsert and fetch by [@groue](https://github.com/groue) in [#1599](https://github.com/groue/GRDB.swift/pull/1599)","migration_hint":null},{"from_version":"v6.29.3","to_version":"v7.0.0-beta.2","change_type":"breaking","description":"**Breaking Change**: Rename the CSQLite module to GRDBSQLite, and stop exporting the C SQLite functions by [@groue](https://github.com/groue) in [#1600](https://github.com/groue/GRDB.swift/pull/1600)","migration_hint":null},{"from_version":"v6.29.3","to_version":"v7.0.0-beta.2","change_type":"breaking","description":"**Breaking Change**: Perform all writes with immediate transactions by default by [@groue](https://github.com/groue) in [#1602](https://github.com/groue/GRDB.swift/pull/1602)","migration_hint":null},{"from_version":"v6.29.3","to_version":"v7.0.0-beta.2","change_type":"breaking","description":"**Breaking Change**: Remove DatabasePool.concurrentRead by [@groue](https://github.com/groue) in [#1603](https://github.com/groue/GRDB.swift/pull/1603)","migration_hint":null},{"from_version":"v7.0.0-beta.7","to_version":"v7.0.0","change_type":"breaking","description":"**Breaking Change**: enhance ergonomics of record methods that insert/save/upsert and fetch by @groue in https://github.com/groue/GRDB.swift/pull/1599","migration_hint":null},{"from_version":"v7.0.0-beta.7","to_version":"v7.0.0","change_type":"breaking","description":"**Breaking Change**: Rename the CSQLite module to GRDBSQLite, and stop exporting the C SQLite functions. by @groue in https://github.com/groue/GRDB.swift/pull/1600","migration_hint":null},{"from_version":"v7.0.0-beta.7","to_version":"v7.0.0","change_type":"breaking","description":"**Breaking Change**: Perform all writes with immediate transactions by default by @groue in https://github.com/groue/GRDB.swift/pull/1602","migration_hint":null},{"from_version":"v7.0.0-beta.7","to_version":"v7.0.0","change_type":"breaking","description":"**Breaking Change**: Remove DatabasePool.concurrentRead by @groue in https://github.com/groue/GRDB.swift/pull/1603","migration_hint":null},{"from_version":"v7.0.0-beta.7","to_version":"v7.0.0","change_type":"breaking","description":"**Breaking Change**: Coding strategies depend on the column by @groue in https://github.com/groue/GRDB.swift/pull/1606","migration_hint":null}],"total":17,"note":"Curated major-version breaking changes. Always verify against the package's official changelog before migrating.","_cache":"hit"}