Skip to content

Releases: TeamworkGuy2/JParseCode

JParseCode 0.18.0

02 Apr 04:24

Choose a tag to compare

Changed

  • Added -debug and -threads # command line arguments
  • More detailed debug and log file information
  • Renamed TokenizeStepLogger -> ParserActionLogger
  • ParseTimes.log() renamed setActionTime()
  • Simplified and synchronized PerformanceTrackers so instance can be shared across threads
  • Renamed node.js plugin file plugins/node-js/jparser-tools-cli -> plugins/node-js/jparse-code-cli and renamed associated test file

Removed

  • Unused ScopeType enum

Fixed

  • Fixed multi-threaded parsing! Handling of FileReadUtil, performance logs, and result lists are now synchronized in ParserMisc.parseFileSet()
  • Update dependency [email protected] (fix for decoding empty streams/files)

JParseCode 0.17.0

02 Apr 04:24

Choose a tag to compare

Performance refactor, several libraries updated: JArrays, JCollectionUtil, JFileIo, JTextParser, and JTextTokenizer

Changed

  • Changed to new FileReadUtil.readChars(InputStream) ([email protected])
  • Switched lombok val usage to Java 9 var
  • Added HashMap<String, *Keyword> keywordSet field to CsKeyword and JavaKeyword for performance
  • Added some duplicate code in IdentifierTokenizer to work with optimized CharConditions.ContainsFirstSpecial constructor

JParseCode 0.16.1

18 Mar 03:28

Choose a tag to compare

Fixed

  • Accidentally deleted compiled *.jar files in 0.16.0 release

JParseCode 0.16.0

18 Mar 03:21

Choose a tag to compare

Added

  • Class signature annotation parsing (in BlockExtractor, CsBlockParser, and JavaBlockParser)

Changed

  • Simplified ProjectClassSet (removed two unnecessary generic parameters, renamed private fields):
    • Renamed resolveSimpleNameToClass() -> resolveClassNameAgainstNamespaces()
    • Renamed resolveSimpleNameToClassSingleNamespace() -> resolveClassNameAgainstNamespace()
  • Performance improvements to collection allocations in NameUtil and ClassSigResolver
  • Renamed AccessModifier interface to Keyword
  • PerformanceTrackers.getTopParseTimes() and getTopParseStepDetails() switched first parameter from javax.swing.SortOrder to boolean

Removed

  • Unused AstNodeConsumer and AstNodePredicate interfaces
  • Removed lombok.val usage/dependency from several classes and packages in favor of Java 10 var or actual type.

Fixed

  • Bug in TokenizeStepLogger trying to StringCase.toCamelCase() action names

JParseCode 0.15.7

03 Mar 21:45

Choose a tag to compare

Changed

JParseCode 0.15.6

03 Mar 21:45

Choose a tag to compare

Added

  • Parameter default value parsing support added to MethodParametersParser
  • Added DataTypeExtractor.isDefaultValueLiteral() to check for field/parameter default values

Changed

  • Renamed CsKeyword.Inst -> CsKeyword.CsKeywordUtil
  • Renamed JavaKeyword.Inst -> JavaKeyword.JavaKeywordUtil
  • Unit tests changed to use static imports of TypeAssert.ary() instead of new Object[] {...} and TypeAssert.ls() instead of Arrays.asList()

JParseCode 0.15.5

03 Mar 21:44

Choose a tag to compare

Changed

  • ParserWorkFlow returns the -help message if no arguments are given when run

Fixed

  • bin/jparse_code.jar wasn't properly compiled as a runnable jar

JParseCode 0.15.4

03 Mar 21:24

Choose a tag to compare

Added

  • Annotations to parameter signatures (with basic parameter annotation parsing added to MethodParametersParser.extractParamsFromSignature())
  • Documented DataTypeExtractor methods
  • Added/Improved test cases for:
    • Class signatures (generics, multiple extend/implement types)
    • Generic types with multiple parameters
    • Annotations on method parameters
    • TODO: fix failing test for default parameters

Removed

  • Old code from MainParser

Fixed

  • CsBlockParser.readClassIdentifierAndExtends() was incorrectly trying to parse new { object initializer blocks as class declarations
  • DataTypeExtractor was reversing the parameter order of multi-paremeter generic types

JParseCode 0.15.3

03 Mar 21:23

Choose a tag to compare

Changed

JParseCode 0.15.2

03 Mar 21:23

Choose a tag to compare

Changed

  • Upgrade to Java 9
  • Upgrade to JUnit 5

Fixed

  • Fix a minor compile issue found by Java 9 upgrade