Skip to content

Release 0.9.0

Latest

Choose a tag to compare

@jubnzv jubnzv released this 25 Jun 12:06
· 4 commits to master since this release

Added

  • DuplicatedImport detector: PR #381
  • TransitiveImport detector: Issue #382
  • RedundantBooleanExpression detector: Issue #401
  • UnusedMethodArgument detector: Issue #397
  • PreferGlobalFunction detector: Issue #390
  • Support for external tools: Users can now load custom tools using the -t option with a path:className format, similar to how external detectors work: PR #398
  • SuboptimalSend: Suggest replacing self.forward with self.{notify,reply}: Issue #386
  • Add short option -O for --output-path
  • Include maximum supported Tact version in --version output: Issue #405
  • SARIF output support: Issue #409

Changed

  • DuplicatedImport and TransitiveImport: Don't check internal stdlib imports
  • ZeroAddress and ConstantAddress: Ignore uses in comparisons: Issue #384
  • Warn if one of the disabled detectors (-dd) is unused: Issue #393
  • If the directory for --output-path is unavailable, try to create it
  • UnusedExpressionResult: More informative error on unused method/function calls: Issue #404
  • ShortCircuitCondition: Don't report cheap math and time stdlib functions: Issue #407

Fixed

  • ImportGraph: Set correct file paths of import nodes for .func files: PR #381
  • EtaLikeSimplifications: Confusing help string for Boolean literals: Issue #392
  • No output with -o json without --output-path specified: Issue #403
  • -o json --output-path <some dir> stores warnings in the plain text format
  • PreferGlobalFunction: Don't report methods with attributes: Issue #406
  • ArgCopyMutation: False positive on mutating method calls: Issue #395
  • UnusedMethodArgument: Don't report inherited trait methods: Issue #402

Release contributors

@Esorat
@jubnzv