Commit 0ba98979 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Possibilité d'activer la mise en cache du tableau des rôles par privilège pour...

Possibilité d'activer la mise en cache du tableau des rôles par privilège pour accélerer l'init du moteur d'ACL.
parent 10120d48
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -38,6 +38,8 @@
        "aws/aws-sdk-php": "^3.226",
        "beberlei/assert": "^3.0",
        "guzzlehttp/guzzle": "^6.3 || ^7.0",
        "laminas/laminas-cache": "^3.13",
        "laminas/laminas-cache-storage-adapter-filesystem": "^2.5",
        "laminas/laminas-feed": "^2.12",
        "laminas/laminas-form": "^3.1",
        "laminas/laminas-soap": "^2.8",
@@ -52,6 +54,7 @@
        "unicaen/app": "^6.2",
        "unicaen/auth-token": "^7.1",
        "unicaen/authentification": "^6.4",
        "unicaen/privilege": "dev-release_6.3.0 as 6.2.1",
        "unicaen/console": "^6.0",
        "unicaen/db-anonym": "^4.0",
        "unicaen/db-import": "^7.2",
+95 −197
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@
        "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
        "This file is @generated automatically"
    ],
    "content-hash": "c4f9d2986a7565fa67e2c0253e5a0796",
    "content-hash": "015cca876e016938e7dcefe9b8034238",
    "packages": [
        {
            "name": "apereo/phpcas",
@@ -2491,121 +2491,6 @@
            ],
            "time": "2025-03-27T12:30:47+00:00"
        },
        {
            "name": "icecave/parity",
            "version": "1.0.0",
            "source": {
                "type": "git",
                "url": "https://github.com/icecave/parity.git",
                "reference": "0109fef58b3230d23b20b2ac52ecdf477218d300"
            },
            "dist": {
                "type": "zip",
                "url": "https://api.github.com/repos/icecave/parity/zipball/0109fef58b3230d23b20b2ac52ecdf477218d300",
                "reference": "0109fef58b3230d23b20b2ac52ecdf477218d300",
                "shasum": ""
            },
            "require": {
                "icecave/repr": "~1",
                "php": ">=5.3"
            },
            "require-dev": {
                "eloquent/liberator": "~1",
                "icecave/archer": "~1"
            },
            "suggest": {
                "eloquent/asplode": "Drop-in exception-based error handling."
            },
            "type": "library",
            "autoload": {
                "psr-0": {
                    "Icecave\\Parity": "src"
                }
            },
            "notification-url": "https://packagist.org/downloads/",
            "license": [
                "MIT"
            ],
            "authors": [
                {
                    "name": "James Harris",
                    "email": "james.harris@icecave.com.au",
                    "homepage": "https://github.com/jmalloc"
                }
            ],
            "description": "A customizable deep comparison library.",
            "homepage": "https://github.com/IcecaveStudios/parity",
            "keywords": [
                "compare",
                "comparison",
                "equal",
                "equality",
                "greater",
                "less",
                "sort",
                "sorting"
            ],
            "support": {
                "issues": "https://github.com/icecave/parity/issues",
                "source": "https://github.com/icecave/parity/tree/1.0.0"
            },
            "time": "2014-01-17T05:56:27+00:00"
        },
        {
            "name": "icecave/repr",
            "version": "1.0.1",
            "source": {
                "type": "git",
                "url": "https://github.com/icecave/repr.git",
                "reference": "8a3d2953adf5f464a06e3e2587aeacc97e2bed07"
            },
            "dist": {
                "type": "zip",
                "url": "https://api.github.com/repos/icecave/repr/zipball/8a3d2953adf5f464a06e3e2587aeacc97e2bed07",
                "reference": "8a3d2953adf5f464a06e3e2587aeacc97e2bed07",
                "shasum": ""
            },
            "require": {
                "php": ">=5.3"
            },
            "require-dev": {
                "icecave/archer": "~1"
            },
            "suggest": {
                "eloquent/asplode": "Drop-in exception-based error handling."
            },
            "type": "library",
            "autoload": {
                "psr-4": {
                    "Icecave\\Repr\\": "src"
                }
            },
            "notification-url": "https://packagist.org/downloads/",
            "license": [
                "MIT"
            ],
            "authors": [
                {
                    "name": "James Harris",
                    "email": "james.harris@icecave.com.au",
                    "homepage": "https://github.com/jmalloc"
                }
            ],
            "description": "A library for generating string representations of any value, inspired by Python's reprlib library.",
            "homepage": "https://github.com/IcecaveStudios/repr",
            "keywords": [
                "human",
                "readable",
                "repr",
                "representation",
                "string"
            ],
            "support": {
                "issues": "https://github.com/icecave/repr/issues",
                "source": "https://github.com/icecave/repr/tree/1.0.1"
            },
            "time": "2014-07-25T05:44:41+00:00"
        },
        {
            "name": "justinrainbow/json-schema",
            "version": "6.4.1",
@@ -3931,6 +3816,77 @@
            ],
            "time": "2025-01-21T12:32:41+00:00"
        },
        {
            "name": "laminas/laminas-cache-storage-adapter-filesystem",
            "version": "2.5.0",
            "source": {
                "type": "git",
                "url": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem.git",
                "reference": "d1777b7abf3ac9bcbf203be6aa25786be17cd336"
            },
            "dist": {
                "type": "zip",
                "url": "https://api.github.com/repos/laminas/laminas-cache-storage-adapter-filesystem/zipball/d1777b7abf3ac9bcbf203be6aa25786be17cd336",
                "reference": "d1777b7abf3ac9bcbf203be6aa25786be17cd336",
                "shasum": ""
            },
            "require": {
                "laminas/laminas-cache": "^3.10.0",
                "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0"
            },
            "conflict": {
                "amphp/amp": "<2.6.4"
            },
            "provide": {
                "laminas/laminas-cache-storage-implementation": "1.0"
            },
            "require-dev": {
                "ext-pcntl": "*",
                "ext-posix": "*",
                "laminas/laminas-cache-storage-adapter-benchmark": "^1.1.0",
                "laminas/laminas-cache-storage-adapter-test": "^2.0 || 2.0.x-dev",
                "laminas/laminas-coding-standard": "~2.4",
                "laminas/laminas-serializer": "^2.14.0",
                "phpunit/phpunit": "^9.6.22",
                "psalm/plugin-phpunit": "^0.19.0",
                "vimeo/psalm": "^5.18"
            },
            "type": "library",
            "extra": {
                "laminas": {
                    "module": "Laminas\\Cache\\Storage\\Adapter\\Filesystem",
                    "config-provider": "Laminas\\Cache\\Storage\\Adapter\\Filesystem\\ConfigProvider"
                }
            },
            "autoload": {
                "psr-4": {
                    "Laminas\\Cache\\Storage\\Adapter\\": "src/"
                }
            },
            "notification-url": "https://packagist.org/downloads/",
            "license": [
                "BSD-3-Clause"
            ],
            "description": "Laminas cache adapter for filesystem",
            "keywords": [
                "cache",
                "laminas"
            ],
            "support": {
                "docs": "https://docs.laminas.dev/laminas-cache-storage-adapter-filesystem/",
                "forum": "https://discourse.laminas.dev/",
                "issues": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem/issues",
                "rss": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem/releases.atom",
                "source": "https://github.com/laminas/laminas-cache-storage-adapter-filesystem"
            },
            "funding": [
                {
                    "url": "https://funding.communitybridge.org/projects/laminas-project",
                    "type": "community_bridge"
                }
            ],
            "time": "2025-01-23T17:29:37+00:00"
        },
        {
            "name": "laminas/laminas-cache-storage-adapter-memory",
            "version": "2.4.0",
@@ -6689,16 +6645,16 @@
        },
        {
            "name": "laminas/laminas-servicemanager",
            "version": "3.23.0",
            "version": "3.23.1",
            "source": {
                "type": "git",
                "url": "https://github.com/laminas/laminas-servicemanager.git",
                "reference": "a8640182b892b99767d54404d19c5c3b3699f79b"
                "reference": "06594db3a644447521eace9b5efdb12dc8446a33"
            },
            "dist": {
                "type": "zip",
                "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/a8640182b892b99767d54404d19c5c3b3699f79b",
                "reference": "a8640182b892b99767d54404d19c5c3b3699f79b",
                "url": "https://api.github.com/repos/laminas/laminas-servicemanager/zipball/06594db3a644447521eace9b5efdb12dc8446a33",
                "reference": "06594db3a644447521eace9b5efdb12dc8446a33",
                "shasum": ""
            },
            "require": {
@@ -6721,12 +6677,12 @@
            "require-dev": {
                "composer/package-versions-deprecated": "^1.11.99.5",
                "friendsofphp/proxy-manager-lts": "^1.0.18",
                "laminas/laminas-code": "^4.14.0",
                "laminas/laminas-code": "^4.16.0",
                "laminas/laminas-coding-standard": "~2.5.0",
                "laminas/laminas-container-config-test": "^0.8",
                "mikey179/vfsstream": "^1.6.12",
                "phpbench/phpbench": "^1.3.1",
                "phpunit/phpunit": "^10.5.36",
                "phpbench/phpbench": "^1.4.1",
                "phpunit/phpunit": "^10.5.51",
                "psalm/plugin-phpunit": "^0.18.4",
                "vimeo/psalm": "^5.26.1"
            },
@@ -6775,7 +6731,7 @@
                    "type": "community_bridge"
                }
            ],
            "time": "2024-10-28T21:32:16+00:00"
            "time": "2025-08-12T08:44:02+00:00"
        },
        {
            "name": "laminas/laminas-session",
@@ -12200,17 +12156,20 @@
        },
        {
            "name": "unicaen/privilege",
            "version": "6.2.1",
            "version": "dev-release_6.3.0",
            "source": {
                "type": "git",
                "url": "https://git.unicaen.fr/lib/unicaen/privilege.git",
                "reference": "fbc93c62f21c3b9ec01201500e4b0b5066e9660b"
                "reference": "20fc1f9488c460666359590b6da28bc645c4510d"
            },
            "require": {
                "laminas/laminas-cache": "^3.13",
                "laminas/laminas-cache-storage-adapter-filesystem": "^2.5",
                "unicaen/app": ">=5.0",
                "unicaen/utilisateur": ">=6.2"
            },
            "require-dev": {
                "laminas/laminas-cli": "^1.11",
                "phpunit/phpunit": ">=3.7"
            },
            "type": "library",
@@ -12223,7 +12182,7 @@
                ]
            },
            "description": "Module reprenant la gestion des privileges  - Version laminas",
            "time": "2024-12-19T14:22:55+00:00"
            "time": "2025-09-02T06:47:38+00:00"
        },
        {
            "name": "unicaen/renderer",
@@ -12835,75 +12794,6 @@
            ],
            "time": "2022-10-22T12:11:18+00:00"
        },
        {
            "name": "laminas/laminas-file",
            "version": "2.12.0",
            "source": {
                "type": "git",
                "url": "https://github.com/laminas/laminas-file.git",
                "reference": "9e8ff3a6d7ccaad0865581ef672a7c48260b65d9"
            },
            "dist": {
                "type": "zip",
                "url": "https://api.github.com/repos/laminas/laminas-file/zipball/9e8ff3a6d7ccaad0865581ef672a7c48260b65d9",
                "reference": "9e8ff3a6d7ccaad0865581ef672a7c48260b65d9",
                "shasum": ""
            },
            "require": {
                "laminas/laminas-stdlib": "^2.7.7 || ^3.15.0",
                "php": "~8.0.0 || ~8.1.0 || ~8.2.0"
            },
            "conflict": {
                "zendframework/zend-file": "*"
            },
            "require-dev": {
                "laminas/laminas-coding-standard": "~1.0.0",
                "laminas/laminas-filter": "^2.7.2",
                "laminas/laminas-i18n": "^2.7.4",
                "laminas/laminas-progressbar": "^2.5.2",
                "laminas/laminas-servicemanager": "^2.7.8 || ^3.3",
                "laminas/laminas-session": "^2.8",
                "laminas/laminas-validator": "^2.10.1",
                "phpunit/phpunit": "^9.5.10"
            },
            "suggest": {
                "laminas/laminas-filter": "Laminas\\Filter component",
                "laminas/laminas-i18n": "Laminas\\I18n component",
                "laminas/laminas-validator": "Laminas\\Validator component"
            },
            "type": "library",
            "autoload": {
                "psr-4": {
                    "Laminas\\File\\": "src/"
                }
            },
            "notification-url": "https://packagist.org/downloads/",
            "license": [
                "BSD-3-Clause"
            ],
            "description": "Locate PHP classfiles",
            "homepage": "https://laminas.dev",
            "keywords": [
                "file",
                "laminas"
            ],
            "support": {
                "chat": "https://laminas.dev/chat",
                "docs": "https://docs.laminas.dev/laminas-file/",
                "forum": "https://discourse.laminas.dev",
                "issues": "https://github.com/laminas/laminas-file/issues",
                "rss": "https://github.com/laminas/laminas-file/releases.atom",
                "source": "https://github.com/laminas/laminas-file"
            },
            "funding": [
                {
                    "url": "https://funding.communitybridge.org/projects/laminas-project",
                    "type": "community_bridge"
                }
            ],
            "abandoned": true,
            "time": "2022-11-21T06:59:25+00:00"
        },
        {
            "name": "laminas/laminas-test",
            "version": "4.12.0",
@@ -15331,9 +15221,17 @@
            "time": "2025-03-24T14:11:06+00:00"
        }
    ],
    "aliases": [],
    "aliases": [
        {
            "package": "unicaen/privilege",
            "version": "dev-release_6.3.0",
            "alias": "6.2.1",
            "alias_normalized": "6.2.1.0"
        }
    ],
    "minimum-stability": "dev",
    "stability-flags": {
        "unicaen/privilege": 20,
        "unicaen/renderer": 20,
        "unicaen/search": 20,
        "unicaen/sql": 20,
+2 −4
Original line number Diff line number Diff line
@@ -8,7 +8,6 @@ return [
    'modules' => [
        'DoctrineModule',
        'DoctrineORMModule',

        'Laminas\ApiTools',
        'Laminas\ApiTools\Provider',
        'Laminas\ApiTools\Documentation',
@@ -22,8 +21,9 @@ return [
        'Laminas\ApiTools\Rest',
        'Laminas\ApiTools\Rpc',
        'Laminas\ApiTools\Versioning',

        'Laminas\Cache',
        'Laminas\Cache\Storage\Adapter\Filesystem',
//        'Laminas\Cache\Storage\Adapter\Apcu',
        'Laminas\Filter',
        'Laminas\Form',
        'Laminas\Hydrator',
@@ -41,7 +41,6 @@ return [
        'Laminas\Router',
        'Laminas\Session',
        'Laminas\Validator',

        'ZfcUser',
        'BjyAuthorize',
        'UnicaenApp',
@@ -63,7 +62,6 @@ return [
        'Unicaen\Console',
        'UnicaenParametre',
        'UnicaenSearch',

        'Feature',
        'Horodatage',
        'Structure',
+4 −4
Original line number Diff line number Diff line
@@ -7,8 +7,8 @@ use Application\Entity\Db\Privilege;
use Application\Entity\Db\Role;
use UnicaenPrivilege\Guard\PrivilegeController;
use UnicaenPrivilege\Provider\Privilege\PrivilegePrivileges;
use UnicaenPrivilege\Provider\Privilege\PrivilegeProvider;
use UnicaenPrivilege\Provider\Rule\PrivilegeRuleProvider;
use UnicaenPrivilege\Service\Privilege\PrivilegeService;
use UnicaenUtilisateur\Controller\RoleController;
use UnicaenUtilisateur\Provider\Privilege\RolePrivileges;

@@ -31,10 +31,10 @@ return [
    'bjyauthorize' => [
        'resource_providers' => [
            /**
             * Le service Privilèges peut aussi être une source de ressources,
             * si on souhaite tester directement l'accès à un privilège
             * Le PrivilegeProvider est aussi une source de Ressource, du fait que dans unicaen/auth
             * on souhaite tester directement l'accès à un privilège (i.e. privilège === ressource).
             */
            PrivilegeService::class => [],
            PrivilegeProvider::class => [],
        ],

        'rule_providers' => [
+1 −0
Original line number Diff line number Diff line
@@ -135,6 +135,7 @@ return [
                'options'       => [
                    'route'    => '/modifier-profil-privilege/:profil/:privilege',
                    'defaults' => [
                        /** @see ProfilController::modifierProfilPrivilegeAction() */
                        'controller'    => ProfilController::class,
                        'action'        => 'modifier-profil-privilege',
                    ],
Loading