0. old, still waiting for ack
+ CLEANUP: propedit rewrite: new action UI should allow operation on object and object ID instead of selection; bug_files/subcsel.bug [report: Wojciech]

1. For the upcoming release ===============================================================================
+ FEATURE: export_xy: pnp origin should be any obj, especially padstacks (fidu) [report: TwisteR]
+ CLEANUP: dad: make the implicit dialog ok/cancel buttons configurable or do not use them at all; e.g. export dialog is confusing [report: Cyril, ml2409]
+ FEATURE: make propset() able to change board properties if first arg is "board" (change baord size) [report: rqsall]
+ FEATURE: padstack edit swap shapes - low level for a "solder mask defined pad" [report: ehennes]
+ FEATURE: extedit: dialog shoudl let the user edit the command template [report: TwisteR]
+ BUG: new preferences
	+ update bugs:
	+ crash:
		+ BUG: preferences() crashes if lesstif GUI is compiled but gtk is not (missing gtk-only conf settings) [report: rqsall]
	+ BUG: lesstif: {i c p} -> crash, only on IRIX system [report: Ian] -> probably fixed, please test
+ BUG: (prio) bug_files/png_export_fix_dpi.patch ,  ML #2474 [report: Cyril]
+ BUG: bug_files/obsconf.lht: load, get a warning for obsolete config; save into a new file and the broken conf node is not removed [report: keantoken]
	+> this is not a bug: we try to preserve thins in the file that we don't fully understand. This is intentional. Think the other way around: you open a file with an older pcb-rnd version that doesn't know about a config node, you do not want it to remove the unknown node because you then may want to open the file again with the new version. It prints an error message with the line number in the file, so you can go and delete the offending lines if you want them removed.
+ BUG: ML 2479: gtk crosshair re-enter to the last pos doesn't always draw the crossghair [report: pstuge]
? BUG: scconfig: if libgd is not detected, there's an extra error on disable-gd-gif [report: Erich]
? BUG: configure without glib installed -> 'unknown arugment disable-gtk' [report: Ade]
? BUG: #define TODO(x) doesn't compile on IRIX system with --debug option ON [report: Ian]
+ BUG: open export dialogue. Export a PNG of the layout. Hit escape instead of "close". Export dialog cannot be opened again unless pcb-rnd is restarted [report: Erich]. 
? BUG: export dialogue, when used to export PNG of top copper, by only making top copper layers visible prior to export, will export top and bottom copper layers in a monochrome png if the monochrome check box is checked. If the monochrome checkbox is not checked, only the visible layers export, as expected [report: Erich]
       > can't reproduce this; if you want layer visibility to considered, check the 'as shown' option. But best if you forget layer visibility totally and just use the cam syntax.

2. For later releases ===============================================================================
- CLEANUP: rename the project file header from geda- to coral- (but keep accepting the old one); update the format docs [report: Igor2]
- CLEANUP: search for TODO pcb_has_explicit_outline() [report: Igor2]
- CLEANUP/BUG: lesstif: preferences(layers): EXPFILL doesn't seem to work; need to replace box code with work/lkesstif/formbox [report: Igor2]
	- BUG: lesstif: {i c p}, color tab: tabbed doesn't grow [report: Igor2]
- CAM:
	- CLEANUP: move the hackish gerber layer suffix functions into CAM configs [report: Ade]
	- CLEANUP: split gerber and drill file generation (make gerber depend on drill, for backward compatibility)
	- FEATURE: export_gerber: add a true gerber drill output
	- FEATURE: make the drill exporter sort drills by attributes, an user configured table telling which drill (by attribute) ends up in which file
	- FEATURE: invent a generic API for both the drill attrib config table
	- CLEANUP: remove the gerber->drill dep and ask users to use the CAM instead
	- CLEANUP: unify how output files are accessed/checked: confirmation on overwrite
- FEATURE: route style upgrade to prototypes (depends on tree in lesstif!):
	- BUG: set same {e s s} doesn't work on padstacks [report: Igor2]
	- BUG: padstack doesn't show drc xor shape while moving - because the whole drawing is a cheat for old vias [report: igor2]
	- replace the route style dialog box's via part
	- proto copy to buffer - a buffer with a single padstack should also serve as a prototype copy vehicle? or just import by a list from the buffer
	- load/import from buffer and file
	- CLEANUP: remove PCB_MIN_PINORVIA* PCB_DEFAULT_DRILLINGHOLE macros - nothing should use them anymore
	- add text font, update the pool node text_edit [report: Igor2]
- CLEANUP/FEATURE: session persistent DAD message log (messages are flushed after dialog is closed?) [report: Miloh]
	- DOC: document the DAD text widget
- CLEANUP: DAD: centralize the coordinate input spinbox into the dialog plugin
	- drc & size: doesn't update on mil/mm change in top win -> need a list of spinboxes to update on conf change [report: Ade]
	- make the central unit infra more flexible so plugins can register new units
	- add an event for unit change so all spinboxes can be updated
	- make sure we don't crash when grid or config references non-existing unit or unit that has no conversion field set up yet
	- propedit: relative modifications +x mils, #degrees broke [report: Igor2]
- CLEANUP: propedit revamp:
	- test under lesstif
	- CLEANUP: remove Attrbute() and pcb_act_Attributes -> remove; this should be handled by the property editor when lesstif already supports it.
- CLEANUP: eliminate PCB_MOVE, remove move.h from box.h
- CLEANUP: library window DAD-ification: remove pcb_act_LibraryShow()
	- FEATURE: library window: allow long tags and long location text to split
	- BUG: double check parametric footprint edit window: bug_files/parametric.txt [report: Piotr]
- CLEANUP: think over how to handle subc selection: selecting all parts automatically is bad for propedit; bug_files/subcsel.bug [report: Wojciech]
	- BUG: adding attribute works on subc parts but deleting attribute stops after deleiting it from a subc; bug_files/subcsel.bug [report: Wojciech]
- CLEANUP: color:
	- remove per hid, non-backup-lib custom color structs
	- COLOR_TO_STR should not use sprintf - remove stdio.h
	- rewrite lesstif conv so it wouldn't use the string version anymore
	- rewrite gtk conv so it wouldn't use the string version anymore
	- remove src/hid_color.[ch] and src/color_cache.[ch]
	- remove pcb_color_t ->str, convert only when really needed
- CLEANUP: remove pcb_rubber_band_alloc() and use genvector
- CLEANUP: find.c rewrite:
	- CLEANUP: a new "report(NetLength)" should not care about netlists but depend on find.c only
	- BUG: unplated padtsakcs shall not connect layers; problem: a padstack is either found or not, this affects all layers, there's no info about which layer is found; padstack update should check the hole/slot geo and update a bit for each shape telling whether it's connected or not
	- BUG: bug_files/rat_shortest.lht: because of "don't add non-manhattan lines" part [report: pstuge]
- CLEANUP: layre order from data
	- central code for building a list of layer groups ordered by draw from front to back (omit disabled/invisible layers)
	- rewrite both the draw_everything() and pcb_search_obj_by_location_() layer loop to use this list
- CLEANUP: move ChangeName() to oldactions and replace or remove the menu ml=2612 [report: Gabriel]
- CLEANUP: When a subc or padstack is renamed or removed (PCB_EVENT_RUBBER_REMOVE_SUBC & PCB_EVENT_RUBBER_RENAME), any connected rats are removed by the rubberband plugin. Move this in core. Make rat lines remember their terminal object by ID, iterate over rats to find the ones to deal with [report: Ade]
- CLEANUP: remove conf_cmd_is_safe: already handled by the conf_board_ignores
- CLEANUP: move the PrintCalibrate() action out of core - check if DAD rewrite is needed
- CLEANUP/BUG: high level pcb_mkdir() and pcb_file_size() and is-dir shall be in safe_fs checking permissions; low level could stay in the compat layer with a #define to make sure it is not called directly [report: igor2]
- CLEANUP/feature: pcb_subc_smash_buffer() should really copy data so it can smash multiple subcs and subc objects end up on the layer they were bound to [report: keantoken]
- CLEANUP: non-modal fontsel: start a new board while fontsel is open for an object [report: Igor2]
	- should not remember object by pointer but by idpath; remove pcb_stub_draw_fontsel_text_obj
	- reset the idpath on pcb change
	- allow multiple fontsel dialogs, collect them on a list and update them all on board change
- CLEANUP: dad _DEFAULT() on x86_64: int cast to pointer in non-running code; probably need to split it to DEFAULT_DATA and DEFAULT_PTR (together with the field set macro?) [report: Erich]
- CLEANUP: make the file selector a DAD widget, reimplement all the logics centrally in dialogs [report: Igor2]
- CLEANUP: rewrite the netlist code
	- when no netlist is loaded, new rats can't be drawn [report: agaran]
	- shorts are reported twice, in pair, e.g. sort between A-B and then between B-A; Gabriel's idea: use strcmp() and report only if first > second ml2583 [reprot: Gabriel]
	- FEATURE: rat line draw: [report: Igor2]
		- be able to rename nets
		- save the netlist with the file
		- be able to convert a 'found' to a net
- CLEANUP/BUG: undo operation while drawing a multiple segment line doesn't change segment attached to the crosshair [report:wojciechk8]
	- tool_line.c depends on pcb_undo()'s return value; can be fixed only when the old undo system is removed
- FEATURE/BUG: bug_files/lines - remove zero length objects if they are created as the result of rubber banding [report: Evan]
- FEATURE: Ade's new subc construction with convert: need a config setting that results in creating the refdes text but not adding the refdes attribute as empty [report: Ade]
- FEATURE: view list: import sch. shouldn't select elements to be removed but put them on a drc list
- FEATURE: external editor on buffer [report: TwisteR]
- FEATURE: fontsel: ttf import?
- FEATURE: drc preview: follow board flips (should be a DAD preview flag) [report: Igor2]
- FEATURE: DOC: new examples
	- blinking led with parametric footprints
	- example of nonetlist: 1206 jumpers and logos
- feature plugins:
	- FEATURE: autocrop doesnt undo (new layout, add some -maskmanaul content, autocrop(), & undo: gui view shifts, board size unchanged [report: Miloh]
	- BUG: distalign pcb_crosshair option doesn't work as a reference point  [report:Miloh]
- CLEANUP: move import_sch to import_sch_old and start a new, generic plugin
- CLEANUP/FEATURE: boardflip doesn't function properly with undo -- repro: open pcb-rnd, place 1206, boardflip(), { u u } removes placed part instead of boardflip   [report: Miloh]
- FEATURE: invert selection in the menu
- FEATURE: tedax etest save (board save too)
- FEATURE: padstack bbox:
	- per layer: keep a bbox per transformed shape per prototype, then getting the bbox of a padstack ref on a specific layer is looking up the shape, then 4 integer additions [report: Wojciech]
	- when calculating overall padstack bbox, ignore layers that are not present? but then a layer change would require a recalc (but this is true for subcs too!) [report: Wojciech]
- XOR rendering upgrade:
		- experiment with 'emboss' kind of drawing instead of xor so rendering can stay 'direct'
		- if worked: allow padstack xor draw to draw all shapes on all layers
- opengl:
	- BUG: heavy swapd +/- crash with radeon AMD GL driver, fixed by exporting LIBGL_ALWAYS_SOFTWARE=t GALLIUM_DRIVER=llvmpipe [report: erich] 
	- BUG: --gui gtk2_gl pcb-rnd library preview pane is black (  doWindows(library) ) [report: Miloh] 
- export_dsn/new io_dsn (with King Kevin and celem):
	- missing global padstack (via) export:
		- FEATURE: need to think over and check the spec for how to do this with no-hole padstacks
		- RTT tests: thermal_layer.dsn, comp1.dsn, padstack.dsn
	- BUG: elem_pads_ds: do not export line shape in padstacks as polygons, that kills round cap lines
- FEATURE: draw on move: 'Crosshair shows DRC clearance' should show the clearance also when moving a ... (not only when placing it) [report: wojciechk8]
	- need to precalculate and cache clearance shape in crosshair (polyarea!) because recalculating these for padstacks would be expensive (also rewrite lines and arcs)
	- padstack
	- clearing polygon
	- text
- BUG: wandering gtk window (window placement bug): using icewm, open the property editor, close, open, close, open: it's displaced by decoration; also check with lesstif [report: Igor2]
- BUG: gtk2_gl: RTT/arc_sizes.lht - elliptical arc corner case render bug [report: Wed]
- SUBC: element removal:
	- FEATURE: "thermal recipe" so a padstack thermal can be put in a subc and it is change with the layer binding [report: jg]
	- CLEANUP: convert pcblib to subcircuits:
		- revise the value attribute - should be empty by default
		- remove old install elements
		- dir rename trunk/pcblib/tru-hole should handle make correctly and not walk on existing web services or user installs
- FEATURE: key rewrite: (base key swap bug (q<->a, y<->z))
	- for <char> (punctuation): learn key for non-US users
	- lesstif code upgrade for the new API
	- menu file fixup on punctuation in lesstif
- FEATURE: extedit: when editing subc with pcb, save configuration and load it in the external pcb-rnd so that grid sizes and other settings are preserved [report: jg]
- FEATURE: HID: option for using a fixed background color for the preview widget renders; using the user configured one goes wrong when it's set to dark [report: Alain]
- FEATURE: undo on new layer from right-click menu in gtk layersel doesn't work
- FEATUER: gtk layersel: consider to provide a config setting for making open-group-name horizontal [report: istankovic]
- FEATURE: optional display of as-drawn contours of polygons for editing [report: Ade]
- FEATURE: pewview widget: allow to handle keys both in gtk and lesstif
- CLEANUP: fp_fs_search: kill anything that gets ':' separated string as path list, get a config list instead
- CLEANUP: Mark
	- see pool node mark_cleanup
	- mark bug - ortho shouldn't use it, it should use last point (crosshair.X2); make sure nothing else abuses it [James]
- unravel the undo code
	- FEATURE: grid size change should be undoable? [report:Evan]
	- FEATURE: maybe other conf settings too?
- CLEANUP: layer group rewrite: remove PCB_MAX_LAYERGRP and PCB_MAX_LAYER and make them dynamic
- FEATURE: io_pcb: new, optional "layer tag" field in mainline's file format
- FEATURE: layer binding dialog: manual layer binding (reuse csect?)
- res/menu:
	- FEATURE: load/swap menus (TODO#1)
	- CLEANUP: search for vendor in the hid plugins, there should be no trace of it (vendor should register its in submenus with anchors)
	- CLEANUP: re-add dynamic menus after a gui change:
		- provide hooks and let plugins deal with a re-add as they may be added anywhere
	- FEATURE: fungw: auto-remove menus by cookie (TODO#2)
	- FEATURE: load new res on the fly (replace the menu system):
		- low level reload code (re-add the dynamic menus too!)
		- action to reload if file name is known
		- gui load dialog with tags listed
- CLENAUP: decide about exporter policy:
	- png exports selection (even in not-as-shown), others don't
	- extend png hid attribs with a flag for this, maybe do the same for others
	- document the decision in "hacking"
- CLEANUP: reduce
		- export_bom: rewrite the string list code using htsp and/or lists
		- hash in hid_attrib.c?
		- gcode invents .png name locally
		- get rid of gcode/lists.h,  and vector.[ch] (autorouter)
		- vendordrill
			- search for /units, replace it with pcb-printf something
			- add round down
			- replace ignore_refdes, ignore_value and ignore_descr with genvector
- FEATURE: project specific menus from extra lihata files - maybe from project.lht
- vendor drill plugin:
	- CLEANUP: check if we want to keep vendor name
	- FEATURE: vendor: be able to load multiple vendor files (project spec for skips, central for vendor) [report: celem]
- BUG: Lihata persistent save:
	- flag compatibility: save unknown, string-flags as loaded by io_pcb
	- ind: FONTS: second font indents incorrectly
	- ind: indentation bug in inline struct therm: closing } is preceded by indentation whitespace for some reason
	- keep numeric format: test all
	- keep unknown subtrees
	- doc/user/02_model/src/obj_arc.lht: Open/Save : Font section is embedded. Once manually removed, the file shows many diffs w.r.t original. Lihata V1 file. [report: Alain]
	- BUG: lhtpers indentation: bug_files/lhtpers_ins/; breakpoint in pers_table.c:34 and debug why the newline is getting in [report: Igor2]
- query & advanced search
	- FEATURE: search expr wizard should pick up the expression from the button when clicked
	- CLEANUP: make a run on a large board, speed test, with -O0 and -O3:
		- iteration speed (a simple @)
		- eval speed (a simple @ with a lot of constants in an expr)
		- geo speed
		- regex and string cmp match speed vs. select by name
- CLEANUP: rewrite layer undo; take it out from old_undo; layer del breaks on undo: can't save where it was added before. Consider the whole layer move and -1 business obsolete and rather add a separate insert and remove call?
	- BUG: add new layer in main window, pcb-rnd issues pcb_warning yet action is placed on undo stack [report: Miloh]
- CLEANUP: parent subc update:
	- inhibit mechanism to speed things up:
		- under inhibit, pcb_subc_part_changed(ps) should mark subcircuits dirty
		- when inhibit drops to zero, revisit all subcircuits that are dirty
		- get a common inhibit function for batch processing that turn on draw, poly clip and pcb_subc_part_changed inhibit
- feautres/cleanup: hid:
		- FEATURE: holes should be drawn below silk and mask (maybe this could be a config setting)
- BUG: I/O bugs:
	- kicad:
		- BUG:  segfault when loading kicad_pcb in work/alien_formats/A20*.kicad_pcb gdb at http://scififaster.net/kicad_pcb_gdb.txt - see bug_files/A20-minimal.kicad_pcb [report: miloh flag: erichvk_]
		- BUG: does not save the netlist [TwisteR]
		- BUG: io_kicad parse err w/drill & roundrect pads  work/testcase_cnc_cesc.kicad_mod work/pcbnew_pad_handles_drill.png [report: Miloh]
		- BUG: direct load of footprint, e.g. pcb-rnd km.mod, fails while load to buffer works on bug_files/km.mod [report: Ade]
	- eagle:
		- BUG: eagle binary library load fails with assert when pad dimension == 0, drill != zero. Bug arises from uninitiliased st.ms_width minimum feature width DRC value. This does not manifest in XML load as it initiliased to default value of 10mil before the DRC block is read, and updated if specified in the DRC block. There is no DRC block in an eagle binary library, so a decision has to be made wrt to where a default minimum feature size is to be referred to, so that the pad/hole reading code can apply it when pad dimension is not specified at line 824 in read.c. If dimension is not present, but drill is, read.c correctly applies the DRC derived rv_pad_top at line 818 dia = eagle_get_attrc(st, subtree, "diameter", drill * (1.0+st->rv_pad_top*2.0)); Planned changes to rectangle parsing to geenrate copper rectangles, not four lines, will alter +/- eliminate the need for the rectangle read routine to have ms_width available pre DRC read. See bug_files/e-motoren.lbr. [report: Erich]
		- BUG: text rotations not quite right in eagle binary format layouts. See bug_files/tvbgone3-brd-in-eagle.png. Seems 180 and 270ccw rotation are rendered as upright an 90ccw rotation. Hmm. [erich]
		- BUG: valgrind shows memory leaks relating to binary load. See bug_files/e-motoren.lbr [report: erich]
		- BUG: on loading bug_files/diode.lbr, pcb-rnd's clipping polygon out of existence routine seems to go into a non terminating loop [report: erich]
		- layers for top and bottom soldermask, if not present in loaded eagle file, i.e. tvbgone3.brd, do not export on creating gerbers, and cannot be added easily to layout via layer prefs, since ability to add a soldermask group is lacking [erich].
		- eagle XML import fails on polygon import reported by miloh, test file alien_formats/eagle/OSHW_XML_examples/eagle_polygon_crash.brd [report: erich], due to input file containing an invalid polygon: a self intersecting poly in line 156 - consider handling "width"?
		- eagle rectangle parsing should generate a rectangular feature, not a four line rectangular outline [erich]
		- eagle XML wire elements need to have "curve" attribute processed, if present. i.e. arcs. Can see translate2geda for hints [report: erich]
		- eagle binary format appended text block needs to be parsed and the text strings allocated to ASCII-127 references in preceding text blocks [erich] 
		- eagle binary format v3 and libraries do not have a DRC block specifying restring or minimum feature widths. Binary loader should add a DRC block in these cases to the tree with the minimum settings needed for padstacks and features to load sensibly. [erich].
		- bin: padstack clearances for element pins will rely on connectivity to other polygons layer by layer defined in the netlist 
		- bin: need to refine naming of library (.lbr) elements in loaded .lbr files; any text names in the binary tree, if starting with ASCII 127, sequentially reference strings in the text block which comes immediately after the board/design tree. In later eagle binary versions, the text block seems to become a node of the tree, but a node of arbitrary length, not 24 bytes, with length of block still encoded in first few bytes. 
		- bin: need to add support for non top silk (tPlace), tDocu and top copper text in read.c
		- bin: layouts, once loaded, have issue where deselection of elements only deselects element pins/pads. click-drag of element or saving the layout to .lht and reloading fixes the deselection issue. Example FTSH.... library file for a header exhibits this behaviour.
	- revise all I/O plugins for:
		- text thickness
		- text rotation
		- padstacks
		- new outline/mech layers and slots
		- new doc layers
- FEATURE: lihata v7
	- remove via geometry from route style
- BUG: gtk: slipping 'tab' issue view drifts when tab is used repeatedly at different zooms around the cardinal edges of a placed part, video repro: http://scififaster.net/wantitthatway_pcb-rnd.ogg [report: Miloh]
- BUG: XY exporter: place a 1206 rotated 15 degrees, then export to xy with macrofab -> error message on rotated pad bbox; we need to rotate back the terminal object and calculate hte bbox in neutral position [report: celem]
- BUG: lesstif clip_set() doesn't seem to affect the X clipboard
- BUG: open gl polygon rendering: white line between just-touching polygons, may need a line clearance too; bug_files/gl_poly.lht [report: keantoken, Ade]
- BUG: Rubberband move line endpoints ignores connected arc endpoints. [Fixing:Ade]
- BUG: find.c: bug_files/find_slotcop.lht: plated slot should connect to any copper layer object it is going thru ml2571 [report: Igor2]
- BUG: route.h is not self-contained, missing includes [report: Igor2]

3. Long term ===============================================================================
- BUG: draw a large padstack poly (as a subc term); put some vias (padtsacks) on top of it; with gdk and gl, after the 6th via some via rings will disappear [report: James]
	-> reason: order of padstack shape rendering is random
	-> we should probably render large objects first then smaller ones

Lesstif:
	- the notebook widget is not portable; detect it from scconfig and provide some hackish alternative if not found [report: rqsall]
	- implement/enable local grid in lesstif (menu option is disabled)

GTK2:
	- next_gui: keep them open, hide

FEATURES
- BUILD: menuconfig and a config file for scconfig
- menu item for export of multiple selected layout elements to discrete .fp files

4. Low prio ===============================================================================
- FEATURE: footprint in-place replacement should match up floaters to keep their coords, as documented in ML/2304 [report: gpaubert]
- FEATURE: filled vias for via-in-pad: http://www.saturnelectronics.com/products_capabilities/via-in-pad.html
- FEATURE: depth controlled mech layers (routed) for internal cavirites: http://www.saturnelectronics.com/products_capabilities/internal-cavity_boards.html
- BUG: 1. place 0603; 2. select; 3. cut to buffer; 4. undo -> 0603 put back but selection is lost; reason: the flag is removed in the buffer, but not in an undoable way as we don't have undo on buffer [report: igor2, miloh]
- BUG?: Far-side silk text can be selected and moved when the mouse is over front-side subcircuit. (but this is what we had with elements too! -> rewrite search.c to be a 'script' config) bug_files/farsilk.lht [report: Ade]
- BUG: RTT/arc_sizes.lht - unable to move arcs which have different width and height [report: Ade] - rewrite pcb_is_point_on_arc() elliptical case at the bottom
- FEATURE: padstack label smarter print: in case of full overlap of a bottom and top "pad", arrange other-side labels to avoid overlaps [report: al3x]
- FEATURE: preferences: grid list edit on the sizes tab
- improve locking:
	- FEATURE: consider a move-only lock?
	- BUG: when thermal and some other operations are applied on a locked element, indicate it
- BUG: Erich's gtk lag report: press 's' a lot then move the mouse - 's' ends up in the new loc!
- BUG: the TAB bug: (over ssh -X) press tab for a good 15 seconds; release; it won't work again for a fraction of a second
- BUG: rubberband_orig: draw a 90 deg arc, a 45 deg line that ends in the endpoints of the arc; enable rubber band, move the arc: only one endpoint of the line is moved [fixing:Ade]
- BUG: draw overlapping lines, a short fully under a long; click on the short, it gets selected but it's not visible because the long hides it [report:Evan]
- FEATURE: "save as" dialog: there should be an "auto" or "guess by extension" option in the save dialog format
- CLEANUP: insert drag&drop strangeness (mainline too):
	insert should just insert a new point and stop there, not starting a drag&drop
	move; the new point should be marked somehow (e.g. green-find one half of the
	object, like arc split does) lines can be inserted mostly only in all-dir-line
	which is strange
- FEATURE: missing rotate polygon (mainline too)
- CLEANUP: replace mkdtemp() with something safer
- FEATURE: display net names on pins, vias (and maybe tracks?) when zoomed in enough
- FEATURE: DRC should warn for thin poly hair
- CLEANUP: In-line help needs update/re-structuration <lib_gtk_common/dlg_command.c>
- CLEANUP: rethink/rewrite the action/change infrastructure - too many void *ptr1
  pointers, too many code duplication
- BUG: double sided board, poly on both layers; grab existing lines on one layer and
  move then around. If all layers are visible, redraw of the far side layer
  is slow and causes flickering elements from that layer until the front is
  redrawn. Maybe we should have less flushes?
- CLEANUP: win32 port {large}
	- clean up central Makefile.in rules:
		- remove cat, sed, grep where possible, use scconfig instead
- BUG: arc bug: draw an arc with one end out of the drawing area; it will be jumpy and can not be placed properly
	-> AttachForCopy() calls SetCrosshairRange() that then sets crosshair max* which
	- similar with lines: bug_files/dwgarea.lht; grabbing the lines for move will force them to fall within the drawing area [report: pstuge]
	limits the arc to move freely. Problem: this is not arc-specific, this happens with any buffer copy! going for no-design-limit is probably better
- FEATURE: while drawing a line, the temporary outline should reflect the layer color
- FEATURE: push&shove
	- keep 45-deg knee when grabbing a point for drag&drop in non-all-dir
- CLEANUP: unify gui invocation options: pcb-rnd --help gtk_[gdk|gl] and pcb-rnd --help lesstif both show and use different input methods [report:miloh]
- FEATURE: consider a simple all in one function to create a default layer stackup for static/predictable layer formats being imported, to simplify importer coding
- FEATURE: trace length calculator:
	- click a line or arc or via
	- start a search in two directions mapping lines, arcs and vias connected (green-highlight them, marking them found)
	- stop at the first junction (anywhere where more than 2 objects are connected)
	- stop at polygons
	- display the number of vias and net trace length along the found objects
- BUG: miter bug;  miter crosses SMT pads under certain conditions [report: celem/miloh] 
- CLEANUP: core lib splitup:
	- gsch2pcb: generalize plugin/buildin loading for external tools, check if gsch2pcb can work from plugins
- FEATURE: revise the importer; http://repo.hu/cgi-bin/pool.cgi?cmd=show&node=make_import ; should work without an existing file [report: TwisteR]
? fp_wget/conf_internal.c is autogenerated by cquote.c, should be the internal version [report: Miloh, Igor] -> seems to be generated properly, what's the bug?
? BUG: loadscript(graphics,/path/to/graphicstypo.awk,mawk);loadscript(graphics,/path/to/graphics.awk,mawk) fails with '(null): cannot convert to realpath', then issues 'ID already in use' [report:Miloh]
