diff --git a/assets/js/Components/App.js b/assets/js/Components/App.js
index 6985d55b8..b6981fedb 100644
--- a/assets/js/Components/App.js
+++ b/assets/js/Components/App.js
@@ -8,6 +8,7 @@ import AboutModal from './AboutModal'
import { View } from '@instructure/ui-view'
import Api from '../Services/Api'
import MessageTray from './MessageTray'
+import CourseUpdateProgress from './CourseUpdateProgress'
import FilesPage from './FilesPage'
import SummaryBar from './SummaryBar'
@@ -20,7 +21,6 @@ class App extends React.Component {
this.settings = props.settings
this.reportHistory = []
this.messages = props.messages
- this.newReportInterval = 5000
this.state = {
report: this.initialReport,
@@ -28,6 +28,13 @@ class App extends React.Component {
modal: null,
syncComplete: false,
hasNewReport: false,
+ progress: 0,
+ totalIssues: 0,
+ scanCompleted: false,
+ contentUpdateCompleted: false,
+ title: "",
+ updateInterval: 0,
+ scanInterval: 0,
}
this.handleNavigation = this.handleNavigation.bind(this)
@@ -41,6 +48,11 @@ class App extends React.Component {
this.handleCourseRescan = this.handleCourseRescan.bind(this)
this.handleNewReport = this.handleNewReport.bind(this)
this.resizeFrame = this.resizeFrame.bind(this)
+ this.pollBackgroundWorker = this.pollBackgroundWorker.bind(this)
+ this.fetchLoadData = this.fetchLoadData.bind(this)
+ this.fetchUpdateData = this.fetchUpdateData.bind(this)
+ this.getReport = this.getReport.bind(this)
+ this.getLatestReport = this.getLatestReport.bind(this)
}
render() {
@@ -60,7 +72,12 @@ class App extends React.Component {
}
-
+
+
+
{('welcome' === this.state.navigation) &&
response.json())
- .then(this.handleNewReport)
+ .then(() => this.getContentUpdate())
+ .then(() => this.pollBackgroundWorker())
+ .then(() => this.getReport())
// update iframe height on resize
window.addEventListener("resize", this.resizeFrame);
@@ -135,6 +154,22 @@ class App extends React.Component {
this.resizeFrame();
}
+ getReport() {
+ if(this.state.scanCompleted === true) {
+ this.getLatestReport()
+ .then((response) => response.json())
+ .then(this.handleNewReport)
+ }
+ else {
+ setTimeout(this.getReport, 500);
+ }
+ }
+
+ getLatestReport() {
+ let api = new Api(this.settings)
+ return api.getLatestReport(this.settings.course.id)
+ }
+
componentWillUnmount() {
window.removeEventListener('resize', this.resizeFrame);
}
@@ -154,14 +189,88 @@ class App extends React.Component {
handleCourseRescan() {
if (this.state.hasNewReport) {
- this.setState({ hasNewReport: false, syncComplete: false })
+ this.setState({hasNewReport: false,
+ syncComplete: false,
+ contentUpdateCompleted: false,
+ scanCompleted: false,
+ progress: 0})
this.scanCourse()
.then((response) => response.json())
- .then(this.handleNewReport)
+ .then(() => this.getContentUpdate())
+ .then(() => this.pollBackgroundWorker())
+ .then(() => this.getReport())
}
this.forceUpdate()
}
+ // As the worker process updates UDOIT with the latest content items, this method checks on whether or not
+ // This process has been completed
+ fetchUpdateData() {
+ fetch(`/udoit3/api/progress`)
+ .then(response => response.json())
+ .then(data => {
+ this.setState({
+ progress: data.progress,
+ title: data.title
+ }, () => {
+ const progress = this.state.progress
+ const interval = this.state.updateInterval
+ const title = this.state.title
+ if(title != "Getting content from Canvas") {
+ clearInterval(interval);
+ this.state.updateInterval = null
+ this.state.contentUpdateCompleted = true
+ }
+ });
+ })
+ .catch(error => {
+ console.error('Error:', error);
+ });
+ }
+
+ fetchLoadData() {
+ fetch(`http://${window.location.hostname}:8000/udoit3/api/progress`)
+ .then(response => response.json())
+ .then(data => {
+ this.setState({
+ progress: data.progress,
+ total: data.total,
+ title: data.title
+ }, () => {
+ const progress = this.state.progress
+ const total = this.state.total
+ const interval = this.state.scanInterval
+ if(progress === total) {
+ clearInterval(interval);
+ this.state.scanInterval = null
+ this.state.scanCompleted = true
+ }
+ });
+ })
+ .catch(error => {
+ console.error('Error:', error);
+ });
+ }
+
+ getContentUpdate() {
+ const interval = setInterval(() => {
+ this.fetchUpdateData();
+ }, 1000)
+ this.setState({updateInterval: interval})
+ }
+
+ pollBackgroundWorker() {
+ if (this.state.contentUpdateCompleted) {
+ const interval = setInterval(() => {
+ this.fetchLoadData()
+ }, 1000)
+ this.setState({scanInterval: interval})
+ }
+ else {
+ setTimeout(this.pollBackgroundWorker, 500);
+ }
+ }
+
handleNewReport(data) {
let report = this.state.report
let hasNewReport = this.state.hasNewReport
diff --git a/assets/js/Components/CourseUpdateProgress.js b/assets/js/Components/CourseUpdateProgress.js
new file mode 100644
index 000000000..aeed79bf4
--- /dev/null
+++ b/assets/js/Components/CourseUpdateProgress.js
@@ -0,0 +1,41 @@
+import React from 'react'
+import { Spinner } from '@instructure/ui-spinner'
+import { Alert } from '@instructure/ui-alerts'
+
+import Classes from '../../css/app.css'
+
+class CourseUpdateProgress extends React.Component {
+ constructor(props) {
+ super(props)
+ this.checkProgress = this.checkProgress.bind(this)
+ this.state = {
+ completed: false,
+ }
+ }
+
+ render() {
+ return (
+ this.checkProgress() && !this.props.contentUpdateCompleted &&
+
+
+ Updated {this.props.progress} items so far...
+
+
+
+ )
+ }
+
+ checkProgress() {
+ if(this.props.title != "Getting content from Canvas") {
+ setTimeout(() => {
+ this.props.contentUpdateCompleted = false
+ }, 2000);
+ }
+ return true
+ }
+}
+
+export default CourseUpdateProgress
diff --git a/assets/js/Services/Api.js b/assets/js/Services/Api.js
index 3ace069d9..2d693b9f1 100644
--- a/assets/js/Services/Api.js
+++ b/assets/js/Services/Api.js
@@ -4,6 +4,7 @@ export default class Api {
this.apiUrl = `https://${window.location.hostname}`;
this.endpoints = {
getReport: '/api/courses/{course}/reports/{report}',
+ getLatestReport: '/api/sync/getLatestReport/{course}',
getReportHistory: '/api/courses/{course}/reports',
saveIssue: '/api/issues/{issue}/save',
resolveIssue: '/api/issues/{issue}/resolve',
@@ -233,6 +234,21 @@ export default class Api {
})
}
+ getLatestReport(courseId)
+ {
+ const authToken = this.getAuthToken()
+ let url = `${this.apiUrl}${this.endpoints.getLatestReport}`
+ url = url.replace('{course}', courseId)
+
+ return fetch(url, {
+ method: 'GET',
+ headers: {
+ 'Content-Type': 'application/json',
+ 'X-AUTH-TOKEN': authToken,
+ },
+ })
+ }
+
scanContent(contentId)
{
const authToken = this.getAuthToken()
diff --git a/build/nginx/entrypoint.sh b/build/nginx/entrypoint.sh
index b437cbf8a..860ec3d25 100644
--- a/build/nginx/entrypoint.sh
+++ b/build/nginx/entrypoint.sh
@@ -1,3 +1,3 @@
#!/usr/bin/env bash
service nginx start
-php-fpm
\ No newline at end of file
+php-fpm
diff --git a/composer.json b/composer.json
index 147aa4be5..38977c356 100644
--- a/composer.json
+++ b/composer.json
@@ -63,7 +63,7 @@
"symfony/browser-kit": "6.0.*",
"symfony/css-selector": "6.0.*",
"symfony/debug-bundle": "6.0.*",
- "symfony/maker-bundle": "^1.0",
+ "symfony/maker-bundle": "^1.49",
"symfony/phpunit-bridge": "^6.0",
"symfony/stopwatch": "6.0.*",
"symfony/web-profiler-bundle": "6.0.*"
diff --git a/composer.lock b/composer.lock
index e622f6a1b..db5ed386e 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,26 +4,26 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "daaa8c2ee8b9bbc314fe8b70f0a91247",
+ "content-hash": "3bb78515a423c756fa5021513278983e",
"packages": [
{
"name": "cidilabs/phpally",
- "version": "1.2.1",
+ "version": "1.2.5",
"source": {
"type": "git",
"url": "https://github.com/cidilabs/phpally.git",
- "reference": "e3754a3779309434eb86088d03c8f6562218e6be"
+ "reference": "9a176d9bcaccfa4c6fe6fe2064fa0d6c17d48640"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/cidilabs/phpally/zipball/e3754a3779309434eb86088d03c8f6562218e6be",
- "reference": "e3754a3779309434eb86088d03c8f6562218e6be",
+ "url": "https://api.github.com/repos/cidilabs/phpally/zipball/9a176d9bcaccfa4c6fe6fe2064fa0d6c17d48640",
+ "reference": "9a176d9bcaccfa4c6fe6fe2064fa0d6c17d48640",
"shasum": ""
},
"require": {
"guzzlehttp/guzzle": "^7.5.0",
"kaltura/api-client-library": "^17.2",
- "php": ">=8.0"
+ "php": ">=7.4"
},
"require-dev": {
"phpunit/phpunit": "^8"
@@ -37,7 +37,7 @@
},
"scripts": {
"test": [
- "./vendor/bin/phpunit tests"
+ "./vendor/bin/phpunit tests --verbose"
]
},
"license": [
@@ -55,10 +55,10 @@
],
"description": "PHP Accessibility (a11y) Testing Library",
"support": {
- "source": "https://github.com/cidilabs/phpally/tree/1.2.1",
+ "source": "https://github.com/cidilabs/phpally/tree/1.2.5",
"issues": "https://github.com/cidilabs/phpally/issues"
},
- "time": "2022-11-22T19:00:25+00:00"
+ "time": "2023-01-26T19:40:33+00:00"
},
{
"name": "composer/package-versions-deprecated",
@@ -135,16 +135,16 @@
},
{
"name": "doctrine/annotations",
- "version": "1.14.1",
+ "version": "1.14.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
- "reference": "9e034d7a70032d422169f27d8759e8d84abb4f51"
+ "reference": "fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/annotations/zipball/9e034d7a70032d422169f27d8759e8d84abb4f51",
- "reference": "9e034d7a70032d422169f27d8759e8d84abb4f51",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af",
+ "reference": "fb0d71a7393298a7b232cbf4c8b1f73f3ec3d5af",
"shasum": ""
},
"require": {
@@ -205,9 +205,9 @@
],
"support": {
"issues": "https://github.com/doctrine/annotations/issues",
- "source": "https://github.com/doctrine/annotations/tree/1.14.1"
+ "source": "https://github.com/doctrine/annotations/tree/1.14.3"
},
- "time": "2022-12-12T12:46:12+00:00"
+ "time": "2023-02-01T09:20:38+00:00"
},
{
"name": "doctrine/cache",
@@ -304,32 +304,34 @@
},
{
"name": "doctrine/collections",
- "version": "1.8.0",
+ "version": "2.1.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/collections.git",
- "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e"
+ "reference": "3023e150f90a38843856147b58190aa8b46cc155"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e",
- "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e",
+ "url": "https://api.github.com/repos/doctrine/collections/zipball/3023e150f90a38843856147b58190aa8b46cc155",
+ "reference": "3023e150f90a38843856147b58190aa8b46cc155",
"shasum": ""
},
"require": {
- "doctrine/deprecations": "^0.5.3 || ^1",
- "php": "^7.1.3 || ^8.0"
+ "doctrine/deprecations": "^1",
+ "php": "^8.1"
},
"require-dev": {
- "doctrine/coding-standard": "^9.0 || ^10.0",
- "phpstan/phpstan": "^1.4.8",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5",
- "vimeo/psalm": "^4.22"
+ "doctrine/coding-standard": "^10.0",
+ "ext-json": "*",
+ "phpstan/phpstan": "^1.8",
+ "phpstan/phpstan-phpunit": "^1.0",
+ "phpunit/phpunit": "^9.5",
+ "vimeo/psalm": "^5.11"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Common\\Collections\\": "lib/Doctrine/Common/Collections"
+ "Doctrine\\Common\\Collections\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -368,9 +370,23 @@
],
"support": {
"issues": "https://github.com/doctrine/collections/issues",
- "source": "https://github.com/doctrine/collections/tree/1.8.0"
+ "source": "https://github.com/doctrine/collections/tree/2.1.3"
},
- "time": "2022-09-01T20:12:10+00:00"
+ "funding": [
+ {
+ "url": "https://www.doctrine-project.org/sponsorship.html",
+ "type": "custom"
+ },
+ {
+ "url": "https://www.patreon.com/phpdoctrine",
+ "type": "patreon"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcollections",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2023-07-06T15:15:36+00:00"
},
{
"name": "doctrine/common",
@@ -465,16 +481,16 @@
},
{
"name": "doctrine/dbal",
- "version": "3.5.1",
+ "version": "3.6.5",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
- "reference": "f38ee8aaca2d58ee88653cb34a6a3880c23f38a5"
+ "reference": "96d5a70fd91efdcec81fc46316efc5bf3da17ddf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/dbal/zipball/f38ee8aaca2d58ee88653cb34a6a3880c23f38a5",
- "reference": "f38ee8aaca2d58ee88653cb34a6a3880c23f38a5",
+ "url": "https://api.github.com/repos/doctrine/dbal/zipball/96d5a70fd91efdcec81fc46316efc5bf3da17ddf",
+ "reference": "96d5a70fd91efdcec81fc46316efc5bf3da17ddf",
"shasum": ""
},
"require": {
@@ -487,16 +503,17 @@
"psr/log": "^1|^2|^3"
},
"require-dev": {
- "doctrine/coding-standard": "10.0.0",
- "jetbrains/phpstorm-stubs": "2022.2",
- "phpstan/phpstan": "1.8.10",
- "phpstan/phpstan-strict-rules": "^1.4",
- "phpunit/phpunit": "9.5.25",
- "psalm/plugin-phpunit": "0.17.0",
- "squizlabs/php_codesniffer": "3.7.1",
+ "doctrine/coding-standard": "12.0.0",
+ "fig/log-test": "^1",
+ "jetbrains/phpstorm-stubs": "2023.1",
+ "phpstan/phpstan": "1.10.21",
+ "phpstan/phpstan-strict-rules": "^1.5",
+ "phpunit/phpunit": "9.6.9",
+ "psalm/plugin-phpunit": "0.18.4",
+ "squizlabs/php_codesniffer": "3.7.2",
"symfony/cache": "^5.4|^6.0",
"symfony/console": "^4.4|^5.4|^6.0",
- "vimeo/psalm": "4.29.0"
+ "vimeo/psalm": "4.30.0"
},
"suggest": {
"symfony/console": "For helpful console commands such as SQL execution and import of files."
@@ -556,7 +573,7 @@
],
"support": {
"issues": "https://github.com/doctrine/dbal/issues",
- "source": "https://github.com/doctrine/dbal/tree/3.5.1"
+ "source": "https://github.com/doctrine/dbal/tree/3.6.5"
},
"funding": [
{
@@ -572,29 +589,33 @@
"type": "tidelift"
}
],
- "time": "2022-10-24T07:26:18+00:00"
+ "time": "2023-07-17T09:15:50+00:00"
},
{
"name": "doctrine/deprecations",
- "version": "v1.0.0",
+ "version": "v1.1.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/deprecations.git",
- "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de"
+ "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
- "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de",
+ "url": "https://api.github.com/repos/doctrine/deprecations/zipball/612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
+ "reference": "612a3ee5ab0d5dd97b7cf3874a6efe24325efac3",
"shasum": ""
},
"require": {
- "php": "^7.1|^8.0"
+ "php": "^7.1 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^9",
- "phpunit/phpunit": "^7.5|^8.5|^9.5",
- "psr/log": "^1|^2|^3"
+ "phpstan/phpstan": "1.4.10 || 1.10.15",
+ "phpstan/phpstan-phpunit": "^1.0",
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
+ "psalm/plugin-phpunit": "0.18.4",
+ "psr/log": "^1 || ^2 || ^3",
+ "vimeo/psalm": "4.30.0 || 5.12.0"
},
"suggest": {
"psr/log": "Allows logging deprecations via PSR-3 logger implementation"
@@ -613,62 +634,64 @@
"homepage": "https://www.doctrine-project.org/",
"support": {
"issues": "https://github.com/doctrine/deprecations/issues",
- "source": "https://github.com/doctrine/deprecations/tree/v1.0.0"
+ "source": "https://github.com/doctrine/deprecations/tree/v1.1.1"
},
- "time": "2022-05-02T15:47:09+00:00"
+ "time": "2023-06-03T09:27:29+00:00"
},
{
"name": "doctrine/doctrine-bundle",
- "version": "2.7.2",
+ "version": "2.10.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineBundle.git",
- "reference": "22d53b2c5ad03929628fb4a928b01135585b7179"
+ "reference": "f9d59c90b6f525dfc2a2064a695cb56e0ab40311"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/22d53b2c5ad03929628fb4a928b01135585b7179",
- "reference": "22d53b2c5ad03929628fb4a928b01135585b7179",
+ "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/f9d59c90b6f525dfc2a2064a695cb56e0ab40311",
+ "reference": "f9d59c90b6f525dfc2a2064a695cb56e0ab40311",
"shasum": ""
},
"require": {
- "doctrine/annotations": "^1",
"doctrine/cache": "^1.11 || ^2.0",
- "doctrine/dbal": "^2.13.1 || ^3.3.2",
+ "doctrine/dbal": "^3.6.0",
"doctrine/persistence": "^2.2 || ^3",
"doctrine/sql-formatter": "^1.0.1",
- "php": "^7.1 || ^8.0",
- "symfony/cache": "^4.4 || ^5.4 || ^6.0",
- "symfony/config": "^4.4.3 || ^5.4 || ^6.0",
- "symfony/console": "^4.4 || ^5.4 || ^6.0",
- "symfony/dependency-injection": "^4.4.18 || ^5.4 || ^6.0",
+ "php": "^7.4 || ^8.0",
+ "symfony/cache": "^5.4 || ^6.0",
+ "symfony/config": "^5.4 || ^6.0",
+ "symfony/console": "^5.4 || ^6.0",
+ "symfony/dependency-injection": "^5.4 || ^6.0",
"symfony/deprecation-contracts": "^2.1 || ^3",
- "symfony/doctrine-bridge": "^4.4.22 || ^5.4 || ^6.0",
- "symfony/framework-bundle": "^4.4 || ^5.4 || ^6.0",
+ "symfony/doctrine-bridge": "^5.4.19 || ^6.0.7",
+ "symfony/framework-bundle": "^5.4 || ^6.0",
"symfony/service-contracts": "^1.1.1 || ^2.0 || ^3"
},
"conflict": {
+ "doctrine/annotations": ">=3.0",
"doctrine/orm": "<2.11 || >=3.0",
- "twig/twig": "<1.34 || >=2.0,<2.4"
+ "twig/twig": "<1.34 || >=2.0 <2.4"
},
"require-dev": {
+ "doctrine/annotations": "^1 || ^2",
"doctrine/coding-standard": "^9.0",
+ "doctrine/deprecations": "^1.0",
"doctrine/orm": "^2.11 || ^3.0",
"friendsofphp/proxy-manager-lts": "^1.0",
- "phpunit/phpunit": "^7.5 || ^8.0 || ^9.3 || ^10.0",
- "psalm/plugin-phpunit": "^0.16.1",
- "psalm/plugin-symfony": "^3",
+ "phpunit/phpunit": "^9.5.26 || ^10.0",
+ "psalm/plugin-phpunit": "^0.18.4",
+ "psalm/plugin-symfony": "^4",
"psr/log": "^1.1.4 || ^2.0 || ^3.0",
"symfony/phpunit-bridge": "^6.1",
- "symfony/property-info": "^4.4 || ^5.4 || ^6.0",
- "symfony/proxy-manager-bridge": "^4.4 || ^5.4 || ^6.0",
- "symfony/security-bundle": "^4.4 || ^5.4 || ^6.0",
- "symfony/twig-bridge": "^4.4 || ^5.4 || ^6.0",
- "symfony/validator": "^4.4 || ^5.4 || ^6.0",
- "symfony/web-profiler-bundle": "^4.4 || ^5.4 || ^6.0",
- "symfony/yaml": "^4.4 || ^5.4 || ^6.0",
+ "symfony/property-info": "^5.4 || ^6.0",
+ "symfony/proxy-manager-bridge": "^5.4 || ^6.0",
+ "symfony/security-bundle": "^5.4 || ^6.0",
+ "symfony/twig-bridge": "^5.4 || ^6.0",
+ "symfony/validator": "^5.4 || ^6.0",
+ "symfony/web-profiler-bundle": "^5.4 || ^6.0",
+ "symfony/yaml": "^5.4 || ^6.0",
"twig/twig": "^1.34 || ^2.12 || ^3.0",
- "vimeo/psalm": "^4.7"
+ "vimeo/psalm": "^4.30"
},
"suggest": {
"doctrine/orm": "The Doctrine ORM integration is optional in the bundle.",
@@ -713,7 +736,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineBundle/issues",
- "source": "https://github.com/doctrine/DoctrineBundle/tree/2.7.2"
+ "source": "https://github.com/doctrine/DoctrineBundle/tree/2.10.1"
},
"funding": [
{
@@ -729,20 +752,20 @@
"type": "tidelift"
}
],
- "time": "2022-12-07T12:07:11+00:00"
+ "time": "2023-06-28T07:47:41+00:00"
},
{
"name": "doctrine/doctrine-migrations-bundle",
- "version": "3.2.2",
+ "version": "3.2.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineMigrationsBundle.git",
- "reference": "3393f411ba25ade21969c33f2053220044854d01"
+ "reference": "94e6b0fe1a50901d52f59dbb9b4b0737718b2c1e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/3393f411ba25ade21969c33f2053220044854d01",
- "reference": "3393f411ba25ade21969c33f2053220044854d01",
+ "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/94e6b0fe1a50901d52f59dbb9b4b0737718b2c1e",
+ "reference": "94e6b0fe1a50901d52f59dbb9b4b0737718b2c1e",
"shasum": ""
},
"require": {
@@ -752,15 +775,15 @@
"symfony/framework-bundle": "~3.4|~4.0|~5.0|~6.0"
},
"require-dev": {
- "doctrine/coding-standard": "^8.0",
+ "doctrine/coding-standard": "^9",
"doctrine/orm": "^2.6",
"doctrine/persistence": "^1.3||^2.0",
- "phpstan/phpstan": "^0.12",
- "phpstan/phpstan-deprecation-rules": "^0.12",
- "phpstan/phpstan-phpunit": "^0.12",
- "phpstan/phpstan-strict-rules": "^0.12",
- "phpunit/phpunit": "^8.0|^9.0",
- "vimeo/psalm": "^4.11"
+ "phpstan/phpstan": "^1.4",
+ "phpstan/phpstan-deprecation-rules": "^1",
+ "phpstan/phpstan-phpunit": "^1",
+ "phpstan/phpstan-strict-rules": "^1.1",
+ "phpunit/phpunit": "^8.5|^9.5",
+ "vimeo/psalm": "^4.22"
},
"type": "symfony-bundle",
"autoload": {
@@ -798,7 +821,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues",
- "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.2.2"
+ "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.2.4"
},
"funding": [
{
@@ -814,34 +837,33 @@
"type": "tidelift"
}
],
- "time": "2022-02-01T18:08:07+00:00"
+ "time": "2023-06-02T08:19:26+00:00"
},
{
"name": "doctrine/event-manager",
- "version": "1.2.0",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
- "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520"
+ "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/event-manager/zipball/95aa4cb529f1e96576f3fda9f5705ada4056a520",
- "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520",
+ "url": "https://api.github.com/repos/doctrine/event-manager/zipball/750671534e0241a7c50ea5b43f67e23eb5c96f32",
+ "reference": "750671534e0241a7c50ea5b43f67e23eb5c96f32",
"shasum": ""
},
"require": {
- "doctrine/deprecations": "^0.5.3 || ^1",
- "php": "^7.1 || ^8.0"
+ "php": "^8.1"
},
"conflict": {
"doctrine/common": "<2.9"
},
"require-dev": {
- "doctrine/coding-standard": "^9 || ^10",
- "phpstan/phpstan": "~1.4.10 || ^1.8.8",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.24"
+ "doctrine/coding-standard": "^10",
+ "phpstan/phpstan": "^1.8.8",
+ "phpunit/phpunit": "^9.5",
+ "vimeo/psalm": "^4.28"
},
"type": "library",
"autoload": {
@@ -890,7 +912,7 @@
],
"support": {
"issues": "https://github.com/doctrine/event-manager/issues",
- "source": "https://github.com/doctrine/event-manager/tree/1.2.0"
+ "source": "https://github.com/doctrine/event-manager/tree/2.0.0"
},
"funding": [
{
@@ -906,32 +928,32 @@
"type": "tidelift"
}
],
- "time": "2022-10-12T20:51:15+00:00"
+ "time": "2022-10-12T20:59:15+00:00"
},
{
"name": "doctrine/inflector",
- "version": "2.0.6",
+ "version": "2.0.8",
"source": {
"type": "git",
"url": "https://github.com/doctrine/inflector.git",
- "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024"
+ "reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/inflector/zipball/d9d313a36c872fd6ee06d9a6cbcf713eaa40f024",
- "reference": "d9d313a36c872fd6ee06d9a6cbcf713eaa40f024",
+ "url": "https://api.github.com/repos/doctrine/inflector/zipball/f9301a5b2fb1216b2b08f02ba04dc45423db6bff",
+ "reference": "f9301a5b2fb1216b2b08f02ba04dc45423db6bff",
"shasum": ""
},
"require": {
"php": "^7.2 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^10",
+ "doctrine/coding-standard": "^11.0",
"phpstan/phpstan": "^1.8",
"phpstan/phpstan-phpunit": "^1.1",
"phpstan/phpstan-strict-rules": "^1.3",
"phpunit/phpunit": "^8.5 || ^9.5",
- "vimeo/psalm": "^4.25"
+ "vimeo/psalm": "^4.25 || ^5.4"
},
"type": "library",
"autoload": {
@@ -981,7 +1003,7 @@
],
"support": {
"issues": "https://github.com/doctrine/inflector/issues",
- "source": "https://github.com/doctrine/inflector/tree/2.0.6"
+ "source": "https://github.com/doctrine/inflector/tree/2.0.8"
},
"funding": [
{
@@ -997,34 +1019,34 @@
"type": "tidelift"
}
],
- "time": "2022-10-20T09:10:12+00:00"
+ "time": "2023-06-16T13:40:37+00:00"
},
{
"name": "doctrine/instantiator",
- "version": "1.4.1",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc"
+ "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/10dcfce151b967d20fde1b34ae6640712c3891bc",
- "reference": "10dcfce151b967d20fde1b34ae6640712c3891bc",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
+ "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0",
"shasum": ""
},
"require": {
- "php": "^7.1 || ^8.0"
+ "php": "^8.1"
},
"require-dev": {
- "doctrine/coding-standard": "^9",
+ "doctrine/coding-standard": "^11",
"ext-pdo": "*",
"ext-phar": "*",
- "phpbench/phpbench": "^0.16 || ^1",
- "phpstan/phpstan": "^1.4",
- "phpstan/phpstan-phpunit": "^1",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.22"
+ "phpbench/phpbench": "^1.2",
+ "phpstan/phpstan": "^1.9.4",
+ "phpstan/phpstan-phpunit": "^1.3",
+ "phpunit/phpunit": "^9.5.27",
+ "vimeo/psalm": "^5.4"
},
"type": "library",
"autoload": {
@@ -1051,7 +1073,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/1.4.1"
+ "source": "https://github.com/doctrine/instantiator/tree/2.0.0"
},
"funding": [
{
@@ -1067,35 +1089,37 @@
"type": "tidelift"
}
],
- "time": "2022-03-03T08:28:38+00:00"
+ "time": "2022-12-30T00:23:10+00:00"
},
{
"name": "doctrine/lexer",
- "version": "1.2.3",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/lexer.git",
- "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229"
+ "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229",
- "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
+ "reference": "39ab8fcf5a51ce4b85ca97c7a7d033eb12831124",
"shasum": ""
},
"require": {
+ "doctrine/deprecations": "^1.0",
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^9.0",
+ "doctrine/coding-standard": "^9 || ^10",
"phpstan/phpstan": "^1.3",
"phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "vimeo/psalm": "^4.11"
+ "psalm/plugin-phpunit": "^0.18.3",
+ "vimeo/psalm": "^4.11 || ^5.0"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer"
+ "Doctrine\\Common\\Lexer\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1127,7 +1151,7 @@
],
"support": {
"issues": "https://github.com/doctrine/lexer/issues",
- "source": "https://github.com/doctrine/lexer/tree/1.2.3"
+ "source": "https://github.com/doctrine/lexer/tree/2.1.0"
},
"funding": [
{
@@ -1143,49 +1167,48 @@
"type": "tidelift"
}
],
- "time": "2022-02-28T11:07:21+00:00"
+ "time": "2022-12-14T08:49:07+00:00"
},
{
"name": "doctrine/migrations",
- "version": "3.5.2",
+ "version": "3.6.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/migrations.git",
- "reference": "61c6ef3a10b7df43c3b6388a184754f26e58700a"
+ "reference": "e542ad8bcd606d7a18d0875babb8a6d963c9c059"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/migrations/zipball/61c6ef3a10b7df43c3b6388a184754f26e58700a",
- "reference": "61c6ef3a10b7df43c3b6388a184754f26e58700a",
+ "url": "https://api.github.com/repos/doctrine/migrations/zipball/e542ad8bcd606d7a18d0875babb8a6d963c9c059",
+ "reference": "e542ad8bcd606d7a18d0875babb8a6d963c9c059",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2",
- "doctrine/dbal": "^3.3",
+ "doctrine/dbal": "^3.5.1",
"doctrine/deprecations": "^0.5.3 || ^1",
- "doctrine/event-manager": "^1.0",
- "friendsofphp/proxy-manager-lts": "^1.0",
- "php": "^7.4 || ^8.0",
+ "doctrine/event-manager": "^1.2 || ^2.0",
+ "php": "^8.1",
"psr/log": "^1.1.3 || ^2 || ^3",
"symfony/console": "^4.4.16 || ^5.4 || ^6.0",
- "symfony/stopwatch": "^4.4 || ^5.4 || ^6.0"
+ "symfony/stopwatch": "^4.4 || ^5.4 || ^6.0",
+ "symfony/var-exporter": "^6.2"
},
"conflict": {
"doctrine/orm": "<2.12"
},
"require-dev": {
"doctrine/coding-standard": "^9",
- "doctrine/orm": "^2.12",
+ "doctrine/orm": "^2.13",
"doctrine/persistence": "^2 || ^3",
"doctrine/sql-formatter": "^1.0",
- "ergebnis/composer-normalize": "^2.9",
"ext-pdo_sqlite": "*",
"phpstan/phpstan": "^1.5",
"phpstan/phpstan-deprecation-rules": "^1",
"phpstan/phpstan-phpunit": "^1.1",
"phpstan/phpstan-strict-rules": "^1.1",
"phpstan/phpstan-symfony": "^1.1",
- "phpunit/phpunit": "^9.5",
+ "phpunit/phpunit": "^9.5.24",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
"symfony/process": "^4.4 || ^5.4 || ^6.0",
"symfony/yaml": "^4.4 || ^5.4 || ^6.0"
@@ -1198,12 +1221,6 @@
"bin/doctrine-migrations"
],
"type": "library",
- "extra": {
- "composer-normalize": {
- "indent-size": 4,
- "indent-style": "space"
- }
- },
"autoload": {
"psr-4": {
"Doctrine\\Migrations\\": "lib/Doctrine/Migrations"
@@ -1236,7 +1253,7 @@
],
"support": {
"issues": "https://github.com/doctrine/migrations/issues",
- "source": "https://github.com/doctrine/migrations/tree/3.5.2"
+ "source": "https://github.com/doctrine/migrations/tree/3.6.0"
},
"funding": [
{
@@ -1252,55 +1269,56 @@
"type": "tidelift"
}
],
- "time": "2022-08-04T14:29:49+00:00"
+ "time": "2023-02-15T18:49:46+00:00"
},
{
"name": "doctrine/orm",
- "version": "2.13.4",
+ "version": "2.15.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/orm.git",
- "reference": "a5a6cc6630ce497290396d5f206887227820a634"
+ "reference": "f7e4b61459692f9b747f40696e6bf72080390f2d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/orm/zipball/a5a6cc6630ce497290396d5f206887227820a634",
- "reference": "a5a6cc6630ce497290396d5f206887227820a634",
+ "url": "https://api.github.com/repos/doctrine/orm/zipball/f7e4b61459692f9b747f40696e6bf72080390f2d",
+ "reference": "f7e4b61459692f9b747f40696e6bf72080390f2d",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2",
"doctrine/cache": "^1.12.1 || ^2.1.1",
- "doctrine/collections": "^1.5",
+ "doctrine/collections": "^1.5 || ^2.1",
"doctrine/common": "^3.0.3",
"doctrine/dbal": "^2.13.1 || ^3.2",
"doctrine/deprecations": "^0.5.3 || ^1",
- "doctrine/event-manager": "^1.1",
+ "doctrine/event-manager": "^1.2 || ^2",
"doctrine/inflector": "^1.4 || ^2.0",
- "doctrine/instantiator": "^1.3",
- "doctrine/lexer": "^1.2.3",
+ "doctrine/instantiator": "^1.3 || ^2",
+ "doctrine/lexer": "^2",
"doctrine/persistence": "^2.4 || ^3",
"ext-ctype": "*",
"php": "^7.1 || ^8.0",
"psr/cache": "^1 || ^2 || ^3",
- "symfony/console": "^3.0 || ^4.0 || ^5.0 || ^6.0",
+ "symfony/console": "^4.2 || ^5.0 || ^6.0",
"symfony/polyfill-php72": "^1.23",
"symfony/polyfill-php80": "^1.16"
},
"conflict": {
- "doctrine/annotations": "<1.13 || >= 2.0"
+ "doctrine/annotations": "<1.13 || >= 3.0"
},
"require-dev": {
- "doctrine/annotations": "^1.13",
- "doctrine/coding-standard": "^9.0.2 || ^10.0",
+ "doctrine/annotations": "^1.13 || ^2",
+ "doctrine/coding-standard": "^9.0.2 || ^12.0",
"phpbench/phpbench": "^0.16.10 || ^1.0",
- "phpstan/phpstan": "~1.4.10 || 1.9.2",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
+ "phpstan/phpstan": "~1.4.10 || 1.10.25",
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6",
"psr/log": "^1 || ^2 || ^3",
- "squizlabs/php_codesniffer": "3.7.1",
+ "squizlabs/php_codesniffer": "3.7.2",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
+ "symfony/var-exporter": "^4.4 || ^5.4 || ^6.2",
"symfony/yaml": "^3.4 || ^4.0 || ^5.0 || ^6.0",
- "vimeo/psalm": "4.30.0"
+ "vimeo/psalm": "4.30.0 || 5.13.1"
},
"suggest": {
"ext-dom": "Provides support for XSD validation for XML mapping files",
@@ -1350,22 +1368,22 @@
],
"support": {
"issues": "https://github.com/doctrine/orm/issues",
- "source": "https://github.com/doctrine/orm/tree/2.13.4"
+ "source": "https://github.com/doctrine/orm/tree/2.15.4"
},
- "time": "2022-11-20T18:53:31+00:00"
+ "time": "2023-07-18T07:50:04+00:00"
},
{
"name": "doctrine/persistence",
- "version": "3.1.0",
+ "version": "3.2.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/persistence.git",
- "reference": "2a9c70a5e21f8968c5a46b79f819ea52f322080b"
+ "reference": "63fee8c33bef740db6730eb2a750cd3da6495603"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/persistence/zipball/2a9c70a5e21f8968c5a46b79f819ea52f322080b",
- "reference": "2a9c70a5e21f8968c5a46b79f819ea52f322080b",
+ "url": "https://api.github.com/repos/doctrine/persistence/zipball/63fee8c33bef740db6730eb2a750cd3da6495603",
+ "reference": "63fee8c33bef740db6730eb2a750cd3da6495603",
"shasum": ""
},
"require": {
@@ -1374,20 +1392,18 @@
"psr/cache": "^1.0 || ^2.0 || ^3.0"
},
"conflict": {
- "doctrine/annotations": "<1.7 || >=2.0",
"doctrine/common": "<2.10"
},
"require-dev": {
"composer/package-versions-deprecated": "^1.11",
- "doctrine/annotations": "^1.7",
- "doctrine/coding-standard": "^10",
+ "doctrine/coding-standard": "^11",
"doctrine/common": "^3.0",
- "phpstan/phpstan": "1.8.8",
+ "phpstan/phpstan": "1.9.4",
"phpstan/phpstan-phpunit": "^1",
"phpstan/phpstan-strict-rules": "^1.1",
"phpunit/phpunit": "^8.5 || ^9.5",
"symfony/cache": "^4.4 || ^5.4 || ^6.0",
- "vimeo/psalm": "4.29.0"
+ "vimeo/psalm": "4.30.0 || 5.3.0"
},
"type": "library",
"autoload": {
@@ -1436,7 +1452,7 @@
],
"support": {
"issues": "https://github.com/doctrine/persistence/issues",
- "source": "https://github.com/doctrine/persistence/tree/3.1.0"
+ "source": "https://github.com/doctrine/persistence/tree/3.2.0"
},
"funding": [
{
@@ -1452,7 +1468,7 @@
"type": "tidelift"
}
],
- "time": "2022-11-18T14:10:19+00:00"
+ "time": "2023-05-17T18:32:04+00:00"
},
{
"name": "doctrine/sql-formatter",
@@ -1508,27 +1524,26 @@
},
{
"name": "egulias/email-validator",
- "version": "3.2.1",
+ "version": "4.0.1",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
- "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715"
+ "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/f88dcf4b14af14a98ad96b14b2b317969eab6715",
- "reference": "f88dcf4b14af14a98ad96b14b2b317969eab6715",
+ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/3a85486b709bc384dae8eb78fb2eec649bdb64ff",
+ "reference": "3a85486b709bc384dae8eb78fb2eec649bdb64ff",
"shasum": ""
},
"require": {
- "doctrine/lexer": "^1.2",
- "php": ">=7.2",
- "symfony/polyfill-intl-idn": "^1.15"
+ "doctrine/lexer": "^2.0 || ^3.0",
+ "php": ">=8.1",
+ "symfony/polyfill-intl-idn": "^1.26"
},
"require-dev": {
- "php-coveralls/php-coveralls": "^2.2",
- "phpunit/phpunit": "^8.5.8|^9.3.3",
- "vimeo/psalm": "^4"
+ "phpunit/phpunit": "^9.5.27",
+ "vimeo/psalm": "^4.30"
},
"suggest": {
"ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation"
@@ -1536,7 +1551,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "4.0.x-dev"
}
},
"autoload": {
@@ -1564,7 +1579,7 @@
],
"support": {
"issues": "https://github.com/egulias/EmailValidator/issues",
- "source": "https://github.com/egulias/EmailValidator/tree/3.2.1"
+ "source": "https://github.com/egulias/EmailValidator/tree/4.0.1"
},
"funding": [
{
@@ -1572,7 +1587,7 @@
"type": "github"
}
],
- "time": "2022-06-18T20:57:19+00:00"
+ "time": "2023-01-14T14:17:03+00:00"
},
{
"name": "firebase/php-jwt",
@@ -1633,22 +1648,22 @@
},
{
"name": "friendsofphp/proxy-manager-lts",
- "version": "v1.0.13",
+ "version": "v1.0.16",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/proxy-manager-lts.git",
- "reference": "88354616f4cf4f6620910fd035e282173ba453e8"
+ "reference": "ecadbdc9052e4ad08c60c8a02268712e50427f7c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/88354616f4cf4f6620910fd035e282173ba453e8",
- "reference": "88354616f4cf4f6620910fd035e282173ba453e8",
+ "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/ecadbdc9052e4ad08c60c8a02268712e50427f7c",
+ "reference": "ecadbdc9052e4ad08c60c8a02268712e50427f7c",
"shasum": ""
},
"require": {
"laminas/laminas-code": "~3.4.1|^4.0",
"php": ">=7.1",
- "symfony/filesystem": "^4.4.17|^5.0|^6.0"
+ "symfony/filesystem": "^4.4.17|^5.0|^6.0|^7.0"
},
"conflict": {
"laminas/laminas-stdlib": "<3.2.1",
@@ -1659,7 +1674,7 @@
},
"require-dev": {
"ext-phar": "*",
- "symfony/phpunit-bridge": "^5.4|^6.0"
+ "symfony/phpunit-bridge": "^5.4|^6.0|^7.0"
},
"type": "library",
"extra": {
@@ -1699,7 +1714,7 @@
],
"support": {
"issues": "https://github.com/FriendsOfPHP/proxy-manager-lts/issues",
- "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.13"
+ "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.16"
},
"funding": [
{
@@ -1711,26 +1726,26 @@
"type": "tidelift"
}
],
- "time": "2022-10-17T19:48:16+00:00"
+ "time": "2023-05-24T07:17:17+00:00"
},
{
"name": "guzzlehttp/guzzle",
- "version": "7.5.0",
+ "version": "7.7.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
- "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba"
+ "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b50a2a1251152e43f6a37f0fa053e730a67d25ba",
- "reference": "b50a2a1251152e43f6a37f0fa053e730a67d25ba",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/fb7566caccf22d74d1ab270de3551f72a58399f5",
+ "reference": "fb7566caccf22d74d1ab270de3551f72a58399f5",
"shasum": ""
},
"require": {
"ext-json": "*",
- "guzzlehttp/promises": "^1.5",
- "guzzlehttp/psr7": "^1.9 || ^2.4",
+ "guzzlehttp/promises": "^1.5.3 || ^2.0",
+ "guzzlehttp/psr7": "^1.9.1 || ^2.4.5",
"php": "^7.2.5 || ^8.0",
"psr/http-client": "^1.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
@@ -1741,7 +1756,8 @@
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.1",
"ext-curl": "*",
- "php-http/client-integration-tests": "^3.0",
+ "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
+ "php-http/message-factory": "^1.1",
"phpunit/phpunit": "^8.5.29 || ^9.5.23",
"psr/log": "^1.1 || ^2.0 || ^3.0"
},
@@ -1755,9 +1771,6 @@
"bamarni-bin": {
"bin-links": true,
"forward-command": false
- },
- "branch-alias": {
- "dev-master": "7.5-dev"
}
},
"autoload": {
@@ -1823,7 +1836,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
- "source": "https://github.com/guzzle/guzzle/tree/7.5.0"
+ "source": "https://github.com/guzzle/guzzle/tree/7.7.0"
},
"funding": [
{
@@ -1839,38 +1852,37 @@
"type": "tidelift"
}
],
- "time": "2022-08-28T15:39:27+00:00"
+ "time": "2023-05-21T14:04:53+00:00"
},
{
"name": "guzzlehttp/promises",
- "version": "1.5.2",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
- "reference": "b94b2807d85443f9719887892882d0329d1e2598"
+ "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/b94b2807d85443f9719887892882d0329d1e2598",
- "reference": "b94b2807d85443f9719887892882d0329d1e2598",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/3a494dc7dc1d7d12e511890177ae2d0e6c107da6",
+ "reference": "3a494dc7dc1d7d12e511890177ae2d0e6c107da6",
"shasum": ""
},
"require": {
- "php": ">=5.5"
+ "php": "^7.2.5 || ^8.0"
},
"require-dev": {
- "symfony/phpunit-bridge": "^4.4 || ^5.1"
+ "bamarni/composer-bin-plugin": "^1.8.1",
+ "phpunit/phpunit": "^8.5.29 || ^9.5.23"
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "1.5-dev"
+ "bamarni-bin": {
+ "bin-links": true,
+ "forward-command": false
}
},
"autoload": {
- "files": [
- "src/functions_include.php"
- ],
"psr-4": {
"GuzzleHttp\\Promise\\": "src/"
}
@@ -1907,7 +1919,7 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
- "source": "https://github.com/guzzle/promises/tree/1.5.2"
+ "source": "https://github.com/guzzle/promises/tree/2.0.0"
},
"funding": [
{
@@ -1923,26 +1935,26 @@
"type": "tidelift"
}
],
- "time": "2022-08-28T14:55:35+00:00"
+ "time": "2023-05-21T13:50:22+00:00"
},
{
"name": "guzzlehttp/psr7",
- "version": "2.4.3",
+ "version": "2.5.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "67c26b443f348a51926030c83481b85718457d3d"
+ "reference": "b635f279edd83fc275f822a1188157ffea568ff6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d",
- "reference": "67c26b443f348a51926030c83481b85718457d3d",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/b635f279edd83fc275f822a1188157ffea568ff6",
+ "reference": "b635f279edd83fc275f822a1188157ffea568ff6",
"shasum": ""
},
"require": {
"php": "^7.2.5 || ^8.0",
"psr/http-factory": "^1.0",
- "psr/http-message": "^1.0",
+ "psr/http-message": "^1.1 || ^2.0",
"ralouphie/getallheaders": "^3.0"
},
"provide": {
@@ -1962,9 +1974,6 @@
"bamarni-bin": {
"bin-links": true,
"forward-command": false
- },
- "branch-alias": {
- "dev-master": "2.4-dev"
}
},
"autoload": {
@@ -2026,7 +2035,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
- "source": "https://github.com/guzzle/psr7/tree/2.4.3"
+ "source": "https://github.com/guzzle/psr7/tree/2.5.0"
},
"funding": [
{
@@ -2042,7 +2051,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-26T14:07:24+00:00"
+ "time": "2023-04-17T16:11:26+00:00"
},
{
"name": "htmlawed/htmlawed",
@@ -2218,20 +2227,20 @@
},
{
"name": "knplabs/knp-snappy-bundle",
- "version": "v1.9.0",
+ "version": "v1.9.1",
"source": {
"type": "git",
"url": "https://github.com/KnpLabs/KnpSnappyBundle.git",
- "reference": "da11c2d083f5d8586c9bd59d2948ab7d39d57b34"
+ "reference": "cfdddb3fd848d97c6b07be72b7703c2e45274954"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/KnpLabs/KnpSnappyBundle/zipball/da11c2d083f5d8586c9bd59d2948ab7d39d57b34",
- "reference": "da11c2d083f5d8586c9bd59d2948ab7d39d57b34",
+ "url": "https://api.github.com/repos/KnpLabs/KnpSnappyBundle/zipball/cfdddb3fd848d97c6b07be72b7703c2e45274954",
+ "reference": "cfdddb3fd848d97c6b07be72b7703c2e45274954",
"shasum": ""
},
"require": {
- "knplabs/knp-snappy": "^1.2",
+ "knplabs/knp-snappy": "^1.4.2",
"php": ">=7.4",
"symfony/framework-bundle": "^4.4|^5.1|^6.0"
},
@@ -2276,27 +2285,27 @@
],
"support": {
"issues": "https://github.com/KnpLabs/KnpSnappyBundle/issues",
- "source": "https://github.com/KnpLabs/KnpSnappyBundle/tree/v1.9.0"
+ "source": "https://github.com/KnpLabs/KnpSnappyBundle/tree/v1.9.1"
},
- "time": "2022-01-05T15:50:51+00:00"
+ "time": "2023-05-12T12:38:57+00:00"
},
{
"name": "knpuniversity/oauth2-client-bundle",
- "version": "v2.10.1",
+ "version": "v2.15.0",
"source": {
"type": "git",
"url": "https://github.com/knpuniversity/oauth2-client-bundle.git",
- "reference": "0f4b238f16793ea6d2225044cfeae41b148a5c49"
+ "reference": "9df0736d02eb20b953ec8e9986743611747d9ed9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/knpuniversity/oauth2-client-bundle/zipball/0f4b238f16793ea6d2225044cfeae41b148a5c49",
- "reference": "0f4b238f16793ea6d2225044cfeae41b148a5c49",
+ "url": "https://api.github.com/repos/knpuniversity/oauth2-client-bundle/zipball/9df0736d02eb20b953ec8e9986743611747d9ed9",
+ "reference": "9df0736d02eb20b953ec8e9986743611747d9ed9",
"shasum": ""
},
"require": {
"league/oauth2-client": "^2.0",
- "php": ">=7.2.5",
+ "php": ">=7.4",
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
"symfony/framework-bundle": "^4.4|^5.0|^6.0",
"symfony/http-foundation": "^4.4|^5.0|^6.0",
@@ -2336,35 +2345,35 @@
],
"support": {
"issues": "https://github.com/knpuniversity/oauth2-client-bundle/issues",
- "source": "https://github.com/knpuniversity/oauth2-client-bundle/tree/v2.10.1"
+ "source": "https://github.com/knpuniversity/oauth2-client-bundle/tree/v2.15.0"
},
- "time": "2022-05-24T17:36:38+00:00"
+ "time": "2023-05-03T16:44:38+00:00"
},
{
"name": "laminas/laminas-code",
- "version": "4.8.0",
+ "version": "4.11.0",
"source": {
"type": "git",
"url": "https://github.com/laminas/laminas-code.git",
- "reference": "dd19fe8e07cc3f374308565667eecd4958c22106"
+ "reference": "169123b3ede20a9193480c53de2a8194f8c073ec"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laminas/laminas-code/zipball/dd19fe8e07cc3f374308565667eecd4958c22106",
- "reference": "dd19fe8e07cc3f374308565667eecd4958c22106",
+ "url": "https://api.github.com/repos/laminas/laminas-code/zipball/169123b3ede20a9193480c53de2a8194f8c073ec",
+ "reference": "169123b3ede20a9193480c53de2a8194f8c073ec",
"shasum": ""
},
"require": {
"php": "~8.1.0 || ~8.2.0"
},
"require-dev": {
- "doctrine/annotations": "^1.13.3",
+ "doctrine/annotations": "^2.0.0",
"ext-phar": "*",
"laminas/laminas-coding-standard": "^2.3.0",
"laminas/laminas-stdlib": "^3.6.1",
- "phpunit/phpunit": "^9.5.26",
- "psalm/plugin-phpunit": "^0.18.0",
- "vimeo/psalm": "^5.1.0"
+ "phpunit/phpunit": "^10.0.9",
+ "psalm/plugin-phpunit": "^0.18.4",
+ "vimeo/psalm": "^5.7.1"
},
"suggest": {
"doctrine/annotations": "Doctrine\\Common\\Annotations >=1.0 for annotation features",
@@ -2401,20 +2410,20 @@
"type": "community_bridge"
}
],
- "time": "2022-12-08T02:08:23+00:00"
+ "time": "2023-05-14T12:05:38+00:00"
},
{
"name": "league/oauth2-client",
- "version": "2.6.1",
+ "version": "2.7.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/oauth2-client.git",
- "reference": "2334c249907190c132364f5dae0287ab8666aa19"
+ "reference": "160d6274b03562ebeb55ed18399281d8118b76c8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/2334c249907190c132364f5dae0287ab8666aa19",
- "reference": "2334c249907190c132364f5dae0287ab8666aa19",
+ "url": "https://api.github.com/repos/thephpleague/oauth2-client/zipball/160d6274b03562ebeb55ed18399281d8118b76c8",
+ "reference": "160d6274b03562ebeb55ed18399281d8118b76c8",
"shasum": ""
},
"require": {
@@ -2469,22 +2478,22 @@
],
"support": {
"issues": "https://github.com/thephpleague/oauth2-client/issues",
- "source": "https://github.com/thephpleague/oauth2-client/tree/2.6.1"
+ "source": "https://github.com/thephpleague/oauth2-client/tree/2.7.0"
},
- "time": "2021-12-22T16:42:49+00:00"
+ "time": "2023-04-16T18:19:15+00:00"
},
{
"name": "monolog/monolog",
- "version": "3.2.0",
+ "version": "3.4.0",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "305444bc6fb6c89e490f4b34fa6e979584d7fa81"
+ "reference": "e2392369686d420ca32df3803de28b5d6f76867d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/305444bc6fb6c89e490f4b34fa6e979584d7fa81",
- "reference": "305444bc6fb6c89e490f4b34fa6e979584d7fa81",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/e2392369686d420ca32df3803de28b5d6f76867d",
+ "reference": "e2392369686d420ca32df3803de28b5d6f76867d",
"shasum": ""
},
"require": {
@@ -2499,16 +2508,16 @@
"doctrine/couchdb": "~1.0@dev",
"elasticsearch/elasticsearch": "^7 || ^8",
"ext-json": "*",
- "graylog2/gelf-php": "^1.4.2",
- "guzzlehttp/guzzle": "^7.4",
+ "graylog2/gelf-php": "^1.4.2 || ^2.0",
+ "guzzlehttp/guzzle": "^7.4.5",
"guzzlehttp/psr7": "^2.2",
"mongodb/mongodb": "^1.8",
"php-amqplib/php-amqplib": "~2.4 || ^3",
- "phpstan/phpstan": "^1.4",
+ "phpstan/phpstan": "^1.9",
"phpstan/phpstan-deprecation-rules": "^1.0",
- "phpstan/phpstan-strict-rules": "^1.1",
- "phpunit/phpunit": "^9.5.16",
- "predis/predis": "^1.1",
+ "phpstan/phpstan-strict-rules": "^1.4",
+ "phpunit/phpunit": "^10.1",
+ "predis/predis": "^1.1 || ^2",
"ruflin/elastica": "^7",
"symfony/mailer": "^5.4 || ^6",
"symfony/mime": "^5.4 || ^6"
@@ -2560,7 +2569,7 @@
],
"support": {
"issues": "https://github.com/Seldaek/monolog/issues",
- "source": "https://github.com/Seldaek/monolog/tree/3.2.0"
+ "source": "https://github.com/Seldaek/monolog/tree/3.4.0"
},
"funding": [
{
@@ -2572,31 +2581,31 @@
"type": "tidelift"
}
],
- "time": "2022-07-24T12:00:55+00:00"
+ "time": "2023-06-21T08:46:11+00:00"
},
{
"name": "mpdf/mpdf",
- "version": "v8.1.3",
+ "version": "v8.1.6",
"source": {
"type": "git",
"url": "https://github.com/mpdf/mpdf.git",
- "reference": "59ba1a9374211174996d8530a855dedfbd5f5681"
+ "reference": "146c7c1dfd21c826b9d5bbfe3c15e52fd933c90f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/mpdf/mpdf/zipball/59ba1a9374211174996d8530a855dedfbd5f5681",
- "reference": "59ba1a9374211174996d8530a855dedfbd5f5681",
+ "url": "https://api.github.com/repos/mpdf/mpdf/zipball/146c7c1dfd21c826b9d5bbfe3c15e52fd933c90f",
+ "reference": "146c7c1dfd21c826b9d5bbfe3c15e52fd933c90f",
"shasum": ""
},
"require": {
"ext-gd": "*",
"ext-mbstring": "*",
+ "mpdf/psr-log-aware-trait": "^2.0 || ^3.0",
"myclabs/deep-copy": "^1.7",
"paragonie/random_compat": "^1.4|^2.0|^9.99.99",
"php": "^5.6 || ^7.0 || ~8.0.0 || ~8.1.0 || ~8.2.0",
- "php-http/message-factory": "^1.0",
"psr/http-message": "^1.0",
- "psr/log": "^1.0 || ^2.0",
+ "psr/log": "^1.0 || ^2.0 || ^3.0",
"setasign/fpdi": "^2.1"
},
"require-dev": {
@@ -2649,20 +2658,64 @@
"type": "custom"
}
],
- "time": "2022-12-08T12:55:58+00:00"
+ "time": "2023-05-03T19:36:43+00:00"
+ },
+ {
+ "name": "mpdf/psr-log-aware-trait",
+ "version": "v3.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/mpdf/psr-log-aware-trait.git",
+ "reference": "a633da6065e946cc491e1c962850344bb0bf3e78"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/mpdf/psr-log-aware-trait/zipball/a633da6065e946cc491e1c962850344bb0bf3e78",
+ "reference": "a633da6065e946cc491e1c962850344bb0bf3e78",
+ "shasum": ""
+ },
+ "require": {
+ "psr/log": "^3.0"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "Mpdf\\PsrLogAwareTrait\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Mark Dorison",
+ "email": "mark@chromatichq.com"
+ },
+ {
+ "name": "Kristofer Widholm",
+ "email": "kristofer@chromatichq.com"
+ }
+ ],
+ "description": "Trait to allow support of different psr/log versions.",
+ "support": {
+ "issues": "https://github.com/mpdf/psr-log-aware-trait/issues",
+ "source": "https://github.com/mpdf/psr-log-aware-trait/tree/v3.0.0"
+ },
+ "time": "2023-05-03T06:19:36+00:00"
},
{
"name": "myclabs/deep-copy",
- "version": "1.11.0",
+ "version": "1.11.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614"
+ "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614",
- "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
+ "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c",
"shasum": ""
},
"require": {
@@ -2700,7 +2753,7 @@
],
"support": {
"issues": "https://github.com/myclabs/DeepCopy/issues",
- "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0"
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1"
},
"funding": [
{
@@ -2708,7 +2761,7 @@
"type": "tidelift"
}
],
- "time": "2022-03-03T13:19:32+00:00"
+ "time": "2023-03-08T13:26:56+00:00"
},
{
"name": "oro/doctrine-extensions",
@@ -2768,60 +2821,6 @@
},
"time": "2022-05-10T14:09:20+00:00"
},
- {
- "name": "php-http/message-factory",
- "version": "v1.0.2",
- "source": {
- "type": "git",
- "url": "https://github.com/php-http/message-factory.git",
- "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/php-http/message-factory/zipball/a478cb11f66a6ac48d8954216cfed9aa06a501a1",
- "reference": "a478cb11f66a6ac48d8954216cfed9aa06a501a1",
- "shasum": ""
- },
- "require": {
- "php": ">=5.4",
- "psr/http-message": "^1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Http\\Message\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Márk Sági-Kazár",
- "email": "mark.sagikazar@gmail.com"
- }
- ],
- "description": "Factory interfaces for PSR-7 HTTP Message",
- "homepage": "http://php-http.org",
- "keywords": [
- "factory",
- "http",
- "message",
- "stream",
- "uri"
- ],
- "support": {
- "issues": "https://github.com/php-http/message-factory/issues",
- "source": "https://github.com/php-http/message-factory/tree/master"
- },
- "time": "2015-12-19T14:08:53+00:00"
- },
{
"name": "phpdocumentor/reflection-common",
"version": "2.2.0",
@@ -2934,24 +2933,27 @@
},
{
"name": "phpdocumentor/type-resolver",
- "version": "1.6.2",
+ "version": "1.7.2",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d"
+ "reference": "b2fe4d22a5426f38e014855322200b97b5362c0d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d",
- "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d",
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/b2fe4d22a5426f38e014855322200b97b5362c0d",
+ "reference": "b2fe4d22a5426f38e014855322200b97b5362c0d",
"shasum": ""
},
"require": {
+ "doctrine/deprecations": "^1.0",
"php": "^7.4 || ^8.0",
- "phpdocumentor/reflection-common": "^2.0"
+ "phpdocumentor/reflection-common": "^2.0",
+ "phpstan/phpdoc-parser": "^1.13"
},
"require-dev": {
"ext-tokenizer": "*",
+ "phpbench/phpbench": "^1.2",
"phpstan/extension-installer": "^1.1",
"phpstan/phpstan": "^1.8",
"phpstan/phpstan-phpunit": "^1.1",
@@ -2983,9 +2985,56 @@
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
"support": {
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
- "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.2"
+ "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.2"
},
- "time": "2022-10-14T12:47:21+00:00"
+ "time": "2023-05-30T18:13:47+00:00"
+ },
+ {
+ "name": "phpstan/phpdoc-parser",
+ "version": "1.23.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phpstan/phpdoc-parser.git",
+ "reference": "a2b24135c35852b348894320d47b3902a94bc494"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/a2b24135c35852b348894320d47b3902a94bc494",
+ "reference": "a2b24135c35852b348894320d47b3902a94bc494",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.2 || ^8.0"
+ },
+ "require-dev": {
+ "doctrine/annotations": "^2.0",
+ "nikic/php-parser": "^4.15",
+ "php-parallel-lint/php-parallel-lint": "^1.2",
+ "phpstan/extension-installer": "^1.0",
+ "phpstan/phpstan": "^1.5",
+ "phpstan/phpstan-phpunit": "^1.1",
+ "phpstan/phpstan-strict-rules": "^1.0",
+ "phpunit/phpunit": "^9.5",
+ "symfony/process": "^5.2"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "PHPStan\\PhpDocParser\\": [
+ "src/"
+ ]
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "description": "PHPDoc parser with support for nullable, intersection and generic types",
+ "support": {
+ "issues": "https://github.com/phpstan/phpdoc-parser/issues",
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/1.23.0"
+ },
+ "time": "2023-07-23T22:17:56+00:00"
},
{
"name": "psr/cache",
@@ -3141,21 +3190,21 @@
},
{
"name": "psr/http-client",
- "version": "1.0.1",
+ "version": "1.0.2",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-client.git",
- "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621"
+ "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621",
- "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621",
+ "url": "https://api.github.com/repos/php-fig/http-client/zipball/0955afe48220520692d2d09f7ab7e0f93ffd6a31",
+ "reference": "0955afe48220520692d2d09f7ab7e0f93ffd6a31",
"shasum": ""
},
"require": {
"php": "^7.0 || ^8.0",
- "psr/http-message": "^1.0"
+ "psr/http-message": "^1.0 || ^2.0"
},
"type": "library",
"extra": {
@@ -3175,7 +3224,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for HTTP clients",
@@ -3187,27 +3236,27 @@
"psr-18"
],
"support": {
- "source": "https://github.com/php-fig/http-client/tree/master"
+ "source": "https://github.com/php-fig/http-client/tree/1.0.2"
},
- "time": "2020-06-29T06:28:15+00:00"
+ "time": "2023-04-10T20:12:12+00:00"
},
{
"name": "psr/http-factory",
- "version": "1.0.1",
+ "version": "1.0.2",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-factory.git",
- "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be"
+ "reference": "e616d01114759c4c489f93b099585439f795fe35"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
- "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
+ "url": "https://api.github.com/repos/php-fig/http-factory/zipball/e616d01114759c4c489f93b099585439f795fe35",
+ "reference": "e616d01114759c4c489f93b099585439f795fe35",
"shasum": ""
},
"require": {
"php": ">=7.0.0",
- "psr/http-message": "^1.0"
+ "psr/http-message": "^1.0 || ^2.0"
},
"type": "library",
"extra": {
@@ -3227,7 +3276,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common interfaces for PSR-7 HTTP message factories",
@@ -3242,31 +3291,31 @@
"response"
],
"support": {
- "source": "https://github.com/php-fig/http-factory/tree/master"
+ "source": "https://github.com/php-fig/http-factory/tree/1.0.2"
},
- "time": "2019-04-30T12:38:16+00:00"
+ "time": "2023-04-10T20:10:41+00:00"
},
{
"name": "psr/http-message",
- "version": "1.0.1",
+ "version": "1.1",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-message.git",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363"
+ "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363",
- "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
+ "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "1.1.x-dev"
}
},
"autoload": {
@@ -3295,9 +3344,9 @@
"response"
],
"support": {
- "source": "https://github.com/php-fig/http-message/tree/master"
+ "source": "https://github.com/php-fig/http-message/tree/1.1"
},
- "time": "2016-08-06T14:39:51+00:00"
+ "time": "2023-04-04T09:50:52+00:00"
},
{
"name": "psr/link",
@@ -3357,16 +3406,16 @@
},
{
"name": "psr/log",
- "version": "2.0.0",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/log.git",
- "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376"
+ "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376",
- "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/fe5ea303b0887d5caefd3d431c3e61ad47037001",
+ "reference": "fe5ea303b0887d5caefd3d431c3e61ad47037001",
"shasum": ""
},
"require": {
@@ -3375,7 +3424,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.x-dev"
}
},
"autoload": {
@@ -3401,9 +3450,9 @@
"psr-3"
],
"support": {
- "source": "https://github.com/php-fig/log/tree/2.0.0"
+ "source": "https://github.com/php-fig/log/tree/3.0.0"
},
- "time": "2021-07-14T16:41:46+00:00"
+ "time": "2021-07-14T16:46:02+00:00"
},
{
"name": "ralouphie/getallheaders",
@@ -3451,20 +3500,20 @@
},
{
"name": "sensio/framework-extra-bundle",
- "version": "v6.2.9",
+ "version": "v6.2.10",
"source": {
"type": "git",
"url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git",
- "reference": "dcfac94d6bdcf95c126e8ccac2104917c7c8f135"
+ "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/dcfac94d6bdcf95c126e8ccac2104917c7c8f135",
- "reference": "dcfac94d6bdcf95c126e8ccac2104917c7c8f135",
+ "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/2f886f4b31f23c76496901acaedfedb6936ba61f",
+ "reference": "2f886f4b31f23c76496901acaedfedb6936ba61f",
"shasum": ""
},
"require": {
- "doctrine/annotations": "^1.0",
+ "doctrine/annotations": "^1.0|^2.0",
"php": ">=7.2.5",
"symfony/config": "^4.4|^5.0|^6.0",
"symfony/dependency-injection": "^4.4|^5.0|^6.0",
@@ -3522,24 +3571,23 @@
"controllers"
],
"support": {
- "issues": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/issues",
- "source": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/tree/v6.2.9"
+ "source": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/tree/v6.2.10"
},
"abandoned": "Symfony",
- "time": "2022-11-01T17:17:13+00:00"
+ "time": "2023-02-24T14:57:12+00:00"
},
{
"name": "setasign/fpdi",
- "version": "v2.3.6",
+ "version": "v2.4.1",
"source": {
"type": "git",
"url": "https://github.com/Setasign/FPDI.git",
- "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31"
+ "reference": "f4ba73e5bc053ccc90b81717c5df1cb2ea7bae7b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Setasign/FPDI/zipball/6231e315f73e4f62d72b73f3d6d78ff0eed93c31",
- "reference": "6231e315f73e4f62d72b73f3d6d78ff0eed93c31",
+ "url": "https://api.github.com/repos/Setasign/FPDI/zipball/f4ba73e5bc053ccc90b81717c5df1cb2ea7bae7b",
+ "reference": "f4ba73e5bc053ccc90b81717c5df1cb2ea7bae7b",
"shasum": ""
},
"require": {
@@ -3552,7 +3600,7 @@
"require-dev": {
"phpunit/phpunit": "~5.7",
"setasign/fpdf": "~1.8",
- "setasign/tfpdf": "1.31",
+ "setasign/tfpdf": "~1.31",
"squizlabs/php_codesniffer": "^3.5",
"tecnickcom/tcpdf": "~6.2"
},
@@ -3590,7 +3638,7 @@
],
"support": {
"issues": "https://github.com/Setasign/FPDI/issues",
- "source": "https://github.com/Setasign/FPDI/tree/v2.3.6"
+ "source": "https://github.com/Setasign/FPDI/tree/v2.4.1"
},
"funding": [
{
@@ -3598,7 +3646,7 @@
"type": "tidelift"
}
],
- "time": "2021-02-11T11:37:01+00:00"
+ "time": "2023-07-27T08:12:09+00:00"
},
{
"name": "symfony/apache-pack",
@@ -3628,16 +3676,16 @@
},
{
"name": "symfony/asset",
- "version": "v6.0.13",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/asset.git",
- "reference": "77b6b2273185bae723c38b40c6b6990a09616327"
+ "reference": "d42c434e1a73d81cae7c75cd122f20fc80ac1a2b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/asset/zipball/77b6b2273185bae723c38b40c6b6990a09616327",
- "reference": "77b6b2273185bae723c38b40c6b6990a09616327",
+ "url": "https://api.github.com/repos/symfony/asset/zipball/d42c434e1a73d81cae7c75cd122f20fc80ac1a2b",
+ "reference": "d42c434e1a73d81cae7c75cd122f20fc80ac1a2b",
"shasum": ""
},
"require": {
@@ -3680,7 +3728,7 @@
"description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/asset/tree/v6.0.13"
+ "source": "https://github.com/symfony/asset/tree/v6.0.19"
},
"funding": [
{
@@ -3696,29 +3744,29 @@
"type": "tidelift"
}
],
- "time": "2022-08-31T08:17:34+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/cache",
- "version": "v6.2.0",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "64cb231dfb25677097d18503d1ad4d016b19f19c"
+ "reference": "d176b97600860df13e851538c2df2ad88e9e5ca9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/64cb231dfb25677097d18503d1ad4d016b19f19c",
- "reference": "64cb231dfb25677097d18503d1ad4d016b19f19c",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/d176b97600860df13e851538c2df2ad88e9e5ca9",
+ "reference": "d176b97600860df13e851538c2df2ad88e9e5ca9",
"shasum": ""
},
"require": {
"php": ">=8.1",
"psr/cache": "^2.0|^3.0",
"psr/log": "^1.1|^2|^3",
- "symfony/cache-contracts": "^1.1.7|^2|^3",
- "symfony/service-contracts": "^1.1|^2|^3",
- "symfony/var-exporter": "^6.2"
+ "symfony/cache-contracts": "^2.5|^3",
+ "symfony/service-contracts": "^2.5|^3",
+ "symfony/var-exporter": "^6.2.10"
},
"conflict": {
"doctrine/dbal": "<2.13.1",
@@ -3734,7 +3782,7 @@
"require-dev": {
"cache/integration-tests": "dev-master",
"doctrine/dbal": "^2.13.1|^3.0",
- "predis/predis": "^1.1",
+ "predis/predis": "^1.1|^2.0",
"psr/simple-cache": "^1.0|^2.0|^3.0",
"symfony/config": "^5.4|^6.0",
"symfony/dependency-injection": "^5.4|^6.0",
@@ -3776,7 +3824,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v6.2.0"
+ "source": "https://github.com/symfony/cache/tree/v6.3.2"
},
"funding": [
{
@@ -3792,33 +3840,30 @@
"type": "tidelift"
}
],
- "time": "2022-11-24T11:58:37+00:00"
+ "time": "2023-07-27T16:19:14+00:00"
},
{
"name": "symfony/cache-contracts",
- "version": "v3.2.0",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache-contracts.git",
- "reference": "e8d1a5fc43534063204b74c080ebe36307d12271"
+ "reference": "ad945640ccc0ae6e208bcea7d7de4b39b569896b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/e8d1a5fc43534063204b74c080ebe36307d12271",
- "reference": "e8d1a5fc43534063204b74c080ebe36307d12271",
+ "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/ad945640ccc0ae6e208bcea7d7de4b39b569896b",
+ "reference": "ad945640ccc0ae6e208bcea7d7de4b39b569896b",
"shasum": ""
},
"require": {
"php": ">=8.1",
"psr/cache": "^3.0"
},
- "suggest": {
- "symfony/cache-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.3-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -3855,7 +3900,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/cache-contracts/tree/v3.2.0"
+ "source": "https://github.com/symfony/cache-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -3871,41 +3916,39 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T10:21:52+00:00"
+ "time": "2023-05-23T14:45:45+00:00"
},
{
"name": "symfony/config",
- "version": "v6.2.0",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "ebf27792246165a2a0b6b69ec9c620cac8c5a2f0"
+ "reference": "b47ca238b03e7b0d7880ffd1cf06e8d637ca1467"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/ebf27792246165a2a0b6b69ec9c620cac8c5a2f0",
- "reference": "ebf27792246165a2a0b6b69ec9c620cac8c5a2f0",
+ "url": "https://api.github.com/repos/symfony/config/zipball/b47ca238b03e7b0d7880ffd1cf06e8d637ca1467",
+ "reference": "b47ca238b03e7b0d7880ffd1cf06e8d637ca1467",
"shasum": ""
},
"require": {
"php": ">=8.1",
- "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/filesystem": "^5.4|^6.0",
"symfony/polyfill-ctype": "~1.8"
},
"conflict": {
- "symfony/finder": "<5.4"
+ "symfony/finder": "<5.4",
+ "symfony/service-contracts": "<2.5"
},
"require-dev": {
"symfony/event-dispatcher": "^5.4|^6.0",
"symfony/finder": "^5.4|^6.0",
"symfony/messenger": "^5.4|^6.0",
- "symfony/service-contracts": "^1.1|^2|^3",
+ "symfony/service-contracts": "^2.5|^3",
"symfony/yaml": "^5.4|^6.0"
},
- "suggest": {
- "symfony/yaml": "To use the yaml reference dumper"
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -3932,7 +3975,7 @@
"description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/config/tree/v6.2.0"
+ "source": "https://github.com/symfony/config/tree/v6.3.2"
},
"funding": [
{
@@ -3948,20 +3991,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-07-19T20:22:16+00:00"
},
{
"name": "symfony/console",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "be294423f337dda97c810733138c0caec1bb0575"
+ "reference": "c3ebc83d031b71c39da318ca8b7a07ecc67507ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/be294423f337dda97c810733138c0caec1bb0575",
- "reference": "be294423f337dda97c810733138c0caec1bb0575",
+ "url": "https://api.github.com/repos/symfony/console/zipball/c3ebc83d031b71c39da318ca8b7a07ecc67507ed",
+ "reference": "c3ebc83d031b71c39da318ca8b7a07ecc67507ed",
"shasum": ""
},
"require": {
@@ -4027,7 +4070,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.0.16"
+ "source": "https://github.com/symfony/console/tree/v6.0.19"
},
"funding": [
{
@@ -4043,20 +4086,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T18:58:46+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v6.1.8",
+ "version": "v6.1.12",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "11e33ed84db0ced77511a23b35168db127909f0e"
+ "reference": "360c9d0948e1fe675336346d5862e8e55b378d90"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/11e33ed84db0ced77511a23b35168db127909f0e",
- "reference": "11e33ed84db0ced77511a23b35168db127909f0e",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/360c9d0948e1fe675336346d5862e8e55b378d90",
+ "reference": "360c9d0948e1fe675336346d5862e8e55b378d90",
"shasum": ""
},
"require": {
@@ -4114,7 +4157,7 @@
"description": "Allows you to standardize and centralize the way objects are constructed in your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v6.1.8"
+ "source": "https://github.com/symfony/dependency-injection/tree/v6.1.12"
},
"funding": [
{
@@ -4130,20 +4173,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T07:34:52+00:00"
+ "time": "2023-01-30T15:43:30+00:00"
},
{
"name": "symfony/deprecation-contracts",
- "version": "v3.2.0",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3"
+ "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3",
- "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/7c3aff79d10325257a001fcf92d991f24fc967cf",
+ "reference": "7c3aff79d10325257a001fcf92d991f24fc967cf",
"shasum": ""
},
"require": {
@@ -4152,7 +4195,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.3-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -4181,7 +4224,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0"
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -4197,20 +4240,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T10:21:52+00:00"
+ "time": "2023-05-23T14:45:45+00:00"
},
{
"name": "symfony/doctrine-bridge",
- "version": "v6.1.8",
+ "version": "v6.1.11",
"source": {
"type": "git",
"url": "https://github.com/symfony/doctrine-bridge.git",
- "reference": "088996a46a2561582001153df9c7fab7c065908a"
+ "reference": "f50159673ec3f4a68b81db4712f4a5bbe47a9442"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/088996a46a2561582001153df9c7fab7c065908a",
- "reference": "088996a46a2561582001153df9c7fab7c065908a",
+ "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/f50159673ec3f4a68b81db4712f4a5bbe47a9442",
+ "reference": "f50159673ec3f4a68b81db4712f4a5bbe47a9442",
"shasum": ""
},
"require": {
@@ -4238,7 +4281,7 @@
"symfony/validator": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.10.4",
+ "doctrine/annotations": "^1.10.4|^2",
"doctrine/collections": "^1.0|^2.0",
"doctrine/data-fixtures": "^1.1",
"doctrine/dbal": "^2.13.1|^3.0",
@@ -4296,7 +4339,7 @@
"description": "Provides integration for Doctrine with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/doctrine-bridge/tree/v6.1.8"
+ "source": "https://github.com/symfony/doctrine-bridge/tree/v6.1.11"
},
"funding": [
{
@@ -4312,20 +4355,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-28T12:27:40+00:00"
+ "time": "2023-01-10T18:53:01+00:00"
},
{
"name": "symfony/doctrine-messenger",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/doctrine-messenger.git",
- "reference": "2db111da8b1f67f890a08cf208eeb33c26347e77"
+ "reference": "bf235c311bac1e882fe8943198e141302de2d4f9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/doctrine-messenger/zipball/2db111da8b1f67f890a08cf208eeb33c26347e77",
- "reference": "2db111da8b1f67f890a08cf208eeb33c26347e77",
+ "url": "https://api.github.com/repos/symfony/doctrine-messenger/zipball/bf235c311bac1e882fe8943198e141302de2d4f9",
+ "reference": "bf235c311bac1e882fe8943198e141302de2d4f9",
"shasum": ""
},
"require": {
@@ -4368,7 +4411,7 @@
"description": "Symfony Doctrine Messenger Bridge",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/doctrine-messenger/tree/v6.0.16"
+ "source": "https://github.com/symfony/doctrine-messenger/tree/v6.0.19"
},
"funding": [
{
@@ -4384,20 +4427,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-04T07:39:59+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/dotenv",
- "version": "v6.0.5",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/dotenv.git",
- "reference": "1c2288fdfd0787288cd04b9868f879f2212159c4"
+ "reference": "9cee123707e689f7e06c09624c145d206468bcf2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dotenv/zipball/1c2288fdfd0787288cd04b9868f879f2212159c4",
- "reference": "1c2288fdfd0787288cd04b9868f879f2212159c4",
+ "url": "https://api.github.com/repos/symfony/dotenv/zipball/9cee123707e689f7e06c09624c145d206468bcf2",
+ "reference": "9cee123707e689f7e06c09624c145d206468bcf2",
"shasum": ""
},
"require": {
@@ -4438,7 +4481,7 @@
"environment"
],
"support": {
- "source": "https://github.com/symfony/dotenv/tree/v6.0.5"
+ "source": "https://github.com/symfony/dotenv/tree/v6.0.19"
},
"funding": [
{
@@ -4454,20 +4497,20 @@
"type": "tidelift"
}
],
- "time": "2022-02-21T17:15:17+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/error-handler",
- "version": "v6.2.1",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "b4e41f62c1124378863ff2705158a60da3e4c6b9"
+ "reference": "85fd65ed295c4078367c784e8a5a6cee30348b7a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/b4e41f62c1124378863ff2705158a60da3e4c6b9",
- "reference": "b4e41f62c1124378863ff2705158a60da3e4c6b9",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/85fd65ed295c4078367c784e8a5a6cee30348b7a",
+ "reference": "85fd65ed295c4078367c784e8a5a6cee30348b7a",
"shasum": ""
},
"require": {
@@ -4475,8 +4518,11 @@
"psr/log": "^1|^2|^3",
"symfony/var-dumper": "^5.4|^6.0"
},
+ "conflict": {
+ "symfony/deprecation-contracts": "<2.5"
+ },
"require-dev": {
- "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/http-kernel": "^5.4|^6.0",
"symfony/serializer": "^5.4|^6.0"
},
@@ -4509,7 +4555,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v6.2.1"
+ "source": "https://github.com/symfony/error-handler/tree/v6.3.2"
},
"funding": [
{
@@ -4525,28 +4571,29 @@
"type": "tidelift"
}
],
- "time": "2022-12-01T21:07:46+00:00"
+ "time": "2023-07-16T17:05:46+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v6.2.0",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "9efb1618fabee89515fe031314e8ed5625f85a53"
+ "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9efb1618fabee89515fe031314e8ed5625f85a53",
- "reference": "9efb1618fabee89515fe031314e8ed5625f85a53",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/adb01fe097a4ee930db9258a3cc906b5beb5cf2e",
+ "reference": "adb01fe097a4ee930db9258a3cc906b5beb5cf2e",
"shasum": ""
},
"require": {
"php": ">=8.1",
- "symfony/event-dispatcher-contracts": "^2|^3"
+ "symfony/event-dispatcher-contracts": "^2.5|^3"
},
"conflict": {
- "symfony/dependency-injection": "<5.4"
+ "symfony/dependency-injection": "<5.4",
+ "symfony/service-contracts": "<2.5"
},
"provide": {
"psr/event-dispatcher-implementation": "1.0",
@@ -4559,13 +4606,9 @@
"symfony/error-handler": "^5.4|^6.0",
"symfony/expression-language": "^5.4|^6.0",
"symfony/http-foundation": "^5.4|^6.0",
- "symfony/service-contracts": "^1.1|^2|^3",
+ "symfony/service-contracts": "^2.5|^3",
"symfony/stopwatch": "^5.4|^6.0"
},
- "suggest": {
- "symfony/dependency-injection": "",
- "symfony/http-kernel": ""
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -4592,7 +4635,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.0"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v6.3.2"
},
"funding": [
{
@@ -4608,33 +4651,30 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-07-06T06:56:43+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
- "version": "v3.2.0",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
- "reference": "0782b0b52a737a05b4383d0df35a474303cabdae"
+ "reference": "a76aed96a42d2b521153fb382d418e30d18b59df"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0782b0b52a737a05b4383d0df35a474303cabdae",
- "reference": "0782b0b52a737a05b4383d0df35a474303cabdae",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/a76aed96a42d2b521153fb382d418e30d18b59df",
+ "reference": "a76aed96a42d2b521153fb382d418e30d18b59df",
"shasum": ""
},
"require": {
"php": ">=8.1",
"psr/event-dispatcher": "^1"
},
- "suggest": {
- "symfony/event-dispatcher-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.3-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -4671,7 +4711,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.0"
+ "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -4687,20 +4727,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T10:21:52+00:00"
+ "time": "2023-05-23T14:45:45+00:00"
},
{
"name": "symfony/expression-language",
- "version": "v6.0.14",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/expression-language.git",
- "reference": "80fc98c72206ee7caa3c427e91467d6bf48862c6"
+ "reference": "d912aa436eeed66ae369a2b8a247249bed8f9a03"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/expression-language/zipball/80fc98c72206ee7caa3c427e91467d6bf48862c6",
- "reference": "80fc98c72206ee7caa3c427e91467d6bf48862c6",
+ "url": "https://api.github.com/repos/symfony/expression-language/zipball/d912aa436eeed66ae369a2b8a247249bed8f9a03",
+ "reference": "d912aa436eeed66ae369a2b8a247249bed8f9a03",
"shasum": ""
},
"require": {
@@ -4734,7 +4774,7 @@
"description": "Provides an engine that can compile and evaluate expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/expression-language/tree/v6.0.14"
+ "source": "https://github.com/symfony/expression-language/tree/v6.0.19"
},
"funding": [
{
@@ -4750,20 +4790,20 @@
"type": "tidelift"
}
],
- "time": "2022-10-07T08:02:12+00:00"
+ "time": "2023-01-20T17:44:14+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v6.2.0",
+ "version": "v6.3.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016"
+ "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/50b2523c874605cf3d4acf7a9e2b30b6a440a016",
- "reference": "50b2523c874605cf3d4acf7a9e2b30b6a440a016",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/edd36776956f2a6fcf577edb5b05eb0e3bdc52ae",
+ "reference": "edd36776956f2a6fcf577edb5b05eb0e3bdc52ae",
"shasum": ""
},
"require": {
@@ -4797,7 +4837,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v6.2.0"
+ "source": "https://github.com/symfony/filesystem/tree/v6.3.1"
},
"funding": [
{
@@ -4813,20 +4853,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-20T13:01:27+00:00"
+ "time": "2023-06-01T08:30:39+00:00"
},
{
"name": "symfony/finder",
- "version": "v6.2.0",
+ "version": "v6.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570"
+ "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/eb2355f69519e4ef33f1835bca4c935f5d42e570",
- "reference": "eb2355f69519e4ef33f1835bca4c935f5d42e570",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/9915db259f67d21eefee768c1abcf1cc61b1fc9e",
+ "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e",
"shasum": ""
},
"require": {
@@ -4861,7 +4901,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v6.2.0"
+ "source": "https://github.com/symfony/finder/tree/v6.3.3"
},
"funding": [
{
@@ -4877,20 +4917,20 @@
"type": "tidelift"
}
],
- "time": "2022-10-09T08:55:40+00:00"
+ "time": "2023-07-31T08:31:44+00:00"
},
{
"name": "symfony/flex",
- "version": "v1.19.3",
+ "version": "v1.20.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/flex.git",
- "reference": "ab0453b16029e131c112df1a76e59eb2a47e1f67"
+ "reference": "49059a10127ac8270957e116a2251ae535d202ac"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/flex/zipball/ab0453b16029e131c112df1a76e59eb2a47e1f67",
- "reference": "ab0453b16029e131c112df1a76e59eb2a47e1f67",
+ "url": "https://api.github.com/repos/symfony/flex/zipball/49059a10127ac8270957e116a2251ae535d202ac",
+ "reference": "49059a10127ac8270957e116a2251ae535d202ac",
"shasum": ""
},
"require": {
@@ -4926,7 +4966,7 @@
"description": "Composer plugin for Symfony",
"support": {
"issues": "https://github.com/symfony/flex/issues",
- "source": "https://github.com/symfony/flex/tree/v1.19.3"
+ "source": "https://github.com/symfony/flex/tree/v1.20.0"
},
"funding": [
{
@@ -4942,20 +4982,20 @@
"type": "tidelift"
}
],
- "time": "2022-08-07T09:39:08+00:00"
+ "time": "2023-05-26T16:25:26+00:00"
},
{
"name": "symfony/form",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/form.git",
- "reference": "1ff4439b8f55d91c0982583c15d339c08abf1e63"
+ "reference": "bec07ecf4aac245183b8e0fa93eb68630415346e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/form/zipball/1ff4439b8f55d91c0982583c15d339c08abf1e63",
- "reference": "1ff4439b8f55d91c0982583c15d339c08abf1e63",
+ "url": "https://api.github.com/repos/symfony/form/zipball/bec07ecf4aac245183b8e0fa93eb68630415346e",
+ "reference": "bec07ecf4aac245183b8e0fa93eb68630415346e",
"shasum": ""
},
"require": {
@@ -5028,7 +5068,7 @@
"description": "Allows to easily create, process and reuse HTML forms",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/form/tree/v6.0.16"
+ "source": "https://github.com/symfony/form/tree/v6.0.19"
},
"funding": [
{
@@ -5044,20 +5084,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-28T12:25:56+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/framework-bundle",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/framework-bundle.git",
- "reference": "ac099ef8dba62fd58d9824438b144fa4afce86d8"
+ "reference": "ee403597484be1073222373fc2962b44c36f5dd4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ac099ef8dba62fd58d9824438b144fa4afce86d8",
- "reference": "ac099ef8dba62fd58d9824438b144fa4afce86d8",
+ "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ee403597484be1073222373fc2962b44c36f5dd4",
+ "reference": "ee403597484be1073222373fc2962b44c36f5dd4",
"shasum": ""
},
"require": {
@@ -5107,7 +5147,7 @@
"symfony/workflow": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.13.1",
+ "doctrine/annotations": "^1.13.1|^2",
"doctrine/persistence": "^1.3|^2|^3",
"phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
"symfony/asset": "^5.4|^6.0",
@@ -5176,7 +5216,7 @@
"description": "Provides a tight integration between Symfony components and the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/framework-bundle/tree/v6.0.16"
+ "source": "https://github.com/symfony/framework-bundle/tree/v6.0.19"
},
"funding": [
{
@@ -5192,20 +5232,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T18:58:46+00:00"
+ "time": "2023-01-11T11:50:03+00:00"
},
{
"name": "symfony/http-client",
- "version": "v6.0.16",
+ "version": "v6.0.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "5db1221826d5f841f443d434358d5f82c862c5a9"
+ "reference": "541c04560da1875f62c963c3aab6ea12a7314e11"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/5db1221826d5f841f443d434358d5f82c862c5a9",
- "reference": "5db1221826d5f841f443d434358d5f82c862c5a9",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/541c04560da1875f62c963c3aab6ea12a7314e11",
+ "reference": "541c04560da1875f62c963c3aab6ea12a7314e11",
"shasum": ""
},
"require": {
@@ -5260,7 +5300,7 @@
"description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-client/tree/v6.0.16"
+ "source": "https://github.com/symfony/http-client/tree/v6.0.20"
},
"funding": [
{
@@ -5276,32 +5316,29 @@
"type": "tidelift"
}
],
- "time": "2022-11-14T10:09:52+00:00"
+ "time": "2023-01-30T15:41:07+00:00"
},
{
"name": "symfony/http-client-contracts",
- "version": "v3.1.1",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client-contracts.git",
- "reference": "fd038f08c623ab5d22b26e9ba35afe8c79071800"
+ "reference": "3b66325d0176b4ec826bffab57c9037d759c31fb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/fd038f08c623ab5d22b26e9ba35afe8c79071800",
- "reference": "fd038f08c623ab5d22b26e9ba35afe8c79071800",
+ "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/3b66325d0176b4ec826bffab57c9037d759c31fb",
+ "reference": "3b66325d0176b4ec826bffab57c9037d759c31fb",
"shasum": ""
},
"require": {
"php": ">=8.1"
},
- "suggest": {
- "symfony/http-client-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.1-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -5341,7 +5378,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/http-client-contracts/tree/v3.1.1"
+ "source": "https://github.com/symfony/http-client-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -5357,32 +5394,34 @@
"type": "tidelift"
}
],
- "time": "2022-04-22T07:30:54+00:00"
+ "time": "2023-05-23T14:45:45+00:00"
},
{
"name": "symfony/http-foundation",
- "version": "v6.2.1",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "d0bbd5a7e81b38f32504399b9199f265505b7bac"
+ "reference": "43ed99d30f5f466ffa00bdac3f5f7aa9cd7617c3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d0bbd5a7e81b38f32504399b9199f265505b7bac",
- "reference": "d0bbd5a7e81b38f32504399b9199f265505b7bac",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/43ed99d30f5f466ffa00bdac3f5f7aa9cd7617c3",
+ "reference": "43ed99d30f5f466ffa00bdac3f5f7aa9cd7617c3",
"shasum": ""
},
"require": {
"php": ">=8.1",
- "symfony/deprecation-contracts": "^2.1|^3",
- "symfony/polyfill-mbstring": "~1.1"
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/polyfill-mbstring": "~1.1",
+ "symfony/polyfill-php83": "^1.27"
},
"conflict": {
"symfony/cache": "<6.2"
},
"require-dev": {
- "predis/predis": "~1.0",
+ "doctrine/dbal": "^2.13.1|^3.0",
+ "predis/predis": "^1.1|^2.0",
"symfony/cache": "^5.4|^6.0",
"symfony/dependency-injection": "^5.4|^6.0",
"symfony/expression-language": "^5.4|^6.0",
@@ -5390,9 +5429,6 @@
"symfony/mime": "^5.4|^6.0",
"symfony/rate-limiter": "^5.2|^6.0"
},
- "suggest": {
- "symfony/mime": "To use the file extension guesser"
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -5419,7 +5455,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v6.2.1"
+ "source": "https://github.com/symfony/http-foundation/tree/v6.3.2"
},
"funding": [
{
@@ -5435,20 +5471,20 @@
"type": "tidelift"
}
],
- "time": "2022-12-04T18:26:13+00:00"
+ "time": "2023-07-23T21:58:39+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v6.1.8",
+ "version": "v6.1.12",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "6073eaed148f4c0b8d4ae33e7332b34327ef728e"
+ "reference": "7a4a69dee1b0db04bdc12e86d4cd0dbf6daa390c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/6073eaed148f4c0b8d4ae33e7332b34327ef728e",
- "reference": "6073eaed148f4c0b8d4ae33e7332b34327ef728e",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/7a4a69dee1b0db04bdc12e86d4cd0dbf6daa390c",
+ "reference": "7a4a69dee1b0db04bdc12e86d4cd0dbf6daa390c",
"shasum": ""
},
"require": {
@@ -5529,7 +5565,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v6.1.8"
+ "source": "https://github.com/symfony/http-kernel/tree/v6.1.12"
},
"funding": [
{
@@ -5545,20 +5581,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-28T18:20:59+00:00"
+ "time": "2023-02-01T08:26:56+00:00"
},
{
"name": "symfony/intl",
- "version": "v6.0.15",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/intl.git",
- "reference": "3377841a596c69da08086c50e09a37f2b5b1b598"
+ "reference": "a2e1ce9048ea549ee1e8d9ce521cbe9a9ec7d92c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/intl/zipball/3377841a596c69da08086c50e09a37f2b5b1b598",
- "reference": "3377841a596c69da08086c50e09a37f2b5b1b598",
+ "url": "https://api.github.com/repos/symfony/intl/zipball/a2e1ce9048ea549ee1e8d9ce521cbe9a9ec7d92c",
+ "reference": "a2e1ce9048ea549ee1e8d9ce521cbe9a9ec7d92c",
"shasum": ""
},
"require": {
@@ -5609,7 +5645,7 @@
"localization"
],
"support": {
- "source": "https://github.com/symfony/intl/tree/v6.0.15"
+ "source": "https://github.com/symfony/intl/tree/v6.0.19"
},
"funding": [
{
@@ -5625,24 +5661,24 @@
"type": "tidelift"
}
],
- "time": "2022-10-23T10:33:07+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/mailer",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
- "reference": "aa47b34ab09fa03106d9e156632e4c6176b962da"
+ "reference": "cd60799210c488f545ddde2444dc1aa548322872"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mailer/zipball/aa47b34ab09fa03106d9e156632e4c6176b962da",
- "reference": "aa47b34ab09fa03106d9e156632e4c6176b962da",
+ "url": "https://api.github.com/repos/symfony/mailer/zipball/cd60799210c488f545ddde2444dc1aa548322872",
+ "reference": "cd60799210c488f545ddde2444dc1aa548322872",
"shasum": ""
},
"require": {
- "egulias/email-validator": "^2.1.10|^3",
+ "egulias/email-validator": "^2.1.10|^3|^4",
"php": ">=8.0.2",
"psr/event-dispatcher": "^1",
"psr/log": "^1|^2|^3",
@@ -5683,7 +5719,7 @@
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/mailer/tree/v6.0.16"
+ "source": "https://github.com/symfony/mailer/tree/v6.0.19"
},
"funding": [
{
@@ -5699,20 +5735,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-04T07:39:59+00:00"
+ "time": "2023-01-11T11:50:03+00:00"
},
{
"name": "symfony/messenger",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/messenger.git",
- "reference": "f1ad9a3faa844c6fec4a34c182a945ba3d877e93"
+ "reference": "d584d1754e9e19f83a43c75f36c84b42f6f7e209"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/messenger/zipball/f1ad9a3faa844c6fec4a34c182a945ba3d877e93",
- "reference": "f1ad9a3faa844c6fec4a34c182a945ba3d877e93",
+ "url": "https://api.github.com/repos/symfony/messenger/zipball/d584d1754e9e19f83a43c75f36c84b42f6f7e209",
+ "reference": "d584d1754e9e19f83a43c75f36c84b42f6f7e209",
"shasum": ""
},
"require": {
@@ -5768,7 +5804,7 @@
"description": "Helps applications send and receive messages to/from other applications or via message queues",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/messenger/tree/v6.0.16"
+ "source": "https://github.com/symfony/messenger/tree/v6.0.19"
},
"funding": [
{
@@ -5784,20 +5820,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-14T10:09:52+00:00"
+ "time": "2023-01-20T17:44:14+00:00"
},
{
"name": "symfony/mime",
- "version": "v6.1.8",
+ "version": "v6.1.11",
"source": {
"type": "git",
"url": "https://github.com/symfony/mime.git",
- "reference": "d02c3938a50fbc95cf8f364be1c011758270f30e"
+ "reference": "2bff58573e81a1df51bf99ad01725428beda1cbc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mime/zipball/d02c3938a50fbc95cf8f364be1c011758270f30e",
- "reference": "d02c3938a50fbc95cf8f364be1c011758270f30e",
+ "url": "https://api.github.com/repos/symfony/mime/zipball/2bff58573e81a1df51bf99ad01725428beda1cbc",
+ "reference": "2bff58573e81a1df51bf99ad01725428beda1cbc",
"shasum": ""
},
"require": {
@@ -5812,7 +5848,7 @@
"symfony/mailer": "<5.4"
},
"require-dev": {
- "egulias/email-validator": "^2.1.10|^3.1",
+ "egulias/email-validator": "^2.1.10|^3.1|^4",
"phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
"symfony/dependency-injection": "^5.4|^6.0",
"symfony/property-access": "^5.4|^6.0",
@@ -5849,7 +5885,7 @@
"mime-type"
],
"support": {
- "source": "https://github.com/symfony/mime/tree/v6.1.8"
+ "source": "https://github.com/symfony/mime/tree/v6.1.11"
},
"funding": [
{
@@ -5865,27 +5901,27 @@
"type": "tidelift"
}
],
- "time": "2022-11-28T12:27:40+00:00"
+ "time": "2023-01-10T18:53:01+00:00"
},
{
"name": "symfony/monolog-bridge",
- "version": "v6.2.0",
+ "version": "v6.3.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/monolog-bridge.git",
- "reference": "a549937e3d2da2753fdf816b05cc4fec8e5d68da"
+ "reference": "04b04b8e465e0fa84940e5609b6796a8b4e51bf1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/a549937e3d2da2753fdf816b05cc4fec8e5d68da",
- "reference": "a549937e3d2da2753fdf816b05cc4fec8e5d68da",
+ "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/04b04b8e465e0fa84940e5609b6796a8b4e51bf1",
+ "reference": "04b04b8e465e0fa84940e5609b6796a8b4e51bf1",
"shasum": ""
},
"require": {
"monolog/monolog": "^1.25.1|^2|^3",
"php": ">=8.1",
"symfony/http-kernel": "^5.4|^6.0",
- "symfony/service-contracts": "^1.1|^2|^3"
+ "symfony/service-contracts": "^2.5|^3"
},
"conflict": {
"symfony/console": "<5.4",
@@ -5901,11 +5937,6 @@
"symfony/security-core": "^6.0",
"symfony/var-dumper": "^5.4|^6.0"
},
- "suggest": {
- "symfony/console": "For the possibility to show log messages in console commands depending on verbosity settings.",
- "symfony/http-kernel": "For using the debugging handlers together with the response life cycle of the HTTP kernel.",
- "symfony/var-dumper": "For using the debugging handlers like the console handler or the log server handler."
- },
"type": "symfony-bridge",
"autoload": {
"psr-4": {
@@ -5932,7 +5963,7 @@
"description": "Provides integration for Monolog with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/monolog-bridge/tree/v6.2.0"
+ "source": "https://github.com/symfony/monolog-bridge/tree/v6.3.1"
},
"funding": [
{
@@ -5948,7 +5979,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-20T07:00:24+00:00"
+ "time": "2023-06-08T11:13:32+00:00"
},
{
"name": "symfony/monolog-bundle",
@@ -6033,16 +6064,16 @@
},
{
"name": "symfony/notifier",
- "version": "v6.0.8",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/notifier.git",
- "reference": "1b81b376728538cdacbe3be6f750501f8c974451"
+ "reference": "99566882d0dee350a1434be4baa50585db0d6539"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/notifier/zipball/1b81b376728538cdacbe3be6f750501f8c974451",
- "reference": "1b81b376728538cdacbe3be6f750501f8c974451",
+ "url": "https://api.github.com/repos/symfony/notifier/zipball/99566882d0dee350a1434be4baa50585db0d6539",
+ "reference": "99566882d0dee350a1434be4baa50585db0d6539",
"shasum": ""
},
"require": {
@@ -6088,7 +6119,7 @@
"notifier"
],
"support": {
- "source": "https://github.com/symfony/notifier/tree/v6.0.8"
+ "source": "https://github.com/symfony/notifier/tree/v6.0.19"
},
"funding": [
{
@@ -6104,25 +6135,25 @@
"type": "tidelift"
}
],
- "time": "2022-04-12T16:11:42+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v6.2.0",
+ "version": "v6.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "d28f02acde71ff75e957082cd36e973df395f626"
+ "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/d28f02acde71ff75e957082cd36e973df395f626",
- "reference": "d28f02acde71ff75e957082cd36e973df395f626",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/a10f19f5198d589d5c33333cffe98dc9820332dd",
+ "reference": "a10f19f5198d589d5c33333cffe98dc9820332dd",
"shasum": ""
},
"require": {
"php": ">=8.1",
- "symfony/deprecation-contracts": "^2.1|^3"
+ "symfony/deprecation-contracts": "^2.5|^3"
},
"type": "library",
"autoload": {
@@ -6155,7 +6186,7 @@
"options"
],
"support": {
- "source": "https://github.com/symfony/options-resolver/tree/v6.2.0"
+ "source": "https://github.com/symfony/options-resolver/tree/v6.3.0"
},
"funding": [
{
@@ -6171,20 +6202,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-05-12T14:21:09+00:00"
},
{
"name": "symfony/password-hasher",
- "version": "v6.2.0",
+ "version": "v6.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/password-hasher.git",
- "reference": "955ce6bdbb53933897043ad00776a88ba916208a"
+ "reference": "d23ad221989e6b8278d050cabfd7b569eee84590"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/password-hasher/zipball/955ce6bdbb53933897043ad00776a88ba916208a",
- "reference": "955ce6bdbb53933897043ad00776a88ba916208a",
+ "url": "https://api.github.com/repos/symfony/password-hasher/zipball/d23ad221989e6b8278d050cabfd7b569eee84590",
+ "reference": "d23ad221989e6b8278d050cabfd7b569eee84590",
"shasum": ""
},
"require": {
@@ -6227,7 +6258,7 @@
"password"
],
"support": {
- "source": "https://github.com/symfony/password-hasher/tree/v6.2.0"
+ "source": "https://github.com/symfony/password-hasher/tree/v6.3.0"
},
"funding": [
{
@@ -6243,7 +6274,7 @@
"type": "tidelift"
}
],
- "time": "2022-09-01T02:03:18+00:00"
+ "time": "2023-02-14T09:04:20+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
@@ -6829,6 +6860,83 @@
],
"time": "2022-11-03T14:55:06+00:00"
},
+ {
+ "name": "symfony/polyfill-php83",
+ "version": "v1.27.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php83.git",
+ "reference": "508c652ba3ccf69f8c97f251534f229791b52a57"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/508c652ba3ccf69f8c97f251534f229791b52a57",
+ "reference": "508c652ba3ccf69f8c97f251534f229791b52a57",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1",
+ "symfony/polyfill-php80": "^1.14"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "1.27-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "files": [
+ "bootstrap.php"
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php83\\": ""
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "support": {
+ "source": "https://github.com/symfony/polyfill-php83/tree/v1.27.0"
+ },
+ "funding": [
+ {
+ "url": "https://symfony.com/sponsor",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/fabpot",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-11-03T14:55:06+00:00"
+ },
{
"name": "symfony/polyfill-uuid",
"version": "v1.27.0",
@@ -6974,16 +7082,16 @@
},
{
"name": "symfony/property-access",
- "version": "v6.0.15",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/property-access.git",
- "reference": "bdcd636b962c10eb3575dac41cf60a704da42c89"
+ "reference": "cae9aadf6e3a08315af666d4fede905fbb5b5393"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/property-access/zipball/bdcd636b962c10eb3575dac41cf60a704da42c89",
- "reference": "bdcd636b962c10eb3575dac41cf60a704da42c89",
+ "url": "https://api.github.com/repos/symfony/property-access/zipball/cae9aadf6e3a08315af666d4fede905fbb5b5393",
+ "reference": "cae9aadf6e3a08315af666d4fede905fbb5b5393",
"shasum": ""
},
"require": {
@@ -7033,7 +7141,7 @@
"reflection"
],
"support": {
- "source": "https://github.com/symfony/property-access/tree/v6.0.15"
+ "source": "https://github.com/symfony/property-access/tree/v6.0.19"
},
"funding": [
{
@@ -7049,20 +7157,20 @@
"type": "tidelift"
}
],
- "time": "2022-10-26T20:57:43+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/property-info",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/property-info.git",
- "reference": "5124bab2d32d521c592159bd4d13235fa3da0fe7"
+ "reference": "e6dfb2223b21768d3b2ae033a5e1f9d205184d45"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/property-info/zipball/5124bab2d32d521c592159bd4d13235fa3da0fe7",
- "reference": "5124bab2d32d521c592159bd4d13235fa3da0fe7",
+ "url": "https://api.github.com/repos/symfony/property-info/zipball/e6dfb2223b21768d3b2ae033a5e1f9d205184d45",
+ "reference": "e6dfb2223b21768d3b2ae033a5e1f9d205184d45",
"shasum": ""
},
"require": {
@@ -7075,7 +7183,7 @@
"symfony/dependency-injection": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.10.4",
+ "doctrine/annotations": "^1.10.4|^2",
"phpdocumentor/reflection-docblock": "^5.2",
"phpstan/phpdoc-parser": "^1.0",
"symfony/cache": "^5.4|^6.0",
@@ -7122,7 +7230,7 @@
"validator"
],
"support": {
- "source": "https://github.com/symfony/property-info/tree/v6.0.16"
+ "source": "https://github.com/symfony/property-info/tree/v6.0.19"
},
"funding": [
{
@@ -7138,20 +7246,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T07:33:41+00:00"
+ "time": "2023-01-15T17:21:41+00:00"
},
{
"name": "symfony/proxy-manager-bridge",
- "version": "v6.0.6",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/proxy-manager-bridge.git",
- "reference": "aa68a86bc7df5ee9ff39107f122ebf1931d98ff8"
+ "reference": "905733405585e584596a2ea2874dad84a738daa8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/aa68a86bc7df5ee9ff39107f122ebf1931d98ff8",
- "reference": "aa68a86bc7df5ee9ff39107f122ebf1931d98ff8",
+ "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/905733405585e584596a2ea2874dad84a738daa8",
+ "reference": "905733405585e584596a2ea2874dad84a738daa8",
"shasum": ""
},
"require": {
@@ -7188,7 +7296,7 @@
"description": "Provides integration for ProxyManager with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/proxy-manager-bridge/tree/v6.0.6"
+ "source": "https://github.com/symfony/proxy-manager-bridge/tree/v6.0.19"
},
"funding": [
{
@@ -7204,24 +7312,25 @@
"type": "tidelift"
}
],
- "time": "2022-03-02T12:58:14+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/routing",
- "version": "v6.2.0",
+ "version": "v6.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "857ac6f4df371470fbdefa2f5967a2618dbf1852"
+ "reference": "e7243039ab663822ff134fbc46099b5fdfa16f6a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/857ac6f4df371470fbdefa2f5967a2618dbf1852",
- "reference": "857ac6f4df371470fbdefa2f5967a2618dbf1852",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/e7243039ab663822ff134fbc46099b5fdfa16f6a",
+ "reference": "e7243039ab663822ff134fbc46099b5fdfa16f6a",
"shasum": ""
},
"require": {
- "php": ">=8.1"
+ "php": ">=8.1",
+ "symfony/deprecation-contracts": "^2.5|^3"
},
"conflict": {
"doctrine/annotations": "<1.12",
@@ -7230,7 +7339,7 @@
"symfony/yaml": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.12",
+ "doctrine/annotations": "^1.12|^2",
"psr/log": "^1|^2|^3",
"symfony/config": "^6.2",
"symfony/dependency-injection": "^5.4|^6.0",
@@ -7238,12 +7347,6 @@
"symfony/http-foundation": "^5.4|^6.0",
"symfony/yaml": "^5.4|^6.0"
},
- "suggest": {
- "symfony/config": "For using the all-in-one router or any loader",
- "symfony/expression-language": "For using expression matching",
- "symfony/http-foundation": "For using a Symfony Request object",
- "symfony/yaml": "For using the YAML loader"
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -7276,7 +7379,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v6.2.0"
+ "source": "https://github.com/symfony/routing/tree/v6.3.3"
},
"funding": [
{
@@ -7292,20 +7395,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-09T13:28:29+00:00"
+ "time": "2023-07-31T07:08:24+00:00"
},
{
"name": "symfony/security-bundle",
- "version": "v6.0.11",
+ "version": "v6.0.20",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-bundle.git",
- "reference": "ba07e865bbcd9c23a2cb165947becb92f450b3bc"
+ "reference": "fbe14faff3dbae154d0004b254a201e930f3d8e0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-bundle/zipball/ba07e865bbcd9c23a2cb165947becb92f450b3bc",
- "reference": "ba07e865bbcd9c23a2cb165947becb92f450b3bc",
+ "url": "https://api.github.com/repos/symfony/security-bundle/zipball/fbe14faff3dbae154d0004b254a201e930f3d8e0",
+ "reference": "fbe14faff3dbae154d0004b254a201e930f3d8e0",
"shasum": ""
},
"require": {
@@ -7320,7 +7423,7 @@
"symfony/password-hasher": "^5.4|^6.0",
"symfony/security-core": "^5.4|^6.0",
"symfony/security-csrf": "^5.4|^6.0",
- "symfony/security-http": "^5.4|^6.0"
+ "symfony/security-http": "^5.4.20|~6.0.20|~6.1.12|^6.2.6"
},
"conflict": {
"symfony/browser-kit": "<5.4",
@@ -7330,7 +7433,7 @@
"symfony/twig-bundle": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.10.4",
+ "doctrine/annotations": "^1.10.4|^2",
"symfony/asset": "^5.4|^6.0",
"symfony/browser-kit": "^5.4|^6.0",
"symfony/console": "^5.4|^6.0",
@@ -7376,7 +7479,7 @@
"description": "Provides a tight integration of the Security component into the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-bundle/tree/v6.0.11"
+ "source": "https://github.com/symfony/security-bundle/tree/v6.0.20"
},
"funding": [
{
@@ -7392,27 +7495,28 @@
"type": "tidelift"
}
],
- "time": "2022-07-20T13:45:53+00:00"
+ "time": "2023-01-30T15:41:07+00:00"
},
{
"name": "symfony/security-core",
- "version": "v6.2.0",
+ "version": "v6.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-core.git",
- "reference": "aa8d792c3f4fd48f64e4be8f426a220c8fc8ac14"
+ "reference": "b86ce012cc9a62a15ed43af5037eebc3e6de4d7f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-core/zipball/aa8d792c3f4fd48f64e4be8f426a220c8fc8ac14",
- "reference": "aa8d792c3f4fd48f64e4be8f426a220c8fc8ac14",
+ "url": "https://api.github.com/repos/symfony/security-core/zipball/b86ce012cc9a62a15ed43af5037eebc3e6de4d7f",
+ "reference": "b86ce012cc9a62a15ed43af5037eebc3e6de4d7f",
"shasum": ""
},
"require": {
"php": ">=8.1",
- "symfony/event-dispatcher-contracts": "^1.1|^2|^3",
+ "symfony/deprecation-contracts": "^2.5|^3",
+ "symfony/event-dispatcher-contracts": "^2.5|^3",
"symfony/password-hasher": "^5.4|^6.0",
- "symfony/service-contracts": "^1.1.6|^2|^3"
+ "symfony/service-contracts": "^2.5|^3"
},
"conflict": {
"symfony/event-dispatcher": "<5.4",
@@ -7430,17 +7534,10 @@
"symfony/expression-language": "^5.4|^6.0",
"symfony/http-foundation": "^5.4|^6.0",
"symfony/ldap": "^5.4|^6.0",
+ "symfony/string": "^5.4|^6.0",
"symfony/translation": "^5.4|^6.0",
"symfony/validator": "^5.4|^6.0"
},
- "suggest": {
- "psr/container-implementation": "To instantiate the Security class",
- "symfony/event-dispatcher": "",
- "symfony/expression-language": "For using the expression voter",
- "symfony/http-foundation": "",
- "symfony/ldap": "For using LDAP integration",
- "symfony/validator": "For using the user password constraint"
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -7467,7 +7564,7 @@
"description": "Symfony Security Component - Core Library",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-core/tree/v6.2.0"
+ "source": "https://github.com/symfony/security-core/tree/v6.3.3"
},
"funding": [
{
@@ -7483,20 +7580,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-18T07:19:04+00:00"
+ "time": "2023-07-31T07:08:24+00:00"
},
{
"name": "symfony/security-csrf",
- "version": "v6.2.0",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-csrf.git",
- "reference": "12d6ef4695f522566639e58b929d90e25b509379"
+ "reference": "63d7b098c448cbddb46ea5eda33b68c1ece6eb5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-csrf/zipball/12d6ef4695f522566639e58b929d90e25b509379",
- "reference": "12d6ef4695f522566639e58b929d90e25b509379",
+ "url": "https://api.github.com/repos/symfony/security-csrf/zipball/63d7b098c448cbddb46ea5eda33b68c1ece6eb5b",
+ "reference": "63d7b098c448cbddb46ea5eda33b68c1ece6eb5b",
"shasum": ""
},
"require": {
@@ -7509,9 +7606,6 @@
"require-dev": {
"symfony/http-foundation": "^5.4|^6.0"
},
- "suggest": {
- "symfony/http-foundation": "For using the class SessionTokenStorage."
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -7538,7 +7632,7 @@
"description": "Symfony Security Component - CSRF Library",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-csrf/tree/v6.2.0"
+ "source": "https://github.com/symfony/security-csrf/tree/v6.3.2"
},
"funding": [
{
@@ -7554,20 +7648,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-21T18:36:40+00:00"
+ "time": "2023-07-05T08:41:27+00:00"
},
{
"name": "symfony/security-http",
- "version": "v6.1.7",
+ "version": "v6.1.12",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-http.git",
- "reference": "931b037cfd98e3f8c06a311e9c04abc9ee010ab9"
+ "reference": "e671c9748c439492c4a2d07862ee63a9a6fbf5c1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-http/zipball/931b037cfd98e3f8c06a311e9c04abc9ee010ab9",
- "reference": "931b037cfd98e3f8c06a311e9c04abc9ee010ab9",
+ "url": "https://api.github.com/repos/symfony/security-http/zipball/e671c9748c439492c4a2d07862ee63a9a6fbf5c1",
+ "reference": "e671c9748c439492c4a2d07862ee63a9a6fbf5c1",
"shasum": ""
},
"require": {
@@ -7576,7 +7670,7 @@
"symfony/http-kernel": "^6.1",
"symfony/polyfill-mbstring": "~1.0",
"symfony/property-access": "^5.4|^6.0",
- "symfony/security-core": "^5.4.7|^6.0"
+ "symfony/security-core": "^5.4.19|~6.0.19|~6.1.11|^6.2.5"
},
"conflict": {
"symfony/event-dispatcher": "<5.4.9|>=6,<6.0.9",
@@ -7621,7 +7715,7 @@
"description": "Symfony Security Component - HTTP Integration",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-http/tree/v6.1.7"
+ "source": "https://github.com/symfony/security-http/tree/v6.1.12"
},
"funding": [
{
@@ -7637,7 +7731,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-23T10:33:34+00:00"
+ "time": "2023-01-30T15:43:30+00:00"
},
{
"name": "symfony/serializer",
@@ -7742,16 +7836,16 @@
},
{
"name": "symfony/service-contracts",
- "version": "v3.1.1",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239"
+ "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/925e713fe8fcacf6bc05e936edd8dd5441a21239",
- "reference": "925e713fe8fcacf6bc05e936edd8dd5441a21239",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/40da9cc13ec349d9e4966ce18b5fbcd724ab10a4",
+ "reference": "40da9cc13ec349d9e4966ce18b5fbcd724ab10a4",
"shasum": ""
},
"require": {
@@ -7761,13 +7855,10 @@
"conflict": {
"ext-psr": "<1.1|>=2"
},
- "suggest": {
- "symfony/service-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.1-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -7807,7 +7898,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.1.1"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -7823,20 +7914,20 @@
"type": "tidelift"
}
],
- "time": "2022-05-30T19:18:58+00:00"
+ "time": "2023-05-23T14:45:45+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v6.0.13",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a"
+ "reference": "011e781839dd1d2eb8119f65ac516a530f60226d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/7554fde6848af5ef1178f8ccbdbdb8ae1092c70a",
- "reference": "7554fde6848af5ef1178f8ccbdbdb8ae1092c70a",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/011e781839dd1d2eb8119f65ac516a530f60226d",
+ "reference": "011e781839dd1d2eb8119f65ac516a530f60226d",
"shasum": ""
},
"require": {
@@ -7869,7 +7960,7 @@
"description": "Provides a way to profile code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/stopwatch/tree/v6.0.13"
+ "source": "https://github.com/symfony/stopwatch/tree/v6.0.19"
},
"funding": [
{
@@ -7885,20 +7976,20 @@
"type": "tidelift"
}
],
- "time": "2022-09-28T15:52:47+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/string",
- "version": "v6.0.15",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "51ac0fa0ccf132a00519b87c97e8f775fa14e771"
+ "reference": "d9e72497367c23e08bf94176d2be45b00a9d232a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/51ac0fa0ccf132a00519b87c97e8f775fa14e771",
- "reference": "51ac0fa0ccf132a00519b87c97e8f775fa14e771",
+ "url": "https://api.github.com/repos/symfony/string/zipball/d9e72497367c23e08bf94176d2be45b00a9d232a",
+ "reference": "d9e72497367c23e08bf94176d2be45b00a9d232a",
"shasum": ""
},
"require": {
@@ -7954,7 +8045,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v6.0.15"
+ "source": "https://github.com/symfony/string/tree/v6.0.19"
},
"funding": [
{
@@ -7970,20 +8061,20 @@
"type": "tidelift"
}
],
- "time": "2022-10-10T09:34:08+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/translation",
- "version": "v6.0.14",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c"
+ "reference": "9c24b3fdbbe9fb2ef3a6afd8bbaadfd72dad681f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/6f99eb179aee4652c0a7cd7c11f2a870d904330c",
- "reference": "6f99eb179aee4652c0a7cd7c11f2a870d904330c",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/9c24b3fdbbe9fb2ef3a6afd8bbaadfd72dad681f",
+ "reference": "9c24b3fdbbe9fb2ef3a6afd8bbaadfd72dad681f",
"shasum": ""
},
"require": {
@@ -8049,7 +8140,7 @@
"description": "Provides tools to internationalize your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/translation/tree/v6.0.14"
+ "source": "https://github.com/symfony/translation/tree/v6.0.19"
},
"funding": [
{
@@ -8065,32 +8156,29 @@
"type": "tidelift"
}
],
- "time": "2022-10-07T08:02:12+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/translation-contracts",
- "version": "v3.2.0",
+ "version": "v3.3.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "68cce71402305a015f8c1589bfada1280dc64fe7"
+ "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/68cce71402305a015f8c1589bfada1280dc64fe7",
- "reference": "68cce71402305a015f8c1589bfada1280dc64fe7",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/02c24deb352fb0d79db5486c0c79905a85e37e86",
+ "reference": "02c24deb352fb0d79db5486c0c79905a85e37e86",
"shasum": ""
},
"require": {
"php": ">=8.1"
},
- "suggest": {
- "symfony/translation-implementation": ""
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "3.3-dev"
+ "dev-main": "3.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -8130,7 +8218,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v3.2.0"
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.3.0"
},
"funding": [
{
@@ -8146,20 +8234,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T10:21:52+00:00"
+ "time": "2023-05-30T17:17:10+00:00"
},
{
"name": "symfony/twig-bridge",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/twig-bridge.git",
- "reference": "5a0b963fbe5c394e1b083399430b113982ad67a8"
+ "reference": "bcd79f7845f887defec9d6737a535a3c602159e9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/5a0b963fbe5c394e1b083399430b113982ad67a8",
- "reference": "5a0b963fbe5c394e1b083399430b113982ad67a8",
+ "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/bcd79f7845f887defec9d6737a535a3c602159e9",
+ "reference": "bcd79f7845f887defec9d6737a535a3c602159e9",
"shasum": ""
},
"require": {
@@ -8178,8 +8266,8 @@
"symfony/workflow": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.12",
- "egulias/email-validator": "^2.1.10|^3",
+ "doctrine/annotations": "^1.12|^2",
+ "egulias/email-validator": "^2.1.10|^3|^4",
"phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
"symfony/asset": "^5.4|^6.0",
"symfony/console": "^5.4|^6.0",
@@ -8250,7 +8338,7 @@
"description": "Provides integration for Twig with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/twig-bridge/tree/v6.0.16"
+ "source": "https://github.com/symfony/twig-bridge/tree/v6.0.19"
},
"funding": [
{
@@ -8266,20 +8354,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-04T07:39:59+00:00"
+ "time": "2023-01-11T11:50:03+00:00"
},
{
"name": "symfony/twig-bundle",
- "version": "v6.0.8",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/twig-bundle.git",
- "reference": "0c5bb02150d08fa3174d8cd7600496a51702360a"
+ "reference": "13ce8cae82ca5870aabfcfd2e8d4bd03d3d843d5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/0c5bb02150d08fa3174d8cd7600496a51702360a",
- "reference": "0c5bb02150d08fa3174d8cd7600496a51702360a",
+ "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/13ce8cae82ca5870aabfcfd2e8d4bd03d3d843d5",
+ "reference": "13ce8cae82ca5870aabfcfd2e8d4bd03d3d843d5",
"shasum": ""
},
"require": {
@@ -8298,7 +8386,7 @@
"symfony/translation": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.10.4",
+ "doctrine/annotations": "^1.10.4|^2",
"symfony/asset": "^5.4|^6.0",
"symfony/dependency-injection": "^5.4|^6.0",
"symfony/expression-language": "^5.4|^6.0",
@@ -8337,7 +8425,7 @@
"description": "Provides a tight integration of Twig into the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/twig-bundle/tree/v6.0.8"
+ "source": "https://github.com/symfony/twig-bundle/tree/v6.0.19"
},
"funding": [
{
@@ -8353,20 +8441,20 @@
"type": "tidelift"
}
],
- "time": "2022-04-03T13:04:20+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/uid",
- "version": "v6.0.13",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/uid.git",
- "reference": "db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3"
+ "reference": "6499e28b0ac9f2aa3151e11845bdb5cd21e6bb9d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/uid/zipball/db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3",
- "reference": "db426b27173f5e2d8b960dd10fa8ce19ea9ca5f3",
+ "url": "https://api.github.com/repos/symfony/uid/zipball/6499e28b0ac9f2aa3151e11845bdb5cd21e6bb9d",
+ "reference": "6499e28b0ac9f2aa3151e11845bdb5cd21e6bb9d",
"shasum": ""
},
"require": {
@@ -8411,7 +8499,7 @@
"uuid"
],
"support": {
- "source": "https://github.com/symfony/uid/tree/v6.0.13"
+ "source": "https://github.com/symfony/uid/tree/v6.0.19"
},
"funding": [
{
@@ -8427,20 +8515,20 @@
"type": "tidelift"
}
],
- "time": "2022-09-09T09:33:56+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/validator",
- "version": "v6.0.15",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/validator.git",
- "reference": "241c97afb56b08c084f8017105f8638c74faaf46"
+ "reference": "8e41a2dc215903964175ca8bdc884297f021d31c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/validator/zipball/241c97afb56b08c084f8017105f8638c74faaf46",
- "reference": "241c97afb56b08c084f8017105f8638c74faaf46",
+ "url": "https://api.github.com/repos/symfony/validator/zipball/8e41a2dc215903964175ca8bdc884297f021d31c",
+ "reference": "8e41a2dc215903964175ca8bdc884297f021d31c",
"shasum": ""
},
"require": {
@@ -8463,8 +8551,8 @@
"symfony/yaml": "<5.4"
},
"require-dev": {
- "doctrine/annotations": "^1.13",
- "egulias/email-validator": "^2.1.10|^3",
+ "doctrine/annotations": "^1.13|^2",
+ "egulias/email-validator": "^2.1.10|^3|^4",
"symfony/cache": "^5.4|^6.0",
"symfony/config": "^5.4|^6.0",
"symfony/console": "^5.4|^6.0",
@@ -8519,7 +8607,7 @@
"description": "Provides tools to validate values",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/validator/tree/v6.0.15"
+ "source": "https://github.com/symfony/validator/tree/v6.0.19"
},
"funding": [
{
@@ -8535,42 +8623,38 @@
"type": "tidelift"
}
],
- "time": "2022-10-28T16:22:58+00:00"
+ "time": "2023-01-15T17:21:41+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v6.2.1",
+ "version": "v6.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "1e7544c8698627b908657e5276854d52ab70087a"
+ "reference": "77fb4f2927f6991a9843633925d111147449ee7a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/1e7544c8698627b908657e5276854d52ab70087a",
- "reference": "1e7544c8698627b908657e5276854d52ab70087a",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/77fb4f2927f6991a9843633925d111147449ee7a",
+ "reference": "77fb4f2927f6991a9843633925d111147449ee7a",
"shasum": ""
},
"require": {
"php": ">=8.1",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-mbstring": "~1.0"
},
"conflict": {
- "phpunit/phpunit": "<5.4.3",
"symfony/console": "<5.4"
},
"require-dev": {
"ext-iconv": "*",
"symfony/console": "^5.4|^6.0",
+ "symfony/http-kernel": "^5.4|^6.0",
"symfony/process": "^5.4|^6.0",
"symfony/uid": "^5.4|^6.0",
"twig/twig": "^2.13|^3.0.4"
},
- "suggest": {
- "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
- "ext-intl": "To show region name in time zone dump",
- "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script"
- },
"bin": [
"Resources/bin/var-dump-server"
],
@@ -8607,7 +8691,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v6.2.1"
+ "source": "https://github.com/symfony/var-dumper/tree/v6.3.3"
},
"funding": [
{
@@ -8623,20 +8707,20 @@
"type": "tidelift"
}
],
- "time": "2022-12-03T22:32:58+00:00"
+ "time": "2023-07-31T07:08:24+00:00"
},
{
"name": "symfony/var-exporter",
- "version": "v6.2.1",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-exporter.git",
- "reference": "8a3f442d48567a5447e984ce9e86875ed768304a"
+ "reference": "3400949782c0cb5b3e73aa64cfd71dde000beccc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-exporter/zipball/8a3f442d48567a5447e984ce9e86875ed768304a",
- "reference": "8a3f442d48567a5447e984ce9e86875ed768304a",
+ "url": "https://api.github.com/repos/symfony/var-exporter/zipball/3400949782c0cb5b3e73aa64cfd71dde000beccc",
+ "reference": "3400949782c0cb5b3e73aa64cfd71dde000beccc",
"shasum": ""
},
"require": {
@@ -8676,12 +8760,12 @@
"export",
"hydrate",
"instantiate",
- "lazy loading",
+ "lazy-loading",
"proxy",
"serialize"
],
"support": {
- "source": "https://github.com/symfony/var-exporter/tree/v6.2.1"
+ "source": "https://github.com/symfony/var-exporter/tree/v6.3.2"
},
"funding": [
{
@@ -8697,20 +8781,20 @@
"type": "tidelift"
}
],
- "time": "2022-12-03T22:32:58+00:00"
+ "time": "2023-07-26T17:39:03+00:00"
},
{
"name": "symfony/web-link",
- "version": "v6.0.3",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/web-link.git",
- "reference": "52d6af6c4476c8ebdef968cb39030826253eb5e4"
+ "reference": "65cbc32c8177cfec22afde261e54533c408e5fa0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/web-link/zipball/52d6af6c4476c8ebdef968cb39030826253eb5e4",
- "reference": "52d6af6c4476c8ebdef968cb39030826253eb5e4",
+ "url": "https://api.github.com/repos/symfony/web-link/zipball/65cbc32c8177cfec22afde261e54533c408e5fa0",
+ "reference": "65cbc32c8177cfec22afde261e54533c408e5fa0",
"shasum": ""
},
"require": {
@@ -8767,7 +8851,7 @@
"push"
],
"support": {
- "source": "https://github.com/symfony/web-link/tree/v6.0.3"
+ "source": "https://github.com/symfony/web-link/tree/v6.0.19"
},
"funding": [
{
@@ -8783,20 +8867,20 @@
"type": "tidelift"
}
],
- "time": "2022-01-02T09:55:41+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/webpack-encore-bundle",
- "version": "v1.16.0",
+ "version": "v1.17.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/webpack-encore-bundle.git",
- "reference": "bb399930c0299866258b616a74a27b50b94c5d45"
+ "reference": "7e3b6f69bcfcbb40ecfe83ad7a77e44316d26573"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/bb399930c0299866258b616a74a27b50b94c5d45",
- "reference": "bb399930c0299866258b616a74a27b50b94c5d45",
+ "url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/7e3b6f69bcfcbb40ecfe83ad7a77e44316d26573",
+ "reference": "7e3b6f69bcfcbb40ecfe83ad7a77e44316d26573",
"shasum": ""
},
"require": {
@@ -8840,7 +8924,7 @@
"description": "Integration with your Symfony app & Webpack Encore!",
"support": {
"issues": "https://github.com/symfony/webpack-encore-bundle/issues",
- "source": "https://github.com/symfony/webpack-encore-bundle/tree/v1.16.0"
+ "source": "https://github.com/symfony/webpack-encore-bundle/tree/v1.17.1"
},
"funding": [
{
@@ -8856,20 +8940,20 @@
"type": "tidelift"
}
],
- "time": "2022-10-18T15:21:06+00:00"
+ "time": "2023-05-29T00:18:01+00:00"
},
{
"name": "symfony/yaml",
- "version": "v6.0.16",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "eb85bd1b0b297e976f3ada52ad239ef80b4dbd0b"
+ "reference": "deec3a812a0305a50db8ae689b183f43d915c884"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/eb85bd1b0b297e976f3ada52ad239ef80b4dbd0b",
- "reference": "eb85bd1b0b297e976f3ada52ad239ef80b4dbd0b",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/deec3a812a0305a50db8ae689b183f43d915c884",
+ "reference": "deec3a812a0305a50db8ae689b183f43d915c884",
"shasum": ""
},
"require": {
@@ -8914,7 +8998,7 @@
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/yaml/tree/v6.0.16"
+ "source": "https://github.com/symfony/yaml/tree/v6.0.19"
},
"funding": [
{
@@ -8930,20 +9014,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-25T18:58:46+00:00"
+ "time": "2023-01-11T11:50:03+00:00"
},
{
"name": "twig/extra-bundle",
- "version": "v3.4.0",
+ "version": "v3.7.0",
"source": {
"type": "git",
"url": "https://github.com/twigphp/twig-extra-bundle.git",
- "reference": "2e58256b0e9fe52f30149347c0547e4633304765"
+ "reference": "802cc2dd46ec88285d6c7fa85c26ab7f2cd5bc49"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/2e58256b0e9fe52f30149347c0547e4633304765",
- "reference": "2e58256b0e9fe52f30149347c0547e4633304765",
+ "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/802cc2dd46ec88285d6c7fa85c26ab7f2cd5bc49",
+ "reference": "802cc2dd46ec88285d6c7fa85c26ab7f2cd5bc49",
"shasum": ""
},
"require": {
@@ -8964,11 +9048,6 @@
"twig/string-extra": "^2.12|^3.0"
},
"type": "symfony-bundle",
- "extra": {
- "branch-alias": {
- "dev-master": "3.2-dev"
- }
- },
"autoload": {
"psr-4": {
"Twig\\Extra\\TwigExtraBundle\\": ""
@@ -8997,7 +9076,7 @@
"twig"
],
"support": {
- "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.4.0"
+ "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.7.0"
},
"funding": [
{
@@ -9009,20 +9088,20 @@
"type": "tidelift"
}
],
- "time": "2022-01-04T13:58:53+00:00"
+ "time": "2023-05-06T11:11:46+00:00"
},
{
"name": "twig/twig",
- "version": "v3.4.3",
+ "version": "v3.7.0",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
- "reference": "c38fd6b0b7f370c198db91ffd02e23b517426b58"
+ "reference": "5cf942bbab3df42afa918caeba947f1b690af64b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/c38fd6b0b7f370c198db91ffd02e23b517426b58",
- "reference": "c38fd6b0b7f370c198db91ffd02e23b517426b58",
+ "url": "https://api.github.com/repos/twigphp/Twig/zipball/5cf942bbab3df42afa918caeba947f1b690af64b",
+ "reference": "5cf942bbab3df42afa918caeba947f1b690af64b",
"shasum": ""
},
"require": {
@@ -9031,15 +9110,10 @@
"symfony/polyfill-mbstring": "^1.3"
},
"require-dev": {
- "psr/container": "^1.0",
+ "psr/container": "^1.0|^2.0",
"symfony/phpunit-bridge": "^4.4.9|^5.0.9|^6.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.4-dev"
- }
- },
"autoload": {
"psr-4": {
"Twig\\": "src/"
@@ -9073,7 +9147,7 @@
],
"support": {
"issues": "https://github.com/twigphp/Twig/issues",
- "source": "https://github.com/twigphp/Twig/tree/v3.4.3"
+ "source": "https://github.com/twigphp/Twig/tree/v3.7.0"
},
"funding": [
{
@@ -9085,7 +9159,7 @@
"type": "tidelift"
}
],
- "time": "2022-09-28T08:42:51+00:00"
+ "time": "2023-07-26T07:16:09+00:00"
},
{
"name": "webmozart/assert",
@@ -9149,38 +9223,38 @@
"packages-dev": [
{
"name": "doctrine/data-fixtures",
- "version": "1.5.3",
+ "version": "1.6.6",
"source": {
"type": "git",
"url": "https://github.com/doctrine/data-fixtures.git",
- "reference": "ba37bfb776de763c5bf04a36d074cd5f5a083c42"
+ "reference": "4af35dadbfcf4b00abb2a217c4c8c8800cf5fcf4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/ba37bfb776de763c5bf04a36d074cd5f5a083c42",
- "reference": "ba37bfb776de763c5bf04a36d074cd5f5a083c42",
+ "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/4af35dadbfcf4b00abb2a217c4c8c8800cf5fcf4",
+ "reference": "4af35dadbfcf4b00abb2a217c4c8c8800cf5fcf4",
"shasum": ""
},
"require": {
- "doctrine/common": "^2.13|^3.0",
- "doctrine/persistence": "^1.3.3|^2.0|^3.0",
+ "doctrine/deprecations": "^0.5.3 || ^1.0",
+ "doctrine/persistence": "^1.3.3 || ^2.0 || ^3.0",
"php": "^7.2 || ^8.0"
},
"conflict": {
"doctrine/dbal": "<2.13",
+ "doctrine/orm": "<2.12",
"doctrine/phpcr-odm": "<1.3.0"
},
"require-dev": {
- "doctrine/coding-standard": "^9.0",
+ "doctrine/coding-standard": "^11.0",
"doctrine/dbal": "^2.13 || ^3.0",
"doctrine/mongodb-odm": "^1.3.0 || ^2.0.0",
- "doctrine/orm": "^2.7.0",
+ "doctrine/orm": "^2.12",
"ext-sqlite3": "*",
- "jangregor/phpstan-prophecy": "^1",
"phpstan/phpstan": "^1.5",
- "phpunit/phpunit": "^8.5 || ^9.5",
+ "phpunit/phpunit": "^8.5 || ^9.5 || ^10.0",
"symfony/cache": "^5.0 || ^6.0",
- "vimeo/psalm": "^4.10"
+ "vimeo/psalm": "^4.10 || ^5.9"
},
"suggest": {
"alcaeus/mongo-php-adapter": "For using MongoDB ODM 1.3 with PHP 7 (deprecated)",
@@ -9191,7 +9265,7 @@
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Common\\DataFixtures\\": "lib/Doctrine/Common/DataFixtures"
+ "Doctrine\\Common\\DataFixtures\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -9211,7 +9285,7 @@
],
"support": {
"issues": "https://github.com/doctrine/data-fixtures/issues",
- "source": "https://github.com/doctrine/data-fixtures/tree/1.5.3"
+ "source": "https://github.com/doctrine/data-fixtures/tree/1.6.6"
},
"funding": [
{
@@ -9227,20 +9301,20 @@
"type": "tidelift"
}
],
- "time": "2022-04-19T10:01:44+00:00"
+ "time": "2023-04-20T13:08:54+00:00"
},
{
"name": "doctrine/doctrine-fixtures-bundle",
- "version": "3.4.2",
+ "version": "3.4.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineFixturesBundle.git",
- "reference": "601988c5b46dbd20a0f886f967210aba378a6fd5"
+ "reference": "9ec3139c52a42e94c9fd1e95f8d2bca94326edfb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/601988c5b46dbd20a0f886f967210aba378a6fd5",
- "reference": "601988c5b46dbd20a0f886f967210aba378a6fd5",
+ "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/9ec3139c52a42e94c9fd1e95f8d2bca94326edfb",
+ "reference": "9ec3139c52a42e94c9fd1e95f8d2bca94326edfb",
"shasum": ""
},
"require": {
@@ -9294,7 +9368,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineFixturesBundle/issues",
- "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.4.2"
+ "source": "https://github.com/doctrine/DoctrineFixturesBundle/tree/3.4.4"
},
"funding": [
{
@@ -9310,30 +9384,28 @@
"type": "tidelift"
}
],
- "time": "2022-04-28T17:58:29+00:00"
+ "time": "2023-05-02T15:12:16+00:00"
},
{
"name": "masterminds/html5",
- "version": "2.7.6",
+ "version": "2.8.1",
"source": {
"type": "git",
"url": "https://github.com/Masterminds/html5-php.git",
- "reference": "897eb517a343a2281f11bc5556d6548db7d93947"
+ "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/897eb517a343a2281f11bc5556d6548db7d93947",
- "reference": "897eb517a343a2281f11bc5556d6548db7d93947",
+ "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f47dcf3c70c584de14f21143c55d9939631bc6cf",
+ "reference": "f47dcf3c70c584de14f21143c55d9939631bc6cf",
"shasum": ""
},
"require": {
- "ext-ctype": "*",
"ext-dom": "*",
- "ext-libxml": "*",
"php": ">=5.3.0"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7"
+ "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8"
},
"type": "library",
"extra": {
@@ -9377,22 +9449,22 @@
],
"support": {
"issues": "https://github.com/Masterminds/html5-php/issues",
- "source": "https://github.com/Masterminds/html5-php/tree/2.7.6"
+ "source": "https://github.com/Masterminds/html5-php/tree/2.8.1"
},
- "time": "2022-08-18T16:18:26+00:00"
+ "time": "2023-05-10T11:58:31+00:00"
},
{
"name": "nikic/php-parser",
- "version": "v4.15.2",
+ "version": "v4.16.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc"
+ "reference": "19526a33fb561ef417e822e85f08a00db4059c17"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
- "reference": "f59bbe44bf7d96f24f3e2b4ddc21cd52c1d2adbc",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/19526a33fb561ef417e822e85f08a00db4059c17",
+ "reference": "19526a33fb561ef417e822e85f08a00db4059c17",
"shasum": ""
},
"require": {
@@ -9433,9 +9505,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.2"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.16.0"
},
- "time": "2022-11-12T15:38:23+00:00"
+ "time": "2023-06-25T14:52:30+00:00"
},
{
"name": "phar-io/manifest",
@@ -9550,23 +9622,23 @@
},
{
"name": "phpunit/php-code-coverage",
- "version": "9.2.20",
+ "version": "9.2.27",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "af7463c955007de36db0c5e26d03e2f933c2e980"
+ "reference": "b0a88255cb70d52653d80c890bd7f38740ea50d1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/af7463c955007de36db0c5e26d03e2f933c2e980",
- "reference": "af7463c955007de36db0c5e26d03e2f933c2e980",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/b0a88255cb70d52653d80c890bd7f38740ea50d1",
+ "reference": "b0a88255cb70d52653d80c890bd7f38740ea50d1",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-libxml": "*",
"ext-xmlwriter": "*",
- "nikic/php-parser": "^4.14",
+ "nikic/php-parser": "^4.15",
"php": ">=7.3",
"phpunit/php-file-iterator": "^3.0.3",
"phpunit/php-text-template": "^2.0.2",
@@ -9581,8 +9653,8 @@
"phpunit/phpunit": "^9.3"
},
"suggest": {
- "ext-pcov": "*",
- "ext-xdebug": "*"
+ "ext-pcov": "PHP extension that provides line coverage",
+ "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
},
"type": "library",
"extra": {
@@ -9615,7 +9687,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.20"
+ "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy",
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.27"
},
"funding": [
{
@@ -9623,7 +9696,7 @@
"type": "github"
}
],
- "time": "2022-12-13T07:49:28+00:00"
+ "time": "2023-07-26T13:44:30+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -9868,20 +9941,20 @@
},
{
"name": "phpunit/phpunit",
- "version": "9.5.27",
+ "version": "9.6.10",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38"
+ "reference": "a6d351645c3fe5a30f5e86be6577d946af65a328"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a2bc7ffdca99f92d959b3f2270529334030bba38",
- "reference": "a2bc7ffdca99f92d959b3f2270529334030bba38",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a6d351645c3fe5a30f5e86be6577d946af65a328",
+ "reference": "a6d351645c3fe5a30f5e86be6577d946af65a328",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.3.1",
+ "doctrine/instantiator": "^1.3.1 || ^2",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
@@ -9910,8 +9983,8 @@
"sebastian/version": "^3.0.2"
},
"suggest": {
- "ext-soap": "*",
- "ext-xdebug": "*"
+ "ext-soap": "To be able to generate mocks based on WSDL files",
+ "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage"
},
"bin": [
"phpunit"
@@ -9919,7 +9992,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.5-dev"
+ "dev-master": "9.6-dev"
}
},
"autoload": {
@@ -9950,7 +10023,8 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.27"
+ "security": "https://github.com/sebastianbergmann/phpunit/security/policy",
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.10"
},
"funding": [
{
@@ -9966,7 +10040,7 @@
"type": "tidelift"
}
],
- "time": "2022-12-09T07:31:23+00:00"
+ "time": "2023-07-10T04:04:23+00:00"
},
{
"name": "sebastian/cli-parser",
@@ -10268,16 +10342,16 @@
},
{
"name": "sebastian/diff",
- "version": "4.0.4",
+ "version": "4.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d"
+ "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d",
- "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
+ "reference": "74be17022044ebaaecfdf0c5cd504fc9cd5a7131",
"shasum": ""
},
"require": {
@@ -10322,7 +10396,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/diff/issues",
- "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4"
+ "source": "https://github.com/sebastianbergmann/diff/tree/4.0.5"
},
"funding": [
{
@@ -10330,20 +10404,20 @@
"type": "github"
}
],
- "time": "2020-10-26T13:10:38+00:00"
+ "time": "2023-05-07T05:35:17+00:00"
},
{
"name": "sebastian/environment",
- "version": "5.1.4",
+ "version": "5.1.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7"
+ "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/1b5dff7bb151a4db11d49d90e5408e4e938270f7",
- "reference": "1b5dff7bb151a4db11d49d90e5408e4e938270f7",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
+ "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed",
"shasum": ""
},
"require": {
@@ -10385,7 +10459,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/5.1.4"
+ "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5"
},
"funding": [
{
@@ -10393,7 +10467,7 @@
"type": "github"
}
],
- "time": "2022-04-03T09:37:03+00:00"
+ "time": "2023-02-03T06:03:51+00:00"
},
{
"name": "sebastian/exporter",
@@ -10707,16 +10781,16 @@
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.4",
+ "version": "4.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172"
+ "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172",
- "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+ "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
"shasum": ""
},
"require": {
@@ -10755,10 +10829,10 @@
}
],
"description": "Provides functionality to recursively process PHP variables",
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
+ "homepage": "https://github.com/sebastianbergmann/recursion-context",
"support": {
"issues": "https://github.com/sebastianbergmann/recursion-context/issues",
- "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5"
},
"funding": [
{
@@ -10766,7 +10840,7 @@
"type": "github"
}
],
- "time": "2020-10-26T13:17:30+00:00"
+ "time": "2023-02-03T06:07:39+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -10825,16 +10899,16 @@
},
{
"name": "sebastian/type",
- "version": "3.2.0",
+ "version": "3.2.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e"
+ "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
- "reference": "fb3fe09c5f0bae6bc27ef3ce933a1e0ed9464b6e",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
+ "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7",
"shasum": ""
},
"require": {
@@ -10869,7 +10943,7 @@
"homepage": "https://github.com/sebastianbergmann/type",
"support": {
"issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/3.2.0"
+ "source": "https://github.com/sebastianbergmann/type/tree/3.2.1"
},
"funding": [
{
@@ -10877,7 +10951,7 @@
"type": "github"
}
],
- "time": "2022-09-12T14:47:03+00:00"
+ "time": "2023-02-03T06:13:03+00:00"
},
{
"name": "sebastian/version",
@@ -10934,16 +11008,16 @@
},
{
"name": "symfony/browser-kit",
- "version": "v6.0.11",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
- "reference": "92e4b59bf2ef0f7a01d2620c4c87108e5c143d36"
+ "reference": "4d1bf7886e2af0a194332486273debcd6662cfc9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/92e4b59bf2ef0f7a01d2620c4c87108e5c143d36",
- "reference": "92e4b59bf2ef0f7a01d2620c4c87108e5c143d36",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/4d1bf7886e2af0a194332486273debcd6662cfc9",
+ "reference": "4d1bf7886e2af0a194332486273debcd6662cfc9",
"shasum": ""
},
"require": {
@@ -10985,7 +11059,7 @@
"description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/browser-kit/tree/v6.0.11"
+ "source": "https://github.com/symfony/browser-kit/tree/v6.0.19"
},
"funding": [
{
@@ -11001,20 +11075,20 @@
"type": "tidelift"
}
],
- "time": "2022-07-27T15:50:26+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v6.0.11",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "ab2746acddc4f03a7234c8441822ac5d5c63efe9"
+ "reference": "f1d00bddb83a4cb2138564b2150001cb6ce272b1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/ab2746acddc4f03a7234c8441822ac5d5c63efe9",
- "reference": "ab2746acddc4f03a7234c8441822ac5d5c63efe9",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/f1d00bddb83a4cb2138564b2150001cb6ce272b1",
+ "reference": "f1d00bddb83a4cb2138564b2150001cb6ce272b1",
"shasum": ""
},
"require": {
@@ -11050,7 +11124,7 @@
"description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/css-selector/tree/v6.0.11"
+ "source": "https://github.com/symfony/css-selector/tree/v6.0.19"
},
"funding": [
{
@@ -11066,20 +11140,20 @@
"type": "tidelift"
}
],
- "time": "2022-06-27T17:10:44+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/debug-bundle",
- "version": "v6.0.11",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug-bundle.git",
- "reference": "78426ad77ab9d2429e20354bf7dc56c966205848"
+ "reference": "9890e76f4b03d253327108fbf70b0465cee9f99c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/78426ad77ab9d2429e20354bf7dc56c966205848",
- "reference": "78426ad77ab9d2429e20354bf7dc56c966205848",
+ "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/9890e76f4b03d253327108fbf70b0465cee9f99c",
+ "reference": "9890e76f4b03d253327108fbf70b0465cee9f99c",
"shasum": ""
},
"require": {
@@ -11128,7 +11202,7 @@
"description": "Provides a tight integration of the Symfony VarDumper component and the ServerLogCommand from MonologBridge into the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/debug-bundle/tree/v6.0.11"
+ "source": "https://github.com/symfony/debug-bundle/tree/v6.0.19"
},
"funding": [
{
@@ -11144,20 +11218,20 @@
"type": "tidelift"
}
],
- "time": "2022-07-20T13:45:53+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "symfony/dom-crawler",
- "version": "v6.2.0",
+ "version": "v6.3.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
- "reference": "c079db42bed39928fc77a24307cbfff7ac7757f7"
+ "reference": "8aa333f41f05afc7fc285a976b58272fd90fc212"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/c079db42bed39928fc77a24307cbfff7ac7757f7",
- "reference": "c079db42bed39928fc77a24307cbfff7ac7757f7",
+ "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/8aa333f41f05afc7fc285a976b58272fd90fc212",
+ "reference": "8aa333f41f05afc7fc285a976b58272fd90fc212",
"shasum": ""
},
"require": {
@@ -11169,9 +11243,6 @@
"require-dev": {
"symfony/css-selector": "^5.4|^6.0"
},
- "suggest": {
- "symfony/css-selector": ""
- },
"type": "library",
"autoload": {
"psr-4": {
@@ -11198,7 +11269,7 @@
"description": "Eases DOM navigation for HTML and XML documents",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dom-crawler/tree/v6.2.0"
+ "source": "https://github.com/symfony/dom-crawler/tree/v6.3.1"
},
"funding": [
{
@@ -11214,20 +11285,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-02T09:08:04+00:00"
+ "time": "2023-06-05T15:30:22+00:00"
},
{
"name": "symfony/maker-bundle",
- "version": "v1.48.0",
+ "version": "v1.50.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/maker-bundle.git",
- "reference": "2e428e8432e9879187672fe08f1cc335e2a31dd6"
+ "reference": "a1733f849b999460c308e66f6392fb09b621fa86"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/2e428e8432e9879187672fe08f1cc335e2a31dd6",
- "reference": "2e428e8432e9879187672fe08f1cc335e2a31dd6",
+ "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/a1733f849b999460c308e66f6392fb09b621fa86",
+ "reference": "a1733f849b999460c308e66f6392fb09b621fa86",
"shasum": ""
},
"require": {
@@ -11241,7 +11312,8 @@
"symfony/filesystem": "^5.4.7|^6.0",
"symfony/finder": "^5.4.3|^6.0",
"symfony/framework-bundle": "^5.4.7|^6.0",
- "symfony/http-kernel": "^5.4.7|^6.0"
+ "symfony/http-kernel": "^5.4.7|^6.0",
+ "symfony/process": "^5.4.7|^6.0"
},
"conflict": {
"doctrine/doctrine-bundle": "<2.4",
@@ -11253,9 +11325,8 @@
"doctrine/doctrine-bundle": "^2.4",
"doctrine/orm": "^2.10.0",
"symfony/http-client": "^5.4.7|^6.0",
- "symfony/phpunit-bridge": "^5.4.7|^6.0",
+ "symfony/phpunit-bridge": "^5.4.17|^6.0",
"symfony/polyfill-php80": "^1.16.0",
- "symfony/process": "^5.4.7|^6.0",
"symfony/security-core": "^5.4.7|^6.0",
"symfony/yaml": "^5.4.3|^6.0",
"twig/twig": "^2.0|^3.0"
@@ -11285,13 +11356,14 @@
"homepage": "https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html",
"keywords": [
"code generator",
+ "dev",
"generator",
"scaffold",
"scaffolding"
],
"support": {
"issues": "https://github.com/symfony/maker-bundle/issues",
- "source": "https://github.com/symfony/maker-bundle/tree/v1.48.0"
+ "source": "https://github.com/symfony/maker-bundle/tree/v1.50.0"
},
"funding": [
{
@@ -11307,20 +11379,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-14T10:48:46+00:00"
+ "time": "2023-07-10T18:21:57+00:00"
},
{
"name": "symfony/phpunit-bridge",
- "version": "v6.2.0",
+ "version": "v6.3.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/phpunit-bridge.git",
- "reference": "1bd3b17db6d2ec284efbdc916600e880d6d858df"
+ "reference": "e020e1efbd1b42cb670fcd7d19a25abbddba035d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/1bd3b17db6d2ec284efbdc916600e880d6d858df",
- "reference": "1bd3b17db6d2ec284efbdc916600e880d6d858df",
+ "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/e020e1efbd1b42cb670fcd7d19a25abbddba035d",
+ "reference": "e020e1efbd1b42cb670fcd7d19a25abbddba035d",
"shasum": ""
},
"require": {
@@ -11330,11 +11402,9 @@
"phpunit/phpunit": "<7.5|9.1.2"
},
"require-dev": {
- "symfony/deprecation-contracts": "^2.1|^3.0",
- "symfony/error-handler": "^5.4|^6.0"
- },
- "suggest": {
- "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader"
+ "symfony/deprecation-contracts": "^2.5|^3.0",
+ "symfony/error-handler": "^5.4|^6.0",
+ "symfony/polyfill-php81": "^1.27"
},
"bin": [
"bin/simple-phpunit"
@@ -11374,7 +11444,7 @@
"description": "Provides utilities for PHPUnit, especially user deprecation notices management",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/phpunit-bridge/tree/v6.2.0"
+ "source": "https://github.com/symfony/phpunit-bridge/tree/v6.3.2"
},
"funding": [
{
@@ -11390,20 +11460,20 @@
"type": "tidelift"
}
],
- "time": "2022-11-18T19:08:09+00:00"
+ "time": "2023-07-12T16:00:22+00:00"
},
{
"name": "symfony/web-profiler-bundle",
- "version": "v6.0.14",
+ "version": "v6.0.19",
"source": {
"type": "git",
"url": "https://github.com/symfony/web-profiler-bundle.git",
- "reference": "1cb5000dd0eb125aa465f757b5d09201e556fa87"
+ "reference": "326d9b572c227fa5661cdeb3bf4b938049f51bf0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/1cb5000dd0eb125aa465f757b5d09201e556fa87",
- "reference": "1cb5000dd0eb125aa465f757b5d09201e556fa87",
+ "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/326d9b572c227fa5661cdeb3bf4b938049f51bf0",
+ "reference": "326d9b572c227fa5661cdeb3bf4b938049f51bf0",
"shasum": ""
},
"require": {
@@ -11453,7 +11523,7 @@
"description": "Provides a development tool that gives detailed information about the execution of any request",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.0.14"
+ "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.0.19"
},
"funding": [
{
@@ -11469,7 +11539,7 @@
"type": "tidelift"
}
],
- "time": "2022-10-02T08:16:40+00:00"
+ "time": "2023-01-01T08:36:10+00:00"
},
{
"name": "theseer/tokenizer",
diff --git a/config/packages/messenger.yaml b/config/packages/messenger.yaml
index b9144cccf..f48ea3fe4 100644
--- a/config/packages/messenger.yaml
+++ b/config/packages/messenger.yaml
@@ -25,3 +25,4 @@ framework:
#'App\Message\BackgroundQueueItem': async_priority_low
'App\Message\PriorityQueueItem': sync
'App\Message\BackgroundQueueItem': sync
+ 'App\Message\ScanMessage': async_priority_high
diff --git a/docker-compose.nginx.yml b/docker-compose.nginx.yml
index 1a00f70f2..10e54c4bf 100644
--- a/docker-compose.nginx.yml
+++ b/docker-compose.nginx.yml
@@ -43,6 +43,7 @@ services:
- type: bind
source: ./build/nginx/php-custom.ini
target: /usr/local/etc/php/conf.d/php-custom.ini
+ image: php
env_file:
- .env
composer:
@@ -66,6 +67,15 @@ services:
yarn install &&
yarn build'
+ messenger-consume:
+ image: php
+ volumes:
+ - ./:/var/www/html
+ command: >
+ bash -c "sleep 15 && bin/console messenger:consume async_priority_high"
+ depends_on:
+ - db
+
volumes:
web:
dbdata:
diff --git a/src/Controller/SyncController.php b/src/Controller/SyncController.php
index d91573269..3be9cb494 100644
--- a/src/Controller/SyncController.php
+++ b/src/Controller/SyncController.php
@@ -2,8 +2,10 @@
namespace App\Controller;
+use App\Message\ScanMessage;
use App\Entity\Course;
use App\Entity\ContentItem;
+use App\Entity\ProgressBar;
use App\Repository\CourseRepository;
use App\Response\ApiResponse;
use App\Services\LmsApiService;
@@ -12,6 +14,8 @@
use App\Services\UtilityService;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\Routing\Annotation\Route;
+use Symfony\Component\Messenger\MessageBusInterface;
+use Doctrine\Persistence\ManagerRegistry;
class SyncController extends ApiController
{
@@ -20,8 +24,20 @@ class SyncController extends ApiController
/** @var UtilityService $util */
protected $util;
+ #[Route('/api/progress', name: 'progress')]
+ public function progress(ManagerRegistry $doctrine) {
+ $progressRepo = $doctrine->getManager()->getRepository(ProgressBar::class);
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+ $data = [
+ 'total' => $progressBar->getTotal(),
+ 'progress' => $progressBar->getProgress(),
+ 'title' => $progressBar->getTitle(),
+ ];
+ return new JsonResponse($data);
+ }
+
#[Route('/api/sync/{course}', name: 'request_sync')]
- public function requestSync(Course $course, LmsFetchService $lmsFetch)
+ public function requestSync(Course $course, LmsFetchService $lmsFetch, MessageBusInterface $bus)
{
$response = new ApiResponse();
$user = $this->getUser();
@@ -39,8 +55,27 @@ public function requestSync(Course $course, LmsFetchService $lmsFetch)
throw new \Exception('msg.sync.course_inactive');
}
- $lmsFetch->refreshLmsContent($course, $user);
+ $lmsFetch->refreshLmsContent($course, $user, $bus);
+
+ $response->addMessage('msg.worker_started', 'success', 5000);
+
+ } catch (\Exception $e) {
+ if ('msg.course_scanning' === $e->getMessage()) {
+ $response->addMessage($e->getMessage(), 'info', 0, false);
+ } else {
+ $response->addMessage($e->getMessage(), 'error', 0);
+ }
+ }
+
+ return new JsonResponse($response);
+ }
+
+ #[Route('/api/sync/getLatestReport/{course}', name: 'get_report', methods: ['GET'])]
+ public function getLatestReport(Course $course) {
+ $response = new ApiResponse();
+ $reportArr = false;
+ try {
$report = $course->getLatestReport();
if (!$report) {
@@ -67,10 +102,11 @@ public function requestSync(Course $course, LmsFetchService $lmsFetch)
$response->addMessage($e->getMessage(), 'error', 0);
}
}
-
+
return new JsonResponse($response);
}
+
#[Route('/api/sync/content/{contentItem}', name: 'content_sync', methods: ['GET'])]
public function requestContentSync(ContentItem $contentItem, LmsFetchService $lmsFetch, PhpAllyService $phpAlly)
{
diff --git a/src/DoctrineMigrations/Version20210525163808.php b/src/DoctrineMigrations/Version20210525163808.php
index a50dd2ad4..d01668c7e 100644
--- a/src/DoctrineMigrations/Version20210525163808.php
+++ b/src/DoctrineMigrations/Version20210525163808.php
@@ -24,6 +24,7 @@ public function up(Schema $schema): void
$this->addSql('CREATE TABLE content_item (id INT AUTO_INCREMENT NOT NULL, course_id INT NOT NULL, title VARCHAR(255) NOT NULL, content_type VARCHAR(255) NOT NULL, lms_content_id VARCHAR(512) NOT NULL, updated DATETIME NOT NULL, metadata LONGTEXT DEFAULT NULL, published TINYINT(1) NOT NULL, active TINYINT(1) NOT NULL, body LONGTEXT DEFAULT NULL, url VARCHAR(255) DEFAULT NULL, INDEX IDX_D279C8DB591CC992 (course_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE course (id INT AUTO_INCREMENT NOT NULL, institution_id INT NOT NULL, title VARCHAR(255) NOT NULL, lms_account_id VARCHAR(255) DEFAULT NULL, lms_course_id VARCHAR(255) DEFAULT NULL, last_updated DATETIME DEFAULT NULL, active TINYINT(1) DEFAULT NULL, dirty TINYINT(1) DEFAULT NULL, lms_term_id INT DEFAULT NULL, INDEX IDX_169E6FB910405986 (institution_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE file_item (id INT AUTO_INCREMENT NOT NULL, course_id INT DEFAULT NULL, reviewed_by_id INT DEFAULT NULL, file_name VARCHAR(255) NOT NULL, file_type VARCHAR(32) NOT NULL, lms_file_id VARCHAR(255) NOT NULL, updated DATETIME DEFAULT NULL, metadata LONGTEXT DEFAULT NULL, status TINYINT(1) DEFAULT NULL, file_size VARCHAR(255) DEFAULT NULL, hidden TINYINT(1) DEFAULT NULL, reviewed TINYINT(1) DEFAULT NULL, lms_url VARCHAR(255) DEFAULT NULL, download_url VARCHAR(255) DEFAULT NULL, reviewed_on DATETIME DEFAULT NULL, active TINYINT(1) NOT NULL, INDEX IDX_96E74D70591CC992 (course_id), INDEX IDX_96E74D70FC6B21F1 (reviewed_by_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
+ $this->addSql('CREATE TABLE progress_bar (id INT AUTO_INCREMENT NOT NULL, progress INT NOT NULL, total INT NOT NULL, title VARCHAR(255) CHARACTER SET utf8mb4 DEFAULT NULL COLLATE `utf8mb4_unicode_ci`, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
$this->addSql('CREATE TABLE institution (id INT AUTO_INCREMENT NOT NULL, title VARCHAR(255) NOT NULL, lms_domain VARCHAR(255) DEFAULT NULL, lms_id VARCHAR(64) DEFAULT NULL, lms_account_id VARCHAR(255) DEFAULT NULL, created DATETIME NOT NULL, status TINYINT(1) NOT NULL, vanity_url VARCHAR(255) DEFAULT NULL, metadata LONGTEXT DEFAULT NULL, api_client_id VARCHAR(255) DEFAULT NULL, api_client_secret VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE issue (id INT AUTO_INCREMENT NOT NULL, content_item_id INT NOT NULL, fixed_by_id INT DEFAULT NULL, scan_rule_id VARCHAR(255) NOT NULL, html LONGTEXT DEFAULT NULL, type VARCHAR(255) NOT NULL, status SMALLINT NOT NULL, fixed_on DATETIME DEFAULT NULL, preview_html LONGTEXT DEFAULT NULL, new_html LONGTEXT DEFAULT NULL, metadata JSON DEFAULT NULL, INDEX IDX_12AD233ECD678BED (content_item_id), INDEX IDX_12AD233EC38008F2 (fixed_by_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE log_entry (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, course_id INT DEFAULT NULL, message LONGTEXT DEFAULT NULL, severity VARCHAR(255) NOT NULL, created DATETIME NOT NULL, status TINYINT(1) DEFAULT NULL, INDEX IDX_B5F762DA76ED395 (user_id), INDEX IDX_B5F762D591CC992 (course_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
@@ -61,6 +62,7 @@ public function down(Schema $schema): void
$this->addSql('ALTER TABLE report DROP FOREIGN KEY FK_C42F7784F675F31B');
$this->addSql('DROP TABLE content_item');
$this->addSql('DROP TABLE course');
+ $this->addSql('DROP TABLE progress_bar');
$this->addSql('DROP TABLE file_item');
$this->addSql('DROP TABLE institution');
$this->addSql('DROP TABLE issue');
diff --git a/src/Entity/ProgressBar.php b/src/Entity/ProgressBar.php
new file mode 100644
index 000000000..3ca9f3711
--- /dev/null
+++ b/src/Entity/ProgressBar.php
@@ -0,0 +1,72 @@
+
+namespace App\Entity;
+
+use Doctrine\ORM\Mapping as ORM;
+
+/**
+ * @ORM\Entity(repositoryClass="App\Repository\ProgressBarRepository")
+ */
+class ProgressBar
+{
+ /**
+ * @ORM\Id
+ * @ORM\GeneratedValue
+ * @ORM\Column(type="integer")
+ */
+ private $id;
+
+ /**
+ * @ORM\Column(type="string", length=255, nullable=true)
+ */
+ private $title;
+
+ /**
+ * @ORM\Column(type="integer")
+ */
+ private $progress;
+
+ /**
+ * @ORM\Column(type="integer")
+ */
+ private $total;
+
+
+ public function getId(): ?int
+ {
+ return $this->id;
+ }
+
+ public function getProgress(): ?int
+ {
+ return $this->progress;
+ }
+
+ public function getTotal(): ?int
+ {
+ return $this->total;
+ }
+
+ public function getTitle(): ?string
+ {
+ return $this->title;
+ }
+
+ public function setProgress(int $progress): self
+ {
+ $this->progress = $progress;
+ return $this;
+ }
+
+ public function setTitle(string $title): self
+ {
+ $this->title = $title;
+
+ return $this;
+ }
+
+ public function setTotal(int $total): self
+ {
+ $this->total = $total;
+ return $this;
+ }
+}
diff --git a/src/Message/ScanMessage.php b/src/Message/ScanMessage.php
new file mode 100644
index 000000000..d6dc522e4
--- /dev/null
+++ b/src/Message/ScanMessage.php
@@ -0,0 +1,31 @@
+course = $course;
+ $this->user = $user;
+ }
+
+ public function getContent(): array
+ {
+ return $this->contentItems;
+ }
+
+ public function getCourse()
+ {
+ return $this->course;
+ }
+
+ public function getUser()
+ {
+ return $this->user;
+ }
+}
diff --git a/src/MessageHandler/ScanMessageHandler.php b/src/MessageHandler/ScanMessageHandler.php
new file mode 100644
index 000000000..22b11e104
--- /dev/null
+++ b/src/MessageHandler/ScanMessageHandler.php
@@ -0,0 +1,650 @@
+phpAlly = $phpAlly;
+ $this->doctrine = $doctrine;
+ $this->security = $security;
+ }
+
+ const ISSUE_TYPE_SUGGESTION = 'suggestion';
+ const ISSUE_TYPE_ERROR = 'error';
+
+ public function __invoke(ScanMessage $message)
+ {
+ $contentItemRepo = $this->doctrine->getManager()->getRepository(ContentItem::class);
+ $courseRepo = $this->doctrine->getManager()->getRepository(Course::class);
+ $userRepo = $this->doctrine->getManager()->getRepository(User::class);
+ $progressRepo = $this->doctrine->getManager()->getRepository(ProgressBar::class);
+ $fileItemRepo = $this->doctrine->getManager()->getRepository(FileItem::class);
+
+ //Creates a progress bar in case one isn't already set up
+ $count = $progressRepo->count([]);
+ if($count == 0) {
+ $this->setUpProgressBar();
+ }
+
+ $course = $courseRepo->find($message->getCourse());
+ $user = $userRepo->find($message->getUser());
+
+ /* Step 1: Update content
+ /* Update course status */
+ $this->updateCourseData($course, $user);
+
+ /* Mark content items as inactive */
+ $contentItemRepo->setCourseContentInactive($course);
+ $fileItemRepo->setCourseFileItemsInactive($course);
+ $this->doctrine->getManager()->flush();
+
+ /* Update content items from LMS */
+ $this->updateCourseContent($course, $user);
+
+ /* Step 2: Get list of changed content items */
+ $contentItems = $contentItemRepo->getUpdatedContentItems($course);
+
+ /* Step 3: Delete issues for updated content items */
+ $this->deleteContentItemIssues($contentItems);
+
+ /* Step 4: Process the updated content with PhpAlly and link to report */
+ $this->scanContentItems($contentItems, $progressRepo);
+
+ /* Step 5: Update report from all active issues */
+ $this->updateReport($course, $user);
+
+ /* Save last_updated date on course */
+ $course->setLastUpdated(new \DateTime('now', new \DateTimeZone('GMT')));
+ $course->setDirty(false);
+ $this->doctrine->getManager()->flush();
+ }
+
+ public function createIssue(PhpAllyIssue $issue, ContentItem $contentItem)
+ {
+ $issueEntity = new Issue();
+ $meta = $contentItem->getCourse()->getInstitution()->getMetadata();
+ $issueType = self::ISSUE_TYPE_ERROR;
+
+ if (isset($meta['SUGGESTION_RULES'])) {
+ if (isset($meta['SUGGESTION_RULES'][$issue->getRuleId()])) {
+ $issueType = self::ISSUE_TYPE_SUGGESTION;
+ }
+ }
+ if (isset($_ENV['PHPALLY_SUGGESTION_RULES'])) {
+ if (strpos($_ENV['PHPALLY_SUGGESTION_RULES'], $issue->getRuleId()) !== false) {
+ $issueType = self::ISSUE_TYPE_SUGGESTION;
+ }
+ }
+
+ $contentItemRepo = $this->doctrine->getManager()->getRepository(ContentItem::class);
+
+ $item = $contentItemRepo->find($contentItem->getId());
+
+ $issueEntity->setType($issueType);
+ $issueEntity->setStatus(Issue::$issueStatusActive);
+ $issueEntity->setContentItem($item);
+ $issueEntity->setScanRuleId($issue->getRuleId());
+ $issueEntity->setHtml($issue->getHtml());
+ $issueEntity->setPreviewHtml($issue->getPreview());
+ $issueEntity->setMetadata($issue->getMetadata());
+
+ $contentItem->addIssue($issueEntity);
+ $this->doctrine->getManager()->persist($issueEntity);
+ return $issueEntity;
+ }
+
+ public function updateReport(Course $course, User $user): Report
+ {
+ $contentFixed = $contentResolved = $filesReviewed = $errors = $suggestions = 0;
+ $scanRules = [];
+
+ /** @var \App\Entity\ContentItem[] $contentItems */
+ $contentItems = $course->getContentItems();
+
+ foreach ($contentItems as $contentItem) {
+ /** @var \App\Entity\Issue[] $issues */
+ $issues = $contentItem->getIssues()->toArray();
+
+ foreach ($issues as $issue) {
+ if (Issue::$issueStatusFixed === $issue->getStatus()) {
+ $contentFixed++;
+ } else if (Issue::$issueStatusResolved === $issue->getStatus()) {
+ $contentResolved++;
+ } else {
+ if (Issue::$issueError === $issue->getType()) {
+ $errors++;
+ } else {
+ $suggestions++;
+ }
+ }
+
+ /* Scan rule data */
+ $ruleId = $issue->getScanRuleId();
+ if (!isset($scanRules[$ruleId])) {
+ $scanRules[$ruleId] = 0;
+ }
+
+ $scanRules[$ruleId]++;
+ }
+ }
+
+ /** @var \App\Entity\FileItem[] $fileItems */
+ $fileItems = $course->getFileItems();
+ foreach ($fileItems as $file) {
+ if ($file->getReviewed()) {
+ $filesReviewed++;
+ }
+ }
+
+ $latestReport = $course->getLatestReport();
+ $now = new \DateTime('now', new \DateTimeZone('GMT'));
+
+ if ($latestReport && ($now->format('m/d/y') === $latestReport->getCreated()->format('m/d/y'))) {
+ $report = $latestReport;
+ }
+ else {
+ $report = new Report();
+ $report->setAuthor($user);
+ $report->setCourse($course);
+ $this->doctrine->getManager()->persist($report);
+ }
+
+ $report->setCreated($now);
+ $report->setReady(false);
+ $report->setErrors($errors);
+ $report->setSuggestions($suggestions);
+ $report->setContentFixed($contentFixed);
+ $report->setContentResolved($contentResolved);
+ $report->setFilesReviewed($filesReviewed);
+ $report->setData(\json_encode(['scanRules' => $scanRules]));
+
+ $this->doctrine->getManager()->flush();
+
+ return $report;
+ }
+
+ private function scanContentItems(array $contentItems, $progressRepo) {
+ // Scan each update content item for issues
+ /** @var \App\Entity\ContentItem $contentItem */
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+ //If there are no issues to scan, nullify the progress bar such that
+ //the report can be sent
+ if(count($contentItems) == 0) {
+ $progressBar->setTotal(0);
+ $progressBar->setProgress(0);
+ $this->doctrine->getManager()->persist($progressBar);
+ $this->doctrine->getManager()->flush();
+ }
+ $issueIndex = 0;
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+ $total = count($contentItems);
+ $progressBar->setTotal($total);
+ $progressBar->setTitle("Scanning course.");
+ $this->doctrine->getManager()->persist($progressBar);
+ $this->doctrine->getManager()->flush();
+ foreach($contentItems as $contentItem) {
+ try {
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+ $issueIndex++;
+ $progressBar->setProgress($issueIndex);
+ $this->doctrine->getManager()->persist($progressBar);
+ $this->doctrine->getManager()->flush();
+ // Scan Content Item with PHPAlly
+ $phpAllyReport = $this->phpAlly->scanContentItem($contentItem);
+
+ if ($phpAllyReport) {
+ // TODO: Do something with report errors
+ if (count($phpAllyReport->getErrors())) {
+ foreach ($phpAllyReport->getErrors() as $error) {
+ $msg = $error . ', item = #' . $contentItem->getId();
+ $this->createMessage($msg, 'error', $contentItem->getCourse(), null, true);
+ }
+ }
+
+ // Add Issues to report
+ foreach ($phpAllyReport->getIssues() as $issue) {
+ // Create issue entity
+ $this->createIssue($issue, $contentItem);
+ }
+ }
+ }
+ catch (\Exception $e) {
+ $this->util->createMessage($e->getMessage(), 'error', null, null, true);
+ }
+ }
+ $entityManager = $this->doctrine->getManager();
+ $this->doctrine->getManager()->flush();
+ }
+
+ public function deleteContentItemIssues($contentItems)
+ {
+ /** @var \App\Repository\IssueRepository $issueRepo */
+ $issueRepo = $this->doctrine->getManager()->getRepository(Issue::class);
+
+ foreach ($contentItems as $contentItem) {
+ $issueRepo->deleteContentItemIssues($contentItem);
+ }
+ }
+
+ public function setUpProgressBar() {
+ $progressRepo = $this->doctrine->getManager()->getRepository(ProgressBar::class);
+ $entity = new ProgressBar();
+ $entity->setProgress(0);
+ $entity->setTotal(0);
+ $this->doctrine->getManager()->persist($entity);
+ $this->doctrine->getManager()->flush();
+ }
+
+ public function createMessage($msg, $severity = 'info', Course $course = null, User $user = null, $hideFromUser = false)
+ {
+ if (!$user) {
+ $user = $this->security->getUser();
+ }
+
+ if (is_array($msg) || is_object($msg)) {
+ $msg = \json_encode($msg);
+ }
+
+ $message = new LogEntry();
+ $message->setMessage($msg);
+ $message->setSeverity($severity);
+ $message->setUser($user);
+ $message->setStatus($hideFromUser);
+ $message->setCreated(new \DateTime('now', new \DateTimeZone('GMT')));
+
+ if ($course) {
+ $message->setCourse($course);
+ }
+
+ $this->doctrine->getManager()->persist($message);
+ $this->doctrine->getManager()->flush();
+ }
+
+ // Get content from Canvas and update content items
+ public function updateCourseContent(Course $course, User $user): array
+ {
+ $content = $contentItems = [];
+ $urls = $this->getCourseContentUrls($course->getLmsCourseId());
+ $apiDomain = $this->getApiDomain($user);
+ $apiToken = $this->getApiToken($user);
+ $entityManager = $this->doctrine->getManager();
+ $contentItemRepo = $entityManager->getRepository(ContentItem::class);
+ $progressRepo = $this->doctrine->getManager()->getRepository(ProgressBar::class);
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+
+ $canvasApi = new CanvasApi($apiDomain, $apiToken);
+ $itemIndex = 0;
+
+ foreach ($urls as $contentType => $url) {
+ $response = $canvasApi->apiGet($url);
+ if ($response->getErrors()) {
+ $this->util->createMessage('Error retrieving content. Failed API Call: ' . $url, 'error', $course, $user);
+ }
+ else {
+ if ('syllabus' === $contentType) {
+ $contentList = [$response->getContent()];
+ }
+ else {
+ $contentList = $response->getContent();
+ }
+
+ foreach ($contentList as $content) {
+ $progressBar = $progressRepo->findOneBy([], ['id' => 'ASC']);
+ $itemIndex++;
+ $progressBar->setProgress($itemIndex);
+ $progressBar->setTitle("Getting content from Canvas");
+ $entityManager->persist($progressBar);
+ $entityManager->flush();
+ if (('file' === $contentType) && (in_array($content['mime_class'], $this->getUnscannableFileMimeClasses()))) {
+ $this->updateFileItem($course, $content);
+ continue;
+ }
+
+ /* Quizzes should not be counted as assignments */
+ if (('assignment' === $contentType) && isset($content['quiz_id'])) {
+ continue;
+ }
+ /* Discussion topics set as assignments should be skipped */
+ if (('assignment' === $contentType) && isset($content['discussion_topic'])) {
+ continue;
+ }
+
+ $lmsContent = $this->normalizeLmsContent($course, $contentType, $content);
+ if (!$lmsContent) {
+ continue;
+ }
+
+ /* get page content */
+ if ('page' === $contentType) {
+ $url = "courses/{$course->getLmsCourseId()}/pages/{$lmsContent['id']}";
+ $pageResponse = $canvasApi->apiGet($url);
+ $pageObj = $pageResponse->getContent();
+
+ if (!empty($pageObj['body'])) {
+ $lmsContent['body'] = $pageObj['body'];
+ }
+ }
+
+ /* get HTML file content */
+ if (('file' === $contentType) && ('html' === $content['mime_class'])) {
+ $lmsContent['body'] = file_get_contents($content['url']);
+ }
+
+ $contentItem = $contentItemRepo->findOneBy([
+ 'contentType' => $contentType,
+ 'lmsContentId' => $lmsContent['id'],
+ 'course' => $course,
+ ]);
+
+ if (!$contentItem) {
+ $contentItem = new ContentItem();
+ $contentItem->setCourse($course)
+ ->setLmsContentId($lmsContent['id'])
+ ->setActive(true)
+ ->setUpdated(new \DateTime('now', new \DateTimeZone('GMT')))
+ ->setContentType($contentType);
+ $entityManager->persist($contentItem);
+ }
+
+ // some content types don't have an updated date, so we'll compare content
+ // to find out if content has changed.
+ if (in_array($contentType, ['syllabus', 'discussion_topic', 'announcement', 'quiz'])) {
+ if ($contentItem->getBody() === $lmsContent['body']) {
+ if ($contentItem->getUpdated()) {
+ $lmsContent['updated'] = $contentItem->getUpdated()->format('c');
+ }
+ }
+ }
+
+ $contentItem->update($lmsContent);
+ $contentItems[] = $contentItem;
+ }
+ }
+ }
+
+ // push any updates made to content items to DB
+ $entityManager->flush();
+
+ return $contentItems;
+ }
+
+ public function updateCourseData(Course $course, User $user)
+ {
+ $url = "courses/{$course->getLmsCourseId()}?include[]=term";
+ $apiDomain = $this->getApiDomain($user);
+ $apiToken = $this->getApiToken($user);
+ $entityManager = $this->doctrine->getManager();
+
+ $canvasApi = new CanvasApi($apiDomain, $apiToken);
+ $response = $canvasApi->apiGet($url);
+
+ if (!$response || !empty($response->getErrors())) {
+ foreach ($response->getErrors() as $error) {
+ $this->util->createMessage($error, 'error', $course, $user);
+ }
+ return;
+ }
+ $content = $response->getContent();
+
+ $course->setTitle($content['name']);
+ $course->setLmsAccountId($content['account_id']);
+ $course->setActive(true);
+
+ if (isset($content['term']['id'])) {
+ $course->setLmsTermId($content['term']['id']);
+ }
+
+ $entityManager->flush();
+ }
+
+
+ /**********************
+ * PROTECTED FUNCTIONS
+ **********************/
+
+ protected function getCourseContentUrls($courseId)
+ {
+ return [
+ 'syllabus' => "courses/{$courseId}?include[]=syllabus_body",
+ 'announcement' => "courses/{$courseId}/discussion_topics?only_announcements=true",
+ 'assignment' => "courses/{$courseId}/assignments",
+ 'discussion_topic' => "courses/{$courseId}/discussion_topics",
+ 'file' => "courses/{$courseId}/files",
+ 'module' => "courses/{$courseId}/modules?include[]=items",
+ 'page' => "courses/{$courseId}/pages",
+ 'quiz' => "courses/{$courseId}/quizzes",
+ ];
+ }
+
+ protected function getApiDomain(User $user)
+ {
+ $institution = $user->getInstitution();
+
+ return $institution->getLmsDomain();
+ }
+
+ protected function getApiToken(User $user)
+ {
+ return $user->getApiKey();
+ }
+
+ protected function normalizeLmsContent(Course $course, $contentType, $lmsContent)
+ {
+ $out = [];
+ $domainName = $course->getInstitution()->getLmsDomain();
+ $baseUrl = "https://{$domainName}/courses/{$course->getLmsCourseId()}";
+
+ switch ($contentType) {
+ case 'syllabus':
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['name'];
+ $out['updated'] = 'now';
+ $out['status'] = false;
+ $out['url'] = "{$baseUrl}/assignments/syllabus";
+
+ if (array_key_exists('syllabus_body', $lmsContent)) {
+ $out['body'] = $lmsContent['syllabus_body'];
+ $out['status'] = true;
+ }
+
+ break;
+
+ case 'page':
+ $out['id'] = $lmsContent['url'];
+ $out['title'] = $lmsContent['title'];
+ $out['updated'] = $lmsContent['updated_at'];
+ $out['body'] = (!empty($lmsContent['body'])) ? $lmsContent['body'] : '';
+ $out['status'] = $lmsContent['published'];
+ $out['url'] = "{$baseUrl}/pages/{$lmsContent['url']}";
+
+ break;
+
+ case 'assignment':
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['name'];
+ $out['updated'] = $lmsContent['updated_at'];
+ $out['body'] = $lmsContent['description'];
+ $out['status'] = $lmsContent['published'];
+ $out['url'] = "{$baseUrl}/assignments/{$lmsContent['id']}";
+
+ break;
+
+ case 'discussion_topic':
+ case 'announcement':
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['title'];
+ $out['updated'] = 'now';
+ $out['body'] = $lmsContent['message'];
+ $out['status'] = $lmsContent['published'];
+ $out['url'] = "{$baseUrl}/discussion_topics/{$lmsContent['id']}";
+
+ break;
+
+ case 'module':
+ if (!isset($lmsContent['items'])) {
+ break;
+ }
+
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['name'];
+ $out['updated'] = 'now';
+
+ $body = '';
+ foreach ($lmsContent['items'] as $item) {
+ if ('ExternalUrl' !== $item['type']) {
+ break;
+ }
+ $body .= "{$item['title']}
";
+ }
+
+ $out['body'] = $body;
+ $out['status'] = $lmsContent['published'];
+ $out['url'] = "{$baseUrl}/modules";
+
+ break;
+
+ case 'file':
+ if ('html' !== $lmsContent['mime_class']) {
+ break;
+ }
+
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['display_name'];
+ $out['updated'] = $lmsContent['updated_at'];
+ $out['body'] = '';
+ $out['status'] = !$lmsContent['hidden'];
+ $out['url'] = "{$baseUrl}/files?preview={$lmsContent['id']}";
+
+ if (isset($lmsContent['mime_class'])) {
+ $out['fileType'] = $lmsContent['mime_class'];
+ }
+
+ break;
+
+ case 'quiz':
+ $out['id'] = $lmsContent['id'];
+ $out['title'] = $lmsContent['title'];
+ $out['updated'] = 'now';
+ $out['body'] = $lmsContent['description'];
+ $out['status'] = $lmsContent['published'];
+ $out['url'] = "{$baseUrl}/quizzes/{$lmsContent['id']}";
+
+ break;
+ }
+
+ return $out;
+ }
+
+ protected function getUnscannableFileMimeClasses()
+ {
+ return [
+ 'pdf',
+ 'ppt',
+ 'doc',
+ 'xls',
+ ];
+ }
+
+ public function updateContentItem(ContentItem $contentItem)
+ {
+ $user = $this->security->getUser();
+ $apiDomain = $this->getApiDomain($user);
+ $apiToken = $this->getApiToken($user);
+ $url = $this->getContentTypeUrl($contentItem);
+ $entityManager = $this->doctrine->getManager();
+ $contentType = $contentItem->getContentType();
+
+ $canvasApi = new CanvasApi($apiDomain, $apiToken);
+
+ $response = $canvasApi->apiGet($url);
+
+ if ($response->getErrors()) {
+ $log = '';
+ foreach ($response->getErrors() as $err) {
+ $log .= ' | Msg: ' . $err;
+ }
+
+ $this->util->createMessage('Error retrieving content. Please try again.', 'error', $contentItem->getCourse(), $user);
+ $this->util->createMessage($log, 'error', $contentItem->getCourse(), $user, true);
+ }
+ else {
+ $apiContent = $response->getContent();
+ $lmsContent = $this->normalizeLmsContent($contentItem->getCourse(), $contentType, $apiContent);
+
+ /* get HTML file content */
+ if ('file' === $contentType) {
+ if ('html' === $apiContent['mime_class']) {
+ $lmsContent['body'] = file_get_contents($apiContent['url']);
+ }
+ }
+
+ $contentItem->update($lmsContent);
+ $entityManager->flush();
+ }
+ }
+
+ protected function updateFileItem(Course $course, $file)
+ {
+ $fileItemRepo = $this->doctrine->getManager()->getRepository(FileItem::class);
+ $entityManager = $this->doctrine->getManager();
+ $fileItem = $fileItemRepo->findOneBy([
+ 'lmsFileId' => $file['id'],
+ 'course' => $course,
+ ]);
+
+ if (!$fileItem) {
+ $fileItem = new FileItem();
+ $fileItem->setCourse($course)
+ ->setFileName($file['filename'])
+ ->setFileType($file['mime_class'])
+ ->setLmsFileId($file['id'])
+ ->setDownloadUrl($file['url'])
+ ->setActive(true);
+ $entityManager->persist($fileItem);
+ }
+
+ $domainName = $course->getInstitution()->getLmsDomain();
+ $lmsUrl = "https://{$domainName}/courses/{$course->getLmsCourseId()}/files?preview={$file['id']}";
+ $fileItem->setLmsUrl($lmsUrl);
+
+ // normalize file keys
+ $file['fileName'] = $file['filename'];
+ $file['fileType'] = $file['mime_class'];
+ $file['status'] = !$file['locked'];
+ $file['fileSize'] = $file['size'];
+ $file['updated'] = $file['updated_at'];
+
+ $fileItem->update($file);
+ $entityManager = $this->doctrine->getManager();
+ $entityManager->flush();
+ }
+
+}
diff --git a/src/Repository/ProgressBarRepository.php b/src/Repository/ProgressBarRepository.php
new file mode 100644
index 000000000..422f45354
--- /dev/null
+++ b/src/Repository/ProgressBarRepository.php
@@ -0,0 +1,22 @@
+lmsApi->getLms($user);
$this->lmsUser->validateApiKey($user);
-
- /** @var \App\Repository\ContentItemRepository $contentItemRepo */
- $contentItemRepo = $this->doctrine->getManager()->getRepository(ContentItem::class);
-
- /** @var \App\Repository\FileItemRepository $fileItemRepo */
- $fileItemRepo = $this->doctrine->getManager()->getRepository(FileItem::class);
-
- /* Step 1: Update content
- /* Update course status */
- $lms->updateCourseData($course, $user);
-
- /* Mark content items as inactive */
- $contentItemRepo->setCourseContentInactive($course);
- $fileItemRepo->setCourseFileItemsInactive($course);
- $this->doctrine->getManager()->flush();
-
- /* Update content items from LMS */
- $lms->updateCourseContent($course, $user);
-
- /* Step 2: Get list of changed content items */
- $contentItems = $contentItemRepo->getUpdatedContentItems($course);
-
- /* Step 3: Delete issues for updated content items */
- $this->deleteContentItemIssues($contentItems);
-
- /* Step 4: Process the updated content with PhpAlly and link to report */
- $this->scanContentItems($contentItems);
-
- /* Step 5: Update report from all active issues */
- $this->updateReport($course, $user);
-
- /* Save last_updated date on course */
- $course->setLastUpdated($this->util->getCurrentTime());
- $course->setDirty(false);
- $this->doctrine->getManager()->flush();
+
+ //Begin scanning process
+ $bus->dispatch(new ScanMessage($course->getId(), $user->getId()));
}
// Refresh content item data from the LMS
@@ -176,40 +146,6 @@ public function updateReport(Course $course, User $user): Report
return $report;
}
-
- // Performs PHPAlly scan on each Content Item.
- private function scanContentItems(array $contentItems)
- {
- // Scan each update content item for issues
- /** @var \App\Entity\ContentItem $contentItem */
- foreach ($contentItems as $contentItem) {
- try {
- // Scan Content Item with PHPAlly
- $phpAllyReport = $this->phpAlly->scanContentItem($contentItem);
-
- if ($phpAllyReport) {
- // TODO: Do something with report errors
- if (count($phpAllyReport->getErrors())) {
- foreach ($phpAllyReport->getErrors() as $error) {
- $msg = $error . ', item = #' . $contentItem->getId();
- $this->util->createMessage($msg, 'error', $contentItem->getCourse(), null, true);
- }
- }
-
- // Add Issues to report
- foreach ($phpAllyReport->getIssues() as $issue) {
- // Create issue entity
- $this->createIssue($issue, $contentItem);
- }
- }
- }
- catch (\Exception $e) {
- $this->util->createMessage($e->getMessage(), 'error', null, null, true);
- }
- }
- $this->doctrine->getManager()->flush();
- }
-
public function createIssue(PhpAllyIssue $issue, ContentItem $contentItem)
{
$issueEntity = new Issue();
diff --git a/src/Services/PhpAllyService.php b/src/Services/PhpAllyService.php
index a8c0af5d6..62d0d6a88 100644
--- a/src/Services/PhpAllyService.php
+++ b/src/Services/PhpAllyService.php
@@ -12,13 +12,10 @@ class PhpAllyService {
/** @var App\Service\HtmlService */
protected $htmlService;
- protected $util;
-
- public function __construct(HtmlService $htmlService, UtilityService $util)
+ public function __construct(HtmlService $htmlService)
{
$this->phpAlly = new PhpAlly();
$this->htmlService = $htmlService;
- $this->util = $util;
}
public function scanContentItem(ContentItem $contentItem)
diff --git a/translations/en.json b/translations/en.json
index 91cff0119..5733467f2 100644
--- a/translations/en.json
+++ b/translations/en.json
@@ -127,6 +127,7 @@
"msg.no_permissions": "You do not have permission to access the specified course.",
"msg.course_scanning": "Course scanning...",
+ "msg.worker_started": "Scan request has been received.",
"msg.no_new_content": "Course scan complete. No new content found.",
"msg.new_content": "Course scan complete. New content has been added.",
"msg.sync.started": "Course scan started.",
@@ -382,4 +383,4 @@
"rule.label.SearchKeyWord": "Keyword found",
"rule.desc.SearchKeyWord": "The keyword has been found"
-}
\ No newline at end of file
+}