release notes

Post date: Dec 18, 2017 3:50:0 PM

  • Addressed underlying issues resulting in code inspection false negatives including:

    • Fixed long-standing issue where subsequent identifiers of chained expressions that can't be resolved would attempt to resolve to top-level identifiers incorrectly.

    • Fixed an issue where a type from the wrong namespace could be resolved incorrectly.

    • Proper resolution of Schema.sObjectType expressions.

    • Fixed an issue when inferring the data type of arithmetic expressions including both whole and fractional values.

    • Fixed a long-standing issue that could cause no type resolution to occur when a symbol exists in both local source and the OST. Now the local version of the type is resolved in these cases.

    • Added support for clone() on custom Apex classes.

    • Added support for equals() and hashCode() on Apex enums.

    • Added support for polymorphic relationship fields. Such fields now evaluate to all supported object types for further variant resolution. This requires OST regeneration as the metadata is stored at OST generation time and used at runtime.

    • Trigger collection context fields (old/new[Map]) evaluate as strongly-typed collections when used within a trigger declaration.

  • Updated the URLs for downloading PMD Apex and its reference ruleset.

  • Fixed an issue with digesting PMD 6.0.0 XML output.

  • Other minor fixes and improvements.