fix/EZP-21207 Creating a view with the wrong schema must return an error 400 instead of error 500
Fix EZP-21991: UserHash should be cached tied to user session id, not user cookies
Merge pull request #720 from ezsystems/fix_EZP-21991_userHashSessionId

Fix EZP-21991: UserHash should be cached tied to user session id, not user cookies
EZP-22180: complete integration test cases for loading relations
EZP-22180: fix loading relations to published Content only
EZP-22180: remove test duplicated in integration suite
EZP-22146: fixed: assert assignment type
EZP-22146: implemented loadRoleAssignmentsByRoleId()
EZP-22146: fixed getRoleAssignments()
EZP-22146: implemented removal of roles from all users/groups
EZP-22146: remove usage of SPI Role::groupIds
EZP-22146: remove SPI Role::groupIds
EZP-22146: add test for loadRoleAssignmentsByRoleId()
EZP-22146: move removal of all assignments to Role Gateway::deleteRole()
EZP-22146: removed deprecated column and join
Merge pull request #728 from ezsystems/fix-22180-loadRelations-published

Fix EZP-22180: loading (reverse) relations does not check for published Content
Merge pull request #717 from ezsystems/fix-EZP-22146-role-groupId-removal

Fix EZP-22146: roles applied to many users cause fatal errors
Fix EZP-22337: Hidden state on Locations is not taken into account in ViewController
Fix EZP-22318: Make Symfony session options SiteAccess aware

This patch allows to override session options at the SiteAccess level.
This includes:
* cookie_domain
* cookie_path
* cookie_lifetime
* cookie_secure
* cookie_httponly

Additionally, `session_name` setting is deprecated in favor of `session.name`:

Before:
```yaml
ezpublish:
    system:
        my_siteaccess:
            session_name: SomeSessionName
```

After:
```yaml
ezpublish:
    system:
        my_siteaccess:
            session:
                name: SomeSessionName
                cookie_path: /my_siteaccess
                cookie_httponly: true
```
EZP-22318: Tweaked fragment framework

Side effect when having a cookie path by SiteAcces (hence at runtime), when using a URI matcher, when you do an ESI or Hinclude,
you'll lose the SiteAccess part in the URI as the fragment path is configured per application, and not accessible at runtime.

Solution here is to ensure that the SiteAccess URI part is correctly reflected when generating the fragment path,
and to ensure the fragment listener accepts it.

As for the FragmentListener, a custom factory has been added to examinate the current pathinfo.