dangerpin
Member
I didn't see a release log for version 12.1 so I thought I would save someone who can do some real work some time and put it together, here goes with Hola's usual intro;
The following is an abbreviated version of the Subversion commit message logs. Please keep in mind that these messages are intended for other developers and they take the files which were modified into context in order to limit the amount of verbage. In general, they are not intended for general audiences and should not be treated as "official" documentation -- they are informal and abbreviated, at best.
If you do not understand what something says, try looking at the full version of the revision by following the accompanying link for the revision. The only difference is that the files which were modified will be listed, and sometimes, you can guess what happened from file names (though not always). If you still have no idea what happened, that's okay -- it probably doesn't relate to what you're doing with KoLmafia. ^_~
Furthermore, not everything marked as "fixed" is guaranteed to be fixed, not all changes are guaranteed to have a change. This is due the fact that both time and turns are finite and only a limited number of things can be tested. Some changes go in untested, assuming they would work, when they actually don't due to erroneous assumptions; alpha testers occasionally will be able to give feedback, but it's not always possible.
For example, if you read the revision logs for what changed between 10.2 and 10.3, the plus sign choice adventure was meant to get a use link. Something as seemingly insignificant as KoL using two spaces instead of one space in the sentence "It's actually a book. Read it." would mean the change didn't actually work -- anyone can verify that, in fact, the change didn't work for this very reason. If you ever encounter something like that, a non-accusatory mention of it (non-accusatory meaning anything that neither implies "ZOMG FALSE ADVERTISING" nor "You guys said this was fixed, but...") somewhere will usually result in the problem getting addressed.
Finally, if you've got a bug to report, make sure you read up on how to post a detailed bug report. While the rules outlined apply specifically to bugs related to scripting, many of them are applicable to KoLmafia bug reports in general. Most importantly, I hate the words "annoying" and "frustrating". Never use them when describing a bug/feature. Ever. Thanks. The abridged revision logs follow.
Revision: 5650
Update version number
Revision: 5649
Store Integers, not Floats
Revision: 5648
More intuitive lookup of how much hp/mp is restored by an item/skill
Revision: 5647
Correctly log Daily Dungeon when automated
Revision: 5646
Always allow you to cast a health restore skill at least once
Revision: 5645
Add data utilities which list files and create input/output streams
Revision: 5644
Ensure a few directories exist when they are needed...
Revision: 5643
Search for battlefield message that doesn't match every War Hippy Baker.
Revision: 5642
If there is no ccs directory, there won't be any scripts
Revision: 5641
Only allow one thread at a time to set properties
Revision: 5640
Simplify new code.
Revision: 5639
Ensure user defaults (not global) after load user preference file
Revision: 5638
Fix clean install of KoLmafia
Revision: 5637
Only log Daily Dungeon rooms when you attempt to pass them.
Revision: 5636
Initialize defaults for all names with defaults, not for current preferences
Revision: 56358
Fix HP/MP restore options panel
Revision: 5634
Fix logging of stat reward rooms in the Basement
Revision: 5633
Revert changes to removeAll() and retainAll()
Revision: 5632
Change implementation of addAll() to be O
Use addAll() when updating store log
Revision: 5631
Improve performance for repeated additions if there is no filtering needed
Revision: 5630
Allow connections to time out
Revision: 5629
Fix windows tray icon
Revision: 5628
Extract restorative options panel to own class
Revision: 5627
Big island handler is primarily for relay browser decorations, so move it to that package
Revision: 5626
Extract custom combat and moods into own panel class
Revision: 5625
Remove unneeded extends clause in manager classes
Revision: 5624
Move simple widgets into appropriate package
Revision: 5623
Naming consistencies
Revision: 5622
Extract list cell renderer factory from adventure result
Revision: 5621
New, faster display case access.
Revision: 5620
Both key and value must be appropriately escaped in a property file.
No "=" is necessary if the value is empty.
User name is coerced identically for per-user global settings as for file name
Revision: 5619
Refactor encounter name parsing
Revision: 5618
Log contents of Daily Dungeon rooms
Revision: 5617
Don't use "valueOf" when "new" is intended.
Attempt to fix battleAction.
Revision: 5616
Unfortunately, Thread.yield does not suffice to let keyboard input be read.
Add null checks to various places where values can be captured.
Revision: 5615
Call Thread.yield() instead of GenericRequest.delay()
Revision: 5614
If the zero hotkey is undefined, use it for "again"
Otherwise, any undefined hotkeys do nothing
Revision: 5613
KoL now requires confirmation in order to change your housing.
Revision: 5612
Avoid creating new Strings, Integers, Booleans, and Floats if set same value
Revision: 5611
Provide set methods for integer, boolean, and float properties
Revision: 5610
Separate flagged items handling and preference handling
Introduce aggressive caching to improve preference handling performance
Revision: 5609
Remove unnecessary calls.
Revision: 5608
Yuletide items and effects.
Mallowed Out modifiers depend of duration.
Parse quantity of first item in display case correctly.
Revision: 5607
Fix for new display case interface,
Revision: 5606
ASH scripts need to allow other tasks to run in order to allow keyboard input
to be accepted. Delay one millisecond at the start of every scope.
Revision: 5605
Add sandcastle
Revision: 5604
Fix file_to_map when reading versioned data files
Revision: 5603
Do that in a way which doesn't erroneously count ignored choices. Sigh.
Revision: 5602
Don't let ignored choice adventures delay autoadventuring
Revision: 5601
Keep up with the trivial updates.
Revision: 5600
Don't let adventures gained during adventuring increase number of iterations
spent in a location. Remove unnecessary global default.
Revision: 5599
If you know Cannelloni Cocoon, offer it instead of drastic healing.
Revision: 5598
Restore per-user global settings. Use for saveState, displayName, getBreakfast
Revision: 5597
Do bulk transfers from closet and storage when equipping all familiars.
Revision: 5596
Rename KoLSettings to Preferences and move to persistence package
Revision: 5595
Move Gallery choice adventures
Revision: 5594
Add strange shiny disc.
Gallery is on 1st floor.
"familiar" command matches using familiar race
Revision: 5593
Don't require whitespace near commas in mallsell command.
Reformat some complicated boolean expressions for clarity.
Revision: 5592
Most semirares are multi-usable. Fix plural.
Revision: 5591
Don't throw an exception if asked to make an AdventureResult for an unknown item
Revision: 5590
Don't forget CCS setting when log in as a second character without restarting
Revision: 5589
Fix "Equip All Familiars" button fr Familiar Trainer.
Olfaction Tome gices you Olfaction. Short name for combat button.
Revision: 5588
Don't erroneously report on battlefield kills unless it's a battlefield monster.
When you capture a molybdenum tool, spoiler tells you to visit Yossarian.
Refactor combat item usage a bit.
Revision: 5587
Fix combat items that are not consumed.
Collapse multiple spaces when registering monster encounters.
Fix resetting autoattack when selected battle action is using an item.
Revision: 5586
Familiar Trainer recognizes Healthy Green Glow
Revision: 5585
C.A.R.N.I.V.O.R.E. Operative has an extra space in its name.
Be a little more efficient in logging choice adventures.
Revision: 5584
Each entrance to Louvre is a single encounter. Improve logging of inner rooms.
Revision: 5583
Update usable combat items from action dropdown
Revision: 5582
Fix detection of Autosale Mode
Revision: 5581
Mystical Bookshelf skills now available via Use Skills - with new skill IDs
Revision: 5580
Support for raffle house
Revision: 5579
Extract out character pane decorators
Revision: 5578
Extract out basement decorations
Revision: 5577
Auto-select correct stone sphere
Revision: 5576
Correct expected restoration from blue and green pixel potions.
More robust checking for guy made of bees.
Revision: 5575
Reuse existing function rather than duplicating code.
Revision: 5574
Fix compile error
Revision: 5573
If you're in Valhalla, request your password hash from the chat page
Revision: 5572
Sort holidays by nearness to today
Revision: 5571
The game will never give us a substring, so only exact matches for use links
Revision: 5570
Only clean out KoLmafia's source directory by default
Revision: 5569
Extract character entity reference translator to own class
Revision: 5568
Extract stationary buttons and ascension page decorators to own class
Revision: 5567
Reagent potions can be single use or multi use
Revision: 5566
Reuse Sun proprietary API
Revision: 5565
Close input stream when validating a script, no matter what.
Revision: 5564
Make Adventure Count spinner wrap at current adventure count
Revision: 5563
Be consistent about whether initialDesktop is a global or user property
Revision: 5562
Fix spelling of copper ha'penny charrrm
Revision: 5561
Save location where last semirare was found.
Revision: 5560
Add new halloween candies. MIVHI is multi-usable.
Revision: 5559
Updated spleenhit data.
Revision: 5558
"conters" command lists last turn where a semirare was found.
Revision: 5557
Make adventure count field an autohighlighting spinner
Revision: 5556
Saucerors only get triple yield on reagent potions
Revision: 5555
Add choice listener to adventure location select
Revision: 5554
Fix parsing of bounty items
Revision: 5553
Fix compile errors.
Revision: 5552
Code reorganization (part 1)
Revision: 5551
Gravy Barrow is now in MusSign, not in Woods
Revision: 5550
Silly divine can has changed its name.
Calculate # of libram summons from MP cost displayed on bookshelf.
The following is an abbreviated version of the Subversion commit message logs. Please keep in mind that these messages are intended for other developers and they take the files which were modified into context in order to limit the amount of verbage. In general, they are not intended for general audiences and should not be treated as "official" documentation -- they are informal and abbreviated, at best.
If you do not understand what something says, try looking at the full version of the revision by following the accompanying link for the revision. The only difference is that the files which were modified will be listed, and sometimes, you can guess what happened from file names (though not always). If you still have no idea what happened, that's okay -- it probably doesn't relate to what you're doing with KoLmafia. ^_~
Furthermore, not everything marked as "fixed" is guaranteed to be fixed, not all changes are guaranteed to have a change. This is due the fact that both time and turns are finite and only a limited number of things can be tested. Some changes go in untested, assuming they would work, when they actually don't due to erroneous assumptions; alpha testers occasionally will be able to give feedback, but it's not always possible.
For example, if you read the revision logs for what changed between 10.2 and 10.3, the plus sign choice adventure was meant to get a use link. Something as seemingly insignificant as KoL using two spaces instead of one space in the sentence "It's actually a book. Read it." would mean the change didn't actually work -- anyone can verify that, in fact, the change didn't work for this very reason. If you ever encounter something like that, a non-accusatory mention of it (non-accusatory meaning anything that neither implies "ZOMG FALSE ADVERTISING" nor "You guys said this was fixed, but...") somewhere will usually result in the problem getting addressed.
Finally, if you've got a bug to report, make sure you read up on how to post a detailed bug report. While the rules outlined apply specifically to bugs related to scripting, many of them are applicable to KoLmafia bug reports in general. Most importantly, I hate the words "annoying" and "frustrating". Never use them when describing a bug/feature. Ever. Thanks. The abridged revision logs follow.
Revision: 5650
Update version number
Revision: 5649
Store Integers, not Floats
Revision: 5648
More intuitive lookup of how much hp/mp is restored by an item/skill
Revision: 5647
Correctly log Daily Dungeon when automated
Revision: 5646
Always allow you to cast a health restore skill at least once
Revision: 5645
Add data utilities which list files and create input/output streams
Revision: 5644
Ensure a few directories exist when they are needed...
Revision: 5643
Search for battlefield message that doesn't match every War Hippy Baker.
Revision: 5642
If there is no ccs directory, there won't be any scripts
Revision: 5641
Only allow one thread at a time to set properties
Revision: 5640
Simplify new code.
Revision: 5639
Ensure user defaults (not global) after load user preference file
Revision: 5638
Fix clean install of KoLmafia
Revision: 5637
Only log Daily Dungeon rooms when you attempt to pass them.
Revision: 5636
Initialize defaults for all names with defaults, not for current preferences
Revision: 56358
Fix HP/MP restore options panel
Revision: 5634
Fix logging of stat reward rooms in the Basement
Revision: 5633
Revert changes to removeAll() and retainAll()
Revision: 5632
Change implementation of addAll() to be O

Use addAll() when updating store log
Revision: 5631
Improve performance for repeated additions if there is no filtering needed
Revision: 5630
Allow connections to time out
Revision: 5629
Fix windows tray icon
Revision: 5628
Extract restorative options panel to own class
Revision: 5627
Big island handler is primarily for relay browser decorations, so move it to that package
Revision: 5626
Extract custom combat and moods into own panel class
Revision: 5625
Remove unneeded extends clause in manager classes
Revision: 5624
Move simple widgets into appropriate package
Revision: 5623
Naming consistencies
Revision: 5622
Extract list cell renderer factory from adventure result
Revision: 5621
New, faster display case access.
Revision: 5620
Both key and value must be appropriately escaped in a property file.
No "=" is necessary if the value is empty.
User name is coerced identically for per-user global settings as for file name
Revision: 5619
Refactor encounter name parsing
Revision: 5618
Log contents of Daily Dungeon rooms
Revision: 5617
Don't use "valueOf" when "new" is intended.
Attempt to fix battleAction.
Revision: 5616
Unfortunately, Thread.yield does not suffice to let keyboard input be read.
Add null checks to various places where values can be captured.
Revision: 5615
Call Thread.yield() instead of GenericRequest.delay()
Revision: 5614
If the zero hotkey is undefined, use it for "again"
Otherwise, any undefined hotkeys do nothing
Revision: 5613
KoL now requires confirmation in order to change your housing.
Revision: 5612
Avoid creating new Strings, Integers, Booleans, and Floats if set same value
Revision: 5611
Provide set methods for integer, boolean, and float properties
Revision: 5610
Separate flagged items handling and preference handling
Introduce aggressive caching to improve preference handling performance
Revision: 5609
Remove unnecessary calls.
Revision: 5608
Yuletide items and effects.
Mallowed Out modifiers depend of duration.
Parse quantity of first item in display case correctly.
Revision: 5607
Fix for new display case interface,
Revision: 5606
ASH scripts need to allow other tasks to run in order to allow keyboard input
to be accepted. Delay one millisecond at the start of every scope.
Revision: 5605
Add sandcastle
Revision: 5604
Fix file_to_map when reading versioned data files
Revision: 5603
Do that in a way which doesn't erroneously count ignored choices. Sigh.
Revision: 5602
Don't let ignored choice adventures delay autoadventuring
Revision: 5601
Keep up with the trivial updates.
Revision: 5600
Don't let adventures gained during adventuring increase number of iterations
spent in a location. Remove unnecessary global default.
Revision: 5599
If you know Cannelloni Cocoon, offer it instead of drastic healing.
Revision: 5598
Restore per-user global settings. Use for saveState, displayName, getBreakfast
Revision: 5597
Do bulk transfers from closet and storage when equipping all familiars.
Revision: 5596
Rename KoLSettings to Preferences and move to persistence package
Revision: 5595
Move Gallery choice adventures
Revision: 5594
Add strange shiny disc.
Gallery is on 1st floor.
"familiar" command matches using familiar race
Revision: 5593
Don't require whitespace near commas in mallsell command.
Reformat some complicated boolean expressions for clarity.
Revision: 5592
Most semirares are multi-usable. Fix plural.
Revision: 5591
Don't throw an exception if asked to make an AdventureResult for an unknown item
Revision: 5590
Don't forget CCS setting when log in as a second character without restarting
Revision: 5589
Fix "Equip All Familiars" button fr Familiar Trainer.
Olfaction Tome gices you Olfaction. Short name for combat button.
Revision: 5588
Don't erroneously report on battlefield kills unless it's a battlefield monster.
When you capture a molybdenum tool, spoiler tells you to visit Yossarian.
Refactor combat item usage a bit.
Revision: 5587
Fix combat items that are not consumed.
Collapse multiple spaces when registering monster encounters.
Fix resetting autoattack when selected battle action is using an item.
Revision: 5586
Familiar Trainer recognizes Healthy Green Glow
Revision: 5585
C.A.R.N.I.V.O.R.E. Operative has an extra space in its name.
Be a little more efficient in logging choice adventures.
Revision: 5584
Each entrance to Louvre is a single encounter. Improve logging of inner rooms.
Revision: 5583
Update usable combat items from action dropdown
Revision: 5582
Fix detection of Autosale Mode
Revision: 5581
Mystical Bookshelf skills now available via Use Skills - with new skill IDs
Revision: 5580
Support for raffle house
Revision: 5579
Extract out character pane decorators
Revision: 5578
Extract out basement decorations
Revision: 5577
Auto-select correct stone sphere
Revision: 5576
Correct expected restoration from blue and green pixel potions.
More robust checking for guy made of bees.
Revision: 5575
Reuse existing function rather than duplicating code.
Revision: 5574
Fix compile error
Revision: 5573
If you're in Valhalla, request your password hash from the chat page
Revision: 5572
Sort holidays by nearness to today
Revision: 5571
The game will never give us a substring, so only exact matches for use links
Revision: 5570
Only clean out KoLmafia's source directory by default
Revision: 5569
Extract character entity reference translator to own class
Revision: 5568
Extract stationary buttons and ascension page decorators to own class
Revision: 5567
Reagent potions can be single use or multi use
Revision: 5566
Reuse Sun proprietary API
Revision: 5565
Close input stream when validating a script, no matter what.
Revision: 5564
Make Adventure Count spinner wrap at current adventure count
Revision: 5563
Be consistent about whether initialDesktop is a global or user property
Revision: 5562
Fix spelling of copper ha'penny charrrm
Revision: 5561
Save location where last semirare was found.
Revision: 5560
Add new halloween candies. MIVHI is multi-usable.
Revision: 5559
Updated spleenhit data.
Revision: 5558
"conters" command lists last turn where a semirare was found.
Revision: 5557
Make adventure count field an autohighlighting spinner
Revision: 5556
Saucerors only get triple yield on reagent potions
Revision: 5555
Add choice listener to adventure location select
Revision: 5554
Fix parsing of bounty items
Revision: 5553
Fix compile errors.
Revision: 5552
Code reorganization (part 1)
Revision: 5551
Gravy Barrow is now in MusSign, not in Woods
Revision: 5550
Silly divine can has changed its name.
Calculate # of libram summons from MP cost displayed on bookshelf.