Tracks: tighten up a small loophole in completion checking.
Tracks: use the new findloop for loop detection.
Slant: use the new findloop for loop detection.
Net: use the new findloop for loop detection.
Bridges: use the new findloop for loop detection.
New centralised loop-finder, using Tarjan's algorithm.
Add patternpicture to .gitignore.
Update documentation links.
Add missing casts to unsigned char inside ctype functions.
Rename the docs section for Rectangles.
Fix a typo in the Black Box docs examples.
Fix a valgrind warning in the Keen DIFF_HARD solver code.
rect: Fix compiler errors about uninitialized use of variables
Add a missing error message in Flood solve_game().
Clarify in README that Makefile.vc is for nmake.
New utility 'patternpicture', to build a Pattern from an xbm.
Pattern: add a system of immutable pre-filled grid squares.
Pattern: fix solver's handling of empty rows.
Pattern: make part of the game_state shared.
Code-sign the Windows puzzle binaries and installer.
Implement align_label for GTK 3.[14,16).
Allow unlocking an island despite moving slightly.
Convert Buildscr to use the new "do/win" mechanism.
Fix loophole in Palisade completion checker.
Format Palisade solve-type moves in sensible ASCII.
Fix premature completion flash in Tracks.
Tents: mark squares as non-tents with {Shift,Control}-cursor keys.
Fix a comment in Tents (it said 'tents' instead of 'trees').
Highlight clue errors in Tracks in some more situations.
In Undead, mark clues as errors in a few more situations.
Fix array overruns in the new Filling solver pass.
Enhance Filling's solver to handle large ghost regions.
Add the new 'fifteensolver' to .gitignore.
Use \q{} in place of literal quote marks in puzzles.but.
Add a new puzzle: Palisade.
Fix GTK puzzle resizing, *again*.
Produce shorter Filling descriptions by run-length encoding 0s.
Expand keyboard input options in Bridges, for faster entry.
Fix two memory leaks in GTK frontend.
Fix a typo in a Bridges error message.
Fix Bridges keyboard cursor vertical out-of-bounds error.
Update Sixteen keyboard system for faster entry.
In GTK frontend, bind mouse8/mouse9 to undo/redo.
Add hinting feature to Guess.
Add standalone Fifteen solver, based on the hint feature.
Add hinting feature to Fifteen (press 'h' for a hint).
Invert the Fifteen cursor if FIFTEEN_INVERT_CURSOR ~= ^[yY].*$
End victory flash on new game and restart game.
Reset midend animation counters on starting a new game.
Remove a redundant line of code.
Don't stop animations when restarting an already restarted game.
Stop animations on a new game, no matter how it is started.
GTK 3 cleanup: stop using GtkDialog for config boxes.
GTK 3 cleanup: use GtkAboutDialog for the About box.
GTK 3 cleanup: use GtkMessageDialog for message_box().
GTK 3.16 deprecation: stop using gtk_misc_set_alignment.
Improve Towers error highlighting.
Dominosa: Highlight a number when pressed on the keyboard.
Fix switching to a larger puzzle size under GTK 2.
Insert a manual reference in the default status bar text.
Render Filling presets as 'WxH', not 'HxW'.
Add 'Inshi No Heya' (multiplication only) variant to Keen.
Fix a display glitch in Keen's pencil-mode cursor.
Recompute solutions in Inertia if the user strays from the path.
Fix an instance generation hang in Signpost.
Greatly improve and speed up the Filling instance generation.
Greatly increase the speed of the Filling solver.
Towers: allow marking of clues as done with the keyboard
Allow marking of clues as exhausted in Unequal.
Display improvements to Range.
Fix a misrendering in Guess.
Fix a memory error in Guess cursor handling.
Cancel dragging in Pearl by pressing Escape or Backspace.
Change Pearl's cursor logic.
Refactor Pearl's mark_in_direction, and invert a parameter.
Refactor modifier handling in Pearl's cursor code.
Add more keyboard controls to Slant.
Slant: hide keyboard cursor when using the mouse.
Rectangles: cancel keyboard drag with Escape.
Filling: enable keyboard-driven cursor dragging mode.
Range: add pencil marks to squares by Shift-cursor keys.
Pattern: color multiple squares with Ctrl- or Shift-cursor keys.
Add game_text_format to Tents.
Add game_text_format to Pattern.
Add game_text_format to Inertia.
Add game_text_format to Flip.
Add game_text_format to Pearl.
Add game_text_format to Dominosa.
Unequal: stop ignoring keys 'h' and 'm' while cursor active.
Fix a memory leak in Range's find_errors.
Don't overallocate colour memory in Loopy.
Fix segfault in Range's game_text_format.
Fix typo in undo key handling.
Include an example of Range's text_format in the comments.
Fix a typo in the comments of Pearl.
Add '-set colorspace RGB' to some icon convert commands.
GTK 3 port: arrange configure.ac support for GTK 2/3 detection.
GTK 3 port: don't turn off drawing area double buffering.
GTK 3 port: change API functions for widget sizing.