From 90a302b8a8b8b1ecd13c6a41a78b9c7347276a3b Mon Sep 17 00:00:00 2001 From: Roberto B Date: Wed, 13 Oct 2021 22:48:58 +0200 Subject: [PATCH 01/38] Create result.sarif --- result.sarif | 1 + 1 file changed, 1 insertion(+) create mode 100644 result.sarif diff --git a/result.sarif b/result.sarif new file mode 100644 index 0000000..a99a6b3 --- /dev/null +++ b/result.sarif @@ -0,0 +1 @@ +{"version":"2.1.0","$schema":"https:\/\/json.schemastore.org\/sarif-2.1.0.json","runs":[{"tool":{"driver":{"name":"Psalm","informationUri":"https:\/\/psalm.dev","version":"4.10.0@916b098b008f6de4543892b1e0651c1c3b92cbfa","rules":[{"id":"92","name":"PossiblyInvalidArgument","shortDescription":{"text":"PossiblyInvalidArgument"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/092"},{"id":"267","name":"NonInvariantDocblockPropertyType","shortDescription":{"text":"NonInvariantDocblockPropertyType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/267"},{"id":"45","name":"MissingPropertyType","shortDescription":{"text":"MissingPropertyType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/045"},{"id":"154","name":"MissingParamType","shortDescription":{"text":"MissingParamType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/154"},{"id":"83","name":"PossiblyNullReference","shortDescription":{"text":"PossiblyNullReference"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/083"},{"id":"113","name":"PossiblyInvalidMethodCall","shortDescription":{"text":"PossiblyInvalidMethodCall"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/113"},{"id":"170","name":"DeprecatedConstant","shortDescription":{"text":"DeprecatedConstant"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/170"},{"id":"74","name":"PropertyNotSetInConstructor","shortDescription":{"text":"PropertyNotSetInConstructor"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/074"},{"id":"70","name":"MoreSpecificReturnType","shortDescription":{"text":"MoreSpecificReturnType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/070"},{"id":"129","name":"LessSpecificReturnStatement","shortDescription":{"text":"LessSpecificReturnStatement"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/129"},{"id":"50","name":"MissingReturnType","shortDescription":{"text":"MissingReturnType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/050"},{"id":"153","name":"MissingClosureParamType","shortDescription":{"text":"MissingClosureParamType"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/153"},{"id":"78","name":"PossiblyNullArgument","shortDescription":{"text":"PossiblyNullArgument"},"properties":{"tags":["maintainability"]},"helpUri":"https:\/\/psalm.dev\/078"}]}},"results":[{"ruleId":"92","message":{"text":"Argument 1 of App\\Objects\\GuesserFiles::pathFiles expects string, possibly different type array|bool|string provided"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Console\/Commands\/GenerateWorkflow.php"},"region":{"startLine":58,"endLine":58,"startColumn":34,"endColumn":45}}}]},{"ruleId":"92","message":{"text":"Argument 2 of App\\Objects\\GuesserFiles::pathFiles expects string, possibly different type array|bool|null|string provided"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Console\/Commands\/GenerateWorkflow.php"},"region":{"startLine":58,"endLine":58,"startColumn":47,"endColumn":69}}}]},{"ruleId":"92","message":{"text":"Argument 1 of App\\Objects\\WorkflowGenerator::detectCache expects bool, possibly different type array|bool|null|string provided"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Console\/Commands\/GenerateWorkflow.php"},"region":{"startLine":119,"endLine":119,"startColumn":33,"endColumn":39}}}]},{"ruleId":"92","message":{"text":"Argument 1 of App\\Console\\Commands\\GenerateWorkflow::line expects string, possibly different type array|string provided"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Console\/Commands\/GenerateWorkflow.php"},"region":{"startLine":181,"endLine":181,"startColumn":21,"endColumn":28}}}]},{"ruleId":"267","message":{"text":"Property App\\Exceptions\\Handler::$dontReport has type array, not invariant with Illuminate\\Foundation\\Exceptions\\Handler::$dontReport of type array"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Exceptions\/Handler.php"},"region":{"startLine":15,"endLine":15,"startColumn":15,"endColumn":26}}}]},{"ruleId":"267","message":{"text":"Property App\\Exceptions\\Handler::$dontFlash has type array, not invariant with Illuminate\\Foundation\\Exceptions\\Handler::$dontFlash of type array"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Exceptions\/Handler.php"},"region":{"startLine":24,"endLine":24,"startColumn":15,"endColumn":25}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$code does not have a declared type - consider string"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":37,"endLine":37,"startColumn":12,"endColumn":17}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$queryString does not have a declared type - consider array{code: array{except: string}, template: array{except: string}}"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":40,"endLine":40,"startColumn":15,"endColumn":27}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$result does not have a declared type - consider null|string"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":46,"endLine":46,"startColumn":12,"endColumn":19}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$errorGeneration does not have a declared type - consider null|string"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":47,"endLine":47,"startColumn":12,"endColumn":28}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$hints does not have a declared type - consider list|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":49,"endLine":49,"startColumn":12,"endColumn":18}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\ConfiguratorForm::$rules does not have a declared type - consider array{matrixLaravelVersions: string, mysqlDatabaseName: string, mysqlDatabasePort: string, mysqlVersion: string, name: string, onPullrequestBranches: string, onPushBranches: string, postgresqlDatabaseName: string, postgresqlDatabasePort: string, postgresqlVersion: string}"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":51,"endLine":51,"startColumn":15,"endColumn":21}}}]},{"ruleId":"154","message":{"text":"Parameter $j has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":77,"endLine":77,"startColumn":35,"endColumn":37}}}]},{"ruleId":"83","message":{"text":"Cannot call method only on possibly null value"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":86,"endLine":86,"startColumn":32,"endColumn":36}}}]},{"ruleId":"113","message":{"text":"Cannot call method on possible array variable "},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":86,"endLine":86,"startColumn":32,"endColumn":36}}}]},{"ruleId":"154","message":{"text":"Parameter $propertyName has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":115,"endLine":115,"startColumn":29,"endColumn":42}}}]},{"ruleId":"154","message":{"text":"Parameter $x has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/ConfiguratorForm.php"},"region":{"startLine":121,"endLine":121,"startColumn":30,"endColumn":32}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Daily::$daily does not have a declared type - consider mixed|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Daily.php"},"region":{"startLine":12,"endLine":12,"startColumn":12,"endColumn":18}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Latest::$latest does not have a declared type - consider Illuminate\\Database\\Eloquent\\Collection>>&Illuminate\\Database\\Eloquent\\Builder>>|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Latest.php"},"region":{"startLine":10,"endLine":10,"startColumn":12,"endColumn":19}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Metrics::$count does not have a declared type - consider mixed|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Metrics.php"},"region":{"startLine":11,"endLine":11,"startColumn":12,"endColumn":18}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Metrics::$total does not have a declared type - consider mixed|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Metrics.php"},"region":{"startLine":12,"endLine":12,"startColumn":12,"endColumn":18}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Metrics::$last4hours does not have a declared type - consider int|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Metrics.php"},"region":{"startLine":13,"endLine":13,"startColumn":12,"endColumn":23}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Metrics::$last24hours does not have a declared type - consider int|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Metrics.php"},"region":{"startLine":14,"endLine":14,"startColumn":12,"endColumn":24}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Metrics::$last3days does not have a declared type - consider int|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Metrics.php"},"region":{"startLine":15,"endLine":15,"startColumn":12,"endColumn":22}}}]},{"ruleId":"45","message":{"text":"Property App\\Http\\Livewire\\Dashboard\\Top::$top does not have a declared type - consider mixed|null"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Livewire\/Dashboard\/Top.php"},"region":{"startLine":10,"endLine":10,"startColumn":12,"endColumn":16}}}]},{"ruleId":"267","message":{"text":"Property App\\Http\\Middleware\\TrustProxies::$headers has type int, not invariant with Fideloper\\Proxy\\TrustProxies::$headers of type int|null|string"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Middleware\/TrustProxies.php"},"region":{"startLine":22,"endLine":22,"startColumn":15,"endColumn":23}}}]},{"ruleId":"170","message":{"text":"Constant Illuminate\\Http\\Request::HEADER_X_FORWARDED_ALL is deprecated"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Middleware\/TrustProxies.php"},"region":{"startLine":22,"endLine":22,"startColumn":26,"endColumn":57}}}]},{"ruleId":"74","message":{"text":"Property App\\Http\\Resources\\ConfigurationCollection::$collects is not defined in constructor of App\\Http\\Resources\\ConfigurationCollection or in any methods called in the constructor"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Resources\/ConfigurationCollection.php"},"region":{"startLine":7,"endLine":7,"startColumn":7,"endColumn":30}}}]},{"ruleId":"74","message":{"text":"Property App\\Http\\Resources\\ConfigurationCollection::$collection is not defined in constructor of App\\Http\\Resources\\ConfigurationCollection or in any methods called in the constructor"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Http\/Resources\/ConfigurationCollection.php"},"region":{"startLine":7,"endLine":7,"startColumn":7,"endColumn":30}}}]},{"ruleId":"70","message":{"text":"The declared return type 'App\\Models\\Configuration&static|null' for App\\Models\\Configuration::getByCode is more specific than the inferred return type 'App\\Models\\Configuration&static|Illuminate\\Database\\Eloquent\\Model|null'"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/Configuration.php"},"region":{"startLine":17,"endLine":17,"startColumn":16,"endColumn":41}}}]},{"ruleId":"129","message":{"text":"The type 'App\\Models\\Configuration&static|Illuminate\\Database\\Eloquent\\Model|null' is more general than the declared return type 'App\\Models\\Configuration&static|null' for App\\Models\\Configuration::getByCode"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/Configuration.php"},"region":{"startLine":21,"endLine":21,"startColumn":16,"endColumn":47}}}]},{"ruleId":"50","message":{"text":"Method App\\Models\\Configuration::isMysqlService does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/Configuration.php"},"region":{"startLine":24,"endLine":24,"startColumn":21,"endColumn":35}}}]},{"ruleId":"154","message":{"text":"Parameter $json has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/Configuration.php"},"region":{"startLine":63,"endLine":63,"startColumn":60,"endColumn":65}}}]},{"ruleId":"154","message":{"text":"Parameter $metadata has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/Configuration.php"},"region":{"startLine":63,"endLine":63,"startColumn":67,"endColumn":76}}}]},{"ruleId":"267","message":{"text":"Property App\\Models\\User::$fillable has type array, not invariant with Illuminate\\Database\\Eloquent\\Concerns\\GuardsAttributes::$fillable of type array"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Models\/User.php"},"region":{"startLine":20,"endLine":20,"startColumn":15,"endColumn":24}}}]},{"ruleId":"50","message":{"text":"Method App\\Objects\\GuesserFiles::pathFiles does not have a return type, expecting void"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/GuesserFiles.php"},"region":{"startLine":31,"endLine":31,"startColumn":21,"endColumn":30}}}]},{"ruleId":"154","message":{"text":"Parameter $methodPath has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/GuesserFiles.php"},"region":{"startLine":133,"endLine":133,"startColumn":38,"endColumn":49}}}]},{"ruleId":"154","message":{"text":"Parameter $isDirCheck has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/GuesserFiles.php"},"region":{"startLine":133,"endLine":133,"startColumn":51,"endColumn":62}}}]},{"ruleId":"154","message":{"text":"Parameter $testbenchVersion has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/GuesserFiles.php"},"region":{"startLine":146,"endLine":146,"startColumn":62,"endColumn":79}}}]},{"ruleId":"154","message":{"text":"Parameter $array has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":46,"endLine":46,"startColumn":42,"endColumn":48}}}]},{"ruleId":"153","message":{"text":"Parameter $str has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":51,"endLine":51,"startColumn":27,"endColumn":31}}}]},{"ruleId":"50","message":{"text":"Method App\\Objects\\WorkflowGenerator::split does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":59,"endLine":59,"startColumn":28,"endColumn":33}}}]},{"ruleId":"154","message":{"text":"Parameter $somethingToSplit has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":59,"endLine":59,"startColumn":34,"endColumn":51}}}]},{"ruleId":"154","message":{"text":"Parameter $splitChars has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":59,"endLine":59,"startColumn":53,"endColumn":64}}}]},{"ruleId":"50","message":{"text":"Method App\\Objects\\WorkflowGenerator::setData does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":68,"endLine":68,"startColumn":21,"endColumn":28}}}]},{"ruleId":"154","message":{"text":"Parameter $data has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":81,"endLine":81,"startColumn":30,"endColumn":35}}}]},{"ruleId":"154","message":{"text":"Parameter $phpversion has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Objects\/WorkflowGenerator.php"},"region":{"startLine":92,"endLine":92,"startColumn":38,"endColumn":49}}}]},{"ruleId":"78","message":{"text":"Argument 1 of Illuminate\\Cache\\RateLimiting\\Limit::by cannot be null, possibly null value provided"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Providers\/RouteServiceProvider.php"},"region":{"startLine":64,"endLine":64,"startColumn":49,"endColumn":97}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$name does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":9,"endLine":9,"startColumn":12,"endColumn":17}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$onPush does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":10,"endLine":10,"startColumn":12,"endColumn":19}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$onPushBranches does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":11,"endLine":11,"startColumn":12,"endColumn":27}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$onPullrequest does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":12,"endLine":12,"startColumn":12,"endColumn":26}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$onPullrequestBranches does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":13,"endLine":13,"startColumn":12,"endColumn":34}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$manualTrigger does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":14,"endLine":14,"startColumn":12,"endColumn":26}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$databaseType does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":15,"endLine":15,"startColumn":12,"endColumn":25}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlDatabase does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":16,"endLine":16,"startColumn":12,"endColumn":26}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlPasswordType does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":17,"endLine":17,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlPassword does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":18,"endLine":18,"startColumn":12,"endColumn":26}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlVersion does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":19,"endLine":19,"startColumn":12,"endColumn":25}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlDatabaseName does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":20,"endLine":20,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$mysqlDatabasePort does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":21,"endLine":21,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlDatabase does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":22,"endLine":22,"startColumn":12,"endColumn":31}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlPasswordType does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":23,"endLine":23,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlPassword does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":24,"endLine":24,"startColumn":12,"endColumn":31}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlVersion does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":25,"endLine":25,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlDatabaseName does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":26,"endLine":26,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$postgresqlDatabasePort does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":27,"endLine":27,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepPhpVersions does not have a declared type - consider list"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":28,"endLine":28,"startColumn":12,"endColumn":28}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepNodejs does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":29,"endLine":29,"startColumn":12,"endColumn":23}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepNodejsVersion does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":30,"endLine":30,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepCachePackages does not have a declared type - consider bool"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":31,"endLine":31,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepCacheVendors does not have a declared type - consider bool"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":32,"endLine":32,"startColumn":12,"endColumn":29}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\BaseWorkflow::$stepCacheNpmModules does not have a declared type - consider bool"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":33,"endLine":33,"startColumn":12,"endColumn":32}}}]},{"ruleId":"154","message":{"text":"Parameter $j has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":64,"endLine":64,"startColumn":46,"endColumn":48}}}]},{"ruleId":"154","message":{"text":"Parameter $data has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/BaseWorkflow.php"},"region":{"startLine":119,"endLine":119,"startColumn":41,"endColumn":46}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepExecutePhpunit does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":7,"endLine":7,"startColumn":12,"endColumn":31}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepExecutePestphp does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":8,"endLine":8,"startColumn":12,"endColumn":31}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepExecuteCodeSniffer does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":9,"endLine":9,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepDirCodeSniffer does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":10,"endLine":10,"startColumn":12,"endColumn":31}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepInstallCodeSniffer does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":11,"endLine":11,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepExecuteStaticAnalysis does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":12,"endLine":12,"startColumn":12,"endColumn":38}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepDirStaticAnalysis does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":13,"endLine":13,"startColumn":12,"endColumn":34}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepToolStaticAnalysis does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":14,"endLine":14,"startColumn":12,"endColumn":35}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepInstallStaticAnalysis does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":15,"endLine":15,"startColumn":12,"endColumn":38}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepDusk does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":16,"endLine":16,"startColumn":12,"endColumn":21}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\CodeQuality::$stepPhpstanUseNeon does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":17,"endLine":17,"startColumn":12,"endColumn":31}}}]},{"ruleId":"154","message":{"text":"Parameter $j has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":34,"endLine":34,"startColumn":45,"endColumn":47}}}]},{"ruleId":"50","message":{"text":"Method App\\Traits\\Form\\CodeQuality::setDataCodeQuality does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":55,"endLine":55,"startColumn":21,"endColumn":39}}}]},{"ruleId":"154","message":{"text":"Parameter $data has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/CodeQuality.php"},"region":{"startLine":55,"endLine":55,"startColumn":40,"endColumn":45}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\Deploy::$stepDeployType does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":7,"endLine":7,"startColumn":12,"endColumn":27}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\Deploy::$stepDeployWebhookType does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":8,"endLine":8,"startColumn":12,"endColumn":34}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\Deploy::$stepDeployWebhookUrl does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":9,"endLine":9,"startColumn":12,"endColumn":33}}}]},{"ruleId":"154","message":{"text":"Parameter $j has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":20,"endLine":20,"startColumn":40,"endColumn":42}}}]},{"ruleId":"50","message":{"text":"Method App\\Traits\\Form\\Deploy::setDeployData does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":33,"endLine":33,"startColumn":21,"endColumn":34}}}]},{"ruleId":"154","message":{"text":"Parameter $data has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/Deploy.php"},"region":{"startLine":33,"endLine":33,"startColumn":35,"endColumn":40}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$stepFixStoragePermissions does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":9,"endLine":9,"startColumn":12,"endColumn":38}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$stepRunMigrations does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":10,"endLine":10,"startColumn":12,"endColumn":30}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$stepGenerateKey does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":11,"endLine":11,"startColumn":12,"endColumn":28}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$stepEnvTemplateFile does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":12,"endLine":12,"startColumn":12,"endColumn":32}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$stepCopyEnvTemplateFile does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":13,"endLine":13,"startColumn":12,"endColumn":36}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$matrixLaravel does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":14,"endLine":14,"startColumn":12,"endColumn":26}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$matrixLaravelVersions does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":15,"endLine":15,"startColumn":12,"endColumn":34}}}]},{"ruleId":"45","message":{"text":"Property App\\Traits\\Form\\LaravelStuff::$matrixTestbenchDependencies does not have a declared type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":16,"endLine":16,"startColumn":12,"endColumn":40}}}]},{"ruleId":"154","message":{"text":"Parameter $j has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":35,"endLine":35,"startColumn":46,"endColumn":48}}}]},{"ruleId":"50","message":{"text":"Method App\\Traits\\Form\\LaravelStuff::setDataLaravelStuff does not have a return type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":49,"endLine":49,"startColumn":21,"endColumn":40}}}]},{"ruleId":"154","message":{"text":"Parameter $data has no provided type"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/Traits\/Form\/LaravelStuff.php"},"region":{"startLine":49,"endLine":49,"startColumn":41,"endColumn":46}}}]},{"ruleId":"50","message":{"text":"Method App\\View\\Composers\\AppDataComposer::compose does not have a return type, expecting void"},"level":"note","locations":[{"physicalLocation":{"artifactLocation":{"uri":"app\/View\/Composers\/AppDataComposer.php"},"region":{"startLine":9,"endLine":9,"startColumn":21,"endColumn":28}}}]}]}]} From 10a45ff69f34db5ea6337b7ee5e3a834baa740a2 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Thu, 14 Oct 2021 21:22:00 +0200 Subject: [PATCH 02/38] upgrade to alpinejs 3 --- composer.lock | 2 +- package-lock.json | 206 +++++++++++------- package.json | 2 +- resources/js/app.js | 9 +- .../livewire/configurator-form.blade.php | 4 +- 5 files changed, 134 insertions(+), 89 deletions(-) diff --git a/composer.lock b/composer.lock index 3fa9eca..f4a9509 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "96ca2d802b3d276899f27ebaf27e1ac9", + "content-hash": "19d7704b9d7270d2f03a0e8413c1fb10", "packages": [ { "name": "asm89/stack-cors", diff --git a/package-lock.json b/package-lock.json index a1da32e..99d5950 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,7 +7,7 @@ "dependencies": { "@tailwindcss/forms": "^0.2.1", "@tailwindcss/typography": "^0.4.0", - "alpinejs": "^2.8.2", + "alpinejs": "^3", "autoprefixer": "^10.2.5", "clipboard": "^2.0.8", "highlight.js": "^10.7.2", @@ -1902,9 +1902,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "16.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz", - "integrity": "sha512-EITwVTX5B4nDjXjGeQAfXOrm+Jn+qNjDmyDRtWoD+wZsl/RDPRTFRKivs4Mt74iOFlLOrE5+Kf+p5yjyhm3+cA==", + "version": "16.10.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.9.tgz", + "integrity": "sha512-H9ReOt+yqIJPCutkTYjFjlyK6WEMQYT9hLZMlWtOjFQY2ItppsWZ6RJf8Aw+jz5qTYceuHvFgPIaKOHtLAEWBw==", "dev": true }, "node_modules/@types/parse-json": { @@ -1924,6 +1924,19 @@ "integrity": "sha512-AZU7vQcy/4WFEuwnwsNsJnFwupIpbllH1++LXScN6uxT1Z4zPzdrWG97w4/I7eFKFTvfy/bHFStWjdBAg2Vjug==", "dev": true }, + "node_modules/@vue/reactivity": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", + "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "dependencies": { + "@vue/shared": "3.1.5" + } + }, + "node_modules/@vue/shared": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==" + }, "node_modules/@webassemblyjs/ast": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", @@ -2232,9 +2245,12 @@ "dev": true }, "node_modules/alpinejs": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-2.8.2.tgz", - "integrity": "sha512-5yOUtckn4CBp0qsHpo2qgjZyZit84uXvHbB7NJ27sn4FA6UlFl2i9PGUAdTXkcbFvvxDJBM+zpOD8RuNYFvQAw==" + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.4.2.tgz", + "integrity": "sha512-PCTLdySJG5ercbN/g4sO+Nyo0TjzV3IP5W9L3UiSj3756VZPUctNiikLAoKX5al2NlLE2O7jPpgtakuRpLLeIQ==", + "dependencies": { + "@vue/reactivity": "~3.1.1" + } }, "node_modules/ansi-escapes": { "version": "4.3.2", @@ -2743,15 +2759,15 @@ } }, "node_modules/browserslist": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", - "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz", + "integrity": "sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==", "dependencies": { - "caniuse-lite": "^1.0.30001264", - "electron-to-chromium": "^1.3.857", + "caniuse-lite": "^1.0.30001265", + "electron-to-chromium": "^1.3.867", "escalade": "^3.1.1", - "node-releases": "^1.1.77", - "picocolors": "^0.2.1" + "node-releases": "^2.0.0", + "picocolors": "^1.0.0" }, "bin": { "browserslist": "cli.js" @@ -2764,6 +2780,11 @@ "url": "https://opencollective.com/browserslist" } }, + "node_modules/browserslist/node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, "node_modules/buffer": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", @@ -2868,9 +2889,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001265", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", - "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==", + "version": "1.0.30001267", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001267.tgz", + "integrity": "sha512-r1mjTzAuJ9W8cPBGbbus8E0SKcUP7gn03R14Wk8FlAlqhH9hroy9nLqmpuXlfKEw/oILW+FGz47ipXV2O7x8lg==", "funding": { "type": "opencollective", "url": "https://opencollective.com/browserslist" @@ -4065,9 +4086,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.3.866", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.866.tgz", - "integrity": "sha512-iYze6TpDXWxk+sfcpUUdTs6Pv/3kG45Pnjer2DxEeFw0N08bZeNLuz97s2lMgy8yObon48o0WHY2Bkg3xuAPOA==" + "version": "1.3.867", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.867.tgz", + "integrity": "sha512-WbTXOv7hsLhjJyl7jBfDkioaY++iVVZomZ4dU6TMe/SzucV6mUAs2VZn/AehBwuZMiNEQDaPuTGn22YK5o+aDw==" }, "node_modules/elliptic": { "version": "6.5.4", @@ -6355,9 +6376,9 @@ "dev": true }, "node_modules/nanoid": { - "version": "3.1.29", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.29.tgz", - "integrity": "sha512-dW2pUSGZ8ZnCFIlBIA31SV8huOGCHb6OwzVCc7A69rb/a+SgPBwfmLvK5TKQ3INPbRkcI8a/Owo0XbiTNH19wg==", + "version": "3.1.30", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -6468,9 +6489,9 @@ } }, "node_modules/node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz", + "integrity": "sha512-aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -7116,9 +7137,9 @@ } }, "node_modules/postcss-loader": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.1.1.tgz", - "integrity": "sha512-lBmJMvRh1D40dqpWKr9Rpygwxn8M74U9uaCSeYGNKLGInbk9mXBt1ultHf2dH9Ghk6Ue4UXlXWwGMH9QdUJ5ug==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.0.tgz", + "integrity": "sha512-H9hv447QjQJVDbHj3OUdciyAXY3v5+UDduzEytAlZCVHCpNAAg/mCSwhYYqZr9BiGYhmYspU8QXxZwiHTLn3yA==", "dev": true, "dependencies": { "cosmiconfig": "^7.0.0", @@ -8263,9 +8284,9 @@ "dev": true }, "node_modules/sass": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", - "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", + "version": "1.43.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.2.tgz", + "integrity": "sha512-DncYhjl3wBaPMMJR0kIUaH3sF536rVrOcqqVGmTZHQRRzj7LQlyGV7Mb8aCKFyILMr5VsPHwRYtyKpnKYlmQSQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0" @@ -8925,9 +8946,9 @@ } }, "node_modules/tailwindcss": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-2.2.16.tgz", - "integrity": "sha512-EireCtpQyyJ4Xz8NYzHafBoy4baCOO96flM0+HgtsFcIQ9KFy/YBK3GEtlnD+rXen0e4xm8t3WiUcKBJmN6yjg==", + "version": "2.2.17", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-2.2.17.tgz", + "integrity": "sha512-WgRpn+Pxn7eWqlruxnxEbL9ByVRWi3iC10z4b6dW0zSdnkPVC4hPMSWLQkkW8GCyBIv/vbJ0bxIi9dVrl4CfoA==", "dependencies": { "arg": "^5.0.1", "bytes": "^3.0.0", @@ -9434,9 +9455,9 @@ } }, "node_modules/webpack": { - "version": "5.58.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.58.1.tgz", - "integrity": "sha512-4Z/dmbTU+VmkCb2XNgW7wkE5TfEcSooclprn/UEuVeAkwHhn07OcgUsyaKHGtCY/VobjnsYBlyhKeMLiSoOqPg==", + "version": "5.58.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.58.2.tgz", + "integrity": "sha512-3S6e9Vo1W2ijk4F4PPWRIu6D/uGgqaPmqw+av3W3jLDujuNkdxX5h5c+RQ6GkjVR+WwIPOfgY8av+j5j4tMqJw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.0", @@ -9677,9 +9698,9 @@ } }, "node_modules/webpack-notifier": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.14.0.tgz", - "integrity": "sha512-hZLbjTheCt6/O6K0dvacqBlVEq/5TTna7P7eez0pzSQq5ksWDyOzlLZE4f3PStkKk2FmU5IErOItyncDfKg/ZA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.14.1.tgz", + "integrity": "sha512-OVOoiOyKHS3z9pN1nLdPY2Pf/R3wiBsN0KiPc3K6ApwMBfHbyUomQc2Mr0naeKxfqXyCBPHfQuqpL9yoL0rgkA==", "dev": true, "dependencies": { "node-notifier": "^9.0.0", @@ -11313,9 +11334,9 @@ "dev": true }, "@types/node": { - "version": "16.10.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.4.tgz", - "integrity": "sha512-EITwVTX5B4nDjXjGeQAfXOrm+Jn+qNjDmyDRtWoD+wZsl/RDPRTFRKivs4Mt74iOFlLOrE5+Kf+p5yjyhm3+cA==", + "version": "16.10.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-16.10.9.tgz", + "integrity": "sha512-H9ReOt+yqIJPCutkTYjFjlyK6WEMQYT9hLZMlWtOjFQY2ItppsWZ6RJf8Aw+jz5qTYceuHvFgPIaKOHtLAEWBw==", "dev": true }, "@types/parse-json": { @@ -11335,6 +11356,19 @@ "integrity": "sha512-AZU7vQcy/4WFEuwnwsNsJnFwupIpbllH1++LXScN6uxT1Z4zPzdrWG97w4/I7eFKFTvfy/bHFStWjdBAg2Vjug==", "dev": true }, + "@vue/reactivity": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", + "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", + "requires": { + "@vue/shared": "3.1.5" + } + }, + "@vue/shared": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", + "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==" + }, "@webassemblyjs/ast": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", @@ -11605,9 +11639,12 @@ "dev": true }, "alpinejs": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-2.8.2.tgz", - "integrity": "sha512-5yOUtckn4CBp0qsHpo2qgjZyZit84uXvHbB7NJ27sn4FA6UlFl2i9PGUAdTXkcbFvvxDJBM+zpOD8RuNYFvQAw==" + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.4.2.tgz", + "integrity": "sha512-PCTLdySJG5ercbN/g4sO+Nyo0TjzV3IP5W9L3UiSj3756VZPUctNiikLAoKX5al2NlLE2O7jPpgtakuRpLLeIQ==", + "requires": { + "@vue/reactivity": "~3.1.1" + } }, "ansi-escapes": { "version": "4.3.2", @@ -12018,15 +12055,22 @@ } }, "browserslist": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.3.tgz", - "integrity": "sha512-59IqHJV5VGdcJZ+GZ2hU5n4Kv3YiASzW6Xk5g9tf5a/MAzGeFwgGWU39fVzNIOVcgB3+Gp+kiQu0HEfTVU/3VQ==", + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.17.4.tgz", + "integrity": "sha512-Zg7RpbZpIJRW3am9Lyckue7PLytvVxxhJj1CaJVlCWENsGEAOlnlt8X0ZxGRPp7Bt9o8tIRM5SEXy4BCPMJjLQ==", "requires": { - "caniuse-lite": "^1.0.30001264", - "electron-to-chromium": "^1.3.857", + "caniuse-lite": "^1.0.30001265", + "electron-to-chromium": "^1.3.867", "escalade": "^3.1.1", - "node-releases": "^1.1.77", - "picocolors": "^0.2.1" + "node-releases": "^2.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + } } }, "buffer": { @@ -12118,9 +12162,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001265", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001265.tgz", - "integrity": "sha512-YzBnspggWV5hep1m9Z6sZVLOt7vrju8xWooFAgN6BA5qvy98qPAPb7vNUzypFaoh2pb3vlfzbDO8tB57UPGbtw==" + "version": "1.0.30001267", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001267.tgz", + "integrity": "sha512-r1mjTzAuJ9W8cPBGbbus8E0SKcUP7gn03R14Wk8FlAlqhH9hroy9nLqmpuXlfKEw/oILW+FGz47ipXV2O7x8lg==" }, "chalk": { "version": "4.1.2", @@ -13072,9 +13116,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.866", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.866.tgz", - "integrity": "sha512-iYze6TpDXWxk+sfcpUUdTs6Pv/3kG45Pnjer2DxEeFw0N08bZeNLuz97s2lMgy8yObon48o0WHY2Bkg3xuAPOA==" + "version": "1.3.867", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.867.tgz", + "integrity": "sha512-WbTXOv7hsLhjJyl7jBfDkioaY++iVVZomZ4dU6TMe/SzucV6mUAs2VZn/AehBwuZMiNEQDaPuTGn22YK5o+aDw==" }, "elliptic": { "version": "6.5.4", @@ -14832,9 +14876,9 @@ "dev": true }, "nanoid": { - "version": "3.1.29", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.29.tgz", - "integrity": "sha512-dW2pUSGZ8ZnCFIlBIA31SV8huOGCHb6OwzVCc7A69rb/a+SgPBwfmLvK5TKQ3INPbRkcI8a/Owo0XbiTNH19wg==" + "version": "3.1.30", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.30.tgz", + "integrity": "sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ==" }, "negotiator": { "version": "0.6.2", @@ -14932,9 +14976,9 @@ } }, "node-releases": { - "version": "1.1.77", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", - "integrity": "sha512-rB1DUFUNAN4Gn9keO2K1efO35IDK7yKHCdCaIMvFO7yUYmmZYeDjnGKle26G4rwj+LKRQpjyUUvMkPglwGCYNQ==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.0.tgz", + "integrity": "sha512-aA87l0flFYMzCHpTM3DERFSYxc6lv/BltdbRTOMZuxZ0cwZCD3mejE5n9vLhSJCN++/eOqr77G1IO5uXxlQYWA==" }, "normalize-path": { "version": "3.0.0", @@ -15383,9 +15427,9 @@ } }, "postcss-loader": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.1.1.tgz", - "integrity": "sha512-lBmJMvRh1D40dqpWKr9Rpygwxn8M74U9uaCSeYGNKLGInbk9mXBt1ultHf2dH9Ghk6Ue4UXlXWwGMH9QdUJ5ug==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-6.2.0.tgz", + "integrity": "sha512-H9hv447QjQJVDbHj3OUdciyAXY3v5+UDduzEytAlZCVHCpNAAg/mCSwhYYqZr9BiGYhmYspU8QXxZwiHTLn3yA==", "dev": true, "requires": { "cosmiconfig": "^7.0.0", @@ -16218,9 +16262,9 @@ "dev": true }, "sass": { - "version": "1.42.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.42.1.tgz", - "integrity": "sha512-/zvGoN8B7dspKc5mC6HlaygyCBRvnyzzgD5khiaCfglWztY99cYoiTUksVx11NlnemrcfH5CEaCpsUKoW0cQqg==", + "version": "1.43.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.43.2.tgz", + "integrity": "sha512-DncYhjl3wBaPMMJR0kIUaH3sF536rVrOcqqVGmTZHQRRzj7LQlyGV7Mb8aCKFyILMr5VsPHwRYtyKpnKYlmQSQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" @@ -16749,9 +16793,9 @@ } }, "tailwindcss": { - "version": "2.2.16", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-2.2.16.tgz", - "integrity": "sha512-EireCtpQyyJ4Xz8NYzHafBoy4baCOO96flM0+HgtsFcIQ9KFy/YBK3GEtlnD+rXen0e4xm8t3WiUcKBJmN6yjg==", + "version": "2.2.17", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-2.2.17.tgz", + "integrity": "sha512-WgRpn+Pxn7eWqlruxnxEbL9ByVRWi3iC10z4b6dW0zSdnkPVC4hPMSWLQkkW8GCyBIv/vbJ0bxIi9dVrl4CfoA==", "requires": { "arg": "^5.0.1", "bytes": "^3.0.0", @@ -17144,9 +17188,9 @@ } }, "webpack": { - "version": "5.58.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.58.1.tgz", - "integrity": "sha512-4Z/dmbTU+VmkCb2XNgW7wkE5TfEcSooclprn/UEuVeAkwHhn07OcgUsyaKHGtCY/VobjnsYBlyhKeMLiSoOqPg==", + "version": "5.58.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.58.2.tgz", + "integrity": "sha512-3S6e9Vo1W2ijk4F4PPWRIu6D/uGgqaPmqw+av3W3jLDujuNkdxX5h5c+RQ6GkjVR+WwIPOfgY8av+j5j4tMqJw==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", @@ -17332,9 +17376,9 @@ } }, "webpack-notifier": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.14.0.tgz", - "integrity": "sha512-hZLbjTheCt6/O6K0dvacqBlVEq/5TTna7P7eez0pzSQq5ksWDyOzlLZE4f3PStkKk2FmU5IErOItyncDfKg/ZA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/webpack-notifier/-/webpack-notifier-1.14.1.tgz", + "integrity": "sha512-OVOoiOyKHS3z9pN1nLdPY2Pf/R3wiBsN0KiPc3K6ApwMBfHbyUomQc2Mr0naeKxfqXyCBPHfQuqpL9yoL0rgkA==", "dev": true, "requires": { "node-notifier": "^9.0.0", diff --git a/package.json b/package.json index ada94a4..ceebc07 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "dependencies": { "@tailwindcss/forms": "^0.2.1", "@tailwindcss/typography": "^0.4.0", - "alpinejs": "^2.8.2", + "alpinejs": "^3", "autoprefixer": "^10.2.5", "clipboard": "^2.0.8", "highlight.js": "^10.7.2", diff --git a/resources/js/app.js b/resources/js/app.js index 820c455..ab3dc02 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -1,12 +1,13 @@ require('./bootstrap'); -import 'alpinejs'; +import Alpine from 'alpinejs'; +window.Alpine = Alpine; +Alpine.start(); // Highlight code blocks and line numbers -const hljs = require('highlight.js'); +const hljs = require('highlight.js/lib/core'); +hljs.registerLanguage('yaml', require('highlight.js/lib/languages/yaml')); window.hljs = hljs; -require('highlightjs-line-numbers.js'); -hljs.initHighlightingOnLoad(); // Clipboard import ClipboardJS from 'clipboard'; diff --git a/resources/views/livewire/configurator-form.blade.php b/resources/views/livewire/configurator-form.blade.php index d125898..44f1d3d 100644 --- a/resources/views/livewire/configurator-form.blade.php +++ b/resources/views/livewire/configurator-form.blade.php @@ -415,8 +415,8 @@ class="h-full font-mono text-sm prettyprint linenums selectable {{ $errors->has( // Livewire.hook('message.received', (message, component) => {}) Livewire.hook('message.processed', (message, component) => { let yc =document.getElementById('yaml-code'); - hljs.lineNumbersBlock(yc); - hljs.highlightBlock(yc); + //hljs.lineNumbersBlock(yc); + hljs.highlightElement(yc); }) }); From fbaf80b5cca415b667f26529f29a91d6666d1c82 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Thu, 14 Oct 2021 21:27:11 +0200 Subject: [PATCH 03/38] psalm option , output sarif --- .github/workflows/psalm-sarif.yml | 43 +++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/psalm-sarif.yml diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml new file mode 100644 index 0000000..36ca200 --- /dev/null +++ b/.github/workflows/psalm-sarif.yml @@ -0,0 +1,43 @@ +# GithHub Actions Workflow generated with Ghygen +# Original configuration: http://gh-actions-yaml-generator.test?code=069e3579e76204437ee3cd99e6e8fc5c +name: Psalm - Sarif report +on: + push: + branches: + - sarif + +jobs: + laravel-tests: + runs-on: ubuntu-latest + + strategy: + matrix: + operating-system: [ubuntu-latest] + php-versions: [ '8.0','7.4' ] + dependency-stability: [ prefer-stable ] + + name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.dependency-stability }} - ${{ matrix.operating-system}} + + steps: + - uses: actions/checkout@v2 + - name: Install PHP versions + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-versions }} + - name: Install Dependencies + if: steps.vendor-cache.outputs.cache-hit != 'true' + run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist + + + - name: Show dir + run: pwd + - name: PHP Version + run: php --version + + # Code quality + + + + - name: Execute Code Static Analysis (PSALM) + run: | + vendor/bin/psalm From 59b988dbf3d273876f20e97c40b49b3b7a214bb6 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Thu, 14 Oct 2021 21:27:16 +0200 Subject: [PATCH 04/38] Update code-quality.blade.php --- .../livewire/form/code-quality.blade.php | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/resources/views/livewire/form/code-quality.blade.php b/resources/views/livewire/form/code-quality.blade.php index 13cb8fe..749b6e4 100644 --- a/resources/views/livewire/form/code-quality.blade.php +++ b/resources/views/livewire/form/code-quality.blade.php @@ -57,7 +57,7 @@ -
+
'Psalm for Laravel']" help="Select Code Analysis Tool, Larastan for Laravel project, PHPstan for generic PHP projects, or Psalm with Laravel plugin" + onChange='showPsalmOption= $event.target.value==="psalmlaravel";'> > - - - - - + +
+ + + + +
From c3a1c2974bb8563106ec6cfc47be418677484a3e Mon Sep 17 00:00:00 2001 From: Roberto B Date: Thu, 14 Oct 2021 21:37:15 +0200 Subject: [PATCH 05/38] upload sarif report --- .github/workflows/psalm-sarif.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index 36ca200..28150b7 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -40,4 +40,9 @@ jobs: - name: Execute Code Static Analysis (PSALM) run: | - vendor/bin/psalm + vendor/bin/psalm --report=result.sarif + - name: Upload SARIF file + uses: github/codeql-action/upload-sarif@v1 + with: + # Path to SARIF file relative to the root of the repository + sarif_file: results.sarif From b251bd3146559673c62a5eff18c8e9d9be8b31b9 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Thu, 14 Oct 2021 21:39:11 +0200 Subject: [PATCH 06/38] Update psalm-sarif.yml --- .github/workflows/psalm-sarif.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index 28150b7..9a17934 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -45,4 +45,4 @@ jobs: uses: github/codeql-action/upload-sarif@v1 with: # Path to SARIF file relative to the root of the repository - sarif_file: results.sarif + sarif_file: result.sarif From 09386fb64f1b026454b5cd8884fb5930212227e8 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Fri, 15 Oct 2021 07:28:54 +0200 Subject: [PATCH 07/38] Psalm and Sarif report --- .github/workflows/psalm-sarif.yml | 25 +++++++++++++++++-- app/Traits/Form/CodeQuality.php | 6 +++++ .../livewire/form/code-quality.blade.php | 9 +++++++ resources/views/yaml/code_quality.blade.php | 9 +++++++ 4 files changed, 47 insertions(+), 2 deletions(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index 9a17934..a3d2070 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -1,6 +1,6 @@ # GithHub Actions Workflow generated with Ghygen -# Original configuration: http://gh-actions-yaml-generator.test?code=069e3579e76204437ee3cd99e6e8fc5c -name: Psalm - Sarif report +# Original configuration: http://gh-actions-yaml-generator.test?code=0474d45a28912052376865b4b926c66f +name: Template - Laravel application (Mysql) on: push: branches: @@ -24,10 +24,31 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-versions }} + - name: Get Composer Cache Directory 2 + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - uses: actions/cache@v2 + id: actions-cache + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + - name: Cache PHP dependencies + uses: actions/cache@v2 + id: vendor-cache + with: + path: vendor + key: ${{ runner.OS }}-build-${{ hashFiles('**/composer.lock') }} + - name: Copy .env + run: php -r "file_exists('.env') || copy('.env.example', '.env');" - name: Install Dependencies if: steps.vendor-cache.outputs.cache-hit != 'true' run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist + - name: Generate key + run: php artisan key:generate - name: Show dir run: pwd diff --git a/app/Traits/Form/CodeQuality.php b/app/Traits/Form/CodeQuality.php index 25741d4..a522aaf 100644 --- a/app/Traits/Form/CodeQuality.php +++ b/app/Traits/Form/CodeQuality.php @@ -15,6 +15,7 @@ trait CodeQuality public $stepInstallStaticAnalysis; //true public $stepDusk; // false public $stepPhpstanUseNeon; // false + public $stepPsalmReport; // false public function loadDefaultsCodeQuality(): void { @@ -29,6 +30,7 @@ public function loadDefaultsCodeQuality(): void $this->stepInstallStaticAnalysis = true; $this->stepDusk = false; $this->stepPhpstanUseNeon = false; + $this->stepPsalmReport = false; } public function loadCodeQualityFromJson($j): void @@ -40,6 +42,7 @@ public function loadCodeQualityFromJson($j): void data_fill($j, "stepToolStaticAnalysis", 'larastan'); data_fill($j, "stepExecutePestphp", false); data_fill($j, "stepPhpstanUseNeon", false); + data_fill($j, "stepPsalmReport", false); $this->stepExecutePhpunit = $j->stepExecutePhpunit; $this->stepExecutePestphp = $j->stepExecutePestphp; $this->stepExecuteCodeSniffer = $j->stepExecuteCodeSniffer; @@ -50,6 +53,8 @@ public function loadCodeQualityFromJson($j): void $this->stepToolStaticAnalysis = $j->stepToolStaticAnalysis; $this->stepInstallStaticAnalysis = $j->stepInstallStaticAnalysis; $this->stepDusk = $j->stepDusk; + $this->stepPhpstanUseNeon = $j->stepPhpstanUseNeon; + $this->stepPsalmReport = $j->stepPsalmReport; } public function setDataCodeQuality($data) @@ -65,6 +70,7 @@ public function setDataCodeQuality($data) $data["stepInstallStaticAnalysis"] = $this->stepInstallStaticAnalysis; $data["stepDusk"] = $this->stepDusk; $data["stepPhpstanUseNeon"] = $this->stepPhpstanUseNeon; + $data["stepPsalmReport"] = $this->stepPsalmReport; return $data; } diff --git a/resources/views/livewire/form/code-quality.blade.php b/resources/views/livewire/form/code-quality.blade.php index 749b6e4..79882c8 100644 --- a/resources/views/livewire/form/code-quality.blade.php +++ b/resources/views/livewire/form/code-quality.blade.php @@ -100,6 +100,15 @@ help="Use phpstan.neon file for PHPStan configuration">
+
+ + +
+ diff --git a/resources/views/yaml/code_quality.blade.php b/resources/views/yaml/code_quality.blade.php index 16318c2..a3f6728 100644 --- a/resources/views/yaml/code_quality.blade.php +++ b/resources/views/yaml/code_quality.blade.php @@ -43,7 +43,16 @@ composer require --dev psalm/plugin-laravel ./vendor/bin/psalm-plugin enable psalm/plugin-laravel @endif +@if (! $stepPsalmReport) vendor/bin/psalm +@else + vendor/bin/psalm --report=result.sarif + - name: Upload SARIF file + uses: github/codeql-action/upload-sarif@v1 + with: + # Path to SARIF file relative to the root of the repository + sarif_file: result.sarif +@endif @else - name: Execute Code Static Analysis (PHP Stan) From 7f255a115bce3056fad4cb40e45fce19d073c7e9 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Fri, 15 Oct 2021 08:39:53 +0200 Subject: [PATCH 08/38] code scanning integration --- .github/workflows/psalm-sarif.yml | 2 +- CHANGELOG.md | 5 +++++ README.md | 3 ++- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index a3d2070..7a33280 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -1,6 +1,6 @@ # GithHub Actions Workflow generated with Ghygen # Original configuration: http://gh-actions-yaml-generator.test?code=0474d45a28912052376865b4b926c66f -name: Template - Laravel application (Mysql) +name: Code scanning (Sarif) on: push: branches: diff --git a/CHANGELOG.md b/CHANGELOG.md index 1fb2b23..a9f1771 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,9 @@ # Changelog + +## 0.4.3 - WIP +- Psalm, create Sarif report for GitHub code scanning integration +- update to Alpinejs 3 + ## 0.4.2 - 2021-10-12 Hacktoberfest, goes on... - Updated Cover image diff --git a/README.md b/README.md index 0f4b3df..0d27ca1 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,8 @@ __Ghygen__ allows you creating your __Yaml__ file for __GitHub Actions__, for La - run migrations; - __execute tests__ via phpunit; - __execute tests__ via PestPHP; -- static __code analysis__ with phpstan or psalm; +- static __code analysis__ with phpstan or psalm; +- create Sarif report (with Psalm) for __GitHub integration with code scanning__; - code sniffer (via phpcs for __PSR12__ compatibility); - __validate Yaml__ file; - execute __Browser Test__ via Laravel Dusk. From 0910e065f8af3f8883f79fccbaf493c262d69ff9 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Fri, 15 Oct 2021 08:47:54 +0200 Subject: [PATCH 09/38] Update psalm-sarif.yml --- .github/workflows/psalm-sarif.yml | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index 7a33280..c177784 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -1,10 +1,12 @@ # GithHub Actions Workflow generated with Ghygen -# Original configuration: http://gh-actions-yaml-generator.test?code=0474d45a28912052376865b4b926c66f -name: Code scanning (Sarif) +# Original configuration: https://ghygen.hi-folks.dev?code=134510bb699cebfb255e85ec60955d59 +name: Code Scanning - GitHub integration on: push: branches: - - sarif + - main + - develop + - features/** jobs: laravel-tests: @@ -24,23 +26,6 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-versions }} - - name: Get Composer Cache Directory 2 - id: composer-cache - run: | - echo "::set-output name=dir::$(composer config cache-files-dir)" - - uses: actions/cache@v2 - id: actions-cache - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: | - ${{ runner.os }}-composer- - - name: Cache PHP dependencies - uses: actions/cache@v2 - id: vendor-cache - with: - path: vendor - key: ${{ runner.OS }}-build-${{ hashFiles('**/composer.lock') }} - name: Copy .env run: php -r "file_exists('.env') || copy('.env.example', '.env');" - name: Install Dependencies @@ -61,6 +46,10 @@ jobs: - name: Execute Code Static Analysis (PSALM) run: | + composer require --dev vimeo/psalm + ./vendor/bin/psalm --init + composer require --dev psalm/plugin-laravel + ./vendor/bin/psalm-plugin enable psalm/plugin-laravel vendor/bin/psalm --report=result.sarif - name: Upload SARIF file uses: github/codeql-action/upload-sarif@v1 From 8c5372b7918e6cf6bd1f28136e2a52c1bd35c9fa Mon Sep 17 00:00:00 2001 From: Roberto B Date: Fri, 15 Oct 2021 08:50:19 +0200 Subject: [PATCH 10/38] Update psalm-sarif.yml --- .github/workflows/psalm-sarif.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index c177784..8c5a09d 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -46,10 +46,6 @@ jobs: - name: Execute Code Static Analysis (PSALM) run: | - composer require --dev vimeo/psalm - ./vendor/bin/psalm --init - composer require --dev psalm/plugin-laravel - ./vendor/bin/psalm-plugin enable psalm/plugin-laravel vendor/bin/psalm --report=result.sarif - name: Upload SARIF file uses: github/codeql-action/upload-sarif@v1 From e39eebdf36c2434fc6c7bfde28796a5320ac240a Mon Sep 17 00:00:00 2001 From: erwin maruli Date: Mon, 18 Oct 2021 02:00:25 +0800 Subject: [PATCH 11/38] allow users to decide the level stability of dependency --- app/Console/Commands/GenerateWorkflow.php | 10 ++++++ app/Traits/Form/LaravelStuff.php | 4 +++ resources/templates/json/laravelapp.json | 3 +- resources/templates/json/laravelpackage.json | 4 ++- .../templates/json/laravelpostgresql.json | 3 +- resources/templates/json/phppackage.json | 3 +- resources/views/action_yaml.blade.php | 2 +- .../livewire/form/laravel-stuff.blade.php | 15 +++++++++ tests/Feature/YamlFormTest.php | 31 +++++++++++++++++++ .../mock-asserts/strategy-php-8-74.yaml | 2 +- 10 files changed, 71 insertions(+), 6 deletions(-) diff --git a/app/Console/Commands/GenerateWorkflow.php b/app/Console/Commands/GenerateWorkflow.php index dfb0347..91524b2 100644 --- a/app/Console/Commands/GenerateWorkflow.php +++ b/app/Console/Commands/GenerateWorkflow.php @@ -19,6 +19,8 @@ class GenerateWorkflow extends Command {--projectdir= : the directory of the project with composer.json} {--cache : enable caching packages in the workflow} {--envfile=' . GuesserFiles::ENV_DEFAULT_TEMPLATE_FILE . ' : the .env file to use in the workflow} + {--prefer-stable : Prefer stable versions of dependencies} + {--prefer-lowest : Prefer lowest versions of dependencies} '; @@ -79,6 +81,14 @@ public function handle() $laravelVersions = GuesserFiles::detectLaravelVersionFromTestbench($testbenchVersions); $generator->matrixLaravel = true; $generator->matrixLaravelVersions = $laravelVersions; + + if ($this->option("prefer-stable") && $this->option("prefer-lowest")) { + $generator->dependencyStability = [ 'prefer-stable', 'prefer-lowest' ]; + } elseif ($this->option("prefer-lowest")) { + $generator->dependencyStability = [ 'prefer-lowest' ]; + } else { + $generator->dependencyStability = [ 'prefer-stable' ]; + } } // squizlabs/php_codesniffer $phpCodesniffer = Arr::get($devPackages, "squizlabs/php_codesniffer", ""); diff --git a/app/Traits/Form/LaravelStuff.php b/app/Traits/Form/LaravelStuff.php index 6613edd..bc8615d 100644 --- a/app/Traits/Form/LaravelStuff.php +++ b/app/Traits/Form/LaravelStuff.php @@ -14,6 +14,7 @@ trait LaravelStuff public $matrixLaravel; // false public $matrixLaravelVersions; // [] public $matrixTestbenchDependencies; + public $dependencyStability; // [] public function loadDefaultsLaravelStuff(): void { @@ -30,6 +31,7 @@ public function loadDefaultsLaravelStuff(): void "6.*" => "4.*" ]; // mapping laravel versions with testbench version as dependency // the key is the laravel ver, the value is the orchestratestbench version + $this->dependencyStability = [ 'prefer-stable' ]; } public function loadLaravelStuffFromJson($j): void @@ -44,6 +46,7 @@ public function loadLaravelStuffFromJson($j): void $this->matrixLaravel = $j->matrixLaravel; $this->matrixLaravelVersions = $j->matrixLaravelVersions; $this->matrixTestbenchDependencies = (array) $j->matrixTestbenchDependencies; + $this->dependencyStability = (array) $j->dependencyStability; } public function setDataLaravelStuff($data) @@ -57,6 +60,7 @@ public function setDataLaravelStuff($data) $data["matrixLaravelVersions"] = $this->matrixLaravelVersions; $data["matrixTestbenchDependencies"] = $this->matrixTestbenchDependencies; $data["matrixLaravelVersionsString"] = WorkflowGenerator::arrayToString($this->matrixLaravelVersions); + $data["dependencyStabilityString"] = WorkflowGenerator::arrayToString($this->dependencyStability); return $data; } diff --git a/resources/templates/json/laravelapp.json b/resources/templates/json/laravelapp.json index d5efc14..50edce0 100644 --- a/resources/templates/json/laravelapp.json +++ b/resources/templates/json/laravelapp.json @@ -55,5 +55,6 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - } + }, + "dependencyStability": [ "prefer-stable" ] } diff --git a/resources/templates/json/laravelpackage.json b/resources/templates/json/laravelpackage.json index 14f6456..5f41eac 100644 --- a/resources/templates/json/laravelpackage.json +++ b/resources/templates/json/laravelpackage.json @@ -56,5 +56,7 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - } + }, + "dependencyStability": [ "prefer-stable" ] + } diff --git a/resources/templates/json/laravelpostgresql.json b/resources/templates/json/laravelpostgresql.json index 4d5e2ca..4f10210 100644 --- a/resources/templates/json/laravelpostgresql.json +++ b/resources/templates/json/laravelpostgresql.json @@ -56,5 +56,6 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - } + }, + "dependencyStability": [ "prefer-stable" ] } diff --git a/resources/templates/json/phppackage.json b/resources/templates/json/phppackage.json index 96dd772..b04b19a 100644 --- a/resources/templates/json/phppackage.json +++ b/resources/templates/json/phppackage.json @@ -58,5 +58,6 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - } + }, + "dependencyStability": [ "prefer-stable" ] } diff --git a/resources/views/action_yaml.blade.php b/resources/views/action_yaml.blade.php index f7fa649..c941fc9 100644 --- a/resources/views/action_yaml.blade.php +++ b/resources/views/action_yaml.blade.php @@ -15,7 +15,7 @@ matrix: operating-system: [ubuntu-latest] php-versions: {!! $stepPhpVersionsString !!} - dependency-stability: [ prefer-stable ] + dependency-stability: {!! $dependencyStabilityString !!} @if ($matrixLaravel) laravel: {!! $matrixLaravelVersionsString !!} diff --git a/resources/views/livewire/form/laravel-stuff.blade.php b/resources/views/livewire/form/laravel-stuff.blade.php index cc2a193..5779fa8 100644 --- a/resources/views/livewire/form/laravel-stuff.blade.php +++ b/resources/views/livewire/form/laravel-stuff.blade.php @@ -70,5 +70,20 @@ +
+
+ + > + +
+
diff --git a/tests/Feature/YamlFormTest.php b/tests/Feature/YamlFormTest.php index c59d978..c261fe9 100644 --- a/tests/Feature/YamlFormTest.php +++ b/tests/Feature/YamlFormTest.php @@ -322,5 +322,36 @@ public function test_form_branches_wildcard() } + /** + * Form Test: dependency stability level + * + * @return void + */ + public function test_laravel_dependency_stability_level() + { + Livewire::test(ConfiguratorForm::class) + ->set("name", "Test Dependency Level") + ->set("dependencyStability", [ "prefer-stable" ]) + ->call('submitForm') + ->assertSee("dependency-stability: [ 'prefer-stable' ]"); + + Livewire::test(ConfiguratorForm::class) + ->set("name", "Test Dependency Level") + ->set("dependencyStability", [ "prefer-lowest" ]) + ->call('submitForm') + ->assertSee("dependency-stability: [ 'prefer-lowest' ]"); + + Livewire::test(ConfiguratorForm::class) + ->set("name", "Test Dependency Level") + ->set("dependencyStability", [ "prefer-lowest", "prefer-stable" ]) + ->call('submitForm') + ->assertSee("dependency-stability: [ 'prefer-lowest','prefer-stable' ]"); + + Livewire::test(ConfiguratorForm::class) + ->set("name", "Test Without Dependency Level") + ->call('submitForm') + ->assertSee("dependency-stability: [ 'prefer-stable' ]"); + } + } diff --git a/tests/Feature/mock-asserts/strategy-php-8-74.yaml b/tests/Feature/mock-asserts/strategy-php-8-74.yaml index 0163fd7..ecb34ec 100644 --- a/tests/Feature/mock-asserts/strategy-php-8-74.yaml +++ b/tests/Feature/mock-asserts/strategy-php-8-74.yaml @@ -2,7 +2,7 @@ matrix: operating-system: [ubuntu-latest] php-versions: [ '8.0','7.4' ] - dependency-stability: [ prefer-stable ] + dependency-stability: [ 'prefer-stable' ] laravel: [ '8.*' ] include: From d212950d66917fe5f308b8982bdac3e8712a2836 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Sun, 17 Oct 2021 22:22:47 +0200 Subject: [PATCH 12/38] add the default for previous saved configurations --- app/Traits/Form/LaravelStuff.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Traits/Form/LaravelStuff.php b/app/Traits/Form/LaravelStuff.php index bc8615d..4a6a79b 100644 --- a/app/Traits/Form/LaravelStuff.php +++ b/app/Traits/Form/LaravelStuff.php @@ -38,6 +38,7 @@ public function loadLaravelStuffFromJson($j): void { data_fill($j, "stepGenerateKey", true); data_fill($j, "stepCopyEnvTemplateFile", true); + data_fill($j, "dependencyStability", [ 'prefer-stable' ]); $this->stepFixStoragePermissions = $j->stepFixStoragePermissions; $this->stepRunMigrations = $j->stepRunMigrations; $this->stepGenerateKey = $j->stepGenerateKey; From 533c9c086afdd90aba41dabe265e4a43150a3020 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 07:03:28 +0200 Subject: [PATCH 13/38] update workflows --- .github/workflows/auto-generated-workflow.yml | 5 ++--- .github/workflows/psalm-sarif.yml | 1 - ...esbranch.yml => test-codequality-php8-featuresbranch.yml} | 2 +- ...lity-phpversions.yml => test-codequality-phpversions.yml} | 3 +-- 4 files changed, 4 insertions(+), 7 deletions(-) rename .github/workflows/{codequality-php8-featuresbranch.yml => test-codequality-php8-featuresbranch.yml} (99%) rename .github/workflows/{codequality-phpversions.yml => test-codequality-phpversions.yml} (99%) diff --git a/.github/workflows/auto-generated-workflow.yml b/.github/workflows/auto-generated-workflow.yml index b081139..e1481f9 100644 --- a/.github/workflows/auto-generated-workflow.yml +++ b/.github/workflows/auto-generated-workflow.yml @@ -4,7 +4,6 @@ on: branches: - main - develop - - features/** jobs: laravel-tests: @@ -32,7 +31,7 @@ jobs: matrix: operating-system: [ubuntu-latest] php-versions: [ '7.4','8.0' ] - dependency-stability: [ prefer-stable ] + dependency-stability: [ 'prefer-stable' ] name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.dependency-stability }} - ${{ matrix.operating-system}} @@ -93,7 +92,7 @@ jobs: - name: Execute Code Static Analysis (PHP Stan + Larastan) run: | - vendor/bin/phpstan analyse app -c ./vendor/nunomaduro/larastan/extension.neon --level=4 --no-progress + vendor/bin/phpstan analyse -c ./phpstan.neon --no-progress diff --git a/.github/workflows/psalm-sarif.yml b/.github/workflows/psalm-sarif.yml index 8c5a09d..eb54ed0 100644 --- a/.github/workflows/psalm-sarif.yml +++ b/.github/workflows/psalm-sarif.yml @@ -6,7 +6,6 @@ on: branches: - main - develop - - features/** jobs: laravel-tests: diff --git a/.github/workflows/codequality-php8-featuresbranch.yml b/.github/workflows/test-codequality-php8-featuresbranch.yml similarity index 99% rename from .github/workflows/codequality-php8-featuresbranch.yml rename to .github/workflows/test-codequality-php8-featuresbranch.yml index e6d6202..1fad1fa 100644 --- a/.github/workflows/codequality-php8-featuresbranch.yml +++ b/.github/workflows/test-codequality-php8-featuresbranch.yml @@ -4,7 +4,7 @@ name: Ghygen (Mysql) Quality Code PHP 8 on: push: branches: - - features/** + - tests/** jobs: laravel-tests: diff --git a/.github/workflows/codequality-phpversions.yml b/.github/workflows/test-codequality-phpversions.yml similarity index 99% rename from .github/workflows/codequality-phpversions.yml rename to .github/workflows/test-codequality-phpversions.yml index 8f4c7dc..f95c7a8 100644 --- a/.github/workflows/codequality-phpversions.yml +++ b/.github/workflows/test-codequality-phpversions.yml @@ -4,8 +4,7 @@ name: Ghygen (Mysql) Quality Code PHP 8,7 on: push: branches: - - main - - develop + - tests/** jobs: laravel-tests: From e9fcd0c97b6e7d32d3014697bdab507fc1b350c1 Mon Sep 17 00:00:00 2001 From: erwin maruli Date: Mon, 18 Oct 2021 22:18:49 +0800 Subject: [PATCH 14/38] level stability of dependency for all PHP application --- app/Traits/Form/BaseWorkflow.php | 5 +++++ app/Traits/Form/LaravelStuff.php | 5 ----- resources/views/action_yaml.blade.php | 2 +- .../views/livewire/configurator-form.blade.php | 15 +++++++++++++++ .../views/livewire/form/laravel-stuff.blade.php | 15 --------------- tests/Feature/YamlFormTest.php | 2 +- 6 files changed, 22 insertions(+), 22 deletions(-) diff --git a/app/Traits/Form/BaseWorkflow.php b/app/Traits/Form/BaseWorkflow.php index 996e5ae..303d016 100644 --- a/app/Traits/Form/BaseWorkflow.php +++ b/app/Traits/Form/BaseWorkflow.php @@ -31,6 +31,7 @@ trait BaseWorkflow public $stepCachePackages; //true public $stepCacheVendors; //true public $stepCacheNpmModules; // true + public $dependencyStability; // [] public function loadDefaultsBaseWorkflow(): void { @@ -59,11 +60,13 @@ public function loadDefaultsBaseWorkflow(): void $this->stepCachePackages = true; $this->stepCacheVendors = true; $this->stepCacheNpmModules = true; + $this->dependencyStability = [ 'prefer-stable' ]; } public function loadBaseWorkflowFromJson($j): void { data_fill($j, "stepDirCodeSniffer", "app"); + data_fill($j, "dependencyStability", [ 'prefer-stable' ]); $this->name = $j->name; $this->onPush = $j->on_push; $this->onPushBranches = $j->on_push_branches; @@ -114,6 +117,7 @@ public function loadBaseWorkflowFromJson($j): void $this->stepCachePackages = $j->stepCachePackages; $this->stepCacheVendors = $j->stepCacheVendors; $this->stepCacheNpmModules = $j->stepCacheNpmModules; + $this->dependencyStability = (array) $j->dependencyStability; } public function setDataBaseWorkflow($data): array @@ -149,6 +153,7 @@ public function setDataBaseWorkflow($data): array $data["stepPhpVersionsString"] = WorkflowGenerator::arrayToString($this->stepPhpVersions); $data["on_pullrequest_branches"] = WorkflowGenerator::split($this->onPullrequestBranches); $data["on_push_branches"] = WorkflowGenerator::split($this->onPushBranches); + $data["dependencyStabilityString"] = WorkflowGenerator::arrayToString($this->dependencyStability); return $data; } diff --git a/app/Traits/Form/LaravelStuff.php b/app/Traits/Form/LaravelStuff.php index 4a6a79b..6613edd 100644 --- a/app/Traits/Form/LaravelStuff.php +++ b/app/Traits/Form/LaravelStuff.php @@ -14,7 +14,6 @@ trait LaravelStuff public $matrixLaravel; // false public $matrixLaravelVersions; // [] public $matrixTestbenchDependencies; - public $dependencyStability; // [] public function loadDefaultsLaravelStuff(): void { @@ -31,14 +30,12 @@ public function loadDefaultsLaravelStuff(): void "6.*" => "4.*" ]; // mapping laravel versions with testbench version as dependency // the key is the laravel ver, the value is the orchestratestbench version - $this->dependencyStability = [ 'prefer-stable' ]; } public function loadLaravelStuffFromJson($j): void { data_fill($j, "stepGenerateKey", true); data_fill($j, "stepCopyEnvTemplateFile", true); - data_fill($j, "dependencyStability", [ 'prefer-stable' ]); $this->stepFixStoragePermissions = $j->stepFixStoragePermissions; $this->stepRunMigrations = $j->stepRunMigrations; $this->stepGenerateKey = $j->stepGenerateKey; @@ -47,7 +44,6 @@ public function loadLaravelStuffFromJson($j): void $this->matrixLaravel = $j->matrixLaravel; $this->matrixLaravelVersions = $j->matrixLaravelVersions; $this->matrixTestbenchDependencies = (array) $j->matrixTestbenchDependencies; - $this->dependencyStability = (array) $j->dependencyStability; } public function setDataLaravelStuff($data) @@ -61,7 +57,6 @@ public function setDataLaravelStuff($data) $data["matrixLaravelVersions"] = $this->matrixLaravelVersions; $data["matrixTestbenchDependencies"] = $this->matrixTestbenchDependencies; $data["matrixLaravelVersionsString"] = WorkflowGenerator::arrayToString($this->matrixLaravelVersions); - $data["dependencyStabilityString"] = WorkflowGenerator::arrayToString($this->dependencyStability); return $data; } diff --git a/resources/views/action_yaml.blade.php b/resources/views/action_yaml.blade.php index c941fc9..77c081c 100644 --- a/resources/views/action_yaml.blade.php +++ b/resources/views/action_yaml.blade.php @@ -89,7 +89,7 @@ @else - name: Install Dependencies if: steps.vendor-cache.outputs.cache-hit != 'true' - run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist + run: composer update --$@{{ matrix.dependency-stability }} -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist @endif @if ($stepGenerateKey) diff --git a/resources/views/livewire/configurator-form.blade.php b/resources/views/livewire/configurator-form.blade.php index 44f1d3d..26eecdb 100644 --- a/resources/views/livewire/configurator-form.blade.php +++ b/resources/views/livewire/configurator-form.blade.php @@ -309,6 +309,21 @@ +
+
+ + > + +
+
diff --git a/resources/views/livewire/form/laravel-stuff.blade.php b/resources/views/livewire/form/laravel-stuff.blade.php index 5779fa8..cc2a193 100644 --- a/resources/views/livewire/form/laravel-stuff.blade.php +++ b/resources/views/livewire/form/laravel-stuff.blade.php @@ -70,20 +70,5 @@ -
-
- - > - -
-
diff --git a/tests/Feature/YamlFormTest.php b/tests/Feature/YamlFormTest.php index c261fe9..abed1e0 100644 --- a/tests/Feature/YamlFormTest.php +++ b/tests/Feature/YamlFormTest.php @@ -327,7 +327,7 @@ public function test_form_branches_wildcard() * * @return void */ - public function test_laravel_dependency_stability_level() + public function test_dependency_stability_level() { Livewire::test(ConfiguratorForm::class) ->set("name", "Test Dependency Level") From 91553c75262e3dca17513706ab5937cacc084fef Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 22:43:37 +0200 Subject: [PATCH 15/38] update dependency stabilty --- .github/workflows/dependency-stability.yml | 86 +++++++++++++++++++ app/Traits/Form/BaseWorkflow.php | 9 +- resources/templates/json/laravelapp.json | 2 +- resources/templates/json/laravelpackage.json | 4 +- .../templates/json/laravelpostgresql.json | 3 +- resources/templates/json/phppackage.json | 3 +- resources/views/action_yaml.blade.php | 11 ++- .../livewire/configurator-form.blade.php | 7 +- 8 files changed, 111 insertions(+), 14 deletions(-) create mode 100644 .github/workflows/dependency-stability.yml diff --git a/.github/workflows/dependency-stability.yml b/.github/workflows/dependency-stability.yml new file mode 100644 index 0000000..12bf070 --- /dev/null +++ b/.github/workflows/dependency-stability.yml @@ -0,0 +1,86 @@ +# GithHub Actions Workflow generated with Ghygen +# Original configuration: http://gh-actions-yaml-generator.test?code=52b79fa863fa26529df41d44531635e9 +name: Test Laravel Github action +on: + push: + branches: + - features/add_stability_level_options + +jobs: + laravel-tests: + runs-on: ubuntu-latest + # Service container Mysql mysql + services: + # Label used to access the service container + mysql: + # Docker Hub image (also with version) + image: mysql:5.7 + env: + MYSQL_ALLOW_EMPTY_PASSWORD: yes + MYSQL_DATABASE: db_test_laravel + ## map the "external" 33306 port with the "internal" 3306 + ports: + - 33306:3306 + # Set health checks to wait until mysql database has started (it takes some seconds to start) + options: >- + --health-cmd="mysqladmin ping" + --health-interval=10s + --health-timeout=5s + --health-retries=3 + + strategy: + matrix: + operating-system: [ubuntu-latest] + php-versions: [ '8.0','7.4' ] + dependency-stability: [ 'prefer-stable' ] + + name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.dependency-stability }} - ${{ matrix.operating-system}} + + steps: + - uses: actions/checkout@v2 + - name: Install PHP versions + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-versions }} + - name: Copy .env + run: php -r "file_exists('.env') || copy('.env.example', '.env');" + - name: Install Dependencies + if: steps.vendor-cache.outputs.cache-hit != 'true' + run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist + + - name: Update Dependencies with latest stable + if: matrix.dependency-stability === 'prefer-stable' + run: composer update --prefer-stable + - name: Update Dependencies with lowest stable + if: matrix.dependency-stability === 'prefer-lowest' + run: composer update --prefer-stable --prefer-lowest + + - name: Generate key + run: php artisan key:generate + - name: Directory Permissions + run: chmod -R 777 storage bootstrap/cache + - name: Run Migrations + # Set environment + env: + DB_CONNECTION: mysql + DB_DATABASE: db_test_laravel + DB_PORT: 33306 + DB_USER: root + + run: php artisan migrate + + - name: Show dir + run: pwd + - name: PHP Version + run: php --version + + # Code quality + - name: Execute tests (Unit and Feature tests) via PHPUnit + # Set environment + env: + DB_CONNECTION: mysql + DB_DATABASE: db_test_laravel + DB_PORT: 33306 + DB_USER: root + + run: vendor/bin/phpunit --testdox diff --git a/app/Traits/Form/BaseWorkflow.php b/app/Traits/Form/BaseWorkflow.php index 303d016..199ae89 100644 --- a/app/Traits/Form/BaseWorkflow.php +++ b/app/Traits/Form/BaseWorkflow.php @@ -31,7 +31,9 @@ trait BaseWorkflow public $stepCachePackages; //true public $stepCacheVendors; //true public $stepCacheNpmModules; // true - public $dependencyStability; // [] + public array $dependencyStability; // [] + + public function loadDefaultsBaseWorkflow(): void { @@ -60,13 +62,13 @@ public function loadDefaultsBaseWorkflow(): void $this->stepCachePackages = true; $this->stepCacheVendors = true; $this->stepCacheNpmModules = true; - $this->dependencyStability = [ 'prefer-stable' ]; + $this->dependencyStability = [ 'prefer-none' ]; } public function loadBaseWorkflowFromJson($j): void { data_fill($j, "stepDirCodeSniffer", "app"); - data_fill($j, "dependencyStability", [ 'prefer-stable' ]); + data_fill($j, "dependencyStability", [ 'prefer-none' ]); $this->name = $j->name; $this->onPush = $j->on_push; $this->onPushBranches = $j->on_push_branches; @@ -154,6 +156,7 @@ public function setDataBaseWorkflow($data): array $data["on_pullrequest_branches"] = WorkflowGenerator::split($this->onPullrequestBranches); $data["on_push_branches"] = WorkflowGenerator::split($this->onPushBranches); $data["dependencyStabilityString"] = WorkflowGenerator::arrayToString($this->dependencyStability); + $data["dependencyStability"] = $this->dependencyStability; return $data; } diff --git a/resources/templates/json/laravelapp.json b/resources/templates/json/laravelapp.json index 50edce0..427a78d 100644 --- a/resources/templates/json/laravelapp.json +++ b/resources/templates/json/laravelapp.json @@ -56,5 +56,5 @@ "7.*": "5.*", "8.*": "6.*" }, - "dependencyStability": [ "prefer-stable" ] + "dependencyStability": [ "prefer-none" ] } diff --git a/resources/templates/json/laravelpackage.json b/resources/templates/json/laravelpackage.json index 5f41eac..6e1ab46 100644 --- a/resources/templates/json/laravelpackage.json +++ b/resources/templates/json/laravelpackage.json @@ -56,7 +56,7 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - }, - "dependencyStability": [ "prefer-stable" ] + } + } diff --git a/resources/templates/json/laravelpostgresql.json b/resources/templates/json/laravelpostgresql.json index 4f10210..4d5e2ca 100644 --- a/resources/templates/json/laravelpostgresql.json +++ b/resources/templates/json/laravelpostgresql.json @@ -56,6 +56,5 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - }, - "dependencyStability": [ "prefer-stable" ] + } } diff --git a/resources/templates/json/phppackage.json b/resources/templates/json/phppackage.json index b04b19a..96dd772 100644 --- a/resources/templates/json/phppackage.json +++ b/resources/templates/json/phppackage.json @@ -58,6 +58,5 @@ "6.*": "4.*", "7.*": "5.*", "8.*": "6.*" - }, - "dependencyStability": [ "prefer-stable" ] + } } diff --git a/resources/views/action_yaml.blade.php b/resources/views/action_yaml.blade.php index 77c081c..5c4920a 100644 --- a/resources/views/action_yaml.blade.php +++ b/resources/views/action_yaml.blade.php @@ -89,7 +89,16 @@ @else - name: Install Dependencies if: steps.vendor-cache.outputs.cache-hit != 'true' - run: composer update --$@{{ matrix.dependency-stability }} -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist + run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist +@endif + +@if (is_array($dependencyStability) && count($dependencyStability) > 0) + - name: Update Dependencies with latest stable + if: matrix.dependency-stability === 'prefer-stable' + run: composer update --prefer-stable + - name: Update Dependencies with lowest stable + if: matrix.dependency-stability === 'prefer-lowest' + run: composer update --prefer-stable --prefer-lowest @endif @if ($stepGenerateKey) diff --git a/resources/views/livewire/configurator-form.blade.php b/resources/views/livewire/configurator-form.blade.php index 26eecdb..705bdc2 100644 --- a/resources/views/livewire/configurator-form.blade.php +++ b/resources/views/livewire/configurator-form.blade.php @@ -316,9 +316,10 @@ name="dependencyStability" label="Dependency Stability Level" :list="[ - 'prefer-lowest'=>'Prefer Lowest', - 'prefer-stable'=>'Prefer Stable']" - help="Select the level of the stability for the Laravel dependency" + 'prefer-none'=>'Default', + 'prefer-stable'=>'Update composer to latest Stable', + 'prefer-lowest'=>'Update composer to lowest stable']" + help="Select the level of the stability for the composer packages dependency" multiselect=1> > From e19835045e838f7f1e60c664b493188065060922 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 22:45:14 +0200 Subject: [PATCH 16/38] Update dependency-stability.yml --- .github/workflows/dependency-stability.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependency-stability.yml b/.github/workflows/dependency-stability.yml index 12bf070..7989ff0 100644 --- a/.github/workflows/dependency-stability.yml +++ b/.github/workflows/dependency-stability.yml @@ -49,10 +49,10 @@ jobs: run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist - name: Update Dependencies with latest stable - if: matrix.dependency-stability === 'prefer-stable' + if: matrix.dependency-stability == 'prefer-stable' run: composer update --prefer-stable - name: Update Dependencies with lowest stable - if: matrix.dependency-stability === 'prefer-lowest' + if: matrix.dependency-stability == 'prefer-lowest' run: composer update --prefer-stable --prefer-lowest - name: Generate key From 7e9059b6771d2ebbc93a0d727b8dad75b8e2fc97 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 22:48:02 +0200 Subject: [PATCH 17/38] fix === operator in yaml file --- .github/workflows/dependency-stability.yml | 10 +++++++++- resources/views/action_yaml.blade.php | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/workflows/dependency-stability.yml b/.github/workflows/dependency-stability.yml index 7989ff0..2da6724 100644 --- a/.github/workflows/dependency-stability.yml +++ b/.github/workflows/dependency-stability.yml @@ -1,5 +1,5 @@ # GithHub Actions Workflow generated with Ghygen -# Original configuration: http://gh-actions-yaml-generator.test?code=52b79fa863fa26529df41d44531635e9 +# Original configuration: http://gh-actions-yaml-generator.test?code=15dfb28bc83469330eb37764a3771430 name: Test Laravel Github action on: push: @@ -38,6 +38,14 @@ jobs: steps: - uses: actions/checkout@v2 + - name: Setup Node.js + uses: actions/setup-node@v1 + with: + node-version: '16.x' + - name: Install NPM packages + run: npm ci + - name: Build frontend + run: npm run development - name: Install PHP versions uses: shivammathur/setup-php@v2 with: diff --git a/resources/views/action_yaml.blade.php b/resources/views/action_yaml.blade.php index 5c4920a..e01ebf5 100644 --- a/resources/views/action_yaml.blade.php +++ b/resources/views/action_yaml.blade.php @@ -94,10 +94,10 @@ @if (is_array($dependencyStability) && count($dependencyStability) > 0) - name: Update Dependencies with latest stable - if: matrix.dependency-stability === 'prefer-stable' + if: matrix.dependency-stability == 'prefer-stable' run: composer update --prefer-stable - name: Update Dependencies with lowest stable - if: matrix.dependency-stability === 'prefer-lowest' + if: matrix.dependency-stability == 'prefer-lowest' run: composer update --prefer-stable --prefer-lowest @endif From c777e6a7ba053488a2734e0188c37676bd236197 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 22:55:01 +0200 Subject: [PATCH 18/38] fix tests --- tests/Feature/YamlFormTest.php | 2 +- tests/Feature/mock-asserts/strategy-php-8-74.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/Feature/YamlFormTest.php b/tests/Feature/YamlFormTest.php index abed1e0..36a7efc 100644 --- a/tests/Feature/YamlFormTest.php +++ b/tests/Feature/YamlFormTest.php @@ -350,7 +350,7 @@ public function test_dependency_stability_level() Livewire::test(ConfiguratorForm::class) ->set("name", "Test Without Dependency Level") ->call('submitForm') - ->assertSee("dependency-stability: [ 'prefer-stable' ]"); + ->assertSee("dependency-stability: [ 'prefer-none' ]"); } diff --git a/tests/Feature/mock-asserts/strategy-php-8-74.yaml b/tests/Feature/mock-asserts/strategy-php-8-74.yaml index ecb34ec..98c7bb3 100644 --- a/tests/Feature/mock-asserts/strategy-php-8-74.yaml +++ b/tests/Feature/mock-asserts/strategy-php-8-74.yaml @@ -2,7 +2,7 @@ matrix: operating-system: [ubuntu-latest] php-versions: [ '8.0','7.4' ] - dependency-stability: [ 'prefer-stable' ] + dependency-stability: [ 'prefer-none' ] laravel: [ '8.*' ] include: From 4c582ab7b6da533fea995d6df279410224b301d8 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 23:15:44 +0200 Subject: [PATCH 19/38] fix for lowest stability --- .github/workflows/dependency-stability.yml | 4 +- composer.json | 13 +- composer.lock | 3018 ++++++++++---------- 3 files changed, 1531 insertions(+), 1504 deletions(-) diff --git a/.github/workflows/dependency-stability.yml b/.github/workflows/dependency-stability.yml index 2da6724..89e144d 100644 --- a/.github/workflows/dependency-stability.yml +++ b/.github/workflows/dependency-stability.yml @@ -1,6 +1,6 @@ # GithHub Actions Workflow generated with Ghygen -# Original configuration: http://gh-actions-yaml-generator.test?code=15dfb28bc83469330eb37764a3771430 -name: Test Laravel Github action +# Original configuration: http://gh-actions-yaml-generator.test?code=c1c2014fb966debe79ba7a790bdcaa76 +name: dependency stability on: push: branches: diff --git a/composer.json b/composer.json index 055e379..310d370 100644 --- a/composer.json +++ b/composer.json @@ -14,15 +14,16 @@ "require": { "php": "^7.4|^8.0", "ext-json": "*", + "doctrine/dbal": "^3.0", "composer/semver": "^3.2", "danharrin/livewire-rate-limiting": "^0.2.0", "fideloper/proxy": "^4.4", "fruitcake/laravel-cors": "^2.0", "guzzlehttp/guzzle": "^7.0.1", "hi-folks/lara-lens": "^0.2.2", - "laravel/framework": "^8.12", + "laravel/framework": "^8.54", "laravel/tinker": "^2.5", - "livewire/livewire": "^2.3", + "livewire/livewire": "^2.6", "swaggest/json-schema": "^0.12.31", "symfony/yaml": "^5.2" }, @@ -31,11 +32,11 @@ "facade/ignition": "^2.5", "fakerphp/faker": "^1.9.1", "laravel/dusk": "^6.11", - "laravel/sail": "^0.0.5", - "mockery/mockery": "^1.4.2", - "nunomaduro/collision": "^5.0", + "laravel/sail": "^1.0.1", + "mockery/mockery": "^1.4.4", + "nunomaduro/collision": "^5.10", "nunomaduro/larastan": "^0.7.2", - "phpunit/phpunit": "^9.3.3", + "phpunit/phpunit": "^9.5.8", "psalm/plugin-laravel": "^1.4", "squizlabs/php_codesniffer": "^3.6", "vimeo/psalm": "^4.7" diff --git a/composer.lock b/composer.lock index f4a9509..27deeed 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "19d7704b9d7270d2f03a0e8413c1fb10", + "content-hash": "d5f698a68e2150bbc29b04f314f99b1c", "packages": [ { "name": "asm89/stack-cors", @@ -122,6 +122,79 @@ ], "time": "2021-08-15T20:50:18+00:00" }, + { + "name": "composer/package-versions-deprecated", + "version": "1.11.99.4", + "source": { + "type": "git", + "url": "https://github.com/composer/package-versions-deprecated.git", + "reference": "b174585d1fe49ceed21928a945138948cb394600" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b174585d1fe49ceed21928a945138948cb394600", + "reference": "b174585d1fe49ceed21928a945138948cb394600", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7 || ^8" + }, + "replace": { + "ocramius/package-versions": "1.11.99" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "ext-zip": "^1.13", + "phpunit/phpunit": "^6.5 || ^7" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" + } + ], + "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", + "support": { + "issues": "https://github.com/composer/package-versions-deprecated/issues", + "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.4" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2021-09-13T08:41:34+00:00" + }, { "name": "composer/semver", "version": "3.2.5", @@ -333,38 +406,43 @@ "time": "2021-08-13T13:06:58+00:00" }, { - "name": "doctrine/inflector", - "version": "2.0.3", + "name": "doctrine/cache", + "version": "2.1.1", "source": { "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" + "url": "https://github.com/doctrine/cache.git", + "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", - "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "url": "https://api.github.com/repos/doctrine/cache/zipball/331b4d5dbaeab3827976273e9356b3b453c300ce", + "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "php": "~7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" }, "require-dev": { - "doctrine/coding-standard": "^7.0", - "phpstan/phpstan": "^0.11", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-strict-rules": "^0.11", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + "alcaeus/mongo-php-adapter": "^1.1", + "cache/integration-tests": "dev-master", + "doctrine/coding-standard": "^8.0", + "mongodb/mongodb": "^1.1", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "predis/predis": "~1.0", + "psr/cache": "^1.0 || ^2.0 || ^3.0", + "symfony/cache": "^4.4 || ^5.2 || ^6.0@dev", + "symfony/var-exporter": "^4.4 || ^5.2 || ^6.0@dev" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } + "suggest": { + "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" }, + "type": "library", "autoload": { "psr-4": { - "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" } }, "notification-url": "https://packagist.org/downloads/", @@ -393,23 +471,22 @@ "email": "schmittjoh@gmail.com" } ], - "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", - "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", + "homepage": "https://www.doctrine-project.org/projects/cache.html", "keywords": [ - "inflection", - "inflector", - "lowercase", - "manipulation", + "abstraction", + "apcu", + "cache", + "caching", + "couchdb", + "memcached", "php", - "plural", - "singular", - "strings", - "uppercase", - "words" + "redis", + "xcache" ], "support": { - "issues": "https://github.com/doctrine/inflector/issues", - "source": "https://github.com/doctrine/inflector/tree/2.0.x" + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/2.1.1" }, "funding": [ { @@ -421,43 +498,55 @@ "type": "patreon" }, { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", "type": "tidelift" } ], - "time": "2020-05-29T15:13:26+00:00" + "time": "2021-07-17T14:49:29+00:00" }, { - "name": "doctrine/lexer", - "version": "1.2.1", + "name": "doctrine/dbal", + "version": "3.1.3", "source": { "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" + "url": "https://github.com/doctrine/dbal.git", + "reference": "96b0053775a544b4a6ab47654dac0621be8b4cf8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", - "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/96b0053775a544b4a6ab47654dac0621be8b4cf8", + "reference": "96b0053775a544b4a6ab47654dac0621be8b4cf8", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0" + "composer/package-versions-deprecated": "^1.11.99", + "doctrine/cache": "^1.0|^2.0", + "doctrine/deprecations": "^0.5.3", + "doctrine/event-manager": "^1.0", + "php": "^7.3 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpstan/phpstan": "^0.11.8", - "phpunit/phpunit": "^8.2" + "doctrine/coding-standard": "9.0.0", + "jetbrains/phpstorm-stubs": "2021.1", + "phpstan/phpstan": "0.12.99", + "phpstan/phpstan-strict-rules": "^0.12.11", + "phpunit/phpunit": "9.5.10", + "psalm/plugin-phpunit": "0.16.1", + "squizlabs/php_codesniffer": "3.6.0", + "symfony/cache": "^5.2|^6.0", + "symfony/console": "^2.0.5|^3.0|^4.0|^5.0|^6.0", + "vimeo/psalm": "4.10.0" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + "Doctrine\\DBAL\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -474,22 +563,39 @@ "email": "roman@code-factory.org" }, { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" } ], - "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", "keywords": [ - "annotations", - "docblock", - "lexer", - "parser", - "php" + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlite", + "sqlserver", + "sqlsrv" ], "support": { - "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.1" + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/3.1.3" }, "funding": [ { @@ -501,109 +607,88 @@ "type": "patreon" }, { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", "type": "tidelift" } ], - "time": "2020-05-25T17:44:05+00:00" + "time": "2021-10-02T16:15:05+00:00" }, { - "name": "dragonmantank/cron-expression", - "version": "v3.1.0", + "name": "doctrine/deprecations", + "version": "v0.5.3", "source": { "type": "git", - "url": "https://github.com/dragonmantank/cron-expression.git", - "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c" + "url": "https://github.com/doctrine/deprecations.git", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", - "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/9504165960a1f83cc1480e2be1dd0a0478561314", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314", "shasum": "" }, "require": { - "php": "^7.2|^8.0", - "webmozart/assert": "^1.7.0" - }, - "replace": { - "mtdowling/cron-expression": "^1.0" + "php": "^7.1|^8.0" }, "require-dev": { - "phpstan/extension-installer": "^1.0", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-webmozart-assert": "^0.12.7", - "phpunit/phpunit": "^7.0|^8.0|^9.0" + "doctrine/coding-standard": "^6.0|^7.0|^8.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0", + "psr/log": "^1.0" }, - "type": "library", + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", "autoload": { "psr-4": { - "Cron\\": "src/Cron/" + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "authors": [ - { - "name": "Chris Tankersley", - "email": "chris@ctankersley.com", - "homepage": "https://github.com/dragonmantank" - } - ], - "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", - "keywords": [ - "cron", - "schedule" - ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", "support": { - "issues": "https://github.com/dragonmantank/cron-expression/issues", - "source": "https://github.com/dragonmantank/cron-expression/tree/v3.1.0" + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v0.5.3" }, - "funding": [ - { - "url": "https://github.com/dragonmantank", - "type": "github" - } - ], - "time": "2020-11-24T19:55:57+00:00" + "time": "2021-03-21T12:59:47+00:00" }, { - "name": "egulias/email-validator", - "version": "2.1.25", + "name": "doctrine/event-manager", + "version": "1.1.1", "source": { "type": "git", - "url": "https://github.com/egulias/EmailValidator.git", - "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4" + "url": "https://github.com/doctrine/event-manager.git", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0dbf5d78455d4d6a41d186da50adc1122ec066f4", - "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/41370af6a30faa9dc0368c4a6814d596e81aba7f", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f", "shasum": "" }, "require": { - "doctrine/lexer": "^1.0.1", - "php": ">=5.5", - "symfony/polyfill-intl-idn": "^1.10" + "php": "^7.1 || ^8.0" }, - "require-dev": { - "dominicsayers/isemail": "^3.0.7", - "phpunit/phpunit": "^4.8.36|^7.5.15", - "satooshi/php-coveralls": "^1.0.1" + "conflict": { + "doctrine/common": "<2.9@dev" }, - "suggest": { - "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + "require-dev": { + "doctrine/coding-standard": "^6.0", + "phpunit/phpunit": "^7.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1.x-dev" + "dev-master": "1.0.x-dev" } }, "autoload": { "psr-4": { - "Egulias\\EmailValidator\\": "src" + "Doctrine\\Common\\": "lib/Doctrine/Common" } }, "notification-url": "https://packagist.org/downloads/", @@ -612,64 +697,92 @@ ], "authors": [ { - "name": "Eduardo Gulias Davis" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" } ], - "description": "A library for validating emails against several RFCs", - "homepage": "https://github.com/egulias/EmailValidator", + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", "keywords": [ - "email", - "emailvalidation", - "emailvalidator", - "validation", - "validator" + "event", + "event dispatcher", + "event manager", + "event system", + "events" ], "support": { - "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/2.1.25" + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/1.1.x" }, "funding": [ { - "url": "https://github.com/egulias", - "type": "github" + "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%2Fevent-manager", + "type": "tidelift" } ], - "time": "2020-12-29T14:50:06+00:00" + "time": "2020-05-29T18:28:51+00:00" }, { - "name": "fideloper/proxy", - "version": "4.4.1", + "name": "doctrine/inflector", + "version": "2.0.3", "source": { "type": "git", - "url": "https://github.com/fideloper/TrustedProxy.git", - "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" + "url": "https://github.com/doctrine/inflector.git", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", - "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", "shasum": "" }, "require": { - "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", - "php": ">=5.4.0" + "php": "^7.2 || ^8.0" }, "require-dev": { - "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^6.0" + "doctrine/coding-standard": "^7.0", + "phpstan/phpstan": "^0.11", + "phpstan/phpstan-phpunit": "^0.11", + "phpstan/phpstan-strict-rules": "^0.11", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "type": "library", "extra": { - "laravel": { - "providers": [ - "Fideloper\\Proxy\\TrustedProxyServiceProvider" - ] + "branch-alias": { + "dev-master": "2.0.x-dev" } }, "autoload": { "psr-4": { - "Fideloper\\Proxy\\": "src/" + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" } }, "notification-url": "https://packagist.org/downloads/", @@ -678,64 +791,91 @@ ], "authors": [ { - "name": "Chris Fidao", - "email": "fideloper@gmail.com" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" } ], - "description": "Set trusted proxies for Laravel", + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", "keywords": [ - "load balancing", - "proxy", - "trusted proxy" + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" ], "support": { - "issues": "https://github.com/fideloper/TrustedProxy/issues", - "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1" + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.x" }, - "time": "2020-10-22T13:48:01+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%2Finflector", + "type": "tidelift" + } + ], + "time": "2020-05-29T15:13:26+00:00" }, { - "name": "fruitcake/laravel-cors", - "version": "v2.0.4", + "name": "doctrine/lexer", + "version": "1.2.1", "source": { "type": "git", - "url": "https://github.com/fruitcake/laravel-cors.git", - "reference": "a8ccedc7ca95189ead0e407c43b530dc17791d6a" + "url": "https://github.com/doctrine/lexer.git", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/a8ccedc7ca95189ead0e407c43b530dc17791d6a", - "reference": "a8ccedc7ca95189ead0e407c43b530dc17791d6a", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042", + "reference": "e864bbf5904cb8f5bb334f99209b48018522f042", "shasum": "" }, "require": { - "asm89/stack-cors": "^2.0.1", - "illuminate/contracts": "^6|^7|^8|^9", - "illuminate/support": "^6|^7|^8|^9", - "php": ">=7.2", - "symfony/http-foundation": "^4|^5", - "symfony/http-kernel": "^4.3.4|^5" + "php": "^7.2 || ^8.0" }, "require-dev": { - "laravel/framework": "^6|^7|^8", - "orchestra/testbench-dusk": "^4|^5|^6|^7", - "phpunit/phpunit": "^6|^7|^8|^9", - "squizlabs/php_codesniffer": "^3.5" + "doctrine/coding-standard": "^6.0", + "phpstan/phpstan": "^0.11.8", + "phpunit/phpunit": "^8.2" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" - }, - "laravel": { - "providers": [ - "Fruitcake\\Cors\\CorsServiceProvider" - ] + "dev-master": "1.2.x-dev" } }, "autoload": { "psr-4": { - "Fruitcake\\Cors\\": "src/" + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" } }, "notification-url": "https://packagist.org/downloads/", @@ -744,58 +884,78 @@ ], "authors": [ { - "name": "Fruitcake", - "homepage": "https://fruitcake.nl" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" }, { - "name": "Barry vd. Heuvel", - "email": "barryvdh@gmail.com" + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" } ], - "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Laravel application", + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", "keywords": [ - "api", - "cors", - "crossdomain", - "laravel" + "annotations", + "docblock", + "lexer", + "parser", + "php" ], "support": { - "issues": "https://github.com/fruitcake/laravel-cors/issues", - "source": "https://github.com/fruitcake/laravel-cors/tree/v2.0.4" + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.1" }, "funding": [ { - "url": "https://github.com/barryvdh", - "type": "github" + "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%2Flexer", + "type": "tidelift" } ], - "time": "2021-04-26T11:24:25+00:00" + "time": "2020-05-25T17:44:05+00:00" }, { - "name": "graham-campbell/result-type", - "version": "v1.0.2", + "name": "dragonmantank/cron-expression", + "version": "v3.1.0", "source": { "type": "git", - "url": "https://github.com/GrahamCampbell/Result-Type.git", - "reference": "84afea85c6841deeea872f36249a206e878a5de0" + "url": "https://github.com/dragonmantank/cron-expression.git", + "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/84afea85c6841deeea872f36249a206e878a5de0", - "reference": "84afea85c6841deeea872f36249a206e878a5de0", + "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", + "reference": "7a8c6e56ab3ffcc538d05e8155bb42269abf1a0c", "shasum": "" }, "require": { - "php": "^7.0 || ^8.0", - "phpoption/phpoption": "^1.8" + "php": "^7.2|^8.0", + "webmozart/assert": "^1.7.0" + }, + "replace": { + "mtdowling/cron-expression": "^1.0" }, "require-dev": { - "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-webmozart-assert": "^0.12.7", + "phpunit/phpunit": "^7.0|^8.0|^9.0" }, "type": "library", "autoload": { "psr-4": { - "GrahamCampbell\\ResultType\\": "src/" + "Cron\\": "src/Cron/" } }, "notification-url": "https://packagist.org/downloads/", @@ -804,83 +964,65 @@ ], "authors": [ { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk" + "name": "Chris Tankersley", + "email": "chris@ctankersley.com", + "homepage": "https://github.com/dragonmantank" } ], - "description": "An Implementation Of The Result Type", + "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", "keywords": [ - "Graham Campbell", - "GrahamCampbell", - "Result Type", - "Result-Type", - "result" + "cron", + "schedule" ], "support": { - "issues": "https://github.com/GrahamCampbell/Result-Type/issues", - "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.2" + "issues": "https://github.com/dragonmantank/cron-expression/issues", + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.1.0" }, "funding": [ { - "url": "https://github.com/GrahamCampbell", + "url": "https://github.com/dragonmantank", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", - "type": "tidelift" } ], - "time": "2021-08-28T21:34:50+00:00" + "time": "2020-11-24T19:55:57+00:00" }, { - "name": "guzzlehttp/guzzle", - "version": "7.3.0", + "name": "egulias/email-validator", + "version": "2.1.25", "source": { "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "7008573787b430c1c1f650e3722d9bba59967628" + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7008573787b430c1c1f650e3722d9bba59967628", - "reference": "7008573787b430c1c1f650e3722d9bba59967628", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4", "shasum": "" }, "require": { - "ext-json": "*", - "guzzlehttp/promises": "^1.4", - "guzzlehttp/psr7": "^1.7 || ^2.0", - "php": "^7.2.5 || ^8.0", - "psr/http-client": "^1.0" - }, - "provide": { - "psr/http-client-implementation": "1.0" + "doctrine/lexer": "^1.0.1", + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.10" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "ext-curl": "*", - "php-http/client-integration-tests": "^3.0", - "phpunit/phpunit": "^8.5.5 || ^9.3.5", - "psr/log": "^1.1" + "dominicsayers/isemail": "^3.0.7", + "phpunit/phpunit": "^4.8.36|^7.5.15", + "satooshi/php-coveralls": "^1.0.1" }, "suggest": { - "ext-curl": "Required for CURL handler support", - "ext-intl": "Required for Internationalized Domain Name (IDN) support", - "psr/log": "Required for using the Log middleware" + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "7.3-dev" + "dev-master": "2.1.x-dev" } }, "autoload": { "psr-4": { - "GuzzleHttp\\": "src/" - }, - "files": [ - "src/functions_include.php" - ] + "Egulias\\EmailValidator\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -888,86 +1030,65 @@ ], "authors": [ { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Márk Sági-Kazár", - "email": "mark.sagikazar@gmail.com", - "homepage": "https://sagikazarmark.hu" + "name": "Eduardo Gulias Davis" } ], - "description": "Guzzle is a PHP HTTP client library", - "homepage": "http://guzzlephp.org/", + "description": "A library for validating emails against several RFCs", + "homepage": "https://github.com/egulias/EmailValidator", "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "psr-18", - "psr-7", - "rest", - "web service" + "email", + "emailvalidation", + "emailvalidator", + "validation", + "validator" ], "support": { - "issues": "https://github.com/guzzle/guzzle/issues", - "source": "https://github.com/guzzle/guzzle/tree/7.3.0" + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/2.1.25" }, "funding": [ { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://github.com/alexeyshockov", - "type": "github" - }, - { - "url": "https://github.com/gmponos", + "url": "https://github.com/egulias", "type": "github" } ], - "time": "2021-03-23T11:33:13+00:00" + "time": "2020-12-29T14:50:06+00:00" }, { - "name": "guzzlehttp/promises", - "version": "1.5.0", + "name": "fideloper/proxy", + "version": "4.4.1", "source": { "type": "git", - "url": "https://github.com/guzzle/promises.git", - "reference": "136a635e2b4a49b9d79e9c8fee267ffb257fdba0" + "url": "https://github.com/fideloper/TrustedProxy.git", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/136a635e2b4a49b9d79e9c8fee267ffb257fdba0", - "reference": "136a635e2b4a49b9d79e9c8fee267ffb257fdba0", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", "shasum": "" }, "require": { - "php": ">=5.5" + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", + "php": ">=5.4.0" }, "require-dev": { - "symfony/phpunit-bridge": "^4.4 || ^5.1" + "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^6.0" }, "type": "library", "extra": { - "branch-alias": { - "dev-master": "1.5-dev" + "laravel": { + "providers": [ + "Fideloper\\Proxy\\TrustedProxyServiceProvider" + ] } }, "autoload": { "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - }, - "files": [ - "src/functions_include.php" - ] + "Fideloper\\Proxy\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -975,78 +1096,396 @@ ], "authors": [ { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk", - "homepage": "https://github.com/GrahamCampbell" - }, - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Tobias Nyholm", - "email": "tobias.nyholm@gmail.com", - "homepage": "https://github.com/Nyholm" - }, - { - "name": "Tobias Schultze", - "email": "webmaster@tubo-world.de", - "homepage": "https://github.com/Tobion" + "name": "Chris Fidao", + "email": "fideloper@gmail.com" } ], - "description": "Guzzle promises library", + "description": "Set trusted proxies for Laravel", "keywords": [ - "promise" + "load balancing", + "proxy", + "trusted proxy" ], "support": { - "issues": "https://github.com/guzzle/promises/issues", - "source": "https://github.com/guzzle/promises/tree/1.5.0" + "issues": "https://github.com/fideloper/TrustedProxy/issues", + "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1" }, - "funding": [ - { - "url": "https://github.com/GrahamCampbell", - "type": "github" - }, - { - "url": "https://github.com/Nyholm", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", - "type": "tidelift" - } - ], - "time": "2021-10-07T13:05:22+00:00" + "time": "2020-10-22T13:48:01+00:00" }, { - "name": "guzzlehttp/psr7", - "version": "2.1.0", + "name": "fruitcake/laravel-cors", + "version": "v2.0.4", "source": { "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72" + "url": "https://github.com/fruitcake/laravel-cors.git", + "reference": "a8ccedc7ca95189ead0e407c43b530dc17791d6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/089edd38f5b8abba6cb01567c2a8aaa47cec4c72", - "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72", + "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/a8ccedc7ca95189ead0e407c43b530dc17791d6a", + "reference": "a8ccedc7ca95189ead0e407c43b530dc17791d6a", "shasum": "" }, "require": { - "php": "^7.2.5 || ^8.0", - "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", - "ralouphie/getallheaders": "^3.0" - }, - "provide": { - "psr/http-factory-implementation": "1.0", - "psr/http-message-implementation": "1.0" + "asm89/stack-cors": "^2.0.1", + "illuminate/contracts": "^6|^7|^8|^9", + "illuminate/support": "^6|^7|^8|^9", + "php": ">=7.2", + "symfony/http-foundation": "^4|^5", + "symfony/http-kernel": "^4.3.4|^5" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "http-interop/http-factory-tests": "^0.9", - "phpunit/phpunit": "^8.5.8 || ^9.3.10" + "laravel/framework": "^6|^7|^8", + "orchestra/testbench-dusk": "^4|^5|^6|^7", + "phpunit/phpunit": "^6|^7|^8|^9", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + }, + "laravel": { + "providers": [ + "Fruitcake\\Cors\\CorsServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Fruitcake\\Cors\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fruitcake", + "homepage": "https://fruitcake.nl" + }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Laravel application", + "keywords": [ + "api", + "cors", + "crossdomain", + "laravel" + ], + "support": { + "issues": "https://github.com/fruitcake/laravel-cors/issues", + "source": "https://github.com/fruitcake/laravel-cors/tree/v2.0.4" + }, + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2021-04-26T11:24:25+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.0.3", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/296c015dc30ec4322168c5ad3ee5cc11dae827ac", + "reference": "296c015dc30ec4322168c5ad3ee5cc11dae827ac", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "phpoption/phpoption": "^1.8" + }, + "require-dev": { + "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2021-10-17T19:48:54+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "7.4.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "868b3571a039f0ebc11ac8f344f4080babe2cb94" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/868b3571a039f0ebc11ac8f344f4080babe2cb94", + "reference": "868b3571a039f0ebc11ac8f344f4080babe2cb94", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5", + "guzzlehttp/psr7": "^1.8.3 || ^2.1", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-curl": "*", + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.5.5 || ^9.3.5", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.4-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.4.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2021-10-18T09:52:00+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "136a635e2b4a49b9d79e9c8fee267ffb257fdba0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/136a635e2b4a49b9d79e9c8fee267ffb257fdba0", + "reference": "136a635e2b4a49b9d79e9c8fee267ffb257fdba0", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "symfony/phpunit-bridge": "^4.4 || ^5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + }, + "files": [ + "src/functions_include.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.5.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2021-10-07T13:05:22+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/089edd38f5b8abba6cb01567c2a8aaa47cec4c72", + "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^8.5.8 || ^9.3.10" }, "suggest": { "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" @@ -2112,21 +2551,21 @@ }, { "name": "nette/schema", - "version": "v1.2.1", + "version": "v1.2.2", "source": { "type": "git", "url": "https://github.com/nette/schema.git", - "reference": "f5ed39fc96358f922cedfd1e516f0dadf5d2be0d" + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/schema/zipball/f5ed39fc96358f922cedfd1e516f0dadf5d2be0d", - "reference": "f5ed39fc96358f922cedfd1e516f0dadf5d2be0d", + "url": "https://api.github.com/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", "shasum": "" }, "require": { - "nette/utils": "^3.1.4 || ^4.0", - "php": ">=7.1 <8.1" + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.2" }, "require-dev": { "nette/tester": "^2.3 || ^2.4", @@ -2168,9 +2607,9 @@ ], "support": { "issues": "https://github.com/nette/schema/issues", - "source": "https://github.com/nette/schema/tree/v1.2.1" + "source": "https://github.com/nette/schema/tree/v1.2.2" }, - "time": "2021-03-04T17:51:11+00:00" + "time": "2021-10-15T11:40:02+00:00" }, { "name": "nette/utils", @@ -3195,28 +3634,31 @@ }, { "name": "swaggest/json-schema", - "version": "v0.12.38", + "version": "v0.12.39", "source": { "type": "git", "url": "https://github.com/swaggest/php-json-schema.git", - "reference": "ab7cca149a5822acc5be538dd6c008a348f6cb89" + "reference": "193ba39cce1ffa2d55ddd5445315e945a63298a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swaggest/php-json-schema/zipball/ab7cca149a5822acc5be538dd6c008a348f6cb89", - "reference": "ab7cca149a5822acc5be538dd6c008a348f6cb89", + "url": "https://api.github.com/repos/swaggest/php-json-schema/zipball/193ba39cce1ffa2d55ddd5445315e945a63298a2", + "reference": "193ba39cce1ffa2d55ddd5445315e945a63298a2", "shasum": "" }, "require": { "ext-json": "*", - "ext-mbstring": "*", "php": ">=5.4", "phplang/scope-exit": "^1.0", - "swaggest/json-diff": "^3.8.2" + "swaggest/json-diff": "^3.8.2", + "symfony/polyfill-mbstring": "^1.19" }, "require-dev": { "phpunit/phpunit": "^4.8.23" }, + "suggest": { + "ext-mbstring": "For better performance" + }, "type": "library", "autoload": { "psr-4": { @@ -3237,22 +3679,22 @@ "support": { "email": "vearutop@gmail.com", "issues": "https://github.com/swaggest/php-json-schema/issues", - "source": "https://github.com/swaggest/php-json-schema/tree/v0.12.38" + "source": "https://github.com/swaggest/php-json-schema/tree/v0.12.39" }, - "time": "2021-09-17T13:54:01+00:00" + "time": "2021-10-15T18:12:27+00:00" }, { "name": "swiftmailer/swiftmailer", - "version": "v6.2.7", + "version": "v6.3.0", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "15f7faf8508e04471f666633addacf54c0ab5933" + "reference": "8a5d5072dca8f48460fce2f4131fcc495eec654c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/15f7faf8508e04471f666633addacf54c0ab5933", - "reference": "15f7faf8508e04471f666633addacf54c0ab5933", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/8a5d5072dca8f48460fce2f4131fcc495eec654c", + "reference": "8a5d5072dca8f48460fce2f4131fcc495eec654c", "shasum": "" }, "require": { @@ -3264,7 +3706,7 @@ }, "require-dev": { "mockery/mockery": "^1.0", - "symfony/phpunit-bridge": "^4.4|^5.0" + "symfony/phpunit-bridge": "^4.4|^5.4" }, "suggest": { "ext-intl": "Needed to support internationalized email addresses" @@ -3302,7 +3744,7 @@ ], "support": { "issues": "https://github.com/swiftmailer/swiftmailer/issues", - "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.2.7" + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.3.0" }, "funding": [ { @@ -3314,7 +3756,7 @@ "type": "tidelift" } ], - "time": "2021-03-09T12:30:35+00:00" + "time": "2021-10-18T15:26:12+00:00" }, { "name": "symfony/console", @@ -5347,265 +5789,24 @@ "symfony/console": "^4.4|^5.0", "symfony/dependency-injection": "^5.0", "symfony/finder": "^4.4|^5.0", - "symfony/http-kernel": "^5.0", - "symfony/intl": "^4.4|^5.0", - "symfony/polyfill-intl-icu": "^1.21", - "symfony/service-contracts": "^1.1.2|^2", - "symfony/yaml": "^4.4|^5.0" - }, - "suggest": { - "psr/log-implementation": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\Translation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools to internationalize your application", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/translation/tree/v5.3.9" - }, - "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": "2021-08-26T08:22:53+00:00" - }, - { - "name": "symfony/translation-contracts", - "version": "v2.4.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation-contracts.git", - "reference": "95c812666f3e91db75385749fe219c5e494c7f95" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95", - "reference": "95c812666f3e91db75385749fe219c5e494c7f95", - "shasum": "" - }, - "require": { - "php": ">=7.2.5" - }, - "suggest": { - "symfony/translation-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.4-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Translation\\": "" - } - }, - "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": "Generic abstractions related to translation", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v2.4.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": "2021-03-23T23:28:01+00:00" - }, - { - "name": "symfony/var-dumper", - "version": "v5.3.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/var-dumper.git", - "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/eaaea4098be1c90c8285543e1356a09c8aa5c8da", - "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "^1.16" - }, - "conflict": { - "phpunit/phpunit": "<5.4.3", - "symfony/console": "<4.4" - }, - "require-dev": { - "ext-iconv": "*", - "symfony/console": "^4.4|^5.0", - "symfony/process": "^4.4|^5.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" - ], - "type": "library", - "autoload": { - "files": [ - "Resources/functions/dump.php" - ], - "psr-4": { - "Symfony\\Component\\VarDumper\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "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": "Provides mechanisms for walking through any arbitrary PHP variable", - "homepage": "https://symfony.com", - "keywords": [ - "debug", - "dump" - ], - "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.3.8" - }, - "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": "2021-09-24T15:59:58+00:00" - }, - { - "name": "symfony/yaml", - "version": "v5.3.6", - "source": { - "type": "git", - "url": "https://github.com/symfony/yaml.git", - "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7", - "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1", - "symfony/polyfill-ctype": "~1.8" - }, - "conflict": { - "symfony/console": "<4.4" - }, - "require-dev": { - "symfony/console": "^4.4|^5.0" + "symfony/http-kernel": "^5.0", + "symfony/intl": "^4.4|^5.0", + "symfony/polyfill-intl-icu": "^1.21", + "symfony/service-contracts": "^1.1.2|^2", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { - "symfony/console": "For validating YAML files using the lint command" + "psr/log-implementation": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" }, - "bin": [ - "Resources/bin/yaml-lint" - ], "type": "library", "autoload": { + "files": [ + "Resources/functions.php" + ], "psr-4": { - "Symfony\\Component\\Yaml\\": "" + "Symfony\\Component\\Translation\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -5625,10 +5826,10 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Loads and dumps YAML files", + "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.3.6" + "source": "https://github.com/symfony/translation/tree/v5.3.9" }, "funding": [ { @@ -5644,167 +5845,134 @@ "type": "tidelift" } ], - "time": "2021-07-29T06:20:01+00:00" - }, - { - "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.3", - "source": { - "type": "git", - "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/b43b05cf43c1b6d849478965062b6ef73e223bb5", - "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "php": "^5.5 || ^7.0 || ^8.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "TijsVerkoyen\\CssToInlineStyles\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Tijs Verkoyen", - "email": "css_to_inline_styles@verkoyen.eu", - "role": "Developer" - } - ], - "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", - "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "support": { - "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", - "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.3" - }, - "time": "2020-07-13T06:12:54+00:00" + "time": "2021-08-26T08:22:53+00:00" }, { - "name": "vlucas/phpdotenv", - "version": "v5.3.1", + "name": "symfony/translation-contracts", + "version": "v2.4.0", "source": { "type": "git", - "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "accaddf133651d4b5cf81a119f25296736ffc850" + "url": "https://github.com/symfony/translation-contracts.git", + "reference": "95c812666f3e91db75385749fe219c5e494c7f95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/accaddf133651d4b5cf81a119f25296736ffc850", - "reference": "accaddf133651d4b5cf81a119f25296736ffc850", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95", + "reference": "95c812666f3e91db75385749fe219c5e494c7f95", "shasum": "" }, "require": { - "ext-pcre": "*", - "graham-campbell/result-type": "^1.0.2", - "php": "^7.1.3 || ^8.0", - "phpoption/phpoption": "^1.8", - "symfony/polyfill-ctype": "^1.23", - "symfony/polyfill-mbstring": "^1.23.1", - "symfony/polyfill-php80": "^1.23.1" - }, - "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "ext-filter": "*", - "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" + "php": ">=7.2.5" }, "suggest": { - "ext-filter": "Required to use the boolean validator." + "symfony/translation-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.3-dev" + "dev-main": "2.4-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, "autoload": { "psr-4": { - "Dotenv\\": "src/" + "Symfony\\Contracts\\Translation\\": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Graham Campbell", - "email": "hello@gjcampbell.co.uk" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { - "name": "Vance Lucas", - "email": "vance@vancelucas.com" + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "description": "Generic abstractions related to translation", + "homepage": "https://symfony.com", "keywords": [ - "dotenv", - "env", - "environment" + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" ], "support": { - "issues": "https://github.com/vlucas/phpdotenv/issues", - "source": "https://github.com/vlucas/phpdotenv/tree/v5.3.1" + "source": "https://github.com/symfony/translation-contracts/tree/v2.4.0" }, "funding": [ { - "url": "https://github.com/GrahamCampbell", + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", "type": "github" }, { - "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2021-10-02T19:24:42+00:00" + "time": "2021-03-23T23:28:01+00:00" }, { - "name": "voku/portable-ascii", - "version": "1.5.6", + "name": "symfony/var-dumper", + "version": "v5.3.8", "source": { "type": "git", - "url": "https://github.com/voku/portable-ascii.git", - "reference": "80953678b19901e5165c56752d087fc11526017c" + "url": "https://github.com/symfony/var-dumper.git", + "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/80953678b19901e5165c56752d087fc11526017c", - "reference": "80953678b19901e5165c56752d087fc11526017c", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/eaaea4098be1c90c8285543e1356a09c8aa5c8da", + "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da", "shasum": "" }, "require": { - "php": ">=7.0.0" + "php": ">=7.2.5", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4" }, "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + "ext-iconv": "*", + "symfony/console": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "twig/twig": "^2.13|^3.0.4" }, "suggest": { - "ext-intl": "Use Intl for transliterator_transliterate() support" + "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" + ], "type": "library", "autoload": { + "files": [ + "Resources/functions/dump.php" + ], "psr-4": { - "voku\\": "src/voku/" - } + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5812,80 +5980,78 @@ ], "authors": [ { - "name": "Lars Moelleken", - "homepage": "http://www.moelleken.org/" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", - "homepage": "https://github.com/voku/portable-ascii", + "description": "Provides mechanisms for walking through any arbitrary PHP variable", + "homepage": "https://symfony.com", "keywords": [ - "ascii", - "clean", - "php" + "debug", + "dump" ], "support": { - "issues": "https://github.com/voku/portable-ascii/issues", - "source": "https://github.com/voku/portable-ascii/tree/1.5.6" + "source": "https://github.com/symfony/var-dumper/tree/v5.3.8" }, "funding": [ { - "url": "https://www.paypal.me/moelleken", + "url": "https://symfony.com/sponsor", "type": "custom" }, { - "url": "https://github.com/voku", + "url": "https://github.com/fabpot", "type": "github" }, { - "url": "https://opencollective.com/portable-ascii", - "type": "open_collective" - }, - { - "url": "https://www.patreon.com/voku", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2020-11-12T00:07:28+00:00" + "time": "2021-09-24T15:59:58+00:00" }, { - "name": "webmozart/assert", - "version": "1.10.0", + "name": "symfony/yaml", + "version": "v5.3.6", "source": { "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" + "url": "https://github.com/symfony/yaml.git", + "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", + "url": "https://api.github.com/repos/symfony/yaml/zipball/4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7", + "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-ctype": "^1.8" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-ctype": "~1.8" }, "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" + "symfony/console": "<4.4" }, "require-dev": { - "phpunit/phpunit": "^8.5.13" + "symfony/console": "^4.4|^5.0" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.10-dev" - } + "suggest": { + "symfony/console": "For validating YAML files using the lint command" }, + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", "autoload": { "psr-4": { - "Webmozart\\Assert\\": "src/" - } + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -5893,244 +6059,193 @@ ], "authors": [ { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], + "description": "Loads and dumps YAML files", + "homepage": "https://symfony.com", "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.10.0" + "source": "https://github.com/symfony/yaml/tree/v5.3.6" }, - "time": "2021-03-09T10:59:23+00:00" - } - ], - "packages-dev": [ + "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": "2021-07-29T06:20:01+00:00" + }, { - "name": "amphp/amp", - "version": "v2.6.1", + "name": "tijsverkoyen/css-to-inline-styles", + "version": "2.2.3", "source": { "type": "git", - "url": "https://github.com/amphp/amp.git", - "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae" + "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/amp/zipball/c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae", - "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/b43b05cf43c1b6d849478965062b6ef73e223bb5", + "reference": "b43b05cf43c1b6d849478965062b6ef73e223bb5", "shasum": "" }, "require": { - "php": ">=7.1" + "ext-dom": "*", + "ext-libxml": "*", + "php": "^5.5 || ^7.0 || ^8.0", + "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0" }, "require-dev": { - "amphp/php-cs-fixer-config": "dev-master", - "amphp/phpunit-util": "^1", - "ext-json": "*", - "jetbrains/phpstorm-stubs": "^2019.3", - "phpunit/phpunit": "^7 | ^8 | ^9", - "psalm/phar": "^3.11@dev", - "react/promise": "^2" + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.x-dev" + "dev-master": "2.2.x-dev" } }, "autoload": { "psr-4": { - "Amp\\": "lib" - }, - "files": [ - "lib/functions.php", - "lib/Internal/functions.php" - ] + "TijsVerkoyen\\CssToInlineStyles\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Daniel Lowrey", - "email": "rdlowrey@php.net" - }, - { - "name": "Aaron Piotrowski", - "email": "aaron@trowski.com" - }, - { - "name": "Bob Weinand", - "email": "bobwei9@hotmail.com" - }, - { - "name": "Niklas Keller", - "email": "me@kelunik.com" + "name": "Tijs Verkoyen", + "email": "css_to_inline_styles@verkoyen.eu", + "role": "Developer" } ], - "description": "A non-blocking concurrency framework for PHP applications.", - "homepage": "http://amphp.org/amp", - "keywords": [ - "async", - "asynchronous", - "awaitable", - "concurrency", - "event", - "event-loop", - "future", - "non-blocking", - "promise" - ], + "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", + "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "support": { - "irc": "irc://irc.freenode.org/amphp", - "issues": "https://github.com/amphp/amp/issues", - "source": "https://github.com/amphp/amp/tree/v2.6.1" + "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.3" }, - "funding": [ - { - "url": "https://github.com/amphp", - "type": "github" - } - ], - "time": "2021-09-23T18:43:08+00:00" + "time": "2020-07-13T06:12:54+00:00" }, { - "name": "amphp/byte-stream", - "version": "v1.8.1", + "name": "vlucas/phpdotenv", + "version": "v5.3.1", "source": { "type": "git", - "url": "https://github.com/amphp/byte-stream.git", - "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd" + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "accaddf133651d4b5cf81a119f25296736ffc850" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/amphp/byte-stream/zipball/acbd8002b3536485c997c4e019206b3f10ca15bd", - "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/accaddf133651d4b5cf81a119f25296736ffc850", + "reference": "accaddf133651d4b5cf81a119f25296736ffc850", "shasum": "" }, "require": { - "amphp/amp": "^2", - "php": ">=7.1" + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.2", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.8", + "symfony/polyfill-ctype": "^1.23", + "symfony/polyfill-mbstring": "^1.23.1", + "symfony/polyfill-php80": "^1.23.1" }, "require-dev": { - "amphp/php-cs-fixer-config": "dev-master", - "amphp/phpunit-util": "^1.4", - "friendsofphp/php-cs-fixer": "^2.3", - "jetbrains/phpstorm-stubs": "^2019.3", - "phpunit/phpunit": "^6 || ^7 || ^8", - "psalm/phar": "^3.11.4" + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-filter": "*", + "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "5.3-dev" } }, "autoload": { "psr-4": { - "Amp\\ByteStream\\": "lib" - }, - "files": [ - "lib/functions.php" - ] + "Dotenv\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Aaron Piotrowski", - "email": "aaron@trowski.com" + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk" }, { - "name": "Niklas Keller", - "email": "me@kelunik.com" + "name": "Vance Lucas", + "email": "vance@vancelucas.com" } ], - "description": "A stream abstraction to make working with non-blocking I/O simple.", - "homepage": "http://amphp.org/byte-stream", + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", "keywords": [ - "amp", - "amphp", - "async", - "io", - "non-blocking", - "stream" + "dotenv", + "env", + "environment" ], "support": { - "irc": "irc://irc.freenode.org/amphp", - "issues": "https://github.com/amphp/byte-stream/issues", - "source": "https://github.com/amphp/byte-stream/tree/v1.8.1" + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.3.1" }, "funding": [ { - "url": "https://github.com/amphp", + "url": "https://github.com/GrahamCampbell", "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" } ], - "time": "2021-03-30T17:13:30+00:00" + "time": "2021-10-02T19:24:42+00:00" }, { - "name": "barryvdh/laravel-ide-helper", - "version": "v2.9.1", + "name": "voku/portable-ascii", + "version": "1.5.6", "source": { "type": "git", - "url": "https://github.com/barryvdh/laravel-ide-helper.git", - "reference": "8d8302ff6adb55f8b844c798b8b1ffdee142f7e5" + "url": "https://github.com/voku/portable-ascii.git", + "reference": "80953678b19901e5165c56752d087fc11526017c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/8d8302ff6adb55f8b844c798b8b1ffdee142f7e5", - "reference": "8d8302ff6adb55f8b844c798b8b1ffdee142f7e5", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/80953678b19901e5165c56752d087fc11526017c", + "reference": "80953678b19901e5165c56752d087fc11526017c", "shasum": "" }, "require": { - "barryvdh/reflection-docblock": "^2.0.6", - "composer/composer": "^1.6 || ^2", - "doctrine/dbal": "^2.6 || ^3", - "ext-json": "*", - "illuminate/console": "^8", - "illuminate/filesystem": "^8", - "illuminate/support": "^8", - "nikic/php-parser": "^4.7", - "php": "^7.3 || ^8.0", - "phpdocumentor/type-resolver": "^1.1.0" + "php": ">=7.0.0" }, "require-dev": { - "ext-pdo_sqlite": "*", - "friendsofphp/php-cs-fixer": "^2", - "illuminate/config": "^8", - "illuminate/view": "^8", - "mockery/mockery": "^1.4", - "orchestra/testbench": "^6", - "phpunit/phpunit": "^8.5 || ^9", - "spatie/phpunit-snapshot-assertions": "^3 || ^4", - "vimeo/psalm": "^3.12" + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" }, "suggest": { - "illuminate/events": "Required for automatic helper generation (^6|^7|^8)." + "ext-intl": "Use Intl for transliterator_transliterate() support" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.9-dev" - }, - "laravel": { - "providers": [ - "Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider" - ] - } - }, "autoload": { "psr-4": { - "Barryvdh\\LaravelIdeHelper\\": "src" + "voku\\": "src/voku/" } }, "notification-url": "https://packagist.org/downloads/", @@ -6139,69 +6254,79 @@ ], "authors": [ { - "name": "Barry vd. Heuvel", - "email": "barryvdh@gmail.com" + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" } ], - "description": "Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.", + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", "keywords": [ - "autocomplete", - "codeintel", - "helper", - "ide", - "laravel", - "netbeans", - "phpdoc", - "phpstorm", - "sublime" + "ascii", + "clean", + "php" ], "support": { - "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", - "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.9.1" + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/1.5.6" }, "funding": [ { - "url": "https://github.com/barryvdh", + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" } ], - "time": "2021-03-15T19:22:08+00:00" + "time": "2020-11-12T00:07:28+00:00" }, { - "name": "barryvdh/reflection-docblock", - "version": "v2.0.6", + "name": "webmozart/assert", + "version": "1.10.0", "source": { "type": "git", - "url": "https://github.com/barryvdh/ReflectionDocBlock.git", - "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16" + "url": "https://github.com/webmozarts/assert.git", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/6b69015d83d3daf9004a71a89f26e27d27ef6a16", - "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": "^7.2 || ^8.0", + "symfony/polyfill-ctype": "^1.8" }, - "require-dev": { - "phpunit/phpunit": "~4.0,<4.5" + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" }, - "suggest": { - "dflydev/markdown": "~1.0", - "erusev/parsedown": "~1.0" + "require-dev": { + "phpunit/phpunit": "^8.5.13" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "1.10-dev" } }, "autoload": { - "psr-0": { - "Barryvdh": [ - "src/" - ] + "psr-4": { + "Webmozart\\Assert\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -6210,68 +6335,64 @@ ], "authors": [ { - "name": "Mike van Riel", - "email": "mike.vanriel@naenius.com" + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" } ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], "support": { - "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.0.6" + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.10.0" }, - "time": "2018-12-13T10:34:14+00:00" - }, + "time": "2021-03-09T10:59:23+00:00" + } + ], + "packages-dev": [ { - "name": "brianium/paratest", - "version": "v6.3.1", + "name": "amphp/amp", + "version": "v2.6.1", "source": { "type": "git", - "url": "https://github.com/paratestphp/paratest.git", - "reference": "3d81e35876f6497467310b123583cca6bd4c38f2" + "url": "https://github.com/amphp/amp.git", + "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/paratestphp/paratest/zipball/3d81e35876f6497467310b123583cca6bd4c38f2", - "reference": "3d81e35876f6497467310b123583cca6bd4c38f2", + "url": "https://api.github.com/repos/amphp/amp/zipball/c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae", + "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae", "shasum": "" }, "require": { - "ext-dom": "*", - "ext-pcre": "*", - "ext-reflection": "*", - "ext-simplexml": "*", - "php": "^7.3 || ^8.0", - "phpunit/php-code-coverage": "^9.2.6", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-timer": "^5.0.3", - "phpunit/phpunit": "^9.5.8", - "sebastian/environment": "^5.1.3", - "symfony/console": "^4.4.23 || ^5.3.6", - "symfony/process": "^4.4.22 || ^5.3.4" + "php": ">=7.1" }, "require-dev": { - "doctrine/coding-standard": "^9.0.0", - "ekino/phpstan-banned-code": "^0.4.0", - "ergebnis/phpstan-rules": "^0.15.3", - "ext-posix": "*", - "infection/infection": "^0.24", - "phpstan/phpstan": "^0.12.94", - "phpstan/phpstan-deprecation-rules": "^0.12.6", - "phpstan/phpstan-phpunit": "^0.12.21", - "phpstan/phpstan-strict-rules": "^0.12.10", - "squizlabs/php_codesniffer": "^3.6.0", - "symfony/filesystem": "^5.3.4", - "thecodingmachine/phpstan-strict-rules": "^0.12.1", - "vimeo/psalm": "^4.9.2" + "amphp/php-cs-fixer-config": "dev-master", + "amphp/phpunit-util": "^1", + "ext-json": "*", + "jetbrains/phpstorm-stubs": "^2019.3", + "phpunit/phpunit": "^7 | ^8 | ^9", + "psalm/phar": "^3.11@dev", + "react/promise": "^2" }, - "bin": [ - "bin/paratest" - ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, "autoload": { "psr-4": { - "ParaTest\\": [ - "src/" - ] - } + "Amp\\": "lib" + }, + "files": [ + "lib/functions.php", + "lib/Internal/functions.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6279,75 +6400,87 @@ ], "authors": [ { - "name": "Brian Scaturro", - "email": "scaturrob@gmail.com", - "role": "Developer" + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" }, { - "name": "Filippo Tessarotto", - "email": "zoeslam@gmail.com", - "role": "Developer" + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" } ], - "description": "Parallel testing for PHP", - "homepage": "https://github.com/paratestphp/paratest", + "description": "A non-blocking concurrency framework for PHP applications.", + "homepage": "http://amphp.org/amp", "keywords": [ - "concurrent", - "parallel", - "phpunit", - "testing" + "async", + "asynchronous", + "awaitable", + "concurrency", + "event", + "event-loop", + "future", + "non-blocking", + "promise" ], "support": { - "issues": "https://github.com/paratestphp/paratest/issues", - "source": "https://github.com/paratestphp/paratest/tree/v6.3.1" + "irc": "irc://irc.freenode.org/amphp", + "issues": "https://github.com/amphp/amp/issues", + "source": "https://github.com/amphp/amp/tree/v2.6.1" }, "funding": [ { - "url": "https://github.com/sponsors/Slamdunk", + "url": "https://github.com/amphp", "type": "github" - }, - { - "url": "https://paypal.me/filippotessarotto", - "type": "paypal" } ], - "time": "2021-08-10T07:38:58+00:00" + "time": "2021-09-23T18:43:08+00:00" }, { - "name": "composer/ca-bundle", - "version": "1.2.11", + "name": "amphp/byte-stream", + "version": "v1.8.1", "source": { "type": "git", - "url": "https://github.com/composer/ca-bundle.git", - "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582" + "url": "https://github.com/amphp/byte-stream.git", + "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", - "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/acbd8002b3536485c997c4e019206b3f10ca15bd", + "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd", "shasum": "" }, "require": { - "ext-openssl": "*", - "ext-pcre": "*", - "php": "^5.3.2 || ^7.0 || ^8.0" + "amphp/amp": "^2", + "php": ">=7.1" }, "require-dev": { - "phpstan/phpstan": "^0.12.55", - "psr/log": "^1.0", - "symfony/phpunit-bridge": "^4.2 || ^5", - "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" + "amphp/php-cs-fixer-config": "dev-master", + "amphp/phpunit-util": "^1.4", + "friendsofphp/php-cs-fixer": "^2.3", + "jetbrains/phpstorm-stubs": "^2019.3", + "phpunit/phpunit": "^6 || ^7 || ^8", + "psalm/phar": "^3.11.4" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "1.x-dev" + "dev-master": "1.x-dev" } }, "autoload": { "psr-4": { - "Composer\\CaBundle\\": "src" - } + "Amp\\ByteStream\\": "lib" + }, + "files": [ + "lib/functions.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -6355,92 +6488,91 @@ ], "authors": [ { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" } ], - "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", - "keywords": [ - "cabundle", - "cacert", - "certificate", - "ssl", - "tls" + "description": "A stream abstraction to make working with non-blocking I/O simple.", + "homepage": "http://amphp.org/byte-stream", + "keywords": [ + "amp", + "amphp", + "async", + "io", + "non-blocking", + "stream" ], "support": { - "irc": "irc://irc.freenode.org/composer", - "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.2.11" + "irc": "irc://irc.freenode.org/amphp", + "issues": "https://github.com/amphp/byte-stream/issues", + "source": "https://github.com/amphp/byte-stream/tree/v1.8.1" }, "funding": [ { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", + "url": "https://github.com/amphp", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" } ], - "time": "2021-09-25T20:32:43+00:00" + "time": "2021-03-30T17:13:30+00:00" }, { - "name": "composer/composer", - "version": "2.1.9", + "name": "barryvdh/laravel-ide-helper", + "version": "v2.9.1", "source": { "type": "git", - "url": "https://github.com/composer/composer.git", - "reference": "e558c88f28d102d497adec4852802c0dc14c7077" + "url": "https://github.com/barryvdh/laravel-ide-helper.git", + "reference": "8d8302ff6adb55f8b844c798b8b1ffdee142f7e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/e558c88f28d102d497adec4852802c0dc14c7077", - "reference": "e558c88f28d102d497adec4852802c0dc14c7077", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/8d8302ff6adb55f8b844c798b8b1ffdee142f7e5", + "reference": "8d8302ff6adb55f8b844c798b8b1ffdee142f7e5", "shasum": "" }, "require": { - "composer/ca-bundle": "^1.0", - "composer/metadata-minifier": "^1.0", - "composer/semver": "^3.0", - "composer/spdx-licenses": "^1.2", - "composer/xdebug-handler": "^2.0", - "justinrainbow/json-schema": "^5.2.11", - "php": "^5.3.2 || ^7.0 || ^8.0", - "psr/log": "^1.0", - "react/promise": "^1.2 || ^2.7", - "seld/jsonlint": "^1.4", - "seld/phar-utils": "^1.0", - "symfony/console": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", - "symfony/filesystem": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", - "symfony/finder": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", - "symfony/process": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0" + "barryvdh/reflection-docblock": "^2.0.6", + "composer/composer": "^1.6 || ^2", + "doctrine/dbal": "^2.6 || ^3", + "ext-json": "*", + "illuminate/console": "^8", + "illuminate/filesystem": "^8", + "illuminate/support": "^8", + "nikic/php-parser": "^4.7", + "php": "^7.3 || ^8.0", + "phpdocumentor/type-resolver": "^1.1.0" }, "require-dev": { - "phpspec/prophecy": "^1.10", - "symfony/phpunit-bridge": "^4.2 || ^5.0 || ^6.0" + "ext-pdo_sqlite": "*", + "friendsofphp/php-cs-fixer": "^2", + "illuminate/config": "^8", + "illuminate/view": "^8", + "mockery/mockery": "^1.4", + "orchestra/testbench": "^6", + "phpunit/phpunit": "^8.5 || ^9", + "spatie/phpunit-snapshot-assertions": "^3 || ^4", + "vimeo/psalm": "^3.12" }, "suggest": { - "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", - "ext-zip": "Enabling the zip extension allows you to unzip archives", - "ext-zlib": "Allow gzip compression of HTTP requests" + "illuminate/events": "Required for automatic helper generation (^6|^7|^8)." }, - "bin": [ - "bin/composer" - ], "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1-dev" + "dev-master": "2.9-dev" + }, + "laravel": { + "providers": [ + "Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider" + ] } }, "autoload": { "psr-4": { - "Composer\\": "src/Composer" + "Barryvdh\\LaravelIdeHelper\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -6449,75 +6581,69 @@ ], "authors": [ { - "name": "Nils Adermann", - "email": "naderman@naderman.de", - "homepage": "https://www.naderman.de" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "https://seld.be" + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" } ], - "description": "Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have the right stack everywhere.", - "homepage": "https://getcomposer.org/", + "description": "Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.", "keywords": [ - "autoload", - "dependency", - "package" + "autocomplete", + "codeintel", + "helper", + "ide", + "laravel", + "netbeans", + "phpdoc", + "phpstorm", + "sublime" ], "support": { - "irc": "ircs://irc.libera.chat:6697/composer", - "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/2.1.9" + "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", + "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.9.1" }, "funding": [ { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", + "url": "https://github.com/barryvdh", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" } ], - "time": "2021-10-05T07:47:38+00:00" + "time": "2021-03-15T19:22:08+00:00" }, { - "name": "composer/metadata-minifier", - "version": "1.0.0", + "name": "barryvdh/reflection-docblock", + "version": "v2.0.6", "source": { "type": "git", - "url": "https://github.com/composer/metadata-minifier.git", - "reference": "c549d23829536f0d0e984aaabbf02af91f443207" + "url": "https://github.com/barryvdh/ReflectionDocBlock.git", + "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/metadata-minifier/zipball/c549d23829536f0d0e984aaabbf02af91f443207", - "reference": "c549d23829536f0d0e984aaabbf02af91f443207", + "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/6b69015d83d3daf9004a71a89f26e27d27ef6a16", + "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16", "shasum": "" }, "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" + "php": ">=5.3.3" }, "require-dev": { - "composer/composer": "^2", - "phpstan/phpstan": "^0.12.55", - "symfony/phpunit-bridge": "^4.2 || ^5" + "phpunit/phpunit": "~4.0,<4.5" + }, + "suggest": { + "dflydev/markdown": "~1.0", + "erusev/parsedown": "~1.0" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "1.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { - "psr-4": { - "Composer\\MetadataMinifier\\": "src" + "psr-0": { + "Barryvdh": [ + "src/" + ] } }, "notification-url": "https://packagist.org/downloads/", @@ -6526,72 +6652,67 @@ ], "authors": [ { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" + "name": "Mike van Riel", + "email": "mike.vanriel@naenius.com" } ], - "description": "Small utility library that handles metadata minification and expansion.", - "keywords": [ - "composer", - "compression" - ], "support": { - "issues": "https://github.com/composer/metadata-minifier/issues", - "source": "https://github.com/composer/metadata-minifier/tree/1.0.0" + "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.0.6" }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2021-04-07T13:37:33+00:00" + "time": "2018-12-13T10:34:14+00:00" }, { - "name": "composer/package-versions-deprecated", - "version": "1.11.99.4", + "name": "brianium/paratest", + "version": "v6.3.1", "source": { "type": "git", - "url": "https://github.com/composer/package-versions-deprecated.git", - "reference": "b174585d1fe49ceed21928a945138948cb394600" + "url": "https://github.com/paratestphp/paratest.git", + "reference": "3d81e35876f6497467310b123583cca6bd4c38f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b174585d1fe49ceed21928a945138948cb394600", - "reference": "b174585d1fe49ceed21928a945138948cb394600", + "url": "https://api.github.com/repos/paratestphp/paratest/zipball/3d81e35876f6497467310b123583cca6bd4c38f2", + "reference": "3d81e35876f6497467310b123583cca6bd4c38f2", "shasum": "" }, "require": { - "composer-plugin-api": "^1.1.0 || ^2.0", - "php": "^7 || ^8" - }, - "replace": { - "ocramius/package-versions": "1.11.99" + "ext-dom": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-simplexml": "*", + "php": "^7.3 || ^8.0", + "phpunit/php-code-coverage": "^9.2.6", + "phpunit/php-file-iterator": "^3.0.5", + "phpunit/php-timer": "^5.0.3", + "phpunit/phpunit": "^9.5.8", + "sebastian/environment": "^5.1.3", + "symfony/console": "^4.4.23 || ^5.3.6", + "symfony/process": "^4.4.22 || ^5.3.4" }, "require-dev": { - "composer/composer": "^1.9.3 || ^2.0@dev", - "ext-zip": "^1.13", - "phpunit/phpunit": "^6.5 || ^7" - }, - "type": "composer-plugin", - "extra": { - "class": "PackageVersions\\Installer", - "branch-alias": { - "dev-master": "1.x-dev" - } + "doctrine/coding-standard": "^9.0.0", + "ekino/phpstan-banned-code": "^0.4.0", + "ergebnis/phpstan-rules": "^0.15.3", + "ext-posix": "*", + "infection/infection": "^0.24", + "phpstan/phpstan": "^0.12.94", + "phpstan/phpstan-deprecation-rules": "^0.12.6", + "phpstan/phpstan-phpunit": "^0.12.21", + "phpstan/phpstan-strict-rules": "^0.12.10", + "squizlabs/php_codesniffer": "^3.6.0", + "symfony/filesystem": "^5.3.4", + "thecodingmachine/phpstan-strict-rules": "^0.12.1", + "vimeo/psalm": "^4.9.2" }, + "bin": [ + "bin/paratest" + ], + "type": "library", "autoload": { "psr-4": { - "PackageVersions\\": "src/PackageVersions" + "ParaTest\\": [ + "src/" + ] } }, "notification-url": "https://packagist.org/downloads/", @@ -6600,54 +6721,64 @@ ], "authors": [ { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" + "name": "Brian Scaturro", + "email": "scaturrob@gmail.com", + "role": "Developer" }, { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be" + "name": "Filippo Tessarotto", + "email": "zoeslam@gmail.com", + "role": "Developer" } ], - "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", + "description": "Parallel testing for PHP", + "homepage": "https://github.com/paratestphp/paratest", + "keywords": [ + "concurrent", + "parallel", + "phpunit", + "testing" + ], "support": { - "issues": "https://github.com/composer/package-versions-deprecated/issues", - "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.4" + "issues": "https://github.com/paratestphp/paratest/issues", + "source": "https://github.com/paratestphp/paratest/tree/v6.3.1" }, "funding": [ { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", + "url": "https://github.com/sponsors/Slamdunk", "type": "github" }, { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" + "url": "https://paypal.me/filippotessarotto", + "type": "paypal" } ], - "time": "2021-09-13T08:41:34+00:00" + "time": "2021-08-10T07:38:58+00:00" }, { - "name": "composer/spdx-licenses", - "version": "1.5.5", + "name": "composer/ca-bundle", + "version": "1.2.11", "source": { "type": "git", - "url": "https://github.com/composer/spdx-licenses.git", - "reference": "de30328a7af8680efdc03e396aad24befd513200" + "url": "https://github.com/composer/ca-bundle.git", + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/de30328a7af8680efdc03e396aad24befd513200", - "reference": "de30328a7af8680efdc03e396aad24befd513200", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", + "reference": "0b072d51c5a9c6f3412f7ea3ab043d6603cb2582", "shasum": "" }, "require": { + "ext-openssl": "*", + "ext-pcre": "*", "php": "^5.3.2 || ^7.0 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 7" + "phpstan/phpstan": "^0.12.55", + "psr/log": "^1.0", + "symfony/phpunit-bridge": "^4.2 || ^5", + "symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0" }, "type": "library", "extra": { @@ -6657,7 +6788,7 @@ }, "autoload": { "psr-4": { - "Composer\\Spdx\\": "src" + "Composer\\CaBundle\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -6665,32 +6796,24 @@ "MIT" ], "authors": [ - { - "name": "Nils Adermann", - "email": "naderman@naderman.de", - "homepage": "http://www.naderman.de" - }, { "name": "Jordi Boggiano", "email": "j.boggiano@seld.be", "homepage": "http://seld.be" - }, - { - "name": "Rob Bast", - "email": "rob.bast@gmail.com", - "homepage": "http://robbast.nl" } ], - "description": "SPDX licenses list and validation library.", + "description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.", "keywords": [ - "license", - "spdx", - "validator" + "cabundle", + "cacert", + "certificate", + "ssl", + "tls" ], "support": { "irc": "irc://irc.freenode.org/composer", - "issues": "https://github.com/composer/spdx-licenses/issues", - "source": "https://github.com/composer/spdx-licenses/tree/1.5.5" + "issues": "https://github.com/composer/ca-bundle/issues", + "source": "https://github.com/composer/ca-bundle/tree/1.2.11" }, "funding": [ { @@ -6706,34 +6829,60 @@ "type": "tidelift" } ], - "time": "2020-12-03T16:04:16+00:00" + "time": "2021-09-25T20:32:43+00:00" }, { - "name": "composer/xdebug-handler", - "version": "2.0.2", + "name": "composer/composer", + "version": "2.1.9", "source": { "type": "git", - "url": "https://github.com/composer/xdebug-handler.git", - "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339" + "url": "https://github.com/composer/composer.git", + "reference": "e558c88f28d102d497adec4852802c0dc14c7077" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/84674dd3a7575ba617f5a76d7e9e29a7d3891339", - "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339", + "url": "https://api.github.com/repos/composer/composer/zipball/e558c88f28d102d497adec4852802c0dc14c7077", + "reference": "e558c88f28d102d497adec4852802c0dc14c7077", "shasum": "" }, "require": { + "composer/ca-bundle": "^1.0", + "composer/metadata-minifier": "^1.0", + "composer/semver": "^3.0", + "composer/spdx-licenses": "^1.2", + "composer/xdebug-handler": "^2.0", + "justinrainbow/json-schema": "^5.2.11", "php": "^5.3.2 || ^7.0 || ^8.0", - "psr/log": "^1 || ^2 || ^3" + "psr/log": "^1.0", + "react/promise": "^1.2 || ^2.7", + "seld/jsonlint": "^1.4", + "seld/phar-utils": "^1.0", + "symfony/console": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/filesystem": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/finder": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/process": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0" }, "require-dev": { - "phpstan/phpstan": "^0.12.55", - "symfony/phpunit-bridge": "^4.2 || ^5" + "phpspec/prophecy": "^1.10", + "symfony/phpunit-bridge": "^4.2 || ^5.0 || ^6.0" + }, + "suggest": { + "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", + "ext-zip": "Enabling the zip extension allows you to unzip archives", + "ext-zlib": "Allow gzip compression of HTTP requests" }, + "bin": [ + "bin/composer" + ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + } + }, "autoload": { "psr-4": { - "Composer\\XdebugHandler\\": "src" + "Composer\\": "src/Composer" } }, "notification-url": "https://packagist.org/downloads/", @@ -6742,19 +6891,27 @@ ], "authors": [ { - "name": "John Stevenson", - "email": "john-stevenson@blueyonder.co.uk" + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "https://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "https://seld.be" } ], - "description": "Restarts a process without Xdebug.", + "description": "Composer helps you declare, manage and install dependencies of PHP projects. It ensures you have the right stack everywhere.", + "homepage": "https://getcomposer.org/", "keywords": [ - "Xdebug", - "performance" + "autoload", + "dependency", + "package" ], "support": { - "irc": "irc://irc.freenode.org/composer", - "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/2.0.2" + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/composer/issues", + "source": "https://github.com/composer/composer/tree/2.1.9" }, "funding": [ { @@ -6770,83 +6927,39 @@ "type": "tidelift" } ], - "time": "2021-07-31T17:03:58+00:00" + "time": "2021-10-05T07:47:38+00:00" }, { - "name": "dnoegel/php-xdg-base-dir", - "version": "v0.1.1", + "name": "composer/metadata-minifier", + "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/dnoegel/php-xdg-base-dir.git", - "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + "url": "https://github.com/composer/metadata-minifier.git", + "reference": "c549d23829536f0d0e984aaabbf02af91f443207" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", - "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "url": "https://api.github.com/repos/composer/metadata-minifier/zipball/c549d23829536f0d0e984aaabbf02af91f443207", + "reference": "c549d23829536f0d0e984aaabbf02af91f443207", "shasum": "" }, "require": { - "php": ">=5.3.2" + "php": "^5.3.2 || ^7.0 || ^8.0" }, "require-dev": { - "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" + "composer/composer": "^2", + "phpstan/phpstan": "^0.12.55", + "symfony/phpunit-bridge": "^4.2 || ^5" }, "type": "library", - "autoload": { - "psr-4": { - "XdgBaseDir\\": "src/" + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" } }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "implementation of xdg base directory specification for php", - "support": { - "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", - "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" - }, - "time": "2019-12-04T15:06:13+00:00" - }, - { - "name": "doctrine/cache", - "version": "2.1.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/331b4d5dbaeab3827976273e9356b3b453c300ce", - "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce", - "shasum": "" - }, - "require": { - "php": "~7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": ">2.2,<2.4" - }, - "require-dev": { - "alcaeus/mongo-php-adapter": "^1.1", - "cache/integration-tests": "dev-master", - "doctrine/coding-standard": "^8.0", - "mongodb/mongodb": "^1.1", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", - "predis/predis": "~1.0", - "psr/cache": "^1.0 || ^2.0 || ^3.0", - "symfony/cache": "^4.4 || ^5.2 || ^6.0@dev", - "symfony/var-exporter": "^4.4 || ^5.2 || ^6.0@dev" - }, - "suggest": { - "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" - }, - "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" + "Composer\\MetadataMinifier\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -6855,102 +6968,65 @@ ], "authors": [ { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" } ], - "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", - "homepage": "https://www.doctrine-project.org/projects/cache.html", + "description": "Small utility library that handles metadata minification and expansion.", "keywords": [ - "abstraction", - "apcu", - "cache", - "caching", - "couchdb", - "memcached", - "php", - "redis", - "xcache" + "composer", + "compression" ], "support": { - "issues": "https://github.com/doctrine/cache/issues", - "source": "https://github.com/doctrine/cache/tree/2.1.1" + "issues": "https://github.com/composer/metadata-minifier/issues", + "source": "https://github.com/composer/metadata-minifier/tree/1.0.0" }, "funding": [ { - "url": "https://www.doctrine-project.org/sponsorship.html", + "url": "https://packagist.com", "type": "custom" }, { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" + "url": "https://github.com/composer", + "type": "github" }, { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", + "url": "https://tidelift.com/funding/github/packagist/composer/composer", "type": "tidelift" } ], - "time": "2021-07-17T14:49:29+00:00" + "time": "2021-04-07T13:37:33+00:00" }, { - "name": "doctrine/dbal", - "version": "3.1.3", + "name": "composer/spdx-licenses", + "version": "1.5.5", "source": { "type": "git", - "url": "https://github.com/doctrine/dbal.git", - "reference": "96b0053775a544b4a6ab47654dac0621be8b4cf8" + "url": "https://github.com/composer/spdx-licenses.git", + "reference": "de30328a7af8680efdc03e396aad24befd513200" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/96b0053775a544b4a6ab47654dac0621be8b4cf8", - "reference": "96b0053775a544b4a6ab47654dac0621be8b4cf8", + "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/de30328a7af8680efdc03e396aad24befd513200", + "reference": "de30328a7af8680efdc03e396aad24befd513200", "shasum": "" }, "require": { - "composer/package-versions-deprecated": "^1.11.99", - "doctrine/cache": "^1.0|^2.0", - "doctrine/deprecations": "^0.5.3", - "doctrine/event-manager": "^1.0", - "php": "^7.3 || ^8.0" + "php": "^5.3.2 || ^7.0 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "9.0.0", - "jetbrains/phpstorm-stubs": "2021.1", - "phpstan/phpstan": "0.12.99", - "phpstan/phpstan-strict-rules": "^0.12.11", - "phpunit/phpunit": "9.5.10", - "psalm/plugin-phpunit": "0.16.1", - "squizlabs/php_codesniffer": "3.6.0", - "symfony/cache": "^5.2|^6.0", - "symfony/console": "^2.0.5|^3.0|^4.0|^5.0|^6.0", - "vimeo/psalm": "4.10.0" - }, - "suggest": { - "symfony/console": "For helpful console commands such as SQL execution and import of files." + "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 7" }, - "bin": [ - "bin/doctrine-dbal" - ], "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, "autoload": { "psr-4": { - "Doctrine\\DBAL\\": "src" + "Composer\\Spdx\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -6959,200 +7035,148 @@ ], "authors": [ { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" }, { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" }, { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" } ], - "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", - "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "description": "SPDX licenses list and validation library.", "keywords": [ - "abstraction", - "database", - "db2", - "dbal", - "mariadb", - "mssql", - "mysql", - "oci8", - "oracle", - "pdo", - "pgsql", - "postgresql", - "queryobject", - "sasql", - "sql", - "sqlite", - "sqlserver", - "sqlsrv" + "license", + "spdx", + "validator" ], "support": { - "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/3.1.3" + "irc": "irc://irc.freenode.org/composer", + "issues": "https://github.com/composer/spdx-licenses/issues", + "source": "https://github.com/composer/spdx-licenses/tree/1.5.5" }, "funding": [ { - "url": "https://www.doctrine-project.org/sponsorship.html", + "url": "https://packagist.com", "type": "custom" }, { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" + "url": "https://github.com/composer", + "type": "github" }, { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "url": "https://tidelift.com/funding/github/packagist/composer/composer", "type": "tidelift" } ], - "time": "2021-10-02T16:15:05+00:00" + "time": "2020-12-03T16:04:16+00:00" }, { - "name": "doctrine/deprecations", - "version": "v0.5.3", + "name": "composer/xdebug-handler", + "version": "2.0.2", "source": { "type": "git", - "url": "https://github.com/doctrine/deprecations.git", - "reference": "9504165960a1f83cc1480e2be1dd0a0478561314" + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/deprecations/zipball/9504165960a1f83cc1480e2be1dd0a0478561314", - "reference": "9504165960a1f83cc1480e2be1dd0a0478561314", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/84674dd3a7575ba617f5a76d7e9e29a7d3891339", + "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339", "shasum": "" }, "require": { - "php": "^7.1|^8.0" + "php": "^5.3.2 || ^7.0 || ^8.0", + "psr/log": "^1 || ^2 || ^3" }, "require-dev": { - "doctrine/coding-standard": "^6.0|^7.0|^8.0", - "phpunit/phpunit": "^7.0|^8.0|^9.0", - "psr/log": "^1.0" - }, - "suggest": { - "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + "phpstan/phpstan": "^0.12.55", + "symfony/phpunit-bridge": "^4.2 || ^5" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + "Composer\\XdebugHandler\\": "src" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", - "homepage": "https://www.doctrine-project.org/", + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without Xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], "support": { - "issues": "https://github.com/doctrine/deprecations/issues", - "source": "https://github.com/doctrine/deprecations/tree/v0.5.3" + "irc": "irc://irc.freenode.org/composer", + "issues": "https://github.com/composer/xdebug-handler/issues", + "source": "https://github.com/composer/xdebug-handler/tree/2.0.2" }, - "time": "2021-03-21T12:59:47+00:00" + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2021-07-31T17:03:58+00:00" }, { - "name": "doctrine/event-manager", - "version": "1.1.1", + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", "source": { "type": "git", - "url": "https://github.com/doctrine/event-manager.git", - "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f" + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/41370af6a30faa9dc0368c4a6814d596e81aba7f", - "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": "<2.9@dev" + "php": ">=5.3.2" }, "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpunit/phpunit": "^7.0" + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, "autoload": { "psr-4": { - "Doctrine\\Common\\": "lib/Doctrine/Common" + "XdgBaseDir\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - }, - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - } - ], - "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", - "homepage": "https://www.doctrine-project.org/projects/event-manager.html", - "keywords": [ - "event", - "event dispatcher", - "event manager", - "event system", - "events" - ], + "description": "implementation of xdg base directory specification for php", "support": { - "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/1.1.x" + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" }, - "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%2Fevent-manager", - "type": "tidelift" - } - ], - "time": "2020-05-29T18:28:51+00:00" + "time": "2019-12-04T15:06:13+00:00" }, { "name": "doctrine/instantiator", @@ -7851,19 +7875,20 @@ }, { "name": "laravel/sail", - "version": "v0.0.5", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/laravel/sail.git", - "reference": "d9b0575ece889a35b9741789452c1c7abca5bc2f" + "reference": "80f6cd93844e87ebc2e7310f9a9b9917473f5eb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/sail/zipball/d9b0575ece889a35b9741789452c1c7abca5bc2f", - "reference": "d9b0575ece889a35b9741789452c1c7abca5bc2f", + "url": "https://api.github.com/repos/laravel/sail/zipball/80f6cd93844e87ebc2e7310f9a9b9917473f5eb0", + "reference": "80f6cd93844e87ebc2e7310f9a9b9917473f5eb0", "shasum": "" }, "require": { + "illuminate/console": "^8.0|^9.0", "illuminate/contracts": "^8.0|^9.0", "illuminate/support": "^8.0|^9.0", "php": "^7.3|^8.0" @@ -7906,7 +7931,7 @@ "issues": "https://github.com/laravel/sail/issues", "source": "https://github.com/laravel/sail" }, - "time": "2020-12-07T20:58:56+00:00" + "time": "2021-10-12T15:38:11+00:00" }, { "name": "mockery/mockery", @@ -8178,16 +8203,16 @@ }, { "name": "nunomaduro/larastan", - "version": "v0.7.12", + "version": "v0.7.13", "source": { "type": "git", "url": "https://github.com/nunomaduro/larastan.git", - "reference": "b2da312efe88d501aeeb867ba857e8c4198d43c0" + "reference": "60f19f8ffaaf1cbabcc127d94fc8d41e7bf7ecb2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/larastan/zipball/b2da312efe88d501aeeb867ba857e8c4198d43c0", - "reference": "b2da312efe88d501aeeb867ba857e8c4198d43c0", + "url": "https://api.github.com/repos/nunomaduro/larastan/zipball/60f19f8ffaaf1cbabcc127d94fc8d41e7bf7ecb2", + "reference": "60f19f8ffaaf1cbabcc127d94fc8d41e7bf7ecb2", "shasum": "" }, "require": { @@ -8206,6 +8231,7 @@ "symfony/process": "^4.3 || ^5.0 || ^6.0" }, "require-dev": { + "nikic/php-parser": "4.12.0", "orchestra/testbench": "^4.0 || ^5.0 || ^6.0 || ^7.0", "phpunit/phpunit": "^7.3 || ^8.2 || ^9.3" }, @@ -8215,7 +8241,7 @@ "type": "phpstan-extension", "extra": { "branch-alias": { - "dev-master": "0.6-dev" + "dev-master": "0.7-dev" }, "phpstan": { "includes": [ @@ -8251,7 +8277,7 @@ ], "support": { "issues": "https://github.com/nunomaduro/larastan/issues", - "source": "https://github.com/nunomaduro/larastan/tree/v0.7.12" + "source": "https://github.com/nunomaduro/larastan/tree/v0.7.13" }, "funding": [ { @@ -8271,7 +8297,7 @@ "type": "patreon" } ], - "time": "2021-07-26T12:12:39+00:00" + "time": "2021-10-14T07:30:49+00:00" }, { "name": "openlss/lib-array2xml", @@ -8594,16 +8620,16 @@ }, { "name": "php-webdriver/webdriver", - "version": "1.11.1", + "version": "1.12.0", "source": { "type": "git", "url": "https://github.com/php-webdriver/php-webdriver.git", - "reference": "da16e39968f8dd5cfb7d07eef91dc2b731c69880" + "reference": "99d4856ed7dffcdf6a52eccd6551e83d8d557ceb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/da16e39968f8dd5cfb7d07eef91dc2b731c69880", - "reference": "da16e39968f8dd5cfb7d07eef91dc2b731c69880", + "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/99d4856ed7dffcdf6a52eccd6551e83d8d557ceb", + "reference": "99d4856ed7dffcdf6a52eccd6551e83d8d557ceb", "shasum": "" }, "require": { @@ -8612,20 +8638,19 @@ "ext-zip": "*", "php": "^5.6 || ~7.0 || ^8.0", "symfony/polyfill-mbstring": "^1.12", - "symfony/process": "^2.8 || ^3.1 || ^4.0 || ^5.0" + "symfony/process": "^2.8 || ^3.1 || ^4.0 || ^5.0 || ^6.0" }, "replace": { "facebook/webdriver": "*" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^2.0", "ondram/ci-detector": "^2.1 || ^3.5 || ^4.0", "php-coveralls/php-coveralls": "^2.4", "php-mock/php-mock-phpunit": "^1.1 || ^2.0", "php-parallel-lint/php-parallel-lint": "^1.2", "phpunit/phpunit": "^5.7 || ^7 || ^8 || ^9", "squizlabs/php_codesniffer": "^3.5", - "symfony/var-dumper": "^3.3 || ^4.0 || ^5.0" + "symfony/var-dumper": "^3.3 || ^4.0 || ^5.0 || ^6.0" }, "suggest": { "ext-SimpleXML": "For Firefox profile creation" @@ -8654,9 +8679,9 @@ ], "support": { "issues": "https://github.com/php-webdriver/php-webdriver/issues", - "source": "https://github.com/php-webdriver/php-webdriver/tree/1.11.1" + "source": "https://github.com/php-webdriver/php-webdriver/tree/1.12.0" }, - "time": "2021-05-21T15:12:49+00:00" + "time": "2021-10-14T09:30:02+00:00" }, { "name": "phpdocumentor/reflection-common", @@ -10394,6 +10419,7 @@ "type": "github" } ], + "abandoned": true, "time": "2020-09-28T06:45:17+00:00" }, { From 8839ea7d90fc9efe7d86aecf138ff3feab73d815 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 23:17:27 +0200 Subject: [PATCH 20/38] Update dependency-stability.yml --- .github/workflows/dependency-stability.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/dependency-stability.yml b/.github/workflows/dependency-stability.yml index 89e144d..dee40c5 100644 --- a/.github/workflows/dependency-stability.yml +++ b/.github/workflows/dependency-stability.yml @@ -1,5 +1,5 @@ # GithHub Actions Workflow generated with Ghygen -# Original configuration: http://gh-actions-yaml-generator.test?code=c1c2014fb966debe79ba7a790bdcaa76 +# Original configuration: http://gh-actions-yaml-generator.test?code=598d9be9c7539d79c6fc033ff98593d7 name: dependency stability on: push: @@ -32,7 +32,7 @@ jobs: matrix: operating-system: [ubuntu-latest] php-versions: [ '8.0','7.4' ] - dependency-stability: [ 'prefer-stable' ] + dependency-stability: [ 'prefer-none','prefer-stable','prefer-lowest' ] name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.dependency-stability }} - ${{ matrix.operating-system}} From 325710199cf0139b4aa068ca3142c7a007afbc2f Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 23:26:00 +0200 Subject: [PATCH 21/38] fix dependency stability from command line --- app/Console/Commands/GenerateWorkflow.php | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/app/Console/Commands/GenerateWorkflow.php b/app/Console/Commands/GenerateWorkflow.php index 91524b2..72bd1d0 100644 --- a/app/Console/Commands/GenerateWorkflow.php +++ b/app/Console/Commands/GenerateWorkflow.php @@ -72,6 +72,15 @@ public function handle() $generator->name = Arr::get($composer, 'name'); $phpversion = Arr::get($composer, 'require.php', ""); $generator->detectPhpVersion($phpversion); + if ($this->option("prefer-stable") && $this->option("prefer-lowest")) { + $generator->dependencyStability = [ 'prefer-stable', 'prefer-lowest' ]; + } elseif ($this->option("prefer-lowest")) { + $generator->dependencyStability = [ 'prefer-lowest' ]; + } elseif ($this->option("prefer-stable")) { + $generator->dependencyStability = [ 'prefer-stable' ]; + } else { + $generator->dependencyStability = [ 'prefer-none' ]; + } // detect packages $devPackages = Arr::get($composer, 'require-dev'); @@ -81,14 +90,6 @@ public function handle() $laravelVersions = GuesserFiles::detectLaravelVersionFromTestbench($testbenchVersions); $generator->matrixLaravel = true; $generator->matrixLaravelVersions = $laravelVersions; - - if ($this->option("prefer-stable") && $this->option("prefer-lowest")) { - $generator->dependencyStability = [ 'prefer-stable', 'prefer-lowest' ]; - } elseif ($this->option("prefer-lowest")) { - $generator->dependencyStability = [ 'prefer-lowest' ]; - } else { - $generator->dependencyStability = [ 'prefer-stable' ]; - } } // squizlabs/php_codesniffer $phpCodesniffer = Arr::get($devPackages, "squizlabs/php_codesniffer", ""); From c00a6581bdb13d66bccc2b4df84509b021ae1daf Mon Sep 17 00:00:00 2001 From: Roberto B Date: Mon, 18 Oct 2021 23:27:47 +0200 Subject: [PATCH 22/38] update change log --- CHANGELOG.md | 1 + composer.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a9f1771..cdd7140 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## 0.4.3 - WIP - Psalm, create Sarif report for GitHub code scanning integration - update to Alpinejs 3 +- Allow user to set dependency stability (none, the latest stable, the lowest stable) ## 0.4.2 - 2021-10-12 Hacktoberfest, goes on... diff --git a/composer.json b/composer.json index 310d370..1258e0d 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { "name": "hifolks/gh-actions-yaml-generator", - "version": "0.4.2", + "version": "0.4.3", "type": "project", "description": "Ghygen is a GitHub Actions configurator for your Laravel Application.", "keywords": [ From b28410bece5de5528b2d80cb8d33a96c5c4fc754 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 20:53:09 +0200 Subject: [PATCH 23/38] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cdd7140..3aa085d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ ## 0.4.3 - WIP - Psalm, create Sarif report for GitHub code scanning integration - update to Alpinejs 3 -- Allow user to set dependency stability (none, the latest stable, the lowest stable) +- Allow user to set dependency stability (none, the latest stable, the lowest stable), thanks to @marulitua ## 0.4.2 - 2021-10-12 Hacktoberfest, goes on... From 2cb1eb69e6ebc298b061fc980f8970354ff67691 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 20:53:29 +0200 Subject: [PATCH 24/38] MissingParamType and MissingPropertyType --- app/Objects/GuesserFiles.php | 4 +- app/Objects/WorkflowGenerator.php | 2 +- app/Traits/Form/BaseWorkflow.php | 54 +++++++++++++------------- app/View/Composers/AppDataComposer.php | 2 +- 4 files changed, 31 insertions(+), 31 deletions(-) diff --git a/app/Objects/GuesserFiles.php b/app/Objects/GuesserFiles.php index bfb37d4..e7732b0 100644 --- a/app/Objects/GuesserFiles.php +++ b/app/Objects/GuesserFiles.php @@ -28,7 +28,7 @@ class GuesserFiles public array $filePaths = []; - public function pathFiles(string $projectDir, string $optionEnvWorkflowFile = self::ENV_DEFAULT_TEMPLATE_FILE) + public function pathFiles(string $projectDir, string $optionEnvWorkflowFile = self::ENV_DEFAULT_TEMPLATE_FILE): void { $arrayFiles = [ self::COMPOSER_VAR => self::COMPOSER_FILE, @@ -130,7 +130,7 @@ public function migrationsExists(): bool - private function somethingExists($methodPath, $isDirCheck = false): bool + private function somethingExists(string $methodPath, bool $isDirCheck = false): bool { $path = call_user_func([$this, $methodPath]); $exists = $path; diff --git a/app/Objects/WorkflowGenerator.php b/app/Objects/WorkflowGenerator.php index 7a5e7c2..7c38cd2 100644 --- a/app/Objects/WorkflowGenerator.php +++ b/app/Objects/WorkflowGenerator.php @@ -43,7 +43,7 @@ public static function compactObject(object $object, string ...$args): array return $retVal; } - public static function arrayToString($array): string + public static function arrayToString(array $array): string { return "[ " . implode( ",", diff --git a/app/Traits/Form/BaseWorkflow.php b/app/Traits/Form/BaseWorkflow.php index 199ae89..5a70f35 100644 --- a/app/Traits/Form/BaseWorkflow.php +++ b/app/Traits/Form/BaseWorkflow.php @@ -6,31 +6,33 @@ trait BaseWorkflow { - public $name; - public $onPush; + public string $name; + public bool $onPush; + public $onPushBranches; - public $onPullrequest; - public $onPullrequestBranches; - public $manualTrigger; - public $databaseType; // 'none', 'mysql', 'postgresql', 'sqlite' - public $mysqlDatabase; - public $mysqlPasswordType; // 'skip - public $mysqlPassword; // password - public $mysqlVersion; - public $mysqlDatabaseName; - public $mysqlDatabasePort; - public $postgresqlDatabase; - public $postgresqlPasswordType; // 'skip - public $postgresqlPassword; // password - public $postgresqlVersion; - public $postgresqlDatabaseName; - public $postgresqlDatabasePort; - public $stepPhpVersions; // 7.4 - public $stepNodejs; // false - public $stepNodejsVersion; // 15.x - public $stepCachePackages; //true - public $stepCacheVendors; //true - public $stepCacheNpmModules; // true + + public bool $onPullrequest; + public array $onPullrequestBranches; + public bool $manualTrigger; + public string $databaseType; // 'none', 'mysql', 'postgresql', 'sqlite' + public string $mysqlDatabase; + public string $mysqlPasswordType; // 'skip + public string $mysqlPassword; // password + public string $mysqlVersion; + public string $mysqlDatabaseName; + public int $mysqlDatabasePort; + public string $postgresqlDatabase; + public string $postgresqlPasswordType; // 'skip + public string $postgresqlPassword; // password + public string $postgresqlVersion; + public string $postgresqlDatabaseName; + public int $postgresqlDatabasePort; + public array $stepPhpVersions; // 7.4 + public bool $stepNodejs; // false + public string $stepNodejsVersion; // 15.x + public bool $stepCachePackages; //true + public bool $stepCacheVendors; //true + public bool $stepCacheNpmModules; // true public array $dependencyStability; // [] @@ -93,9 +95,7 @@ public function loadBaseWorkflowFromJson($j): void if (isset($j->postgresqlDatabase)) { $this->postgresqlDatabase = $j->postgresqlDatabase; $this->postgresqlPasswordType = - isset($j->postgresqlPasswordType) ? - $j->postgresqlPasswordType : - $this->postgresqlPasswordType; + $j->postgresqlPasswordType ?? $this->postgresqlPasswordType; $this->postgresqlPassword = isset($j->postgresqlPassword) ? $j->postgresqlPassword : diff --git a/app/View/Composers/AppDataComposer.php b/app/View/Composers/AppDataComposer.php index 7f8bc2a..5accfe1 100644 --- a/app/View/Composers/AppDataComposer.php +++ b/app/View/Composers/AppDataComposer.php @@ -6,7 +6,7 @@ class AppDataComposer { - public function compose(View $view) + public function compose(View $view): void { $title = config('gh-action-yaml-generator.data.title'); $description = config('gh-action-yaml-generator.data.description'); From 2077d0962544660962f6e95521bccd4d49f35e11 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 20:59:22 +0200 Subject: [PATCH 25/38] fix Access to an undefined property object::$postgresqlPasswordType --- app/Traits/Form/BaseWorkflow.php | 4 +++- app/Traits/Form/CodeQuality.php | 24 ++++++++++++------------ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/app/Traits/Form/BaseWorkflow.php b/app/Traits/Form/BaseWorkflow.php index 5a70f35..3670c49 100644 --- a/app/Traits/Form/BaseWorkflow.php +++ b/app/Traits/Form/BaseWorkflow.php @@ -95,7 +95,9 @@ public function loadBaseWorkflowFromJson($j): void if (isset($j->postgresqlDatabase)) { $this->postgresqlDatabase = $j->postgresqlDatabase; $this->postgresqlPasswordType = - $j->postgresqlPasswordType ?? $this->postgresqlPasswordType; + isset($j->postgresqlPasswordType) ? + $j->postgresqlPasswordType : + $this->postgresqlPasswordType; $this->postgresqlPassword = isset($j->postgresqlPassword) ? $j->postgresqlPassword : diff --git a/app/Traits/Form/CodeQuality.php b/app/Traits/Form/CodeQuality.php index a522aaf..aa9b988 100644 --- a/app/Traits/Form/CodeQuality.php +++ b/app/Traits/Form/CodeQuality.php @@ -4,18 +4,18 @@ trait CodeQuality { - public $stepExecutePhpunit; //true - public $stepExecutePestphp; //false - public $stepExecuteCodeSniffer; //false - public $stepDirCodeSniffer; // app - public $stepInstallCodeSniffer; //true - public $stepExecuteStaticAnalysis; // false - public $stepDirStaticAnalysis; // app - public $stepToolStaticAnalysis; // phpstan|larastan|psalmlaravel - public $stepInstallStaticAnalysis; //true - public $stepDusk; // false - public $stepPhpstanUseNeon; // false - public $stepPsalmReport; // false + public bool $stepExecutePhpunit; //true + public bool $stepExecutePestphp; //false + public bool $stepExecuteCodeSniffer; //false + public string $stepDirCodeSniffer; // app + public bool $stepInstallCodeSniffer; //true + public bool $stepExecuteStaticAnalysis; // false + public string $stepDirStaticAnalysis; // app + public string $stepToolStaticAnalysis; // phpstan|larastan|psalmlaravel + public bool $stepInstallStaticAnalysis; //true + public bool $stepDusk; // false + public bool $stepPhpstanUseNeon; // false + public bool $stepPsalmReport; // false public function loadDefaultsCodeQuality(): void { From 47475ed36ca48fa79604f92b7790088788f9a7b0 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 21:40:46 +0200 Subject: [PATCH 26/38] typehint fix --- app/Traits/Form/LaravelStuff.php | 28 +++++++++++++++++++--------- tests/Browser/Pages/HomePage.php | 8 ++++---- tests/Browser/Pages/Page.php | 4 ++-- tests/Feature/DatabaseFormTest.php | 14 +++++++------- tests/Feature/DeployTest.php | 4 ++-- 5 files changed, 34 insertions(+), 24 deletions(-) diff --git a/app/Traits/Form/LaravelStuff.php b/app/Traits/Form/LaravelStuff.php index 6613edd..dcdd17b 100644 --- a/app/Traits/Form/LaravelStuff.php +++ b/app/Traits/Form/LaravelStuff.php @@ -6,14 +6,20 @@ trait LaravelStuff { - public $stepFixStoragePermissions; //true - public $stepRunMigrations; // true - public $stepGenerateKey; // true - public $stepEnvTemplateFile; // ".env.example" - public $stepCopyEnvTemplateFile; // true - public $matrixLaravel; // false + public bool $stepFixStoragePermissions; //true + public bool $stepRunMigrations; // true + public bool $stepGenerateKey; // true + public string $stepEnvTemplateFile; // ".env.example" + public bool $stepCopyEnvTemplateFile; // true + public bool $matrixLaravel; // false + /** + * @var array $matrixLaravelVersions + */ public $matrixLaravelVersions; // [] - public $matrixTestbenchDependencies; + /** + * @var array $matrixTestbenchDependencies + */ + public array $matrixTestbenchDependencies; public function loadDefaultsLaravelStuff(): void { @@ -32,7 +38,7 @@ public function loadDefaultsLaravelStuff(): void // the key is the laravel ver, the value is the orchestratestbench version } - public function loadLaravelStuffFromJson($j): void + public function loadLaravelStuffFromJson(object $j): void { data_fill($j, "stepGenerateKey", true); data_fill($j, "stepCopyEnvTemplateFile", true); @@ -46,7 +52,11 @@ public function loadLaravelStuffFromJson($j): void $this->matrixTestbenchDependencies = (array) $j->matrixTestbenchDependencies; } - public function setDataLaravelStuff($data) + /** + * @param array $data + * @return array + */ + public function setDataLaravelStuff(array $data): array { $data["stepFixStoragePermissions"] = $this->stepFixStoragePermissions; $data["stepRunMigrations"] = $this->stepRunMigrations; diff --git a/tests/Browser/Pages/HomePage.php b/tests/Browser/Pages/HomePage.php index 26bf174..8e83a2b 100644 --- a/tests/Browser/Pages/HomePage.php +++ b/tests/Browser/Pages/HomePage.php @@ -11,7 +11,7 @@ class HomePage extends Page * * @return string */ - public function url() + public function url(): string { return '/'; } @@ -22,7 +22,7 @@ public function url() * @param \Laravel\Dusk\Browser $browser * @return void */ - public function assert(Browser $browser) + public function assert(Browser $browser): void { // } @@ -30,9 +30,9 @@ public function assert(Browser $browser) /** * Get the element shortcuts for the page. * - * @return array + * @return array */ - public function elements() + public function elements(): array { return [ '@element' => '#selector', diff --git a/tests/Browser/Pages/Page.php b/tests/Browser/Pages/Page.php index f8d7622..fcd9031 100644 --- a/tests/Browser/Pages/Page.php +++ b/tests/Browser/Pages/Page.php @@ -9,9 +9,9 @@ abstract class Page extends BasePage /** * Get the global element shortcuts for the site. * - * @return array + * @return array */ - public static function siteElements() + public static function siteElements(): array { return [ '@element' => '#selector', diff --git a/tests/Feature/DatabaseFormTest.php b/tests/Feature/DatabaseFormTest.php index 2216515..31fb223 100644 --- a/tests/Feature/DatabaseFormTest.php +++ b/tests/Feature/DatabaseFormTest.php @@ -16,7 +16,7 @@ class DatabaseFormTest extends TestCase const DIR_MOCK ="tests/Feature/mock-asserts/"; - public function test_databasedefault() + public function test_databasedefault(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test") @@ -26,7 +26,7 @@ public function test_databasedefault() } - public function test_databasedefault_hintsformigration() + public function test_databasedefault_hintsformigration(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test") @@ -41,7 +41,7 @@ public function test_databasedefault_hintsformigration() * Testing with no database and no migrations. * @return void */ - public function test_nodatabase() + public function test_nodatabase(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test No Database") @@ -59,7 +59,7 @@ public function test_nodatabase() * Testing with no database and migrations, it generates hint. * @return void */ - public function test_nodatabase_withmigration() + public function test_nodatabase_withmigration(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test No Database") @@ -75,7 +75,7 @@ public function test_nodatabase_withmigration() * Testing with sqlite database and migrations * @return void */ - public function test_sqlite_withmigration() + public function test_sqlite_withmigration(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test No Database") @@ -92,7 +92,7 @@ public function test_sqlite_withmigration() * Testing with sqlite database and migrations * @return void */ - public function test_postgresql_withmigration() + public function test_postgresql_withmigration(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test Postgresql") @@ -109,7 +109,7 @@ public function test_postgresql_withmigration() * Testing with sqlite database and migrations * @return void */ - public function test_postgresql_withnomigration() + public function test_postgresql_withnomigration(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test Postgresql") diff --git a/tests/Feature/DeployTest.php b/tests/Feature/DeployTest.php index c2b00a4..2a9556c 100644 --- a/tests/Feature/DeployTest.php +++ b/tests/Feature/DeployTest.php @@ -15,7 +15,7 @@ class DeployTest extends TestCase const DIR_MOCK ="tests/Feature/mock-asserts/"; - public function testPloiDeploy() + public function testPloiDeploy(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test") @@ -25,7 +25,7 @@ public function testPloiDeploy() ->assertSee(file_get_contents(base_path(self::DIR_MOCK."ploi-deploy.yaml"))); } - public function testVaporDeploy() + public function testVaporDeploy(): void { Livewire::test(ConfiguratorForm::class) ->set("name","Test") From dcfa5c6c4ed0c3d3e82c4d7768910da3360391c8 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 21:42:28 +0200 Subject: [PATCH 27/38] typehint fix --- app/Traits/Form/Deploy.php | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/Traits/Form/Deploy.php b/app/Traits/Form/Deploy.php index d18118a..9bb0b34 100644 --- a/app/Traits/Form/Deploy.php +++ b/app/Traits/Form/Deploy.php @@ -4,9 +4,9 @@ trait Deploy { - public $stepDeployType; - public $stepDeployWebhookType; - public $stepDeployWebhookUrl; + public string $stepDeployType; + public string $stepDeployWebhookType; + public string $stepDeployWebhookUrl; //public $stepDeployApiToken; public function loadDefaultsDeploy(): void @@ -17,7 +17,7 @@ public function loadDefaultsDeploy(): void //$this->stepDeployApiToken = "VAPOR_API_TOKEN"; } - public function loadDeployFromJson($j): void + public function loadDeployFromJson(object $j): void { data_fill($j, "stepDeployType", 'none'); data_fill($j, "stepDeployWebhookType", 'secret'); @@ -30,7 +30,11 @@ public function loadDeployFromJson($j): void //$this->stepDeployApiToken = $j->stepDeployApiToken; } - public function setDeployData($data) + /** + * @param array $data + * @return array + */ + public function setDeployData(array $data) { $data["stepDeployType"] = $this->stepDeployType; $data["stepDeployWebhookType"] = $this->stepDeployWebhookType; From 39c505b983baf2d7e7d45e4e80a2527f888ffd28 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 21:44:08 +0200 Subject: [PATCH 28/38] typehint fix --- app/Traits/Form/CodeQuality.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/app/Traits/Form/CodeQuality.php b/app/Traits/Form/CodeQuality.php index aa9b988..9ab42d6 100644 --- a/app/Traits/Form/CodeQuality.php +++ b/app/Traits/Form/CodeQuality.php @@ -33,7 +33,10 @@ public function loadDefaultsCodeQuality(): void $this->stepPsalmReport = false; } - public function loadCodeQualityFromJson($j): void + /** + * @param array $j + */ + public function loadCodeQualityFromJson(array $j): void { data_fill($j, "stepDirCodeSniffer", "app"); data_fill($j, "stepInstallCodeSniffer", true); @@ -57,7 +60,11 @@ public function loadCodeQualityFromJson($j): void $this->stepPsalmReport = $j->stepPsalmReport; } - public function setDataCodeQuality($data) + /** + * @param array $data + * @return array + */ + public function setDataCodeQuality(array $data): array { $data["stepExecutePhpunit"] = $this->stepExecutePhpunit; $data["stepExecutePestphp"] = $this->stepExecutePestphp; From 6b81172686bc405e6eec78d5e849d9d2ffac4592 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:11:29 +0200 Subject: [PATCH 29/38] typehint fix --- .../Resources/ConfigurationCollection.php | 2 +- app/Http/Resources/ConfigurationResource.php | 2 +- app/Models/Configuration.php | 7 +++-- app/Models/User.php | 6 ++-- app/Objects/GuesserFiles.php | 9 +++++- app/Objects/WorkflowGenerator.php | 30 +++++++++++++++---- app/Providers/AuthServiceProvider.php | 2 +- app/Providers/EventServiceProvider.php | 2 +- app/Traits/Form/BaseWorkflow.php | 21 +++++++++++-- 9 files changed, 63 insertions(+), 18 deletions(-) diff --git a/app/Http/Resources/ConfigurationCollection.php b/app/Http/Resources/ConfigurationCollection.php index b8b1066..3319af5 100644 --- a/app/Http/Resources/ConfigurationCollection.php +++ b/app/Http/Resources/ConfigurationCollection.php @@ -11,7 +11,7 @@ class ConfigurationCollection extends ResourceCollection * * @param \Illuminate\Http\Request $request * - * @return \Illuminate\Contracts\Support\Arrayable|\JsonSerializable|array + * @return \Illuminate\Contracts\Support\Arrayable|\JsonSerializable|array */ public function toArray($request) { diff --git a/app/Http/Resources/ConfigurationResource.php b/app/Http/Resources/ConfigurationResource.php index 6445dc2..914b2aa 100644 --- a/app/Http/Resources/ConfigurationResource.php +++ b/app/Http/Resources/ConfigurationResource.php @@ -10,7 +10,7 @@ class ConfigurationResource extends JsonResource * Transform the resource into an array. * * @param \Illuminate\Http\Request $request - * @return array + * @return array */ public function toArray($request) { diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php index 8622fec..1c5cbce 100644 --- a/app/Models/Configuration.php +++ b/app/Models/Configuration.php @@ -9,6 +9,9 @@ class Configuration extends Model { use HasFactory; + /** + * @var string[] + */ protected $casts = [ 'configuration' => 'object', ]; @@ -21,7 +24,7 @@ public static function getByCode(string $code) return self::firstWhere('code', $code); } - public function isMysqlService() + public function isMysqlService(): bool { if (isset($this->configuration->mysqlService)) { return $this->configuration->mysqlService; @@ -60,7 +63,7 @@ public function getDatabaseType(): string return ""; } - public static function saveConfiguration(string $code, $json, $metadata = "{}"): void + public static function saveConfiguration(string $code, mixed $json, string $metadata = "{}"): void { $confModel = self::getByCode($code); diff --git a/app/Models/User.php b/app/Models/User.php index 95af624..5ab7a0c 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -15,7 +15,7 @@ class User extends Authenticatable /** * The attributes that are mass assignable. * - * @var array + * @var array */ protected $fillable = [ 'name', @@ -26,7 +26,7 @@ class User extends Authenticatable /** * The attributes that should be hidden for arrays. * - * @var array + * @var array */ protected $hidden = [ 'password', @@ -36,7 +36,7 @@ class User extends Authenticatable /** * The attributes that should be cast to native types. * - * @var array + * @var array */ protected $casts = [ 'email_verified_at' => 'datetime', diff --git a/app/Objects/GuesserFiles.php b/app/Objects/GuesserFiles.php index e7732b0..8186556 100644 --- a/app/Objects/GuesserFiles.php +++ b/app/Objects/GuesserFiles.php @@ -26,6 +26,9 @@ class GuesserFiles public const PHPSTANNEON_VAR = "phpstanNeonFile"; + /** + * @var array $filePaths + */ public array $filePaths = []; public function pathFiles(string $projectDir, string $optionEnvWorkflowFile = self::ENV_DEFAULT_TEMPLATE_FILE): void @@ -143,7 +146,11 @@ private function somethingExists(string $methodPath, bool $isDirCheck = false): return is_file($path); } - public static function detectLaravelVersionFromTestbench($testbenchVersion): array + /** + * @param string $testbenchVersion + * @return array + */ + public static function detectLaravelVersionFromTestbench(string $testbenchVersion): array { $listLaravelVersions = [ "6.*", "7.*", "8.*"]; $listTestBenchVersions = [ "4.0", "5.0", "6.0"]; diff --git a/app/Objects/WorkflowGenerator.php b/app/Objects/WorkflowGenerator.php index 7c38cd2..3f6b4f8 100644 --- a/app/Objects/WorkflowGenerator.php +++ b/app/Objects/WorkflowGenerator.php @@ -29,6 +29,11 @@ public function loadDefaults(): void $this->loadDefaultsDeploy(); } + /** + * @param object $object + * @param string ...$args + * @return array + */ public static function compactObject(object $object, string ...$args): array { $vars = get_object_vars($object); @@ -43,6 +48,10 @@ public static function compactObject(object $object, string ...$args): array return $retVal; } + /** + * @param array $array + * @return string + */ public static function arrayToString(array $array): string { return "[ " . implode( @@ -56,16 +65,24 @@ function ($str) { ) . " ]"; } - public static function split($somethingToSplit, $splitChars = ",") + /** + * @param array|string $somethingToSplit + * @param string $splitChars + * @return array|mixed + */ + public static function split($somethingToSplit, string $splitChars = ",") { if (\is_string($somethingToSplit)) { + // @phpstan-ignore-next-line return array_map('trim', explode($splitChars, $somethingToSplit)); } return $somethingToSplit; } - - public function setData() + /** + * @return array + */ + public function setData(): array { $data = []; $data = $this->setDataBaseWorkflow($data); @@ -76,9 +93,10 @@ public function setData() } /** - * @return array|string + * @param array $data + * @return array|string */ - public function generate($data) + public function generate(array $data) { $stringResult = view('action_yaml', $data)->render(); return $stringResult; @@ -89,7 +107,7 @@ public function generate($data) * * @psalm-return list<'7.3'|'7.4'|'8.0'> */ - public function detectPhpVersion($phpversion): array + public function detectPhpVersion(string $phpversion): array { $listPhpVersions = [ "7.3", "7.4", "8.0"]; $stepPhp = []; diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php index ce74491..9b4e2f8 100644 --- a/app/Providers/AuthServiceProvider.php +++ b/app/Providers/AuthServiceProvider.php @@ -10,7 +10,7 @@ class AuthServiceProvider extends ServiceProvider /** * The policy mappings for the application. * - * @var array + * @var array */ protected $policies = [ // 'App\Models\Model' => 'App\Policies\ModelPolicy', diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index a9f10a6..21fd164 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -12,7 +12,7 @@ class EventServiceProvider extends ServiceProvider /** * The event listener mappings for the application. * - * @var array + * @var array */ protected $listen = [ Registered::class => [ diff --git a/app/Traits/Form/BaseWorkflow.php b/app/Traits/Form/BaseWorkflow.php index 3670c49..b422cc1 100644 --- a/app/Traits/Form/BaseWorkflow.php +++ b/app/Traits/Form/BaseWorkflow.php @@ -9,9 +9,15 @@ trait BaseWorkflow public string $name; public bool $onPush; + /** + * @var array|string $onPushBranches + */ public $onPushBranches; public bool $onPullrequest; + /** + * @var array $onPullrequestBranches + */ public array $onPullrequestBranches; public bool $manualTrigger; public string $databaseType; // 'none', 'mysql', 'postgresql', 'sqlite' @@ -27,12 +33,19 @@ trait BaseWorkflow public string $postgresqlVersion; public string $postgresqlDatabaseName; public int $postgresqlDatabasePort; + + /** + * @var array $stepPhpVersions + */ public array $stepPhpVersions; // 7.4 public bool $stepNodejs; // false public string $stepNodejsVersion; // 15.x public bool $stepCachePackages; //true public bool $stepCacheVendors; //true public bool $stepCacheNpmModules; // true + /** + * @var array $dependencyStability + */ public array $dependencyStability; // [] @@ -67,7 +80,7 @@ public function loadDefaultsBaseWorkflow(): void $this->dependencyStability = [ 'prefer-none' ]; } - public function loadBaseWorkflowFromJson($j): void + public function loadBaseWorkflowFromJson(object $j): void { data_fill($j, "stepDirCodeSniffer", "app"); data_fill($j, "dependencyStability", [ 'prefer-none' ]); @@ -124,7 +137,11 @@ public function loadBaseWorkflowFromJson($j): void $this->dependencyStability = (array) $j->dependencyStability; } - public function setDataBaseWorkflow($data): array + /** + * @param array $data + * @return array + */ + public function setDataBaseWorkflow(array $data): array { $data = WorkflowGenerator::compactObject( $this, From 07d276cd99a1bd489f6a61c8345e2ed4897f784c Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:23:01 +0200 Subject: [PATCH 30/38] fix phpstan level 6 --- app/Console/Kernel.php | 2 +- app/Exceptions/Handler.php | 4 ++-- app/Http/Kernel.php | 6 ++--- app/Http/Livewire/ConfiguratorForm.php | 23 +++++++++++++------ app/Http/Livewire/Dashboard/Daily.php | 3 +++ app/Http/Livewire/Dashboard/Latest.php | 3 +++ app/Http/Livewire/Dashboard/Metrics.php | 10 ++++---- app/Http/Livewire/Dashboard/Top.php | 3 +++ app/Http/Middleware/EncryptCookies.php | 2 +- .../PreventRequestsDuringMaintenance.php | 2 +- app/Http/Middleware/TrimStrings.php | 2 +- app/Http/Middleware/TrustHosts.php | 2 +- app/Http/Middleware/TrustProxies.php | 2 +- app/Http/Middleware/VerifyCsrfToken.php | 2 +- 14 files changed, 42 insertions(+), 24 deletions(-) diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 7d9c5f3..a9ba6a8 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -10,7 +10,7 @@ class Kernel extends ConsoleKernel /** * The Artisan commands provided by your application. * - * @var array + * @var array */ protected $commands = [ // diff --git a/app/Exceptions/Handler.php b/app/Exceptions/Handler.php index 3c4a404..2edecf1 100644 --- a/app/Exceptions/Handler.php +++ b/app/Exceptions/Handler.php @@ -10,7 +10,7 @@ class Handler extends ExceptionHandler /** * A list of the exception types that are not reported. * - * @var array + * @var array */ protected $dontReport = [ // @@ -19,7 +19,7 @@ class Handler extends ExceptionHandler /** * A list of the inputs that are never flashed for validation exceptions. * - * @var array + * @var array */ protected $dontFlash = [ 'password', diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 30020a5..c8870e8 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -11,7 +11,7 @@ class Kernel extends HttpKernel * * These middleware are run during every request to your application. * - * @var array + * @var array */ protected $middleware = [ // \App\Http\Middleware\TrustHosts::class, @@ -26,7 +26,7 @@ class Kernel extends HttpKernel /** * The application's route middleware groups. * - * @var array + * @var array */ protected $middlewareGroups = [ 'web' => [ @@ -50,7 +50,7 @@ class Kernel extends HttpKernel * * These middleware may be assigned to groups or used individually. * - * @var array + * @var array */ protected $routeMiddleware = [ 'auth' => \App\Http\Middleware\Authenticate::class, diff --git a/app/Http/Livewire/ConfiguratorForm.php b/app/Http/Livewire/ConfiguratorForm.php index d669dd8..d6d4615 100644 --- a/app/Http/Livewire/ConfiguratorForm.php +++ b/app/Http/Livewire/ConfiguratorForm.php @@ -34,20 +34,29 @@ class ConfiguratorForm extends Component use LaravelStuff; use Deploy; - public $code = ""; - public $template = ""; + public string $code = ""; + public string $template = ""; + /** + * @var array + */ protected $queryString = [ 'code' => ['except' => ''], 'template' => ['except' => ''] ]; - public $result; - public $errorGeneration; + public string $result; + public string $errorGeneration; + /** + * @var array + */ public $hints; + /** + * @var array + */ protected $rules = [ 'name' => 'required|string', 'onPushBranches' => 'exclude_unless:onPush,1|required', @@ -74,7 +83,7 @@ private function loadDefaults(): void } - private function loadFromJson($j): void + private function loadFromJson(object $j): void { $this->loadBaseWorkflowFromJson($j); $this->loadCodeQualityFromJson($j); @@ -112,13 +121,13 @@ public function mount(): void - public function updated($propertyName): void + public function updated(string $propertyName): void { $this->result = " "; } - public function template($x): void + public function template(string $x): void { if (in_array($x, ["laravelapp", "laravelpostgresql", "laravelpackage", "phppackage"])) { $this->template = $x; diff --git a/app/Http/Livewire/Dashboard/Daily.php b/app/Http/Livewire/Dashboard/Daily.php index 33bd9c0..02aeed2 100644 --- a/app/Http/Livewire/Dashboard/Daily.php +++ b/app/Http/Livewire/Dashboard/Daily.php @@ -9,6 +9,9 @@ class Daily extends Component { + /** + * @var \Illuminate\Support\Collection $daily + */ public $daily; public function mount(): void diff --git a/app/Http/Livewire/Dashboard/Latest.php b/app/Http/Livewire/Dashboard/Latest.php index bac8b65..459ecc6 100644 --- a/app/Http/Livewire/Dashboard/Latest.php +++ b/app/Http/Livewire/Dashboard/Latest.php @@ -7,6 +7,9 @@ class Latest extends Component { + /** + * @var \Illuminate\Database\Eloquent\Collection<\App\Models\Configuration> $latest + */ public $latest; public function mount(): void diff --git a/app/Http/Livewire/Dashboard/Metrics.php b/app/Http/Livewire/Dashboard/Metrics.php index 85c49d8..717c8ad 100644 --- a/app/Http/Livewire/Dashboard/Metrics.php +++ b/app/Http/Livewire/Dashboard/Metrics.php @@ -8,11 +8,11 @@ class Metrics extends Component { - public $count; - public $total; - public $last4hours; - public $last24hours; - public $last3days; + public int $count; + public int $total; + public int $last4hours; + public int $last24hours; + public int $last3days; public function mount(): void { diff --git a/app/Http/Livewire/Dashboard/Top.php b/app/Http/Livewire/Dashboard/Top.php index e51598c..c7c814d 100644 --- a/app/Http/Livewire/Dashboard/Top.php +++ b/app/Http/Livewire/Dashboard/Top.php @@ -7,6 +7,9 @@ class Top extends Component { + /** + * @var \Illuminate\Database\Eloquent\Collection<\App\Models\Configuration> $top + */ public $top; public function mount(): void diff --git a/app/Http/Middleware/EncryptCookies.php b/app/Http/Middleware/EncryptCookies.php index 033136a..5dfe79d 100644 --- a/app/Http/Middleware/EncryptCookies.php +++ b/app/Http/Middleware/EncryptCookies.php @@ -9,7 +9,7 @@ class EncryptCookies extends Middleware /** * The names of the cookies that should not be encrypted. * - * @var array + * @var array */ protected $except = [ // diff --git a/app/Http/Middleware/PreventRequestsDuringMaintenance.php b/app/Http/Middleware/PreventRequestsDuringMaintenance.php index e4956d0..22a1de8 100644 --- a/app/Http/Middleware/PreventRequestsDuringMaintenance.php +++ b/app/Http/Middleware/PreventRequestsDuringMaintenance.php @@ -9,7 +9,7 @@ class PreventRequestsDuringMaintenance extends Middleware /** * The URIs that should be reachable while maintenance mode is enabled. * - * @var array + * @var array */ protected $except = [ // diff --git a/app/Http/Middleware/TrimStrings.php b/app/Http/Middleware/TrimStrings.php index 5a50e7b..dd152fb 100644 --- a/app/Http/Middleware/TrimStrings.php +++ b/app/Http/Middleware/TrimStrings.php @@ -9,7 +9,7 @@ class TrimStrings extends Middleware /** * The names of the attributes that should not be trimmed. * - * @var array + * @var array */ protected $except = [ 'password', diff --git a/app/Http/Middleware/TrustHosts.php b/app/Http/Middleware/TrustHosts.php index b0550cf..d9d855a 100644 --- a/app/Http/Middleware/TrustHosts.php +++ b/app/Http/Middleware/TrustHosts.php @@ -9,7 +9,7 @@ class TrustHosts extends Middleware /** * Get the host patterns that should be trusted. * - * @return array + * @return array */ public function hosts() { diff --git a/app/Http/Middleware/TrustProxies.php b/app/Http/Middleware/TrustProxies.php index 14befce..12ed0e8 100644 --- a/app/Http/Middleware/TrustProxies.php +++ b/app/Http/Middleware/TrustProxies.php @@ -10,7 +10,7 @@ class TrustProxies extends Middleware /** * The trusted proxies for this application. * - * @var array|string|null + * @var array|string|null */ protected $proxies; diff --git a/app/Http/Middleware/VerifyCsrfToken.php b/app/Http/Middleware/VerifyCsrfToken.php index 0c13b85..a733f58 100644 --- a/app/Http/Middleware/VerifyCsrfToken.php +++ b/app/Http/Middleware/VerifyCsrfToken.php @@ -9,7 +9,7 @@ class VerifyCsrfToken extends Middleware /** * The URIs that should be excluded from CSRF verification. * - * @var array + * @var array */ protected $except = [ // From df23b8947a10dcf059d72ccccd28dc2a160453cd Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:23:20 +0200 Subject: [PATCH 31/38] Welcome Phpstan level 6 --- composer.lock | 51 ++++++++++++++++++++++++++------------------------- phpstan.neon | 2 +- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/composer.lock b/composer.lock index 27deeed..38aafcd 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d5f698a68e2150bbc29b04f314f99b1c", + "content-hash": "0bfb31e5186b43f47d9faaefa45375d2", "packages": [ { "name": "asm89/stack-cors", @@ -1645,16 +1645,16 @@ }, { "name": "laravel/framework", - "version": "v8.64.0", + "version": "v8.65.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "3337c029e1bb31d9712d27437cc27010ba302c9e" + "reference": "6db59afadca28dfdb2f719e7d79f93885ede17e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/3337c029e1bb31d9712d27437cc27010ba302c9e", - "reference": "3337c029e1bb31d9712d27437cc27010ba302c9e", + "url": "https://api.github.com/repos/laravel/framework/zipball/6db59afadca28dfdb2f719e7d79f93885ede17e4", + "reference": "6db59afadca28dfdb2f719e7d79f93885ede17e4", "shasum": "" }, "require": { @@ -1812,7 +1812,7 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-10-12T13:43:13+00:00" + "time": "2021-10-19T13:59:41+00:00" }, { "name": "laravel/serializable-closure", @@ -2286,16 +2286,16 @@ }, { "name": "livewire/livewire", - "version": "v2.6.7", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/livewire/livewire.git", - "reference": "7e8ded3cc496858b0a35c1c9355e5af79985bd0c" + "reference": "7795843505d4f8f3819bae7cae2a200f414d9658" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/livewire/livewire/zipball/7e8ded3cc496858b0a35c1c9355e5af79985bd0c", - "reference": "7e8ded3cc496858b0a35c1c9355e5af79985bd0c", + "url": "https://api.github.com/repos/livewire/livewire/zipball/7795843505d4f8f3819bae7cae2a200f414d9658", + "reference": "7795843505d4f8f3819bae7cae2a200f414d9658", "shasum": "" }, "require": { @@ -2346,7 +2346,7 @@ "description": "A front-end framework for Laravel.", "support": { "issues": "https://github.com/livewire/livewire/issues", - "source": "https://github.com/livewire/livewire/tree/v2.6.7" + "source": "https://github.com/livewire/livewire/tree/v2.7.0" }, "funding": [ { @@ -2354,7 +2354,7 @@ "type": "github" } ], - "time": "2021-09-25T22:50:47+00:00" + "time": "2021-10-18T01:30:22+00:00" }, { "name": "monolog/monolog", @@ -7802,16 +7802,16 @@ }, { "name": "laravel/dusk", - "version": "v6.19.0", + "version": "v6.19.1", "source": { "type": "git", "url": "https://github.com/laravel/dusk.git", - "reference": "b55a5720d256f3d71da7fb559a9f5b330a895cd4" + "reference": "9689f78bfdcef35a8ffd67950a398528454d99ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/dusk/zipball/b55a5720d256f3d71da7fb559a9f5b330a895cd4", - "reference": "b55a5720d256f3d71da7fb559a9f5b330a895cd4", + "url": "https://api.github.com/repos/laravel/dusk/zipball/9689f78bfdcef35a8ffd67950a398528454d99ce", + "reference": "9689f78bfdcef35a8ffd67950a398528454d99ce", "shasum": "" }, "require": { @@ -7869,9 +7869,9 @@ ], "support": { "issues": "https://github.com/laravel/dusk/issues", - "source": "https://github.com/laravel/dusk/tree/v6.19.0" + "source": "https://github.com/laravel/dusk/tree/v6.19.1" }, - "time": "2021-10-11T15:25:08+00:00" + "time": "2021-10-19T15:05:44+00:00" }, { "name": "laravel/sail", @@ -8738,16 +8738,16 @@ }, { "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", + "version": "5.3.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", "shasum": "" }, "require": { @@ -8758,7 +8758,8 @@ "webmozart/assert": "^1.9.1" }, "require-dev": { - "mockery/mockery": "~1.3.2" + "mockery/mockery": "~1.3.2", + "psalm/phar": "^4.8" }, "type": "library", "extra": { @@ -8788,9 +8789,9 @@ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", "support": { "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/master" + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" }, - "time": "2020-09-03T19:13:55+00:00" + "time": "2021-10-19T17:43:47+00:00" }, { "name": "phpdocumentor/type-resolver", diff --git a/phpstan.neon b/phpstan.neon index eba6fa9..2518e96 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -1,7 +1,7 @@ includes: - ./vendor/nunomaduro/larastan/extension.neon parameters: - level: 5 + level: 6 paths: - app - tests From 1f4bf636444cd76862f2c4113942b0ecf4eeaddb Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:26:29 +0200 Subject: [PATCH 32/38] Update CodeQuality.php --- app/Traits/Form/CodeQuality.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/app/Traits/Form/CodeQuality.php b/app/Traits/Form/CodeQuality.php index 9ab42d6..a3fb1e9 100644 --- a/app/Traits/Form/CodeQuality.php +++ b/app/Traits/Form/CodeQuality.php @@ -33,10 +33,7 @@ public function loadDefaultsCodeQuality(): void $this->stepPsalmReport = false; } - /** - * @param array $j - */ - public function loadCodeQualityFromJson(array $j): void + public function loadCodeQualityFromJson(object $j): void { data_fill($j, "stepDirCodeSniffer", "app"); data_fill($j, "stepInstallCodeSniffer", true); From 43bd58d0bc1310d901cfd7c3537aa67cc845fc1b Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:29:04 +0200 Subject: [PATCH 33/38] Update CHANGELOG.md --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3aa085d..70889dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,11 @@ # Changelog -## 0.4.3 - WIP +## 0.4.3 - 2021-10-19 +It is still Hacktoberfest! - Psalm, create Sarif report for GitHub code scanning integration - update to Alpinejs 3 - Allow user to set dependency stability (none, the latest stable, the lowest stable), thanks to @marulitua +- Phpstan Level 6 (from 5 to 6, report missing typehints) ## 0.4.2 - 2021-10-12 Hacktoberfest, goes on... From 183ee2425fdfd397f39f596bfccfc2bb78e55a0d Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:38:27 +0200 Subject: [PATCH 34/38] reportUnmatchedIgnoredErrors --- phpstan.neon | 2 ++ 1 file changed, 2 insertions(+) diff --git a/phpstan.neon b/phpstan.neon index 2518e96..9003d0c 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -1,6 +1,8 @@ includes: - ./vendor/nunomaduro/larastan/extension.neon parameters: + reportUnmatchedIgnoredErrors: false + level: 6 paths: - app From 005288292ea8924fbc6418463560583e8f97d49a Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:42:05 +0200 Subject: [PATCH 35/38] Update Configuration.php --- app/Models/Configuration.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php index 1c5cbce..cad920c 100644 --- a/app/Models/Configuration.php +++ b/app/Models/Configuration.php @@ -63,7 +63,12 @@ public function getDatabaseType(): string return ""; } - public static function saveConfiguration(string $code, mixed $json, string $metadata = "{}"): void + /** + * @param string $code + * @param array|object|mixed $json + * @param string $metadata + */ + public static function saveConfiguration(string $code, $json, string $metadata = "{}"): void { $confModel = self::getByCode($code); From 3e5183ef0c1a19e7b1c2c7e27f029b506334a213 Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:44:04 +0200 Subject: [PATCH 36/38] Update phpstan.neon --- phpstan.neon | 1 - 1 file changed, 1 deletion(-) diff --git a/phpstan.neon b/phpstan.neon index 9003d0c..66105fa 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -2,7 +2,6 @@ includes: - ./vendor/nunomaduro/larastan/extension.neon parameters: reportUnmatchedIgnoredErrors: false - level: 6 paths: - app From 9aae655c53cf40430623e98242a5318af841349b Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:55:58 +0200 Subject: [PATCH 37/38] ignore errors for false positive for php8 --- app/Objects/WorkflowGenerator.php | 1 - composer.json | 1 + composer.lock | 2 +- phpstan.neon | 3 +++ 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/Objects/WorkflowGenerator.php b/app/Objects/WorkflowGenerator.php index 3f6b4f8..503d53e 100644 --- a/app/Objects/WorkflowGenerator.php +++ b/app/Objects/WorkflowGenerator.php @@ -73,7 +73,6 @@ function ($str) { public static function split($somethingToSplit, string $splitChars = ",") { if (\is_string($somethingToSplit)) { - // @phpstan-ignore-next-line return array_map('trim', explode($splitChars, $somethingToSplit)); } return $somethingToSplit; diff --git a/composer.json b/composer.json index 1258e0d..970020c 100644 --- a/composer.json +++ b/composer.json @@ -36,6 +36,7 @@ "mockery/mockery": "^1.4.4", "nunomaduro/collision": "^5.10", "nunomaduro/larastan": "^0.7.2", + "phpstan/phpstan": "^0.12.99", "phpunit/phpunit": "^9.5.8", "psalm/plugin-laravel": "^1.4", "squizlabs/php_codesniffer": "^3.6", diff --git a/composer.lock b/composer.lock index 38aafcd..ecfa98e 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "0bfb31e5186b43f47d9faaefa45375d2", + "content-hash": "0ca75231947b063dbe0cbd35a5b78e57", "packages": [ { "name": "asm89/stack-cors", diff --git a/phpstan.neon b/phpstan.neon index 66105fa..782fd55 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -2,6 +2,9 @@ includes: - ./vendor/nunomaduro/larastan/extension.neon parameters: reportUnmatchedIgnoredErrors: false + ignoreErrors: + - '#Parameter .1 \$separator of function explode expects non-empty-string, string given.#' + level: 6 paths: - app From 059b6cd51a136b3bb76a7b679b231ece174f3e0a Mon Sep 17 00:00:00 2001 From: Roberto B Date: Tue, 19 Oct 2021 22:59:56 +0200 Subject: [PATCH 38/38] Update Latest.php --- app/Http/Livewire/Dashboard/Latest.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Livewire/Dashboard/Latest.php b/app/Http/Livewire/Dashboard/Latest.php index 459ecc6..c843fbf 100644 --- a/app/Http/Livewire/Dashboard/Latest.php +++ b/app/Http/Livewire/Dashboard/Latest.php @@ -8,7 +8,7 @@ class Latest extends Component { /** - * @var \Illuminate\Database\Eloquent\Collection<\App\Models\Configuration> $latest + * @var mixed $latest */ public $latest;