188 Commits

Author SHA1 Message Date
048eef42cd Fix #20191: Fix ActiveRecord::getDirtyAttributes() for JSON columns with multi-dimensional array values 2024-06-08 10:31:26 +03:00
52e4a3e645 release version 2.0.50 2024-05-30 20:23:31 +03:00
a733e8a6b2 Add a throws comment to BaseActiveRecord save 2024-04-14 01:30:18 +03:00
e2a167028b Upgrade to PSR12 coding standard (#20121) 2024-03-19 17:21:27 +03:00
dffb4c7529 Fix version in since tag 2023-12-25 12:20:09 +03:00
02ed808056 New methods: BaseActiveRecord::loadRelations() and BaseActiveRecord::loadRelationsFor(). 2023-10-13 13:22:48 +03:00
0f7248c7a2 release version 2.0.49 2023-08-29 15:36:17 +02:00
8532622d7b Fix #19911: Resolved inconsistency in ActiveRecord::getAttributeLabel() with regard of overriding in primary model labels for attributes of related model in favor of allowing such overriding for all levels of relation nesting 2023-08-26 07:06:41 +04:00
e916e9d564 Fix #19914: Fixed ArrayHelper::keyExists() and ::remove() functions when the key is a float and the value is null 2023-08-18 15:31:09 +04:00
73f57fdcb0 Fix #19872: Fixed the definition of dirty attributes in AR properties for a non-associative array in case of changing the order of elements 2023-08-18 15:19:24 +04:00
d135996c64 Fix #19857: Fix AttributeTypecastBehavior::resetOldAttributes() causes "class has no attribute named" InvalidArgumentException 2023-07-10 17:30:32 +03:00
a8e83abd8f Fix #19743: Non-associative array values in AR weren't considered dirty when reordered 2023-05-21 12:06:16 +03:00
b77caaa0b2 BC break: Calling a method unnecessarily (#19810)
* BC: Calling a method unnecessarily

Making an indirect call to the `$this->getOldAttributes()` method caused my code to break. I understand that the correct thing would be to reference `$this->_oldAttributes`.

* Null check

* Update CHANGELOG.md

* Change isAttributeDirty() method to isValueDifferent()

* Update CHANGELOG.md
2023-04-21 11:24:54 +02:00
a6ff298964 Revert "Fix #19804: Change $this->oldAttributes to $this->_oldAttributes to avoid calling a method unnecessarily"
This reverts commit 246a58163768f0b322ae28fc15200e6c33bef73f.
2023-04-18 19:57:09 +04:00
246a581637 Fix #19804: Change $this->oldAttributes to $this->_oldAttributes to avoid calling a method unnecessarily 2023-04-18 18:54:54 +03:00
22614a5b1f release version 2.0.46 2022-08-19 01:18:45 +03:00
161526cd41 HTTPS everywhere (#19503) 2022-08-03 12:32:18 +03:00
0f004db99b Fixed issue when trying to check if a multidimensional array is dirty… (#19272)
* Fixed issue when trying to check if a multidimensional array is dirty attribute or not

* fixed issue in logic and added test

* Updated test to only support PHP 7 and above

* Code refactoring

* Updated Test Cases

* Update framework/helpers/BaseArrayHelper.php

Co-authored-by: Bizley <pawel@positive.codes>

* Added to CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Maher Al Ghoul <maher.gh@opensooq.com>
Co-authored-by: Bizley <pawel@positive.codes>
Co-authored-by: Maher Al Ghoul <maher@rufoof.com>
Co-authored-by: Alexander Makarov <sam@rmcreative.ru>
Co-authored-by: Maher Al Ghoul <Maher.AlGhoul@opensooq.com>
2022-04-18 13:41:20 +02:00
4628b91e73 Fix types (#19332)
* Migration::upsert() returns void

* Unneeded `@property` tags

* Add missing `null` param/return types

* Null types for db\Query + db\ActiveQuery

* Fixed testSelect
2022-03-30 18:40:10 +02:00
1271bc419f Fix #19041: Fix PHP 8.1 issues 2022-01-14 13:52:01 +03:00
655786b7ed release version 2.0.44 2021-12-30 10:50:56 +03:00
c905c10c93 Document that link() will not trigger events/behaviors (#18683) 2021-08-07 17:04:25 +03:00
330166e703 fix Exception\Throwable order 2021-06-13 18:07:43 +05:00
7966fe47e6 Scrutinizer fixes (#18685)
* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/filters/AccessRule.php?selectedLabels%5B0%5D=2&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/helpers/BaseFileHelper.php?selectedLabels%5B0%5D=2&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/base/Application.php?selectedLabels%5B0%5D=7&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/base/Module.php?selectedLabels%5B0%5D=7&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/web/MultipartFormDataParser.php?selectedLabels%5B0%5D=7&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/web/Session.php?selectedLabels%5B0%5D=7&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/base/Controller.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/console/controllers/MigrateController.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* Added vardocs, and small refactor

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/db/conditions/InConditionBuilder.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/db/Connection.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/db/mssql/QueryBuilder.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/log/Logger.php?selectedLabels%5B0%5D=6&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/console/controllers/BaseMigrateController.php?selectedLabels%5B0%5D=18&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* Adding space between type

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/console/controllers/CacheController.php?selectedLabels%5B0%5D=18&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/console/controllers/FixtureController.php?selectedLabels%5B0%5D=18&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* https://scrutinizer-ci.com/g/yiisoft/yii2/issues/master/files/framework/console/controllers/MigrateController.php?selectedLabels%5B0%5D=18&selectedSeverities%5B0%5D=10&selectedSeverities%5B1%5D=5&orderField=path&order=asc&honorSelectedPaths=0

* Update framework/console/controllers/CacheController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/CacheController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

* Update framework/console/controllers/FixtureController.php

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>

Co-authored-by: Alexander Makarov <sam@rmcreative.ru>
2021-05-31 21:07:36 +03:00
82be8b61cf Replacing deprecated ::className() with ::class (#18671) 2021-05-22 23:14:54 +03:00
ddeb80cdf3 Fixed typo 2021-05-19 07:32:35 +02:00
52cf02d685 Fix #18634: Fix yii\db\BaseActiveRecord::unlink() and unlinkAll() to omit condition for on property when it doesn't exist 2021-05-06 13:04:40 +03:00
f62701bf1d Fixed another call 2021-04-24 11:33:59 +03:00
ffec508e58 Do not use $this to call static method 2021-04-23 21:36:24 +03:00
54f25c4b04 Fix #17174: Fix yii\db\BaseActiveRecord::unlink() to not ignore on conditions in via relations 2021-03-14 19:04:07 +03:00
4e2045c040 release version 2.0.41 2021-03-04 00:51:35 +03:00
ccb14ff667 release version 2.0.39 2020-11-10 13:58:35 +03:00
c1b033a15f Using ExpressionInterface instead of Expression in ActiveRecord::findbycondition() (#18188) 2020-07-20 17:54:28 +03:00
931f080aee Fix #18182: yii\db\Expression was not supported as condition in ActiveRecord::findOne() and ActiveRecord::findAll() 2020-07-20 00:21:41 +03:00
5ee7fabbf9 Fixes #16552: Added check in yii\db\ActiveQuery::prepare() to prevent populating already populated relation when another relation is requested with via 2018-09-09 23:44:10 +03:00
84c55b468a [minor] SCA (#16464)
* Php Inspections (EA Ultimate): new findings

* Php Inspections (EA Ultimate): dealing with older PHP versions compatibility
2018-07-01 01:04:48 +03:00
1945dc69c7 Fixes #9133: Added yii\behaviors\OptimisticLockBehavior 2018-05-12 14:43:13 +03:00
Sam
84cb255aab Fixes #16245: Fixed __isset() in BaseActiveRecord not catching errors 2018-05-11 11:04:00 +03:00
56a3d21c24 Minor refactoring of BaseActiveRecord::populateRelation() (#16161) 2018-04-26 19:09:26 +03:00
2a3428c9e9 Fixes #15875: afterSave for new models flushes unsaved data 2018-04-24 19:40:21 +03:00
a38302fdfd improved filtering condition on yii\db\ActiveRecord 2018-03-20 11:42:28 +01:00
5f75916cde Wording adjustments and doc enhancements [skip ci] 2018-03-20 11:20:56 +01:00
b37f361ad7 Fixed possible SQL injection through ActiveRecord::findOne() 2018-03-20 11:20:56 +01:00
ef9600234e Fix magic getter for ActiveRecord (#15696) 2018-02-20 20:10:44 +05:00
74dc1cdc30 Fixes #13618: Active record now resets related models after corresponding attributes updates
Co-authored-by: Robert Korulczyk <robert@korulczyk.pl>
2018-02-12 02:26:49 +03:00
e6f5c46cdc Fixes #15633: Deprecate some things going away/changing in 2.1
- Deprecated `yii\base\BaseObject::className()` in favor of native PHP syntax `::class`, which does not trigger autoloading
- Deprecated XCache and Zend data cache support as caching backends
- Deprecated `yii\BaseYii::powered()` method
- Added `yii\base\InvalidArgumentException` and deprecated `yii\base\InvalidParamException`
- Added `yii\BaseYii::debug()` and deprecated `yii\BaseYii::trace()`
2018-02-11 01:48:29 +03:00
65f6b59b35 @inheritdoc notation changed 2018-01-23 13:11:24 +02:00
04891af00a Removed confusing comment about event triggering from BaseActiveRecord::init() (#14303) [skip ci] 2017-12-19 21:50:44 +03:00
4c61d96786 Corrected return type of BaseActiveRecord::findOne (#14798) 2017-09-11 22:31:00 +02:00
d68789a195 Fixes #13779, fixes #5786
- #13779: Fixed `yii\db\ActiveRecord::joinWith()` unable to use relation defined via attached behavior.
- #5786: Allowed to use custom constructors in ActiveRecord-based classes.
2017-08-29 15:13:28 +03:00