Skip to content

Releases: roscopeco/jasm

v0.7.0

17 Sep 16:54
48b9ad0
Compare
Choose a tag to compare

This release introduces the following new features to JASM:

There are numerous smaller fixes and improvements, including:

  • Better disassembly of enums & interfaces
  • Fixed handling of method types with field access tags, allowing Java record classes to be assembled and disassembled
  • Fixed exception statements to support Java finally

Commits in this release

Full Changelog: v0.6.0...v0.7.0

v0.6.0

25 Jun 13:46
f9b70e9
Compare
Choose a tag to compare

The headline of this release is the JASM disassembler, which can turn any Java .class file into JASM code.

Also new this time are:

  • Support for long and double
  • New "star syntax" for explicit InterfaceMethodref on invokestatic and invokevirtual (e.g. invokevirtual* com/example/MyClass.method(...))
  • Fixed a bug with array types as owners for method invocations

What's Changed

Full Changelog: v0.5.0...v0.6.0

v0.5.0

11 Jun 12:01
4e624ae
Compare
Choose a tag to compare

This release add support for exception handling. Two styles are supported:

  • Basic (manual) handler syntax with exception statement
  • try/catch syntax for Java-like handling

What's Changed

Full Changelog: v0.2.0...v0.5.0

v0.4.0

02 Jun 18:05
1a4610d
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.0...v0.4.0

v0.3.0

28 May 20:14
8bd5000
Compare
Choose a tag to compare

What's Changed

Support block comments, tweaks for better IntelliJ integration

  • Whitespace & comments to hidden channel
    • Previously, we skipped them in the lexer
    • IntelliJ needs them not to be skipped (it needs a continuous stream)
  • Explicit DQUOTE token
  • Allow NAME as well as QNAME for extends and implements
  • Optional comma in implements list
  • Add classbody rule
    • Encapsulates the class body minus the enclosing braces
    • Makes for an easier time in the PSI tree for IntelliJ
  • Tidied up stat_block, omit opening/closing brace
  • Encapsulate invokedynamic body into a new rule

Full Changelog: v0.2.0...v0.3.0

v0.2.0

25 May 17:24
8e35639
Compare
Choose a tag to compare

What's Changed

  • Fix examples in README (#3)
  • Downgrade required Java version to Java 11+

Full Changelog: v0.1...v0.2.0

v0.1

24 May 19:13
ab0892c
Compare
Choose a tag to compare

First public release 🥳