Skip to content

Releases: Col-E/Recaf

1.10.1 - UX Improvements & Fixes

10 Mar 23:49
Compare
Choose a tag to compare

What's changed

  • Config -> Display
    • Language now is a dropdown of all loaded languages
    • Style now is a dropdown of all loaded themes
  • Copy-paste now places code AFTER selection instead of BEFORE

What's fixed

  • Add missing language for copy/paste keybind entries in the config window

1.10.0 - UX Improvements & Fixes

09 Mar 09:23
Compare
Choose a tag to compare

What's new

  • Method instructions can now be copy-pasted (with Control + C / Control + V)
  • Quick-access in full-class decompilation window
    • Context-sensitive right-click allows for the following actions based on what you click:
      • Open definitions of classes, fields, and methods
      • Search for references to classes, fields, and methods
  • Dynamic refresh in single-method decompilation window
    • Decompile a method, then edit it's bytecode to see live changes in the decompiled code
  • Decompilation window is now auto-sized based on content
  • Cleaner search result representation of methods
  • Update CFR 138->140
  • Update ASM 7.0->7.1 (Support for Java 13)

What's fixed

  • Agent mode is now properly detected in more cases
    • Agent launch flag removed, process is automatic now
  • Agent mode no longer breaks the UI when new classes are loaded after Recaf launches in agent-mode
  • Crash when selecting expandable error messages in the logging pane
  • File prompts now remember the last directory you were in
  • Access icons transparency could look bad in dark themes due to transparent sections

Java 9+

(This is a repeat message from the last update, but is still very relevant)

Recaf's release binaries will continue to be based on Java 8 for a while, but if you don't mind a tiny bit of effort you can use any version of Java 9 or above. You can read about this more on the documentation page: Usage Guide - Requirements

1.9.0 - Fixes and Java 9+ Support

02 Jan 02:06
Compare
Choose a tag to compare

Java 9+

Recaf's release binaries will continue to be based on Java 8 for a while, but if you don't mind a tiny bit of effort you can use any version of Java 9 or above. You can read about this more in the updated documentation page: Usage Guide - Requirements

What's new

  • Add missing opcode format for IINC instructions
  • Allow ASM7 in config (And is now the default value)

What's fixed

  • Fix type annotation editor missing UI components
  • Fix search from omitting results in declaration mode
  • Fix search providing duplicate results in some cases
  • Fix command line parsing race condition
  • Fix source code not compiling under JDK 9 or higher
    • Remember to read the docs (link above) for details on Java 9+ usage

1.8.3 - Big fixes & minor updates

20 Dec 17:41
Compare
Choose a tag to compare

What's new

  • Added ability to create int opcodes (BiPush, SiPush, NewArray)
  • Updated CFR 136 -> 138

What's fixed

  • Search including overly-broad results
  • History window missing an icon

1.8.2 - UX and decompilation improvements

24 Nov 23:27
Compare
Choose a tag to compare

What's new

1.8.1 - Bug fix

21 Nov 07:31
Compare
Choose a tag to compare

1.8.0 - Bug fixes and UX improvements

20 Nov 20:14
Compare
Choose a tag to compare

What's new

What's fixed

  • Annotation formatting supports array type values
  • Search results include additional garbage results (type insn values)
  • Improper CSS application to opcode editor sheet

1.7.0 - UX improvements

02 Nov 08:28
Compare
Choose a tag to compare

What's new

  • Opcode editing / insertion now uses combo-boxes instead of a group of radio-buttons.
  • Instructions can be added to empty methods
    • Method is updated with template values to get you started
  • More translatable text values
  • Access editor buttons now display text representation in addition to the icon identifier
  • File-tree improvements
    • Using Enter while navigating the file tree will open the selected file
    • Double clicking a package will recursively open the sub-packages until multiple options are available.
  • Dark theme support
    • Set Display -> Style to night to enable it.

What's fixed

  • NPE when sorting columns in the fields / methods tables
  • Logged exceptions do not log the entire stack-trace
  • Docs used Arial when intended font was Roboto

Thanks again to andylizi for the pull-requests included in this release! (#90, #93, #95, #98)

1.6.2 - Bug fixes & language updates

28 Sep 11:25
27359ad
Compare
Choose a tag to compare

What's new

  • Chinese supported added by andylizi
    • In the config menu under the Display category, set the Language value to zh-cn and restart Recaf
  • Updated CFR to 133
    • Better Java9+ strings & more
  • Image buttons now have tooltips

What's fixed

  • Annotation formatting showing extra comma
  • Menu items that are useless without input can still be used while no file is loaded
  • Specifying a custom language uses english values as fallback values
  • Large classes caused decompilation to fail due to regex matching
  • Recompile option shown in single-method decompiles despite lack of support (full class recompilation only)
  • Recompile option is illegible due to bad styling

1.6.1 - Bug fixes

06 Sep 08:52
Compare
Choose a tag to compare

What's new

  • Cleaner history window
    • Shows timestamp of each save-state
  • Split threading options into two categories (IO + Logic)
    • Defaults are higher for both than previous default of 1 (tested on large input, seems about optimal on my 8-core machine)

What's fixed

  • Various NPE's in the history window
  • More accurate renaming of method hierarchies
  • More accurate renaming of classes with inner-classes
  • Renaming a class causing a NPE while updating the FileTree model
  • Renaming a class and putting it in a directory that does not exist causing a hard-crash
  • Renaming a class leaves artifacts visible in searches
  • Renaming a class leaves ghost references due to not resetting cache after updating renamed references
  • Infinite loop caused by logging calls & JavaFX integration
    • Ironically, only occurs when auto-updating. So this update will cause people some problems ¯\_(ツ)_/¯