*** Upcoming release ***
- 3.1.1: ABI compatible, no extensions

*** Later releases ***
- 3.1.2: ABI compatible, no extensions
	- use libualloc for rtree stack instead of static allocation [report: Vuokko]
	- consider -I include/librnd/3/ and changing installation path so librnd4 transition would be easier
	- BUG: revise rnd_dad_tree_modify_cell() - previous cell[] should be free'd...
	- BUG: irc: btn_savelog_cb() file name hardwires pcb-rnd prefix, use app's name so sch-rnd saves differently [report: Erich]
	- BUG: make uninstall may throw errors on genht, see priv mail from SnakesAndStuff 10 mar 2022 [report: SnakesAndStuff]

- 3.2.0: ABI compatible, API extensions
	- *FEATURE: sch-rnd critical: move out generic export parts from pcb-rnd into plugins in librnd that don't have external deps (ps, eps, svg)
	- *FEATURE: sch-rnd critical: search for string pcb-rnd-conf-v1; this should be coming from rnd_app (or a global var)
	- cleanup: add new pre/post callbacks in rnd_conf_hid_callbacks_t with hidlib passed
	- beside window positions, also remember paned ratios (reported with fsd); needs named paneds on DAD, maybe more generic RND_DAD_SET_ID? [report: Wojciech]
	- make a runtime vesion of RND_VER_STR and let apps print it
	- move pcb-rnd dialogs/dlg_undo and sch-rnd's sch_dialogs/dlg_undo to librnd, rename action to UndoHistory but keep an UndoDialog wrapper in pcb-rnd for compatibility
	- cleanup: add /local/librnd/* copies of /local/pcb/* scconfig vars
	- generalize ps and png export into libs (do not make plugin name collision!), cschem badly needs them

- 4.0.0: ABI incompatible (feature removal)
	- *FEATURE: sch-rnd critical: move out generic export parts from pcb-rnd into plugins in librnd that have external deps (png) 
	- cleanup: del pre/post callbacks from rnd_conf_hid_callbacks_t without hidlib
	- cleanup: rnd_pref_tab_hook_s calls need hidlib arg: open_cb, board_changed_cb, meta_changed_cb
	- feature: rnd_pref_tab_hook_s ->open should deliver extra action arguments because some tabs may have optional args to specify how exactly it should be open
	- move rnd_gtk_conf_hid.plugins.hid_gtk.global_grid.sparse and "local grid" from gtk to global config,make sure all HIDs do it
	- remove /local/pcb/* scconfig vars
	- remove rnd_hid_cfg_keys_input_() and rnd_hid_cfg_keys_input(), rename rnd_hid_cfg_keys_input2_() and rnd_hid_cfg_keys_input2()
	- remove code marked with REMOVE_4.0.0
	- rename RND_EVENT_BOARD_CHANGED to _REPLACED
	- rename events RND_EVENT_BOARD_* to RND_EVENT_DESIGN_*
	- rename textual event names from pcbev_* in event.c
	- move RND_HATT_SUBDIALOG within the enum to under RND_HATT_TEXT
	- rnd_app_t spares: conf_ignore lists (two void *)
	- remove unused flags from rnd_hid_fsd_flags_t
		- remove RND_HID_FSD_IS_TEMPLATE
		- remove RND_HID_FSD_MAY_NOT_EXIST and RND_HID_FSD_IS_TEMPLATE (replace them with 0 in code)
	- remove rnd_hid_t->fileselect (code should use rnd_hid_fileselect() instead, which should call lib_hid_common's fileselect through a global pointer hook, plug_ style)
	- remove rnd_hid_t->heavy_term_layer_ind and figure how to substitute it in a portable way
	- remove rnd_hid_t->set_draw_faded and figure how to substitute
	- make HID_SC_ an enum
	- remove rnd_hid_t->point_cusror in favor of rnd_hid_t->set_mouse_cursor
	- check what's the diff between rnd_hid_t-> user_context and hid_data; maybe it is enough to keep only one
	- there are no spare fields in:
		- rnd_hid_tree_t (calloced from macro so calloc is on app side!)
		- rnd_hid_dad_subdialog_s
	- simplify menu code, remove unused features:
		- core: RND_MF_ACTIVE, RND_MF_BACKGROUND, RND_MF_FOREGROUND, RND_MF_FONT
		- check in all HIDs as well

*** Unsorted ***
	- lesstif: vertical text, truncated text support
	- DAD: on fsd dir change filelist scroll state is not reset [report: Wojciech]
