191 Commits

Author SHA1 Message Date
7b369576a8 Fix #15376: Added $userId for RBAC roles cache 2022-12-28 19:43:20 +04:00
a97934fd92 Fix #15376: Added cache usage for yii2\rbac\DbManager::getRolesByUser() 2022-12-02 13:45:45 +03:00
394922f804 Fix check for stream return false
c33ef022fe (r89827546)
2022-11-14 12:58:06 +03:00
c33ef022fe Fix #19670: Fix Error null check PHP 8.1 yii\rbac\DbManager 2022-11-14 11:39:41 +03:00
161526cd41 HTTPS everywhere (#19503) 2022-08-03 12:32:18 +03:00
a87c02c712 Fix more types (#19333)
* Migration::upsert() returns void

* Unneeded `@property` tags

* Add missing `null` param/return types

* Null types for db\Query + db\ActiveQuery

* Fixed testSelect

* Null types for Validator

* Several more null types

* One more

* Make AccessRule::$allow always a boolean

It doesn't have any special null handling, so it's safe to default to false

* Validator::$skipOnEmpty is always a boolean

* Catch all throwable from Widget::widget()

* Don't limit $previous args to \Exception

The actual \Exception allows $previous to be any throwable in PHP 7+

* Add Throwable catch block to Instance::get()

* Throwable cleanup

Comment changes only.

- Document \Throwable instead of \Exception wherever appropriate
- Removed redundant exception/error classes when \Throwable is referenced

* Yii::setlogger() accepts null

* ArrayHelper::removeValue() can remove any type of value

* Change default $allow value to false
2022-04-03 11:20:21 +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
437b0d51aa Fix #19182: RBAC Migration failed when use oracle with oci8 2022-01-21 19:26:52 +03:00
655786b7ed release version 2.0.44 2021-12-30 10:50:56 +03:00
4479c66522 Fixed phpdoc types 2021-03-12 23:41:48 +03:00
4e2045c040 release version 2.0.41 2021-03-04 00:51:35 +03:00
e208a5aa0d Fix #18383: RBAC's generated file made PSR-12 compliant 2020-11-26 16:15:34 +03:00
ccb14ff667 release version 2.0.39 2020-11-10 13:58:35 +03:00
6e694ee249 release version 2.0.38 2020-09-15 00:52:10 +03:00
287476465d Fix #18196: yii\rbac\DbManager::$checkAccessAssignments is now protected 2020-09-08 12:16:39 +03:00
b492476e35 Fix #18189: Fix "Invalid parameter number" in yii\rbac\DbManager::removeItem() (#18190) 2020-07-21 12:27:01 +03:00
24505e7cdd Change SQL in migration for support old version of MSSQL (without IF EXISTS) (#18123) 2020-06-22 18:22:42 +03:00
4c416c7982 Fix #18105: Fix for old trigger in RBAC migration with/without prefixTable 2020-06-15 14:05:58 +03:00
b83f06268f Fix #18041: Fix RBAC migration for MSSQL 2020-06-04 23:12:32 +03:00
3bc919bcbd Fix #16481: Fix RBAC MSSQL trigger 2020-05-02 13:26:30 +03:00
5275473fc9 Bug #17685: up and down methods now using proper "db" component 2019-11-26 22:05:05 +03:00
Poo
439a5c6681 Fix #17657: Fix migration errors from missing $schema in RBAC init file when using MSSQL 2019-11-04 22:40:39 +03:00
dfbf176831 Fix #17522: DbManager::isEmptyUserId() is now protected 2019-08-27 21:05:48 +03:00
2b79a0c5ba Fixes #16945: Fixed RBAC DbManager ruleName fetching on the case of PDO::ATTR_ORACLE_NULLS => PDO::NULL_TO_STRING 2018-12-31 06:43:07 -05:00
eec998faac Fixes #16490: Fix schema on rbac init 2018-10-06 00:59:46 +03:00
b933d61861 Update m170907_052038_rbac_add_index_on_auth_assignment_user_id.php (#16272)
When the authManager DB Connection is not the default one the migration fails
2018-05-30 22:49:41 +03:00
69db550876 Fixed RBAC migration updates (#16330) 2018-05-30 00:12:26 +03:00
9e6d5aa1a8 Fixes #15548: Fixed index names collision in RBAC 2018-05-24 16:29:05 +05:00
abb503c284 release version 2.0.14.1 2018-02-24 22:23:06 +02:00
22832b7c49 release version 2.0.14 2018-02-19 00:27:09 +02:00
3ed5e35701 Fixed PHPDocs, code and tests for #15422 2018-02-19 00:11:13 +02: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
e516d64d1e Fixes #15422: Added default roles dynamic definition support via closure for yii\rbac\BaseManager 2018-01-13 21:02:34 +03:00
fb23b0d0ea Code style fixes 2017-11-01 02:43:02 +03:00
324b82c6d8 phpDoc to BaseManager::defaultRoles [skip ci] 2017-10-11 10:36:50 +03:00
d4780559c9 Fixes #14765: RBAC: add index on user_id column in auth_assignment table for performance reasons 2017-09-19 23:35:46 +02:00
711498f93a Cache user assignments to avoid unnecessary DB queries (#14696)
* Cache user assignments to avoid unnecessary DB queries

alternative to #9138 and #10981, only cache on `checkAccess` call which is usually
called on every request. Cache is not necessary in RBAC management.

Similar to #14061 but includes proper cache invalidation and test.

`getAssignments()` always queries the DB. The cache is only applied on
`checkAccess` calls, and invalidated as soon as the RBAC structure is
modified through the manager component (verified by the test case).

Regarding [concerns of memory usage](https://github.com/yiisoft/yii2/pull/14061#issuecomment-297982502)
if used in batch mode on multiple users, you can call
`invalidateCache()` method if this really causes a problem.

fixes #7743
close #9138
close #14061
close #10981

See also
- https://github.com/yiisoft/yii2/issues/7626#issuecomment-77745166
- https://github.com/yiisoft/yii2/pull/14061#issuecomment-319645488

* improve test naming

* fix tests

* fix assignment cache for non-scalar user-ids
2017-09-01 10:50:36 +02:00
5a8c3d537b Enable phpdoc_summary rule in php-cs-fixer config (#14675)
* Enable `phpdoc_summary` rule in php-cs-fixer config.

* Fix case in "PHPDoc".
2017-08-21 11:19:35 +02:00
1501c659ac Add empty lines before return statements. (#14682) [skip ci] 2017-08-21 01:58:49 +03:00
d4ded67f69 Fixes #14513: Updated phpdoc and added tests for yii\rbac\ManagerInterface::assign and yii\rbac\ManagerInterface::revoke functions (#14528) 2017-07-24 23:20:03 +03:00
1ee29c630d Fixes #14493: Fixed getting permissions in yii\rbac\Dbmanger::getPermissionsByUser by user with id equals 0 2017-07-24 18:42:40 +03:00
69673c0c94 Rename Object -> BaseObject for PHP 7.2 compatibility
issue #7936
2017-07-19 10:51:46 +02:00
a50d9d8e3e Enable include rule in php-cs-fixer (#14418) 2017-07-10 13:19:57 +03:00
fe8a0a6a2e Enable no_useless_else rule in php-cs-fixer (#14420) 2017-07-10 11:26:21 +03:00
93f88bb7db mention defaultRoles in getRolesByUser() docs
fixes #14393
2017-07-06 12:40:13 +02:00
ba0ab403b5 Added php-cs-fixer coding standards validation to Travis CI (#14100)
* php-cs-fixer: PSR2 rule.

* php-cs-fixer: PSR2 rule - fix views.

* Travis setup refactoring.

* Add php-cs-fixer to travis cs tests.

* Fix tests on hhvm-3.12

* improve travis config

* composer update

* revert composer update

* improve travis config

* Fix CS.

* Extract config to separate classes.

* Extract config to separate classes.

* Add file header.

* Force short array syntax.

* binary_operator_spaces fixer

* Fix broken tests

* cast_spaces fixer

* concat_space fixer

* dir_constant fixer

* ereg_to_preg fixer

* function_typehint_space fixer

* hash_to_slash_comment fixer

* is_null fixer

* linebreak_after_opening_tag fixer

* lowercase_cast fixer

* magic_constant_casing fixer

* modernize_types_casting fixer

* native_function_casing fixer

* new_with_braces fixer

* no_alias_functions fixer

* no_blank_lines_after_class_opening fixer

* no_blank_lines_after_phpdoc fixer

* no_empty_comment fixer

* no_empty_phpdoc fixer

* no_empty_statement fixer

* no_extra_consecutive_blank_lines fixer

* no_leading_import_slash fixer

* no_leading_namespace_whitespace fixer

* no_mixed_echo_print fixer

* no_multiline_whitespace_around_double_arrow fixer

* no_multiline_whitespace_before_semicolons fixer

* no_php4_constructor fixer

* no_short_bool_cast fixer

* no_singleline_whitespace_before_semicolons fixer

* no_spaces_around_offset fixer

* no_trailing_comma_in_list_call fixer

* no_trailing_comma_in_singleline_array fixer

* no_unneeded_control_parentheses fixer

* no_unused_imports fixer

* no_useless_return fixer

* no_whitespace_before_comma_in_array fixer

* no_whitespace_in_blank_line fixer

* not_operator_with_successor_space fixer

* object_operator_without_whitespace fixer

* ordered_imports fixer

* php_unit_construct fixer

* php_unit_dedicate_assert fixer

* php_unit_fqcn_annotation fixer

* phpdoc_indent fixer

* phpdoc_no_access fixer

* phpdoc_no_empty_return fixer

* phpdoc_no_package fixer

* phpdoc_no_useless_inheritdoc fixer

* Fix broken tests

* phpdoc_return_self_reference fixer

* phpdoc_single_line_var_spacing fixer

* phpdoc_single_line_var_spacing fixer

* phpdoc_to_comment fixer

* phpdoc_trim fixer

* phpdoc_var_without_name fixer

* psr4 fixer

* self_accessor fixer

* short_scalar_cast fixer

* single_blank_line_before_namespace fixer

* single_quote fixer

* standardize_not_equals fixer

* ternary_operator_spaces fixer

* trailing_comma_in_multiline_array fixer

* trim_array_spaces fixer

* protected_to_private fixer

* unary_operator_spaces fixer

* whitespace_after_comma_in_array fixer

* `parent::setRules()` -> `$this->setRules()`

* blank_line_after_opening_tag fixer

* Update finder config.

* Revert changes for YiiRequirementChecker.

* Fix array formatting.

* Add missing import.

* Fix CS for new code merged from master.

* Fix some indentation issues.
2017-06-12 12:25:45 +03:00
cb53b2feec Fixes #14081: Added yii\caching\CacheInterface to make custom cache extensions adoption easier 2017-06-11 19:18:33 +03:00
be658f82bf release version 2.0.12 2017-06-05 16:33:41 +02:00
4b9e48b8dc improved docs: link term "path alias" to the guide 2017-06-02 10:45:20 +02:00