167 Commits

Author SHA1 Message Date
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
67b9a57e86 additional fix for #13501
close #13593
2017-05-31 19:17:28 +02:00
fc8ea4831b Fixes #14108: fixed phpdoc mistake in method description 2017-05-03 23:37:46 +03:00
375ea7a847 Fixes #13951: renamed get-method which was conflicting with existing property (#14055) 2017-04-26 13:32:58 +03:00
d2fb17f444 Fixes #13961: RBAC Rules: PostgreSQL: PHP Warning "unserialize() expects parameter 1 to be string, resource given" was fixed 2017-04-12 21:48:16 +03:00
a182ce57fc Fixes for issues found with Static Code Analysis with Php Inspections (EA Extended) (#13606)
* Php Inspections (EA Extended): language level migration fixes
* Php Inspections (EA Extended): instanceof a trait always return false
* Php Inspections (EA Extended): fixed preg_quote (/ is not escaped by default)
* Php Inspections (EA Extended): fixed a greedy regex
* Php Inspections (EA Extended): refereted instanceof self in a trait
* Php Inspections (EA Extended): revert language level changes in requirements checker
* Php Inspections (EA Extended): revert language level changes in requirements checker
* Php Inspections (EA Extended): more greedy regexes fixed
2017-02-22 17:07:52 +03:00
323568c2e9 Remove trailing spaces from sources and tests (#13621) [skip ci] 2017-02-19 17:34:22 +03:00
1c496532e5 Fixed RBAC migration after bad copy-paste 2017-02-16 09:28:24 +02:00
04eb836aa1 Fixed wrong method name in RBAC migration 2017-02-15 15:27:06 +02:00
2504ab72f2 Fixed RBAC migraction to work on Oracle
Fixes #13513
2017-02-15 13:01:42 +02:00
3a4505ac08 Fixes #11230: Include defaultRoles in yii\rbac\DbManager->getRolesByUser() results 2017-02-15 01:26:33 +03:00
97c43c2480 Fixes #13501: Fixed yii\rbac\DbManager::getRule() and yii\rbac\DbManager::getRules() to properly handle resource data came from Rule table when using PostgreSQL 2017-02-04 15:51:12 +03:00
c19b2f7dc8 release version 2.0.11 2017-02-01 17:46:29 +01:00
cc37cd626f Fixes #12599: Fixed MSSQL fail to work with nvarbinary. Enhanced SQL scripts compatibility with older versions 2017-01-23 10:31:52 +03:00
4e32fb1eba Enhanced PHPDocs 2016-12-17 12:44:39 +02:00
5795b3937e Added rbac\BaseManager::hasNoAssignments() 2016-12-17 12:37:36 +02:00
bfabb1e2b2 Update ManagerInterface.php 2016-11-13 17:29:36 +01:00
324b38d504 #12976: improved phpdoc wording 2016-11-13 17:15:02 +03:00
23790272dc Changed data column type from text to blob to handle null-byte (\0) in serialized RBAC rule properly
Closes #12681
2016-11-12 15:46:14 +02:00
eeeafc91b3 Fixes #7980: Removed duplicate code in getItem() which is executed anyways in populateItem() 2016-11-10 01:52:02 +03:00
fb8fd66a08 Fixes #12939: Hard coded table names for MSSQL in RBAC migration 2016-11-08 23:44:09 +03:00
4aa935e69e Fixes #12055: Changed boolean to bool and integer to int in phpdoc 2016-11-07 02:51:39 +03:00
8642c3f892 Changed type column type from int to smallInt in RBAC migrations
Closes #11929
2016-11-05 21:19:50 +02:00
32f4dc8997 Fixes #5385: links created from classes to corresponding guide articles (#12920) 2016-11-04 18:55:14 +03:00
73a30780b3 Fixes #12810: getChildRoles() throws an exception when role has no children 2016-10-24 14:11:09 +03:00