This is an (incomplete) retrospective timeline of the features added to the the [Kudamono Editor], mostly for self-reference. For a prospective timeline, refer to the [plans].

[Genres|paper-puzzle] are mentioned when newly added and also near changes that benefit them significantly. 
People may be mentioned if they are related to particular change.


2024
####

October 2024
#=#=#=#=#=#=#

Aux marks:
- candidate numbers now are properly constrained across all genres

Metadata:
- added further interlink options; all now display consolidated as a table
- hashtags added to sharing instructions

Bugfixes:
- a longstanding interference of rule panels parameters on normal puzzle parameters, disruping the puzzle experience upon opening the rule panels on certain genres, was eliminated (@Calica, @Laclale, @Anurag) **2024-10-05**

Internal:
- a missing collision (paleoinfraforest vs neosupraharvest) was added 
- main diagonal compass, for finer tuning of direction in hex geometry 

September 2024
#=#=#=#=#=#=#

Auto mode:
- touch interaction on line genres gives priority to aux marks over line segments (@Rook) **2024-09-02**
- click/tap behaviour for numbers (without dial) also in auto mode
- monoline submode extended to diagonal lines (now they can be added in a single click) **2024-09-08**
- monoline submode now behaves correctly for edge lines in the diamond and hex grids too **2024-09-24**

Input:
- mouse wheel scroll to switch submodes disabled within iframes (e.g on PuzzleSquare) as it was colliding with normal page scrolling to reach the puzzle (@EliDoris) **2024-09-06**
- small dead zone added to the drag handler, so even if the mouse moves a tiny bit, it still counts as a click (@EliDoris) **2024-09-18**
- candidate numbers across number-placement genres were added, using the number dial (@Menderbug)
- support for off-placement collisions re-added 
- dragging certain type of aux markers (marked ´´hitboxed´´) in a straight line no longer produces spurious lateral marks. Due to the increased precision, markers will be skipped when drawing too fast or with an unsteady hand. (@Menderbug) ** 2024-09-25**

Puzzle rendering:
- Genre panels and puzzle pictures are now rendered as SVGs, hoping to solve some issues found by @Jubale and @Rook on apple devices **2024-09-10** 
- SVG export ability
- disable adaptive zoom

Panels:
- added possibility to specify panels per genre category (@PinkHoodie). The title field now populates the panel

Internal:
- combining vest type items: an empty object now effectively erases it, rather than being ignored
- removed ´´symbol.postool´´, folding it into standard model inheritance.
- major update to the compass system, for more general switching between grid geometries

New genres released:

GENRE 				DATE			SUPPORTED BY:
[Internal patrol]	2024-09-30		@JustKirb
[Nikakoku]			2024-09-29		@random8
[Border patrol]		2024-09-25		@KenGlue
[Tentaisho]			2024-09-18		@JustKirb
[Putteria]			2024-09-17		@Rook
[Aqre]				2024-09-12		@PinkHoodie
[nuritwin]			2024-09-10		@PinkHoodie
[binary runs]		2024-09-10		@hutthutthutt
[stained glass]		2024-09-03		site.author


August 2024
#=#=#=#=#=#=#

Auto mode:
- definitive format for automode configuration templates
- added an auto mode to each of the +230 genres
- on touch screens, sequential taps trigger sequential behaviours (e.g shade/non-shade/blank), when in auto mode (as defined there)

Other:
- restored contiguous marks in region division genres (@Rook) **2024-08-03**
- moved all local variants to the respective genre file
- fixed some broken links across the site **2024-08-09**
- diverse fixes to many genres

New genres:

These were released:

GENRE 				DATE			SUPPORTED BY:
[Point Plate]		2024-08-03		@Rook
[Disconnection]		2024-08-05		@PinkHoodie
[Norinori]			2024-08-08		@PinkHoodie
[Sunglasses]		2024-08-10		@XSheep


July 2024
#=#=#=#=#=#=#

New genres:
GENRE				DATE			SUPPORTED BY
[inbox-outbox]		2024-07-24		@@ どっかのだれか @@
[Creek]				2024-07-22		@PinkHoodie
[Spokes]			2024-07-19		@PinkHoodie
[Loop 12]			2024-07-17		@AnuragSahay
[Parking]			2024-07-14		@Rook
[Shrooms]			2024-07-12		@Blaz
[Grandstands]		2024-07-11		@MartinEnder
[Barns]				2024-07-10		@PinkHoodie
[Light and shadow]	2024-07-09		@Rook
[Tetroscope]		2024-07-07		@AnuragSahay


Absent cells:
- may now coexist with "floating" numbers (@Menderbug, for [Grandstands])
- the ´´no-escape´´ rule was added to all line edge genres
- were retrospectively added to earlier genres

Input:
	- live dial movement is now fluider (@Menderbug)
	- dial extended to alphabet symbols (given, solve) and aux marks
	- dial extended to multi-numbers
	- keep original symbol form in dial

Metadata fields:
	- using CSS svh/svw units (instead of vw/vh) to take into account the area occupied by the UI on mobile
	- Fixed a bug with metadata fields losing focus, reported by @Menderbug and @Lavaloid (cause: returning focus to player too early) **2024-07-21**
	- pressing enter on parameters now corrrectly moves to the next parameter instead of adding whitespace **2024-07-21**

Other:
	- template regression where start and finish symbols were moved to solved mode, detected by @PinkHoodie, was fixed **2024-07-22**
	- duplicate parameters in puzzle url now produce an error message so authors are aware a correction is needed **2024-07-26**

Internal
	- ´´symbol.postool´´ picks the tool from available ´´postools´´
	- no longer "complete" variants by default (prefer explicit listing)
	- removed ´´symbol.unlayer´´ and related properties

SVG
	- base-encoded fonts included in svg pictures, for acceptable rendering of text


Site:
	- 404 page was broken (@Wen)
	- day regression on template loading (@Rever)
	- metadata gathering now acknowledged within credits system (rather than haphazardly)
	- thanks to @PinkHoodie for noticing all Hempuli links were broken due to a change in his blogging platform, and for sending updated links **2024-07-24**
	- the last page update is now automatically reported at the page top (thanks @Menderbug) **2024-07-26**

June 2024
#=#=#=#=#=#=#

Font optimisations:
	- subsetting reduces file size substantially;
	- default font no longer loaded unless needed

Input:
	- snappier input on the orthogonal grid, allowing more precise L-segment drawing (@dunder_code)
	- new collision module for more precise interactions between lines, symbols (including numbers), aux marks and sketches, solving a class of outstanding bugs (@PinkHoodie, @Anurag, @Yuyuki, etc..)
	- number dial now scales correctly, independently of board size;

Highlighter:
	- empty unifilters return empty lists to the basestate
	- derived templates (even numeric)

Other:
	- symbol designation now passed unmodified into tooltip (@YuHo)
	- fixed some solution parameters leaking into blank puzzle (@YuHo) **2024-06-22**

Site build:
	- link aliasing now support hyphens (@Rook, @PinkHoodie), fixed (@MichaelVedder)
	- feather interference with svg path (@PinkHoodie)
	- ´´Content-security-policy´´ and ´´X-Frame-Options´´ headers replace the older redirect script, removing irregularly occuring issues reported by @Hizuriya and @Gnull on PuzzleSquareJP. **2024-06-14**

Internal:
	- ´´altletters´´ property deprecated
	-  each´´scope´´ now name the respective ´´glow´´ key (about 350 files changed, in an automated way)
	-  internal number representation upgraded to support different number types (as many as needed)

Collaboration:
	- Dedicated channel in CTC's discord (@bakpao, team)

New genres:

GENRE					RELEASE DATE	SUPPORTED BY
[Retoponogo]			2024-06-28		@ZacharyTalis
[Sniping Arrow]			2024-06-27		@Yuyuki and @Pedro
[Yosumi]				2024-06-21		@Solyu
[ABC's]					2024-06-20		@PinkHoodie
[Cross Math]			2024-06-18		@AnuragSahay and @Pedro
[Tamago Town]			2024-06-16		@AnuragSahay
[Yakisoba]				2024-06-14		@MichaelVedder
[Turn Sums] 			2024-06-13		@AnuragSahay
[Pipelink]				2024-06-12		@PinkHoodie
[Forceloop]				2024-06-08		@Pinkhoodie
[Tally Loop] 			2024-06-07		@Endagorion
[Crossroads]			2024-06-06		@Rook
[Koburin]				2024-06-05		@JustKirb
´´Prism´´ [Akari] 		2024-06-05		@leeor
[Number Crosslink]		2024-06-04		@hutthutthutt



	May 2024
#=#=#=#=#=#=#

Variants:
	- Globals: ´´pipe´´, ´´pipe-partial´´, ´´escape´´, ´´edge-given´´, ´´turning´´, ´´bramble-max-N´´
	- Locals: gemini-block ´´lenience´´ and ´´equivalence´´

Genres:
	- [Kazuburo], 29/05/2024
	- [Linesweeper], 29/05/2024 (unplanned)
	- [Honey Dozen], 23/05/2024
	- [Nikoji], 19/05/2024
	- [Squares & Rectangles], 17/05/2024
	- [White Link], 16/05/2024
	- [Jadium], 14/05/2024
	- [Firewall], 13/05/2024
	- [Multiplication Link], 10/05/2024
	- [Naname Loop], 09/05/2024
	- [Gemini Loop], 08/05/2024
	- [Nombre], 07/05/2024
	- [Gemini Block], 06/05/2024
	- [Kindomino], 02/05/2024

Number overhaul
	- Polar number input:
		- single-click to add previously saved or typed number
		- single-click on any number to erase
		- single-drag gesture to add any number (rotate the knob clockwise to increase, counterclockwise to decrease)
		- single-drag gesture to erase any number (small drag)
		- single-drag gesture to correct any number (rotate the knob to adjust from previous number)
		- suport for infinite ranges (multiple rotations of the knob will keep increasing/decreasing)
		- support for minimum, maximum and exclusions in range (e.g. number 15 in [Corner Meeting])
		- intuitiveness via clock/crank metaphors, however with numbers spaced 1/10th (instead of 1/12th) as decimal arithmethic is easier (@Menderbug)  
		- predictability as dial numbers are always in the same consistent position (whether adding anew or correcting)
		- semitransparent dial, not obstructing underlying board

	- Negative numbers
		- encoding for negative numbers naturally expands previous parenthised encoding 
		- negative numbers added to selected genres, such as [Foreshadow]

Thanks @Mornicus, @Endagorion, @MartinEnder, @AnuragSahay, @PinkHoodie, @fff, @nishinanntoka for ongoing feedback (work in progress)

Encoding
	- reencoded genres now include an encoding (version) number in the url, via the ´´E´´ field. The default (zero) is not shown.
	- pipes were reencoded [Hamiltonian Plumbers], [Shirokuro Pipe]
	- short arrows were reencoded [X-sums], [Hit Points]
	- support for arbitrary line types via encogroups

Internal
	- virtual templates extended to the min/max binomium
	- svg-based rendering

Fixes
	- day regression in number templates reported by @PinkHoodie, @Laclale (cause: file misnaming) **2024-05-23** 





April 2024
#=#=#=#=#=#=#

Genres:
	- New: [Inturnal], [Bramble], [Rectyard], [Pointing at the crowd] //Heterocut
	- Classic: [Yin Yang], [Fillomino], [Slitherlink], [Choco banana], [Kurotto], [Kurodoko], [Tasquare]

Project:
	- More structured genre porting [plans], to facilitate distributed collaboration, with:
		- expected release dates
		- claimable panels and metadata
	- [Version] history
	- genre pages display more information about running unit tests, puzzle listing schedules, etc... and even a notice for genres temporarily broken.
	- going through gene tags to fix them (@dohz) NOTE: could there be a way to auto-tag, based on the used rules?

UI:
	- faster display of rule panels in the modal;
	- genre-variant specific panels now in the genre file, with authorship, via ´´varipanels´´, not necessitating a specific variant template; **2024-04-19**
	- changed the backdrop colour to dark and added a distrete close button (@MartinEnder, @randomperson123) **2024-04-17**
	- the timer now pauses while changing window or tab (@Lorem) **2024-04-18**
	- aux marks preserved on winning in edit mode (@Menderbug) **2024-04-21**
	- cursors are now black on Mac OS, mimicking the defaults

Symbols and styles
	- Arrow symbols are now generated based on the geometry, rather than manually.
	- Cage-like styles are now possible (@PinkHoodie, @Anurag)
	- Grid division genres now using dashed gridlines (@dohz, @Menderbug)
	- Ability to specify ´´symbol.textOpacity´´ separate from general opacity

Panels:
	- changed the backdrop colour to dark and added a distrete close button (@MartinEnder, @randomperson123) **2024-04-17**
	- faster display of rule panels in the modal;
	- genre-variant specific panels now in the genre file, with authorship, via ´´varipanels´´, not necessitating a specific variant template; **2024-04-19**
	
Timer:
	- the timer now pauses while changing window or tab (@Lorem) **2024-04-18**

Internal
	- Arrow symbols now generated based on the geometry, rather than enumerated manually.
	- multi-genre unit testing framework now memoises the common root state to speed up batch testing
	- searchable debug window for live checker
	- style variegation delayed to provide more flexibility (hopefully not affecting performance)
	- virtual palettes for colour name sharing (primary, secondary, neutral, marker)
	- efficient point snapping to avod numeric errors
	- auto-assign symbol layers based on their (already unique) letter
	- ability to style aux marks reactively (e.g to make them disappear or fade in certain situations)

Fixes:
	- Exported urls no longer contain newly-encoded aux marks (@Menderbug) **2024-04-04** 
	- Puzzle galleries no longer display error checking inadvertently (cause: previously implicitly undefined argument started being populated by a sequential integer index number after refactoring). Thanks @Dohz and @PinkHoodie for reporting. **2024-04-15** 
	- Regression immediately found by @PinkHoodie was fixed (cause: incomplete separation of recommended variants ´´.recovariants´´ from the current loaded variants ´´.variants´´) **2024-04-19** 

Other:
	- @PinkHoodie added +9 genres to PuzzleSquare **2024-04-04**
	- Changed the headings style to always use small caps, for consistency (@dohz) **2024-04-19**

March 2024
#=#=#=#=#=#=#

New genres:
- [Yajilin]
- [Touching Tails]
- [Parimony]
- [Lighthouses]
- [One-Two Zone]
- [Implicit Directors]

Global variants
- ´´knapp-daneben´´
- ´´liar´´

Local variants
- ´´knapp-daneben-hue´´

UI:
- drawing line input overhaul:
	- add "live" free line that appears while dragging the last segment;
	- solve several input drawing bugs (@Anurag, @Menderbug, @Edderiofer)
- added version and credits in always visible position
- icons now can also be shown outlined, when relevant (@5381)

Encoding:
- aux markers are now encoded exactly with the algorithm as symbols. 


Other:
- support for checkered hex grids, for example, in the ´´kiki´´ variant (@MartinEnder) or in [Parimony] (@Anurag)
- any ´´.png´´ puzzle images exported after 2024/03/18 can be loaded in the interface via drag-and-drop


Collaborations and API:
- Kudamono genres are now autodetected in PuzzleSquareJP (@Wand, @fff)
- genre and variant lists became available at: [kudamono/api/genres.txt|api/genres.txt] and [kudamono/api/variants.txt|api/variants.txt] (@5381)


Highlighter:
- ability to aggegate any other item type, via ´´unifilters´´ (@ZacharyTalis)

Internal:
- full separation of ´´symbol.encoletter´´ and ´´symbol.letter´´ for encoding purposes 

Fixes:
- Recent search bar regression found by @PinkHoodie was corrected (cause: deep refactoring with partial test coverage) **2024-03-27**
- Recent encoding regression reported by @5381, @PinkHoodie and @Rever was corrected (cause: more unit tests needed in the encoding module) **2024-03-28**

February 2024
#=#=#=#=#=#=#

New genres:
- [The Convoy]
- [The Longest]
- [Slicy]
- [Anymino]
- Akari (stepping stone)


New Variants:
- ´´shade-minesweeper´´
- ´´kurodoko´´
- ´´territory-shade-2´´, ...
- ´´territory-shade-blocks-N´´... (including ´´double´´ alias for [Slicy])
- ´´branch-shallow´´

Genre-specific variants:
- ´´double´´ (Masyu), ´´hex´´ (Masyu)


Rule Panel Modernisations:
	- a [panels] page to coordinate all efforts
	- many genres modernised by @PinkHoodie, @JustKirb, @AnuragSahay, @5381, @EliDoris and site.author
	- blank puzzles pre-added to modernised genres (@EliDoris)
	- variant panels, if defined, display separate authorship info (@PinkHoodie)

UI:
- directional line input mode added to ice genres [Skating], [Full House], [Cross Roads], [Perplexing path], [Rook End Mazes], a suggestion by @EliDoris
- new explicity auto mode button
- aux button tentatively removed, by placing all tools in the same menu
- keyboard shortcuts for lines, sketch lines, and any other tool (documented)
- richer interaction of aux marks with symbols (via shared aux mark/symbol layers)
- some non-serialisable property changes (like switching to/from edit mode) may also be saved to the undo stack (@EliDoris)

Internal:
- diverse refactoring and performance improvements
- renamed ´´depiction´´ to ´´pic´´ to save keystrokes (thus minimise typing errors)
- secondary rules restriction layer via ´´restrict´´ property (@EliDoris)

Template System:
- template numbers are no longer limited to, specific hand-picked, numbers - all integers are valid


Unit Testing:
- input unit tests within a genre may now include sequential events:
	- clicks (left, right, touch, mousewheel) included in 
	- any keyboard shortcut


January 2024
#=#=#=#=#=#=#

New genres:
- [Suguru]
- [Ripple Loop]
- [Isowatari]
- [Estate Lawns]
- [Luz Loop]
- [Sudoku]

New variants: 
- ´´kropki-white´´
- ´´kropki-black´´
- ´´kropki-black-total´´
- ´´kropki-white-total´´
- ´´math´´
- ´´shade-equal´´
- ´´shade-unique´´
- ´´unshade-equal´´
- ´´unshade-unique´´
- ´´unshade-equal-by-area´´
- ´´territory-square´´
- ´´territory-rectangle´´

Genres promoted to variant:
- ´´ripple-loop´´
- ´´unequaloop´´
- ´´xerophile´´
- ´´simple-loop´´
- ´´room´´

Variant promotions:
- ´´tiles-remove-1´´ (extracted form [Clones])
- ´´match-parity´´ promoted from [Crosswall]

Rule Panels:
	- Ongoing effort: variant rules appear "on-demand" when a variant is loaded (@dohz, @menderbug, @elidoris). The pictures themselves *do not* adapt well...
	- Style changes and acknowledgments added, as part of a modernisation effort (@PinkHoodie)
	- panel-specific credits added, with fields title, date, author, number (@JustKirb)

UI:
- updated the export button for more clarity (@dohz, @zimodo)
- numberline mode in [Hidoku]
- knob parameters now be editable when entering edit mode directly via url (@MartinEnder)

Other
- dashes now autoscale with geometry, via parameter ´´geometry.wallscale´´

Internal:
- replaced the concept of ´´placodo´´ with more flexible ´´encogroup´´
- erased most references to "dot" in the drag/input modes (decoupling)
- subtractive variants at the template level
- state symbol morphing for global variants
- dragging event throttling, instead of debouncing (@Menderbug)

Unit Testing:
- global genre unit testing now includes variants (longstanding bug fix).


2023
####

December 2023
#=#=#=#=#=#=#

Collaborations:
- PuzzleSquareJP Advent Calendar 2023, [detailed in this article|2023-12-puzzlesquarejp-advent]

New genres:
- [Cross Border Parity Loop]
- [Knight Loop]
- [Nurisquare]
- [Foreshadow]

New variants: 
- ´´shade-diagonal-areas-unequal´´
- ´´shade-diagonal-figures-unequal´´
- ´´chopped´´
- ´´divide-2´´, ´´divide-3´´ etc... (for region-division genres)
- ´´territory-adjacent-area-consecutive´´
- ´´aqre´´ and related family
- ´´meandering´´
- ´´context´´ (for [Hasu no Mura])
- ´´tasquare´´
- ´´yajilin´´
- ... and more!

Variant adaptations:
- ´´hex´´ (for [Clones], [Soulmates])

Fixes:
- current cursor restored on undo (@EliDoris)
- click area height misalignment and symbols placed on absent tiles (@Wisteria)
- keystrokes no longer captured when editing metadata / other parameters (various)
- several genre-specific fixes
- longstanding bug related to the differences in UTC and local time (@DavidMillar, @Random8, @Placeholder, and others...)
- excluded variants now work even where there is internal renaming

Interface:
- SDFs used for faster absent tile detection
- given lines can now be drawn irrespective of absent tiles
- temporarily deactivated features:
	- click to add segment
	- inserting given symbol below solve symbol erased the latter
	- preview cursor no longer active when hovering other interface elements (@EliDoris)
- UI constrain module, for things such as:
	- limiting which numbers can be inputted based on puzzle size, available tiles, etc...
- Event debouncing:
	- no two actions of the same type may be scheduled into the future, preventing freezing when several slow actions are scheduled in sequence

- Standartisation of complex palettes into 4 main templates:
	- palette-primary-... lines and symbols
	- palette-secondary-... highlights
	- palette-neutral-... grid, frame, legend
	- palette-marker-... aux marks and sketch lines

Internal:
- decoupled dragging functions to enable unit testing of inputs

API:
- Full multi-line encoding
- More complete approach to puzzle reencoding, via templates (c to o)
- reencoded all parameter genres (P1, P2, ...) to more specific names so they won't clash when mixed


November 2023
#=#=#=#=#=#=#

New genres:
- [Corner Loop] by @NaokiInaba
- [Tring-Tring] by @Eszter & @Endagorion, with variant //unequal-adjacent-loops//
- [Vertigo] by @Endagorion, also as with variant //vertigo//

- Variants:
	- total-crossings in [Shirokuro-pipe], masyu in [Ice Dance pair]
	- directions variant now adapts to different geometries
	- numbered-lengths and numbered-tiles (@PinkHoodie)
	- tatami now including borders (@PinkHoodie)
	- myopia and hyperopia as variants

Core:
- markers added now can preserve symbols beneath, via the ´´markbol.symbed´´ property (@PinkHoodie)


UI:
- auto-cursor added to signify when auto-mode is active
- arrow keys (used to enlarge the board) restricted to edit mode, to minimise interference with default page navigation (@nishinanntoka)
- soft-resizing for more efficient rendering and fixing a bug by @Endagorion
- display rules as modal, without changing page @Eszter:
	- correct display of variant rules (@XSheep, @SnapDragon64)
	- subsequent interference/trapping fixed (@Jubale, @SnapDragon64)

Interoperability:
	- Penpa batch import:
		- hexagonal grids now supported
		- support for tile removals via the box tool, within the initial grid

Internal:
- ´´credits.altnames´´ field added, which is used to display alternate genre names in the page, link preview and [kudamono/new] (@EliDoris)
- mesh & verge:
	- ´´geometry.linebiverged´´ property specifies whether lines can have both endpoints at the verge whereas ´´geometry.lineverged´´ applies to a single endpoint.
	- ´´omnibol.unfabrikeys´´ property can be used to exclude e.g. marker placements at some parts of the outer frame (@SpectriaLimina) ^^[bonsai]
	- faster in,ex,at meshes calculation
	- masked mesh now retrieved directly from ´´infraharvest´´, solving a longstanding bug (@PinkHoodie, @Kays)
- ´´scope_index´´ automatically added within ´´polyfilters´´
- ´´state.modes´´ property now automatically determined at startup based on available symbols, markers, etc... thus adapting to variants
- major variant loading system upgrade, so that additonal variants can be specified within variants (@PinkHoodie)

October 2023
#=#=#=#=#=#=#

New genres:
- [Akari RGB] by @Jubale and @Jolnson, with help from @EliDoris, including Antiking variant by @Wisteria
- [Haso no Mura] by @畠入
- [Ore Dango] by @Nikoli


API:
- loading a puzzle in another page other than the paper-puzzle-player page now causes the url to point to that page:
	- to encourage that as the canonical url (@dohz)
	- without breaking page navigation
		- unfortunately, history entries will still be added [until browsers fix this decade-old bugs|https://bugzilla.mozilla.org/show_bug.cgi?id=753264#c21]

UI:
- cursors:
	- large mouse pointer removed, after polling a significant set of users in different communitites, and hearing heir thoughts;
	- added smaller, more conventional mouse pointer, albeit with a small symbol nearby, since the current action needs a signifier (@Yuyuki)
		- another browser bug found: on MSEdge, text inside svg cursors renders badly at small text sizes
	- predictive "cursor ghost" now less pronouced, transparent with a dashed outline 
	- immediate cursor change when toggling edit mode, as well as on starting the puzzle (after first cursor move) 
- empty boards now never cause a winning state (by default)
- aux marks:
	- dragging bug fixed (@blaz, @seren, and others)
	- bug reported by @Wisteria fixed
	- clarified auto button tooltips
	- toggling aux mode remembers last tool used
	- scroll wheel also cycles through aux marks in aux mode
- visuals:
	- line stripes now appear at consistent perceptual distances, no matter the angle;
	- instead of parsing colours, ´´ctx.globalalpha´´ is used, yielding:
		- a perfomance improvement
		- out-of-the-box LAB colourspace support (@EliDoris)
	- slightly more stable colouring (@IHNN)
- Setter/Solve switch:
	- when inserting a symbol/mark, switching to/from edit mode has the lowest precedence (@Xsheep) 
	- edit text added to button (@dohz)
	- tooltip for auto now useful (@EricFox)

//- the rules button now displays the rules directly in a window

Interoperability:
	- Penpa batch import:
		- given lines: Line (tile-centered), line (tile-centered, free, in very limited scenarios)

Kudamono Genre Designer:
- initial autocompletions added (@EliDoris)

Genre Fixes:
- compatibility issue causing older [Soulmates] and [Parrot Loop] puzzles not displaying
- [Hiking Track] revived
- misc. fixes: on all chess genres, [Decoration Tree], start-finish genres
- untangram (@SpectriaLimina)

Internal:
- variant templates now explicitly applied at the very end of the queue
- all genre pages moved into a folder (thanks @dohz for finding missing links!) 
- removed:
	- textures support
	- ´´geometry.tileterritoryed´´, ´´geometry.unobstacles´´, ´´geometry.regioncompass´´, ´´geometry.symbolcompass´´
	- ´´inherit´´ property (´´models´´ suffice)
	- ´´hint´´ (replaced by ´´markbol.polycompass´´)


September 2023
#=#=#=#=#=#=#

New genres & variants:
- [Alcazar] by @Jerome
- [Simple Loop]: directions by @Millay
- [Masyu]: pentomino, snake, snake-edge by @Takmu

Kudamono Highlighter V3:
	- adds flexibility by separating each rule in two parts:
		- styling aspects now belong to the ´´glow´´ property, whereas
		- filtering aspects now belong to one of three related properties:
			- ´´consfilters´´ (staying constant)
			- ´´monofilters´´ (moving focus to a deeper or related aspect)
			- ´´polyfilters´´ (splitting a single focus into multiple independent foci)


Font:
	- changed the default font for:
		- consistency across devices, between mobile and desktop
		- solving an bug reported by @donnythenuts

API:
	- it's now possible to distribute symbols to separate encoding meshes via the ´´symbol.encosuffix´´ property, which will be added to the url parameters ´´LI-´´ and ´´LS-´´ (expansions of ´´L´´ and ´´LF´´ respectively)
	- 3-digit positive integers are now allowed (@Wen)
	- Multi-line encoding via the ´´SI´´ and ´´SS´´ parameters

Interoperability:
	- Puzz-link import now tolerates variant urls (those containing the string ´´v:/´´)
	- Penpa batch import:
		- tile types: shaded/absent, ice ^^[Parrot loop], [Ice dance pair] etc...^^
		- autodetect genre from puzzle title (beta)
		- new url types: tinyurl.com
		- arrows and selected letters (S, G, F)

Page:
	- dragging different puzzle urls (within the same genre) to the desktop now produces distinctly titled links, no longer overwriting them, so it's easier to save puzzle drafts
	- easier navigation between puzzles of the same page, via next/previous buttons (@AndreaGilbert)
	- changestreams integrated with the homepage
	- variant information was added to the [new puzzle page|kudamono/new] and also to the page of each genre, in a more automated way (@Yuyuki) 

UI:
	-cursors:
		- streamlined the cursor / cursor prediction modules
		- the cursor now shows in all occasions (@Menderbug)
	- editable fields:
		- changed colours to increase contrast (@Jubale)
		- fixed a bug of shortcut interference (@Jubale)

Internal:
	- multi-letter fruits added to harvest
	- rules refactoring:
		- rule bank split into smaller modules
	- Multi-lines update:
		- segments moved to a new data structure named ´´supraforest´´ (solve lines) and ´´infraforest´´ (given lines). This will enable genres mixing different line types (e.g center vs edge, knight vs orthogonal, different colours, etc...).
		- for consistency, pencil aux marks (sketches) moved to an equivalent structure ´´sketvest´´



August 2023
#=#=#=#=#=#=#

Collaborations:
- new genres: [flexible-counters], [redemption], [dance-and-dance]
- @kuchiwo broadcasted a series of seven Kudamono Livestreams: [1|KLV?g98NMJiTSuo], [2|KLV?Duueh1wiC7I], [3|KLV?YPCs6CK9QrE], [4|KLV?S5rUrz2C-Y0], [5|KLV?5Aq0om3AEHI], [6|KLV?ynDZbv1BqlM] and [7|KLV?1feS2GmoFf4] (uncovering several improvement opportunities)

API Changes:
	- lexicographic encoding is no longer used (except on legacy puzzles); replaced by standard numeric encoding (@semiexp)
	- board size now reflects the number of cells accurately via the W=´´1x2x3´´ parameter
		- ´´1x1 ´´ and ´´nx1 ´´ boards now allowed as the official minimum
	
Interoperability:
	- [Myopia] and [Ant Mill] puzzles can also now be [imported directly|../p.html] from **puzz.link**-style urls, so all genres common to both platforms are covered.
	- Penpa batch import page created, with support for:
		- numeric genres (1 number/question mark per cell) ^^[Soulmates],...^^
		- black and white pearls ^^[Masyu],...^^

UI:
	- redesigned the restart button [[restart]] to make it more distinct: [[reset]] (@Kays)

Miscellaneous Bug fixes:
	- fixed an issue with auto-mode ignoring lines (@Kuchiwo)
	- fixed an issue with some error styles being shaded by previous styles (@Kuchiwo)
	- url can now be shared as well (@MonokuroGreen)
	- 404 page was not displaying (@dohz, @Direkrow)
	- Safari bugs:
		-bookshelf displays each book at full width
		-puzzle miniatures patched so they at least are easily selectable (@AndreaGilbert)
	
Internal:
	- added the ´´&LI, LIA, LIB...´´ family of encodings which can be used internally to encode e.g. differently-placed symbols each in its own mesh to avoid the need to reencode if placements are added/removed
	- removed property ´´geometry.tilesymboled´´. All symbols use the tile centre as a reference from now on, their precise placement is determined by the ´´symbol.placements´´ property.
	- removed property ´´geometry.tilelined´´. All lines use the tile centre as a reference from now on, their precise placement is determined by the ´´symbol.placements´´ property:
		- in addition to standard numeric placements, ´´tile-vertex-mid´´ and ´´tile-edge´´ as geometry-aware placements
	- refactoring of the module loader
	- the unit testing system was extended to any variants


KLV?:=https://www.youtube.com/watch?v=

July 2023
#=#=#=#=#=#=#

Collaborations:
	- New Genres ^^[Trizone], [Curve Sums], [Barbed Wire], [Nurikabe-loop], [Reachability]^^
	- First remixes of two distinct genres: ^^RB Masyu, Nurikabe Loop Masyu^^, under [Masyu]

Interoperability:
	- [Brownies], [Square Jam], Simple Loop, [Masyu] puzzles can now be [imported directly|../p.html] from **puzz.link**-style urls, either by:
		- swapping the domain directly by **site.domain** 
		- limitations: board sizes up to 9x9 only; numbers up to 16 only

// Link previews:
// 	- sharing a paper puzzle link will now display the associated puzzle metadata within the link preview (for more effective sharing on social media)
// 	- a genre-specific (but not yet puzzle-specific) picture is also now displayed


UI:
- board rotation and mirroring: (@MartinEnder)
	- has interface buttons available [[rotate-clockwise]], [[mirror-right]], for mobile
	- mirror shortcuts updated to the combo [[m shift, shift right]]
	- takes ´´symbol.placement´´ into account ^[Crosswall] and works on grids of variable dimension, such as rectagular or irregular hexagonal
	- takes directional symbols into account, such as arrows ^[X-sums], even on hex grids ^[RGB Loop]
		- via properties ´´symbol.rotagroup´´ and ´´symbol.orientation´´
- dragging:
	- symbol dragging now has a simpler drawing mode, different from line dragging (@Menderbug)
	- more control of the dragging area via the ´´dimension.dragpadding´´ property - this extra padding is not included when exporting pictures, for example (@Menderbug)
	- dragged symbols now rendered via ´´lightor´´ property
- mousewheel:
	- will only be used to rotate symbols if symbols are available and cursor is within the board; otherwise scroll the page normally
- buttons:
	- symbol icons now display slightly larger, thus more easily visible (@direkrow)
	- aux mark keyboard shortcut tooltips added (@direkrow)
- aux marking:
	- shortcut [[ctrl space]] now toggles aux mode (@direkrow)
	- right clicking in edit mode now places auto aux marks as well (@direkrow)
	- aux mark interference (causing marker wrongly placed in adjacent cell) no longer occurs (@direkrow) 

Performance:
	- slightly more efficient dragging:
		 - reducing all calls to ´´UpdateState´´ to a single one at the action's end

Page:
	- new "Make New Puzzle" button added prominently (@Menderbug)
	- puzzles url can be opened in edit mode via the temporary ´´&edit=1´´ parameter

Miscellaneous Bug fixes:
	- loading hiccups fixed (text streams now read in chunks) (@Menderbug, @DireKrow);
	- cursor now updates instantly when a symbols is changed via keyboard (@X-sheep) 
	- rare race condition tentatively fixed on drawing the puzzle miniatures (@direkrow)
	- bookshelf titles no longer slightly off-screen (@direkrow) 
	- pulsing inexistent buttons no longer tried (@direkrow) 
	- toggling highlighting is now instantaneous (@direkrow) 


June 2023
#=#=#=#=#=#=#

Collaborations:
- New Genres ^^[Tetritory], [rgb-loop], [zero-one-lines], [Achtelwenden]^^ 
- solver for Crosswall by @semiexp
- Kudamono Editor debuts in GAPP

API Changes:
	- symbol encoding in genres with symbols outside the board was split in two fields:
		- ´´LEX´´ for symbols outside (ex-) the main board 
		- ´´L´´ for all other symbols (nothing changes in most genres)
	- this solved a few bugs and will make all genres future-proof in case of variants that add outside symbols, so that it won't affect past encodings
	- puzzles using the old encoding are redirected
	- standardised letter encoding for letter genres, e.g. cypher clues (uppercase)
	- numbers extended up to 99 (@Blaz)

UI:
	- one can now drag away from the puzzle by clicking on the surrounding area (@DavidMillar)
	- UI buttons stay pressed when selected (@TwoHoleStraw)
	- decorations (informative highlighting that does not count as an error) can now be toggled in the share menu as well as via the [[alt shift x]] shortcut
	- unified mode:
		- appearing more often (@Menderbug)
		- click area for lines enlarged to include segment midpoints, so they can't be missed now (@Menderbug, @ChenhaoXu)
	- metadata:
		- difficulty stars can be inserted using asterisks (@Blaz)
		- tooltips added to every field (@Teal)
	- question marks can now also be inserted by typing [[?]] directly.
	- drag aborting (e.g by leaving the puzzle area or switching focus) no longer causes bugs

Symbols and aux marks:
	- better restriction of symbols when dragging based on their slot and placement (@Suzuki)
	- inserted symbols can now:
		- erase adjacent symbols via the ´´symbol.uncompass´´ property
		- add adjacent symbols via the ´´symbol.polycompass´´ property
	- new aux marks:
		- triangular quarter-squares (a.k.a. shaka), with option for full (@Blaz)
		- double-diagonal aux marks (@MartinEnder)

Variants:
	- multiple variants can now be added to the same page, and render correctly 
	- consolidated the following pages (@dohz):
		- The ^^[Myopia]^^ page now contains the variants Full Myopia and Unequal Lengths Myopia
		- The ^^[Chess Snake & Variants]^^ page now contains Chess Snake asa well as Chess Path
		- The ^^[Square Contact]^^ page now contains Contact and Hex Contact
	- significantly expanded the ^^[Masyu]^^ page, now containing a myriad of atomic and combined variants for perusal, with good example puzzles (@dohz, @teal)
	- commas as variant separators no longer break on url export (@Teal)
	- variants that drop (instead of adding) certain constraints, aka. "optionals", are fully supported

Internal:
	- generalised variegation can now be applied to any scope
		- both hue and lightness variegation are supported, via the [styles] ´´varihue´´ and ´´varilightness´´
		- shortcut [[shift n, shift d]] can be used for decorative errors
	- added ´´pins´´ (´´buds´´) and ´´streaks´´ (´´segments´´) as additive highlighting options, by analogy with ´´lands´´ 
	- removed properties ´´geometry.longed´´, ´´geometry.followfruits´´, ´´geometry.followshapes´´ and ´´segmentation´´
	- property ´´orchard´´ demoted to the ´´tabula´´ only
	- scopes ´´segments´´, ´´segment´´, ´´longsegment´´, ´´endsegment´´, ´´longendsegment´´, ´´budsegments´´, ´´budkingdom´´ added
	- scope ´´letters´´ added
	- line width for text in compound symbols can be set separately via ´´symbol.textLineWidth´´
	- added ´´state.geometry.basix´´ for a more robust usage of ´´symbol.placements´´ and split those as a submodule

Page:
	- the bookshelf now displays the correct page titles (@dohz)
	- fixed a critical display bug on some miniatures (@dohz)

May 2023
#=#=#=#=#=#=#

Collaborations: New Genres ^^[Turtle Shell Loop], [Gravel], [Crosswall], [Starry Knights]^^ 

Variants and rule elements (API change):
	- variants can now be added via the field ´´&V=´´
		- the old "verified by" field (formerly ´´&V=´´) was folded into the "with thanks to..." field ´´&K=´´ as this was the most common scenario
	- the growing list of variants is specified at the [variants] draft page
	- common rule elements can be added exactly the same way

Interface:
	-menus:
		- [[middleclick]] now toggles between edit and play mode (@Menderbug)
		- derived button colours (@Menderbug)
		- alternative keyboard shortcuts are now possible, as the ´´symbol.shortcuts´´ property now accepts lists too
		- "lingering" cursor bug on mobile (@Menderbug and @Yuyuki)
	- aux markers:
		- can now be preserved upon adding lines on top, via the ´´symbol.prelined´´ property (@Deusovi) 
		- can now be removed conditionally upon adding a symbol, via the ´´symbol.explacements´´ property (@Yuyuki)
	- lines:
		- "one cell behind" bug in line drawing (@Menderbug and others)
		- property ´´input.figure.halved´´ allows better line subdivision , fixing a bug ^^[Parrot Loop]^^ (@yuyuki)
		- obstacles are now considered via the ´´input.obstacles´´ property ^^[Pentomino Puzzles], [Tetro Stack]^^
	- movement:
		- [Movement input mode|drawing-modes.html#movement-mode] ^^[Brownies], [Starry Knights]^^

Rendering:
	- small adjustment to the puzzle picture border (@Menderbug)
	- puzzles of multiple genres can now be rendered and load in the same page
	- toggling ´´mode.auxing´´ now resizes the board much like toggling ´´mode.edit´´

	
Internal:
	- support different line types (given vs input) each with a different particular style, via the ´´penbols´´ property ^^ [Turtle Shell Loop], [Magic Shape] ^^
	- ´´geometry.lineverged´´ property specifies whether lines can be drawn at the verge
	- encoding of "absent tiles" now always with the letter "x" for consistency across all genres; the same applies to visible blocker tiles
	- scopes ´´unlongloops´´, ´´unlongloop´´, ´´unlongtrack´´, ´´unlongorchard´´ added (these result in separate yet well-segmented tracks) ^^ [RB Loop], [RGB Loop]^^
	- scopes can now be prefiltered in all rules, by e.g.´´rule.placement´´ (affecting scopes: ´´buds´´, ´´numberedbuds´´)
	- added a ´´input.linemovemented´´ property for movement genres, with ´´input.linemovementedfruits´´ as a way to restrict movement to certain fruits; consequently removed the ´´figure-stepped´´ parameter 

Refactoring:
	- rules:
		- moved ´´pics´´ and ´´descriptions´´ away from rules, into the ´´explanations´´ object (all genres)
		- property ´´rule.order´´ removed
		- extracted some rules into templates for reuse across genres and repurposing as live variant modifiers
	- drawing functions, for better testing and exposing data for visual unit tests
	- numeric genres, by adding the ´´numbers´´ property to replace function calls from within the genre file


April 2023
#=#=#=#=#=#=#

Collaborations: New Genres ^^[RB Loop], [Bouba Kiki Loop], [X_Sums], [Hit Points]^^

- API Changes
	- puzzle encoding in all numeric genres was standardised for consistency across genres, for several reasons:
		- facilitate development of automatic solvers, reducing the size of the"symbol dictionary"
		- accelerate genre porting, for the same reason
		- allow future expansions with larger and larger numbers, if ever needed
		- allow remixing of numeric genres in the upcoming Kudamono Designer
		- provide a means for multi-letter symbol encoding, if ever needed
All changes are backward-compatible - no puzzles will be affected.

- UI Changes
	- symbols in play mode can be coerced to stay within the board during input, even if positions outside are available in edit mode - via via the  ´´geometry.exsuprasymboled´´ property (@XSheep)
	- grid editing buttons updated for more consistency :shrink-right: and now adapted to the diamond grid (@Menderbug)
	- tool selection menu:
		- auto-tool mode (previous behaviour) became an option, albeit the default one:
			- the cursor now changes in real-time to reflect the predicted action 
			- the auto-button icon (composed of the first two actions) does not appear 
				- when there is a conflict preventing tool inference (e.g. ^^[dream-sequence]^^)
				- when no more than one action is possible (e.g. ^^[bonsai]^^)
		- symbol and line selection buttons now appear, on a genre-by-genre basis
		- likewise, marker and sketch buttons appear, when in aux mode:
			- alphabet aux panel now appears in some genres (@fff) ^^[tricklayer]^^
			- an auto marks button (:auto-mode:) appears when appropriate
	- numeric candidates aux marks ^^[X-sums]^^
	- keyboard shortcuts to select particular aux marks
	- a small prompt to load a puzzlestring from clipboard now appears when pressing [[ctrl v]]
	- the cursor is also drawn on touch devices:
		- without "hover predictions"
		- this forces a refresh of drawing targets, thus indirectly solving an "out-of-sync" bug (@Yuyuki)
	- hover predictions became more focused (@Menderbug):
		- only the main action is predicted (dropping the alternate action)
		- only one tool at the time (rather than all together at once)
		- lines display the predicted segment alongside the (more discrete) starting point
	- a lingering segment is no longer drawn after undrawing a line up to the very start (@dohz)
		- click vs drag disambiguation via the new ´´mode.clicking´´ property

- Page Changes
	- all text that is indirectly generated, rather than manually written, now displays with a different, **monospaced**, font, because:
		- it's nicer for readers to know when they are reading generated vs written text (even when generated text is based on manual data)
		- generated text tends to accumulate inaccuracies as new or more complex situations arise.
	- added aux mark keyboard shortcut tables
	- variant genre pages:
		- More complete authorship snippets under the rules text (@Dohz)
	- Page metadata for link previews no longer shows genre/variant authorship in the top title, because it was in many cases inaccurate. Instead it uses //Player & Editor// (@Dohz)
	- Rules text now:
		- displays a pass(:pass:)/fail(:fail:) icon, if appropriate, where available
		- can be copied to clipboard, via a button below, for quoting on external sites (@XSheep)

- Other fixes
	- shading a number no longer necessarily hides it underneath (@Menderbug)
	- overlapping number and symbols now insertable together for more convenience ^^[dream-sequence], [flashlights-crossing]^^


Internal:
- geometry:
	- new property ´´geometry.exmarked´´ specifies whether marks are allowed outside the board (defaults to false), by analogy with ´´geometry.exsymboled´´ property 
	- new property ´´geometry.wholelinemesh´´ used instead of ´´geometry.linemesh´´ when the ´´geometry.linedivided´´ property creates a smaller divided mesh, not always desired
- **visual** unit tests added to the test suite
	- ´´buds´´ (via the ´´appearance´´ property)
	- ´´lands´´ (via the ´´kappearance´´ property - main difference is that lands can be drawn several times in the same spot)
- new scopes:
	- ´´frukingdom´´, ´´fruterritory´´ (keeps region within fruit specified after ´´:´´ )
	- ´´unfrukingdom´´, ´´unfruterritory´´ (outside region without touching the fruit specified after ´´:´´)
	- ´´:number´´ and ´´:letter´´ scope filters (expanded to the actual numbers or letters present before checking)
	- individual scopes for a single ´´bud´´ or ´´number´´
	- ´´:midpoint´´ scope for segment midpoints (for use with the adjacency rule family)
- refactoring:
	- common line properties moved into templates such as ´´template-line-normal´´, ´´template-palette-orange´´, possibly causing slight uniformisations in the appearance of some genres
	- all numeric genres may no longer specify their own ´´alphabeto´´ dictionary, relying in a shared dictionary
	- erase ´´symbol.photoplacement´´ property and all related functions
	- style properties:
		- renamed to canonical values in all genres
		- are nevertheless renamed by default upon initialisation, for robustness 
		- behaviour of ´´opacity´´ and ´´lineOpacity´´, ´´lineOpacitor´´ was fixed, in particular around grid
	- rule highlighting preserves original order when several errors are applied in succession in the same spot 

March 2023
#=#=#=#=#=#=#

New Genres: ^^ [Zukei], [Shikaku Cut], [Chess Avoidance], [Chess Loop], [Numericlone] ^^


Kudamono Genre Designer:
- playground page with:
	- live refreshing (whilst keeping focus)
	- ability to load any combination of genres and templates, and overwrite any aspect
	- IDE-style code editing shortcuts for a single selection:
		- duplicating, moving and removing line groups
		- opening or closing braces (multiple types), even around the selection
		- (de)indentation; preserving indentation on newline
		- etc...
	- basic export
	- ability to sync serials with code for live editing of rule examples and unit tests

Features and Fixes:
- Geometry:
	- [diamond grids|grids#diamond] are available (@Menderbug)
	- adaptive zoom now takes into account removed tiles (@XSheep)
	- hexagonal grids:
		- url encoding/decoding now bug-free ^^ [Zukei] ^^
		- [face-down|grids#face-down] hexagonal grid tiles now rendered w/ correct size
		- shifting/mirroring/rotating the board no longer cause rounding errors (again), as newly added points now snap to the original mesh if sufficiently close
	- geometric properties in serials are initially memorised and re-added (when different from default ones)

- UI Changes:
	- feedback button (:feedback:) within the about menu (:info:) 
	- mobile fixes
		- opening the keyboard on mobile (or resizing any window) no longer locks the live parameter ui
		- all UI buttons were raised a little on vertical screens to avoid being covered by mobile browser menus
	- eraser buttons were consolidated as a single :restart: button, which:
		- erases solution and aux marks, when in play mode
		- erases everything, when in edit mode
	- input lag alleviated (@tluo)

- Galleries:
	- Puzzle pictures are now rendered consistently, scaling down to fit available space (instead of being cropped)
- Transcriptions sped up with the new default "batch transcribe" workflow reduces context switching
- Live parameters were refined to allow more complex data entry ^^ [Zukei], [Shikaku Cut] ^^

Internal:
- rendering and highlighting:
	- added ´´colour:"from-prebud"´´ property to style each segment colour based on the colour of the fruit it starts on
	- property ´´render.container´´ no longer needs a pre-dot
	- property ´´targetoo[layer]´´ memoises current drawing contexts for each canvas, speeding up drawing
- scopes:
	- Negative scopes, via the ´´:!´´ operand, to specify regions not containing a fruit
	- ´´nets´´, ´´longnets´´, ´´net´´ and ´´longnet´´ scopes consolidated for use in tangram-like genres
	- ´´numbers´´ and ´´number´´ scopes
		- major simplification of all numeric genres
- geometry:
	- property ´´geometry.linedivided´´ now explicitly marks when lines must be subdivided ^^ [Parrot Loop], [Flashlights] ^^
	- masked symbols are excluded from the tabula by default via property ´´geometry.unmasksymbolmesh´´
	- a small encoding problem with non-unit compasses was fixed
	- removed outdated properties ´´geometry.terriplacement´´ and ´´geometry.terrifruits´´
- scattered refactoring:
	- ´´Genre´´-->´´genro´´ for genre objects
	- more symbols are inherited, e.g ´´symbol-model´´ template for pipes, variety, etc...
	- removed ´´RD´´ property that was used to disable rules selectively
	

Internal/Global:
- expanded the undo module to allow infinite parallel undo/redo/restart stacks
- transparent event handling using ´´false´´ as return value to signal that the default action should not be prevented 


Collaborations:
- @Kuchiwo wrote [an article on Hempuli's puzzles|https://gomamisomix.hatenadiary.com/entry/2023/03/05/211318], listing the Kudamono Editor as the "Web Player" for many of the puzzles


February 2023
#=#=#=#=#=#=#

Collaborations:
- new genres: ^^ [soulmates], [unequal length loop], [Nuri Nearest Number], [Magic Shape] ^^
- first commercial project using the [Kudamono Editor]: @fff's [Puzzle Journey|https://note.com/fffpuzzle/n/nb462648c4d3b] ^^ [tricklayer], [parrot-loop] ^^
- first solver for a Kudamono genre, by @semiexp ^^ [tricklayer]^^
- first [doppel|https://twitter.com/bayrenshu/status/1629102493799190528] [puzzles|https://twitter.com/bayrenshu/status/1629081045156114432?cxt=HHwWgMDR7Yml1JstAAAA] using the editor, by @bayrenshu ^^ [tricklayer], [clones], [soulmates]^^

Features and Fixes:
- Interactive puzzle parameters
	- live editing of puzzle parameters in parametrisable genres ^^[Ionic Squares], [Divide and Conquer], [Tetro Stack], [Pentomino Puzzles], [Magic Shape]^^
- Aux mark improvements:
	- Monomino aux mark added ^^ [tetro stack], [pentomino puzzles] ^^
	- Alphabet aux marks added ^^ [Tricklayer] ^^
	- Diagonal aux marks added ^^ [Subway], [Subwhirl], [Tumbleweed], [That's not right], [Palindrome Path], [Field Trespass], etc... ^^
	- Knight aux marks added ^^ [oddstitch], [knight Loops], [Jump Rope] ^^
	- Cross marks in hex genres now rotate depending on the direction of the underlying edge ^^ [hex loop], etc... ^^
	- Marks with multiple placements/forms can be dragged interchangeably ^^ [tricklayer], ... ^^ (@fff)
	- Marks by default no longer drawn at the puzzle verge ^^ [tricklayer], ... ^^, with option ´´geometry.markverged´´ to re-enable it where needed ^^ [subwhirl],... ^^
- Cursor fixes:
	- Predictive cursor display no longer active when the cursor falls outside the board (@GESAKU)
	- Cursor misalignment/hitbox corrected (@edderiofer)
	- Cursor no longer disappears on undoing back to start (@monokurogreen)
- Other interface improvements:
	- small adjustments to the UI buttons to make them more intuitive (@MartinEnder), and more responsive
	- fix: returned timer to the foreground (@MartinEnder)
	- Symbols with multiple placements/forms can now be dragged interchangeably ^^ [Subway], [Subwhirl], [Hamiltonian Mazes] ^^

Discontinued:
	- //Spider input mode// for ^^ [dream sequence], [unparalleled], [zig-zag], etc... ^^ the line would be drawn freely, but it stick to any symbols, like a spider's web (this didn't work well in practice).


Internal:
- Finer control of co-territories, via the ´´geometry.unobstacles´´ property (specifies which fruits are "transparent")
- Ability to hide certain symbols on win, via the ´´symbol.unwinned´´ property (@GESAKU)
- Ability to specify other layers to erase when a symbol is added, via the ´´symbol.unlayers´´ property (@GESAKU)
- Aux symbols, which are in between marks and symbols (affect error checking, but are erased via the aux ui buttons), via the ´´symbol.auxed´´ property
- ´´R_unique´´ now supports multiplicities (defaults to 1) ^^ [pentomino puzzles], [tetro stack]^^ (@Karoo, @dohz)
- The ´´placements´´ property for symbols/aux marks: split at the outset into single ´´placement´´ sub-symbols sharing the same ´´letter´´
- refactoring of the drag module, especially line/symbol and sketch/mark auto-modes
- erasing ´´suprasegments´´ no longer erases ´´infrasegments´´
- simplified encoding for a few genres: ^^ [Subway], [Subwhirl], [Hamiltonian Mazes] ^^ (either backwards-compatible or with individual rewrite requests)
- rewrite all puzzles in pages for the Kudamono [Featherdown] plugin, reducing complexity




January 2023
#=#=#=#=#=#=#
Features and Fixes:
- Better image generation:
	- custom image sizes, in px;
	- correct image dimensions, including an auto-adjusting border; (@monokurogreen)
	- solution and aux marks can be included/excluded;
	- monochrome and error-free options
- Aux mark improvements:
	- cycling (several different marks can be added added to the same spot) ^^ [brownies]^^ 
	- arrow marks ^^ [myopia]^^ 
- Cursor improvements:
	- cursor no longer flashes
	- hovering the cursor previews possible actions (line drawing, add symbol, aux mark) discreetly
- Full-segment input / half-segment checking ^^ [parrot-loop]^^ 

Collaborations:
- settled on collaboration model for puzzle porting, involving puzzle authors earlier and more deeply
- deepened collaboration with PuzzSq with the addition of:
	- new genres ^^ [brownies],[parrot loop], [clones]^^
	- prior genres ^^ [2 3 mazes], [arrow loop], [full house], [rook end mazes]^^

Internals:
- performance improvements when drawing
- ´´"net"´´ and ´´"longnet"´´ scopes added ^^ [shape-grid]^^ ,^^ [untangram]^^ ,^^ [bricklayer]^^ 
- ´´R_unique´´ rule now accepts ´´points´´  ^^ [tricklayer],[pentomino-puzzles],[tetro-stack]^^ 
- styles:
	- default basic colours
	- global style models (stylette) 
	- style properties ´´huor´´, ´´saturator´´, ´´lightor´´ added 
	- ´´opacity´´ and ´´opacitor´´ behaviour fixed 
	- separate properties for text styling, prefixed with //txt-// 
- Glyph-based font loading:
	- prevents "font flashing" upon loading
	- allows font deformation, e.g. so long multi-digit numbers can fit available space 
- Gentler error reporting
- Page production:
	- puzzles are now recognised in [featherdown] reducing cognitive load and enabling faster page editing
	- refactored genre-specific text generation
	- long (numeric) symbol tables shortened
- Print layout code simplified (generates a new window instead of modifying current one)


2022
####

December 2022
#=#=#=#=#=#=#=#=#=#

Collaborations:
- Successful support of @PuzzleSquare's Advent Calendar, with 5+1 genres: ^^ [ice-dance-pair], [tiger-in-the-woods], [pearl necklace], [ivy],[decoration-tree] plus later [shirokuro-pipe]^^ 
- @wand125 translated the [kudamono editor] manual to [japanese|../kudamono-editor-ja.html]
- @bayrenshu added and started tracking all genres in the [Editor Dictionary|https://bay-puz.github.io/editor-dict/] 
- Open [plans], for easier communication and tracking


Features and Fixes:
-Menu improvements:
	- Grid transforms submenu, for easier editing
	- aux eraser button moved inside the aux submenu
	- rules button also displayed in genre pages (scrolls down, simply)
- Auto-exclude solution and aux marks from exported links
- alternate symbols in monochrome mode ^^ [decoration-tree]^^  
- input modes:
	- locked compass input mode ^^ [ice-dance-pair]^^  
	- improved rectangular input mode ^^ [ionic squares],[rectangle]^^  
- timer:
	- Upon solving a puzzle, a small timer will show up the elapsed time, in the format ´´MM:SS´´ (minutes, seconds).
	- Some players find timing essential, others may find it stressful. So a compromise was sought between making this feature available and discoverable, but also discreet.
	- As a bonus, clicking the time will copy it to the clipboard for e.g. easy sharing in competitive forums.
- hints
	- added to ^[Nura Knight] (@uriyoshikiba)


Internals:
- Stats page for easier refactoring of the rule bank


November 2022
#=#=#=#=#=#=#=#=#=#

Collaborations:
- new genres: ^^ [limbs], [fillimbs]^^ 

Features and Fixes:
- Invisible, tiles  ^^ [limbs],[fillimbs]^^ 
- input modes:
	- radial input mode  ^^ [flashlights],[crossing-flashlights]^^  
- "click hints" highlight some cells when others are clicked ^^ [nura-knight]^^ 
- Puzzle pages link to corresponding pages on alternative implementations and portals
- ^^ [grids]^^  page listing all available grids


Internals:
- drawing order for different layers became an explicit sub-object ´´visuals.ordero´´ ^^[sneaky snakes]^^
- unit tests:
	- all unit tests became explicit sub-objects ´´tests.pass´´ and ´´tests.fail´´ 
	- keyword-based filtering of genres for testing
	- go-to button to interact with errors quickly
- tabula refactoring:
	- scopes can now be added easily (modular)
	- state sharing was improved in its reactive model


Discontinued:
- genre //flow// (the implementation never worked well :cry:)


October 2022
#=#=#=#=#=#=

Collaborations:
- Started collaboration with Puzsq, via the Paper-puzzle-player page: ^^ [honey-circuit], [ice-dance-pair], [nura-knight]^^ 
- The first "official genre" by site author ^^ [subwhirl]^^, since it was added to:
	- @Puzsq, with puzzles by @fff 
	- Eric Fox's rules 

New features:
	- Shadows below the board ^^[Limbs], [Fillimbs]^^
	- Absent tiles

Internals:
- Rewriting all genre pages in featherdown at key places
- AlphaNumbols (better support for numeric symbol generation)
- split actual execution from dependency listing (pipeline), preventing duplications


September 2022
#=#=#=#=#=#=#=

Features and Fixes:
- [Puzlog|../puzlog/index.html]:
	- seeing at a glance all puzzles by site.author
	- future-proof backup of all puzzles

Internals:
- Hot reloading of puzzle genres for faster style tweaking
- automatic picture generation
- shortcuts:
	- genre page
	- current puzzle pictures

Collaborations:
- [Paper puzzle masterlist] launched as a collaborative effort and starting point for future collaborations
- @clickmazes spearheaded a new collaboration model, by transcribing her puzzles ^^ [Full House] ^^ 


August 2022
#=#=#=#=#=#=#=#=#

Features and Fixes:
- aux button in the main interface, for mobile users
- line thickness scaling based on board display size fixed
- mixed line/symbol input mode ^^ [Dream Sequence], [Skating]^^

Collaborations:
- @EricFox made me rethink the collaboration model for porting and transcribing puzzles

Internals
- rule pictures can be ordered explicitly via the ´´order´´ (numeric) property

July 2022
#=#=#=#=#=#=#=#

Features and Fixes:
- [Paper Puzzle page] created, listing puzzles hierarchically with an option to search them by name or author
- Menus:
- bookshelf, with variegation of colour
- genre pages display breadcrumbs to general [paper puzzle] page
	- printing buttons added to the genre pages


June 2022
#=#=#=#=#=#=#=#

Features and Fixes:
- Puzzle Sharing (email, link, a few social networks)
- Hexagonal grid support ^^ [full hex], [hex turn], [hex end mazes], [hex loop], [hex boomerangs], [arrow loop] ^^
- Symbol Input in solver mode ^^ [chess pack], [catch 22], [tic tac toe], [chess battle],[shapeshifting] ^^
- commands and shortcuts:
- numeric shortcuts now sequential
	- some keyboard shortcuts remapped

Internal:
- metadata encoding fixes

Discontinued:
- experiment with fetching of daily puzzles


May 2022
#=#=#=#=#=

New Genres: ^^ [Rosewary], [Rook end Mazes], [Venn], [Tetro Stack], [Pentomino Puzzles] ^^

Internal:
- colour palettes names accept deep renaming chains 

April 2022
#=#=#=#=#=

New Genres: ^^ [Full House], [flow] ^^





2021
####

December 2021
#=#=#=#=#=#=

Features and fixes:
- Changeable puzzle parameters, in the URL, for variants ^^ [divide and conquer] ^^ via the ´´knobo´´ object
- Symbol placement for error checking may differ from the placement for drawing ^^[plot twist], [hiking track] ^^, via the ´´photoplacement´´ property

November 2021
#=#=#=#=#=#=

Support for network-like-genres ^^[shape grid], [untangram], [unrectangles]^^

Collaborations:
- Open transcription process so anyone can participate ^^ [tet colour], [pent colour], [gerrymandering] ^^ thanks @@ strangecreation, skymoo, stingby12 @@

Discontinued:
- Automatically transcribing puzzles via "computer vision"

October 2021
#=#=#=#=#=#=

Features and fixes:
- region division genres ^^ [crowded intersections], [great divide], [lohkous scattered], [vegetable garden] ^^
- Rectangular drawing mode ^^[rectangle], [chainlink]^^
- extra symbols can now be added as a result of an error ^^[total masyu]^^

Internal:
- the need for a page to check all unit [tests] at once for all genres emerged 

September 2021
#=#=#=#=#=#=#

Features and fixes:
- arrows ^^ [pathfinder],[oddstitch]^^
- free line drawing ^^ [tricky tour],[zig zag], [non crossing]^^

Collaborations:
- expand the collaborations to other authors: @Hempuli ^^[Field Trespass], [Legalese], [Oddstitch] ^^, @Chz ^^[unequaloop]^^, @NaokiInaba ^^[OX Loop]^^

August 2021
#=#=#=#=#=#=#

Features and fixes:
- emoji support ^^[roost]^^
- arbitrary placement and visualisation of errors, irrespective of their origin

Collaborations:
- start of the @ErichFriedman series of ports, with the help of @clickmazes ^^ [slow turn], [that's not right], [line segment], [2 3 mazes], [jump rope], [following suit], [one of each], [palindrome path], [unequal length mazes], [color mazes], [one good turn deserves another], [knight tour] ^^

July 2021
#=#=#

Features and fixes:
 - sketch mode added to [kudamono-editor] (@Hempuli, initially for [bonsai])
 - diverse performance improvements.


June 2021
#=#=#

Features and Fixes:
- textual and numeric symbols (shortcuts, cursors) ^^[Subwhirl]^^
- customisation or grid guide lines and dots, based on inheritance

May 2021
#=#=#=#=#=#=#
[Subway] by @Portponky became the second port after [kudamono]

Features and fixes:
- symbol improvements:
	- layers specify drawing order
	- multiple symbols can be added to the same spot, and placed more precisely
- reactive metadata input, in sync with the url


January 2021
#=#=#=#=#=#=#
[Bonsai] by @LeSlo became the first port after [kudamono]

Features:
- multiple puzzle galleries in the same page
- ´´opacity´´ property in styles
- grids with "overflowing" cells
- board rotation
- a notation for line ´´shapes´´


2020
####

December 2020
#=#=#=#=
The first [kudamono] puzzles were created, as well as the first version of the [Kudamono Editor]