2.11.3 (2024-12-10)
2.11.2 (2024-10-23)
- add Spiral CS fixer (a72e1ae)
- normalize DB passwords in tests; fix style in cs-fix workflow (b514009)
- use common MSSQL workflow (5c434ec)
- use common MySQL workflow (c5aa164)
- use common Postgres workflow (8c17e52)
2.11.1 (2024-10-22)
- typecasting of an integer to a boolean in SQLite (32c29c7)
2.11.0 (2024-06-11)
- add INTERSECT and EXCEPT operators (#204) (b3cc5a3)
- add the ability to specify the full name of the join type (0fa0adf)
- add parameter consideration when hashing the query part with orderBy (c874f7d)
- triggering changelog build (4002820)
- add issue templates (75086af)
- added security.md file (17aefde)
- move COC to .github directory (08cadcb)
- removing failing ci issue template (7200063)
- update CONTRIBUTING.md (f6a9722)
- updating contribution guide (ad3fbf0)
- apply yamllint (0506fb1)
- composer: added ergebnis/composer-normalize (1dddad4)
- add cycle/gh-actions (2507324)
- add default CODEOWNERS file (c080e0c)
- added coding-standards initial CI job (9725b49)
- auto apply labels based on files and branches (86971f0)
- do not include v prefix in tag (d9587c3)
- fixes in commit linting (ca925bd)
- push composer.lock to enable cache locks (726a0fe)
- switch to github changelog type (8275f0c)
- use actions/labeler directly (a9fa3b8)
- use fixed versions for actions instead of master (bd4d708)
2.10.0 (2024-04-04)
- Add support JSON columns in
orderBy
statement by @msmakouz (#184) - Add
mediumText
column type by @msmakouz (#178) - Add support for the
NOT
operator in SQL queries. Add new methodswhereNot
,andWhereNot
, andorWhereNot
by @msmakouz (#185)
- Fixed caching of SQL insert query with Fragment values by @msmakouz (#177)
- Fixed detection of enum values in PostgreSQL when a enum field has only one value by @msmakouz (#181)
- Fix psalm type for
DatabaseInterface::transaction()
method by @roxblnfk (#186)
- Automate changelog and release management @lotyp (#189)
2.9.0 (2024-03-27)
- Added
logInterpolatedQueries
for detailed query logging and refinedlogQueryParameters
to accurately log query parameters as arrays, enhancing ORM debugging and monitoring. @lotyp (#165) - Improved logging with enriched context in Driver.php, including driver details and query parameters. @lotyp (#165)
- Improved
orderBy
method to accept a null direction parameter, providing more flexibility when constructing queries by @butschster (#167) - Added support for PostgreSQL-specific directions NULLS FIRST and NULLS LAST for more control over null value ordering in result sets by @butschster (#167)
2.8.1 (2024-02-08)
- Fix compiling of Fragment with parameters in the returning() definition by @msmakouz (#161)
- Fix comparison of Fragment in Column default value by @msmakouz (#162)
2.8.0 (2024-02-08)
- The
withDatetimeMicroseconds
option now affects the interpolator by @msmakouz (#155) - Postgres: support for multiple returning columns by @roxblnfk and @msmakouz (#157)
- MSSQL: support for multiple returning columns by @msmakouz (#160)
2.7.1 (2023-12-22)
- Fix setting
precision
andscale
through attributes by @msmakouz (#148) - Fix quoting with an underscore at the beginning by @msmakouz (#151)
- Fix behavior of the
Column::type()
method by adding default size to column type mappings by @msmakouz (#150)
2.7.0 (2023-12-04)
- Add
varbinary
support in MySQL; optimizesize
attribute by @msmakouz (#146) - Add the ability to use WHERE IN and WHERE NOT IN with array values. The value sequence may contain
FragmentInterface
objets by @msmakouz and @roxblnfk (#147)
2.6.0 (2023-11-02)
- MySQL driver:
- Add the type
smallInteger
by @gam6itko (#128) - Change mapping of the JSON type from
text
tojson
by @romanpravda (#121)
- Add the type
- Postgres driver:
- Add the
restartIdentity
parameter to theeraseTable
method by @msmakouz (#132) - Change mapping of the JSON type from
text
tojson
by @msmakouz (#134)
- Add the
- All the drivers:
- Add
enableForeignKeyConstraints
anddisableForeignKeyConstraints
methods in Driver Handlers by @msmakouz (#130) - Add an ability to disable the query cache before query using
withoutCache()
by @msmakouz and @roxblnfk (#137)
- Add
- JSON support:
- Add methods to work with JSON columns by @msmakouz and @roxblnfk (#135)
- Add an ability to set JSON default value as an array by @msmakouz and @roxblnfk (#138)
- Fix incorrect parameters processing for JOIN subqueries by @smelesh (#133)
2.5.2 (2023-07-03)
- Fix Postgres schema restoring after reconnect by @msmakouz in (#126)
2.5.1 (2023-06-09)
- Fix drastic increase of insert statements on pg driver with complex primary keys by @wolfy-j (#122)
2.5.0 (2023-05-12)
- Add ability to use non-primary serial column by @msmakouz (#106)
- Add ability to configure DB port passing a string by @msmakouz (#109)
- Add ability to define a custom type column by @msmakouz (#104)
- Add the ability to define
readonlySchema
for columns by @msmakouz (#116) - Add
AbstractForeignKey::$index
property to enable/disable index creation by @msmakouz (#119)
- Fix inserting an array of rowsets without calling the columns method by @msmakouz (#120)
- Improve types for
TableInterface
andColumnInterface
by @vjik (#108) - Fix typos by @arogachev (#110, #111)
2.4.1 (2023-03-08)
- Fix: add schema to Postgres dependency table names by @msmakouz (#102)
- Fix: don't add a table prefix when a column is quoting by @msmakouz (#103)
2.4.0 (2023-02-01)
- Since v2.4.0, interpolation in logs is disabled by default
- Add option
logQueryParameters
in the driveroptions
to enable interpolation in SQL query logs by @msmakouz (#95) - Add PostgreSQL specific data types by @msmakouz (#93)
- Add MySQL
SET
type support by @msmakouz (#92)
- Fix Interpolator performance by @msmakouz (#94) thx @hustlahusky
2.3.0 (2022-12-27)
- Add support for array values in the
IN
andNOT IN
operators by @roxblnfk (#69, #70, #71) - Add
PdoInterface
as a possible return type for theDriver::getPDO()
method by @roxblnfk (#76) - Add the
options
array parameter to all driver configs to pass additional driver options. ThewithDatetimeMicroseconds
option can be set totrue
to store aDateTime
with microseconds by @msmakouz (#86) - Add a config recovery mechanism via
__set_state()
by @wakebit (#83) - Add the ability to define the
size
of adatetime
column by @msmakouz (#86) - Add support for the unsigned and zerofill properties in MySQL Integer types by @roxblnfk (#88)
2.2.2 (2022-09-27)
- Fix transaction level changing on disconnect when transaction is starting by @roxblnfk (#76)
2.2.1 (2022-07-02)
- Hotfix: make the
$config
parameter of theDatabaseConfig
constructor optional again by @roxblnfk
2.2.0 (2022-06-23)
- Add supporting for PHP 8.1 Enumerations by @roxblnfk (#67)
- Add supporting for smallint column type by @gam6itko (#58)
- Fix typo in the
\Cycle\Database\Schema\State::forgerForeignKey
method by @BeMySlaveDarlin (#53) - Fix compatibility with Spiral Framework 3 packages:
- Remove overriding of the
$config
property in theDatabaseConfig
class by @roxblnfk (#64) - Update
composer.json
dependencies
- Remove overriding of the
2.1.3 (2022-05-20)
- Fix query interpolation by @roxblnfk (#60)
2.1.2 (2022-01-20)
- Fix wrong bind parameter order in a select query with join by @roxblnfk (#48)
- Fix access to unitialized driver property on
ActiveQuery::__debugInfo()
call by @roxblnfk (#46)
2.1.1 (2022-01-12)
- Fix phpdoc for the
SelectQuery::orderBy
method by @butschster (#45) - Fix problem with driver cloning by @butschster (#44)
2.1.0 (2021-12-31)
- Added
psr/log
dependency by @thgs (#35) - Add ability to get/set driver name by @butschster (#38)
- Optimize fetching indexes and primary keys in Postgres driver by @hustlahusky (#37)
- Fix type casting for column size value in the PG Column class by @rauanmayemir (#34)
- Add
psr/log
dependency by @thgs (#35) - Downgrade spiral dependencies to stable by @roxblnfk (#40)
2.0.0 (2021-12-22)
- Namespace
Spiral\Database
replaced withCycle\Database
@butschster (#1) - Minimal PHP version is 8.0
- Added supporting for postgres schemas @butschster (#2)
- Added DTO configs @SerafimArts, @msmakouz (#10, #14)
- Added method to get transaction level @msmakouz (#23)
- Added
ColumnReturnableInterface
for database drivers @butschster (#25)
- The package moved from
spiral/database
tocycle/database
- Improvements to
join
methods @butschster - Tests have been restructured @butschster (#21)