You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+114Lines changed: 114 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -366,3 +366,117 @@ A wealth of bugfixes brought to you by rai, iota, and friends. You'll be rich. T
366
366
- fixed deobfuscation level icons not immediately updating after stat generation completes (thanks [pitheguy](https://github.com/PiTheGuy)!)
367
367
- improved wording of some save dialogs (thanks [pitheguy](https://github.com/PiTheGuy)!)
368
368
- improved `PackageIndex` javadoc
369
+
370
+
# 2.7.0
371
+
372
+
Featuring code from supersaiyansubtlety, pitheguy, and rai, your recently bereaved QM team has fought through their grief over Quilt Mappings to bring you this release.
373
+
Blood, sweat, refactors, enhancements, tears, unit tests, bugfixes, blood, and more have gone into this release.
374
+
375
+
- added tooltips showing javadoc and declarations for entries ([#307](https://github.com/QuiltMC/enigma/pull/307))
376
+
- contains 3 elements:
377
+
- navigable links to parent classes
378
+
- clicking a class will open its tooltip, control-clicking a package will navigate to and expand it in the tree
379
+
- formatted javadoc
380
+
- snippet of code from the declaration
381
+
- tooltips are movable via dragging
382
+
- tooltips can be disabled or made non-interactable via the config
383
+
- reworked commands and added a new search command
384
+
- added a new `search-mappings` command ([#282](https://github.com/QuiltMC/enigma/pull/282))
385
+
- allows searching for mappings using regular expressions. and normal expressions. as you desire
386
+
- includes extensive options for filtering by types, access, names, and more
387
+
- allows sorting by name, package, and depth
388
+
- added specification by name for command arguments (`parameter=value`) instead of positionally ([#280](https://github.com/QuiltMC/enigma/pull/280))
389
+
- the two can be mixed as long as all positional arguments come before named args
390
+
- any argument can be specified either by name or position
391
+
- this is necessary for the new search command which has an unfathomable FIFTEEN possible arguments
392
+
- added generation parameters as arguments to `PrintStatsCommand` ([#297](https://github.com/QuiltMC/enigma/pull/297))
393
+
- fixed several bugs in existing commands (where are all these bugs coming from)
394
+
- fixed `InvertMappingsCommand` using `OUTPUT_FOLDER` instead of `MAPPING_OUTPUT`, meaning it didn't support alternate formats
395
+
- fixed `InvertMappingsCommand`'s arguments skipping an index
396
+
- fixed `ENIGMA_PROFILE` argument not verifying it was a file
397
+
- fixed `ComposeMappingsCommand` not properly declaring its optional args
398
+
- fixed `DecompileCommand` using the `OUTPUT_JAR` arg instead of an output directory
- these changes clarify that we do not currently support adding custom commands. but we might in the future... stay tuned
402
+
- gave each command a private constructor with one definitive instance
403
+
- sealed `Command`
404
+
- eliminated `ComposedArgument`, make `Argument` a record instead of an enum
405
+
- default arguments are now stored in `CommonArguments`
406
+
- made `Main`'s map of commands immutable
407
+
- added autosave option in the GUI ([#276](https://github.com/QuiltMC/enigma/pull/276), [#285](https://github.com/QuiltMC/enigma/pull/285), [#300](https://github.com/QuiltMC/enigma/pull/300))
408
+
- this will be off by default, as it can be destructive due to the lack of ways to restore old mappings
409
+
- in the future, this will be addressed via backup mappings and undo functionality
410
+
- saving occurs each time a mapping is changed and will run in the background
411
+
- improved API and GUI around statistics ([#255](https://github.com/QuiltMC/enigma/pull/255))
412
+
- added an option for treating fallback-proposed entries as mapped for stat generation
413
+
- improved performance for stat reloads via ordering work and cancelling unnecessary jobs ([#301](https://github.com/QuiltMC/enigma/pull/301))
414
+
- fixed a rare CME when generating stats
415
+
- configured generation parameters for stats will now control the tree icons
416
+
- the stats dialogue will default to the parameters for the icons, with changes made there being transient (except for the dialog-exclusive package filter)
417
+
- added a GUI toggle for disabling/enabling icons
418
+
- the tree will now update in real time as settings are changed
419
+
- added indexing for parameters via `EntryIndex` ([#282](https://github.com/QuiltMC/enigma/pull/282))
420
+
- fixed wrong types occasionally being displayed in the editor panel
421
+
- the editor panel will now show `<unknown>` for non-parameter entries in the LVT
422
+
- added a search bar for the structure panel ([#266](https://github.com/QuiltMC/enigma/pull/266))
423
+
- added a new keybind for opening the structure panel (`ctrl + t`)
424
+
- `ctrl + shift + t` will open the panel with the search selected
425
+
- cleaned up backend around menu bar ([#261](https://github.com/QuiltMC/enigma/pull/261))
426
+
- now consistently updates state and retranslates everywhere
427
+
- improved proguard implementation for tests ([#289](https://github.com/QuiltMC/enigma/pull/289))
- fixed unfocused tabs not showing the close button on hover
430
+
- now focuses the editor after a tab is clicked or closed
431
+
- added a tooltip to tab titles for viewing the fully qualified name
432
+
- improved reliability of a few keybinds via removing possible conflicts ([#303](https://github.com/QuiltMC/enigma/pull/303))
433
+
- changed default keybind for `EDITOR_SHOW_CALLS` to `ctrl + alt + c`, as the old keybind of `ctrl + c` would both copy text and show calls
434
+
- improved quick find bar in the editor ([#304](https://github.com/QuiltMC/enigma/pull/304))
435
+
- added configuration for the default quick find keybind (default `ctrl + f`)
436
+
- added an option for allowing quick find to be persistent when the user clicks off
437
+
- replaced the backend, eliminating some weirdness and making it more responsive
438
+
- one weird part of the code down. 1000 to go
439
+
- fixed the dialog sometimes becoming detached from the editor and appearing outside the main window
440
+
- fixed the first token clicked after opening the quick find dialog immediately navigating ([#270](https://github.com/QuiltMC/enigma/pull/270))
441
+
- added navigation to method calls inside lambdas and static initializers ([#308](https://github.com/QuiltMC/enigma/pull/308))
442
+
- uses parsing of the source code to obtain tokens for these calls, which can then be navigated via the editor
443
+
- this is yet another small change that vastly improves how reliable the GUI feels
444
+
- improved indexing for libraries ([#306](https://github.com/QuiltMC/enigma/pull/306))
445
+
- exposed a combined index for libraries and main jar entries
446
+
- disabled renaming entries that are declared in libs
447
+
- fixed issues related to enigma not understanding that all classes inherit from `Object`, such as the ability to map a `String` method with no args as `toString` without the conflict detector noticing
448
+
- not all the JDK is indexed yet, as we encountered issues with ASM's analysis
449
+
- added error handling for plugins ([#330](https://github.com/QuiltMC/enigma/pull/330))
450
+
- plugins are now required to implement a `supportsEnigmaVersion` method to define which versions they're compatible with
451
+
- we recommend matching major and minor, allowing any patch, since breaking API changes can and will be made in minor versions (like this one!)
452
+
- we're thinking of calling this innovative release scheme 'raiver'. let us know why this is a great idea in the discord
453
+
-`AbstractMethodError`s due to the unimplemented method will be caught and reported with an error message
454
+
- updated organisation of config files
455
+
- added new file, `editor.toml`
456
+
- moved `enableClassTreeStatIcons` to `main#stats`
457
+
- your config will not automatically be migrated, make sure to update if you're using this option!
458
+
- removed `main#features`
459
+
- updated the navigator and fixed some issues ([#269](https://github.com/QuiltMC/enigma/pull/269), [#305](https://github.com/QuiltMC/enigma/pull/305))
460
+
- navigation is now relevant to the cursor instead of an invisibly stored position
461
+
- fixed the panel's count not updating properly when reloading mappings
462
+
- fixed entries sometimes becoming improperly ordered when their types changed
463
+
- fixed zero padding on label not always matching between index and total (`03/3` -> `03/03`)
464
+
- fixed entry navigator keybinds not always triggering ([#275](https://github.com/QuiltMC/enigma/pull/275))
465
+
- enigma 2.7: the keybind reliability update
466
+
- fixed classes being renamable via the context menu when `CLASS` is not configured as an editable type ([#299](https://github.com/QuiltMC/enigma/pull/299))
0 commit comments