Enigma 2.2.0 Changelog

2.2.0 brings tons of updates to the Enigma server, making it actually usable, improves the identifier panel, and adds a new print-stats command!

  • added more info to the identifier panel:
    • for inner classes, the name of their parent class is now displayed
    • for parameters, their type is now shown. this is super helpful for mapping lambdas where you can’t see their type!
  • made some big changes and cleanups to the enigma server!
    • the protocol version is now 2!
    • made lots of architectural changes to streamline the code
    • greatly improved the way client approval is handled
    • added a development option to log packets
    • added a username field to the server creation dialog
    • added validation for the client’s username
    • fixed lots of possible crashes (if you wanted to, it would be trivially easy to crash an enigma <2.2.0 server with a custom client)
    • added lots of new tests to make sure everything is working!
  • added a new command: print-stats
    • this command generates and prints mapping stats for on-the-go mappers who can’t be bothered to crack open the swing GUI
  • added dynamic resizing for the calls tree docker’s list of tokens
  • added a new shortcut constructor for LocalVariableEntry
  • added tokenization of invokedynamic arguments (this means something if you’re a nerd. we promise)
  • fixed some users not seeing indentation when using the vineflower decompiler
  • updated syntaxpain to 1.1.2
    • fixes the line ruler in the code view not automatically resizing
  • updated quilt config to 1.2
  • updated vineflower to the latest 1.10.0 snapshot