llaville / php-compatinfo

Library that find out the minimum version and the extensions required for a piece of code to run
https://llaville.github.io/php-compatinfo/7.1/
Other
371 stars 21 forks source link

Add SARIF output format #312

Closed llaville closed 2 years ago

llaville commented 2 years ago

Feature request

Summary

With commit 7c0334cfd8965593b1afe8f85642ffd9ddb5452f, I've recently allow to add new output format easily with the Reporter extension. Now it's turn to add SARIF in output formats list.

Description

SARIF (Static Analysis Results Interchange Format) is an OASIS Standard that defines an output file format. The SARIF standard is used to streamline how static analysis tools share their results by implementing a subset of the SARIF 2.1.0 JSON schema.

Other Static Tool Analysers like

Because I don't found any PHP library that support SARIF v2 specifications, I've published a PHP SDK as a new bartlett/sarif-php-sdk package already available on packagist that implement the full v2.1.0 specifications.

llaville commented 2 years ago

Summary of rules list implemented

Rule Id. Sniff
CA4001 MethodDeclarationSniff
CA4002 DeclareSniff
CA4003 PropertyDeclarationSniff
---------- -------------------------------
CA5101 MagicMethodsSniff
CA5108 ParamTypeDeclarationSniff
---------- -------------------------------
CA5208 ParamTypeDeclarationSniff
---------- -------------------------------
CA5301 MagicMethodsSniff
CA5302 DeclareSniff
CA5303 GotoSniff
CA5304 ShortTernaryOperatorSniff
CA5305 CryptStringSniff
CA5306 ConstSyntaxSniff
---------- -------------------------------
CA5401 ClosureSniff
CA5402 ArrayDereferencingSyntaxSniff
CA5403 ShortArraySyntaxSniff
CA5404 ClassMemberAccessSniff
CA5405 ClassExprSyntaxSniff
CA5406 BinaryNumberFormatSniff
CA5407 UseTraitSniff
CA5408 ParamTypeDeclarationSniff
---------- -------------------------------
CA5501 MagicClassConstantSniff
CA5502 EmptySniff
CA5503 GeneratorSniff
---------- -------------------------------
CA5601 MagicMethodsSniff
CA5602 PowOperatorSniff
CA5603 UseConstFunctionSniff
CA5606 ConstSyntaxSniff
---------- -------------------------------
CA7001 ReturnTypeDeclarationSniff
CA7002 DeclareSniff
CA7003 GeneratorSniff
CA7004 ClassMemberAccessSniff
CA7005 NullCoalesceOperatorSniff
CA7006 CombinedComparisonOperatorSniff
CA7007 ReservedSniff
CA7008 ParamTypeDeclarationSniff
CA7009 AnonymousClassSniff
---------- -------------------------------
CA7107 ReservedSniff
CA7108 ParamTypeDeclarationSniff
---------- -------------------------------
CA7207 ReservedSniff
CA7208 ParamTypeDeclarationSniff
---------- -------------------------------
CA7401 TypedPropertySniff