Skip to content

Releases: Fraunhofer-AISEC/cpg

4.0.0-beta.1

02 Jul 18:02
223452f
Compare
Choose a tag to compare
4.0.0-beta.1 Pre-release
Pre-release
  • Initial template support (#368)
  • Made language frontends configurable (#389)
  • The CPG console (#435)

Many other things.

3.5.1

17 Apr 10:52
Compare
Choose a tag to compare

Added support for JitPack (#399)

3.5.0

15 Apr 16:11
abdfc89
Compare
Choose a tag to compare

Features

  • Includes the new experimental Python Support (#358)

Graph Changes

Added

  • Added a KeyValueExpression for key value pairs, i.e. as part of a dictionary (#358)

Bux Fixes

  • Correctly setting base of member call expression (#378)
  • Fixing Infinite loops in ControlFlowSensitiveDFGPass by adjusting the equals function for property edges (#385)

3.4.1

09 Apr 10:15
Compare
Choose a tag to compare

Bug Fixes

This release fixes a major bug (#387) accidentally introduced by #350 and fixed by #388. We decided to release this immediately with a cherry-picked commit instead of releasing it alongside other commits, since we upgraded CDT in the meantime to 10.2 and we will reserve that for a 3.5.0 release.

3.4.0

20 Mar 16:42
6be3678
Compare
Choose a tag to compare

Changelog

  • Introduce ParameterizedType for Graph Consistency (#317)
  • Deprecate old CFG pass (#345)
  • Handling typedefs with tabs (#332)
  • Improve Java FQN type guessing (#331)
  • Experimental Golang support (#350)
  • Better call resolving (#352)

3.3.1

18 Jan 13:39
e68da42
Compare
Choose a tag to compare

Bux Fixes

  • Fixes for Analysis of Java files takes much longer with possible timeout

3.3.0

14 Jan 21:23
d70539d
Compare
Choose a tag to compare

Please not that there is a bug in this version that causes the cpg to run into a dead-lock into certain circumstances (see #304). Please consider using the 3.3.1 hotfix instead.

Graph Changes

Added

  • operatorCode as property to MemberExpression.

Bux Fixes

  • Fixes for Java static calls by properly parsing member call expressions.
  • Fixing some minor issues with fields
  • Support implicit annotation style in Java by implementing single member annotations in Java

3.2.0

28 Nov 11:48
a249b8c
Compare
Choose a tag to compare

Graph Changes

Added

  • Property INDEX for edges part of a list to preserve information where ordering has semantic or syntactic information
  • Property BRANCH for edges part of the Evaluation Order Graph EOG where a condition evaluation leads to a branch. The value represents the result of the evaluation: true or false.

API Changes

Added

  • For Backward compatibility all functions that previously returned Nodes, e.g. getParameters() now unwrap the node on the Property Edge on the other side of the Edge that was previously member of the list. Instead function were added that return the List of of getParametersPropertyEdge(), e.g. get to allow access to the in-memory representation of the PropertyEdge-feature.

3.1.0

16 Oct 19:46
b752d4a
Compare
Choose a tag to compare

Fixes

  • Hotfix: Do not use URI in LocationConverter (#256)

3.0.0

24 Sep 19:50
8f5f461
Compare
Choose a tag to compare

Graph Changes

Changed

  • A definition edge for fields as not only methods can have definitions and declarations.

API Changes

Changed

  • Moving Declarations to .graph.declarations, statements to .graph.statements and expressions to .graph.statement.expressions for easier overview of the whole CPG structure.
  • Introduces a new configuration options for so called "unity" builds, combine all translation units together into one to reduce the amount of headers that need to be processed.
  • Adds a DefinitionHolder Interface for Nodes to implement that then have to customize where Declarations are added over addDeclaration.