Index: trunk/Changelog =================================================================== --- trunk/Changelog (revision 10409) +++ trunk/Changelog (revision 10410) @@ -1,3 +1,157 @@ +1.0.5 (r10409) +~~~~~~~~~~~~~~ + [build] + -Fix: central makefile typo made src_3rd and font linstall/uninstall do a normal install instead + + [core] + -Fix: add gtk4_gl in the preferred GUI list + -Fix: wrong syntax description for buffer internal actions + -Fix: wrong description for buffer internal actions + + [doc] + -Fix: 06_hierarchy: reference is by uuid, not uid (ambiguity) + -Fix: excess in desing doc chapter 4 + -Update: {des6:7}: not only root sheets are listed in the project file + -Add: top sheet is a root sheet in {imp6:6} + -Add: hierarchic design examples and doc + -Add: export_spice unslotting section anchor so it can be directly linked + -Add: {des6:28} specifies that the same hierarchic prefixes are used for components that are used for networks. + -Add: hierarchic: {des6:8} specifies the fallback behavior of ^/ addressing: if nothing is found, no global net is created but error is thrown + -Add: desgind doc {des6:15} defines the term "sheet reference symbol" explicitly to make it easier to link back from other docs + -Add: list more features on the main page + + [export_abst] + -Fix: don't crash on invalid (NULL) components and ports + -Add: hierarchic: when listing ports, prefix them with their referer name + -Add: indicate if a port or component or net is marked omit + + [export_tedax_footprint] + -Add: new plugin for exporting sheet graphics as a tEDAx footprint + + [hlibrary_fs] + -Add: new plugin for hlibrary (hierarchic sheets library from the local file system) + + [io_geda] + -Fix: don't crash if pinnum is NULL in postprocess + -Fix: potential crash when loading symbols with attributes before the first object + + [lib] + -Fix: memory leak: sheet free should remove config state as well + -Fix: memory leak: attrib compile always frees src + -Fix: memory leak: attrib copy all func + -Fix: memory leak: lib_add_all() path handling + -Fix: memory leak: free project's p4 vector on project uninit + -Fix: memory leak: free project p4 internal config list at the very end + -Fix: memory leak: free plug_io list at the end + -Fix: memory leak: in plug library path handling + -Fix: memory leak: caused by a typo + -Fix: memory leak: netname while dealing with hierarchic sheet ref syms + -Fix: memory leak: pen free should free pen font name and style + -Fix: memory leak: sheet_uninit() shall free fullpath as well + -Fix: memory leak: around symbol name translation + -Fix: memory leak: abstract "sheet ports" shall be freed with the abstract model + -Fix: don't crash on no project file available + -Fix: if a wirenet has only junctions, it's also considered an empty wirenet + -Fix: library refresh: need to replace old root with new root in every existing sheet, as roots are shared + -Fix: don't crash on saving in plug_io when realpath() fails (happens for write permission problems as well) + -Fix: wirenet split/merge: don't crash when line object's parent is NULL + -Fix: make sure if wires are split off to a new wirenet in some operation (e.g. line move) the new wirenet seg is checked for wirenet merges + -Fix: compiler should not attempt to directly compile hierarchic external sheets, they are like aux sheets, they are compiled only through hierarchic references + -Split: anet_get() and anet_new(); the former should be read-only and later work from short name + -Add: support for hierarchic design + -Add: compiler looks up net names with scope + -Add: enable the sheet local scope on net lookup + -Add: attribute copy function that changes the key of the attribute during the copy + -Add: sheet type "external" for sheets loaded for hierarchic + -Add: when an object from a wirenet is removed also remove all floaters if there are only floaters left in the wirenet + -Add: integrity check internal API: ASSERT1() that can print an argument + -Add: integrity check: floater-only wirenet error message include wirenet ID so it's easier to find + + [lib_anymap] + -Fix: memleak: free root hash + + [lib_netlist_exp] + -Fix: export netlist with the fallback name attribute only on hierarchy level 0; else use the global name (that has hierarchic path in it) to avoid collisions + -Fix: hierarchic: export components with full hierarchic namem on hlev > 0 if there's no display name + -Fix: hierarchic: if there's no name attrib but there's refdes attribu, use that (instead of full hierarchic name) + -Fix: hierarchic: if display/name or refdes is available, prefer that over more fancy solutions + + [lib_ngrp] + -Add: hierarchic: disable descend: we are not supporting non-graphical sheet hierarchies for now + + [lib_target] + -Fix: memhandling: avoid double free on whitelist/blakclist by settign back isused to 0 after a free + + [library] + -Add: shterm "symbols" (really terminal groups) for hierarchic design: subsheet terminal (in, out, inout) + -Add: hierarchic: create empty hlibrary/ so that the standard search doesn't fail and the user knows where to put files + + [menu] + -Import: cursor keys, enter and {k r} from pcb-rnd + + [query] + -Add: search dialog: print current scope sheet or project name + -Add: dlg_search: "scope follow" + + [sch-rnd] + -Fix: memory leak: on font load + -Fix: memory leak: free all projects on exit + -Fix: memory leak: log messages after export + -Fix: memory leak: on rnd font (&loadme key) + -Fix: memory leak: in rnd font key + -Fix: set hidlib crosshair to crosshair coords on move-to so actions implemented in the hidlib can track the crosshair + -Fix: prompt for quit-confirmation if any open sheet has changed, not only the sheet currently active + -Fix: when creating a new unlisted sheet in a project, make sure it ends up within the project in the layer selector, even tho it is not listed + -Fix: recalculate sheet bbox before sheet export to make exports reproducible + -Split: lib reload all into a separate function so it can be reused for hlibrary + -Add: move csch cfg registration into a macro so it's easier to register more config nodes + -Add: config subtree for the compile's hierarchic corner cases (mismatched netname handling) + -Add: HlibraryRehash() action with hlibrary search path for reusable hierarchic sheets + + [sch_dialogs] + -Add: abstract dialog: remark column so that objects that are omitted can be indicated + -Add: abstract dialog: checkbox to hide omitted items + -Add: when listing abstract net's ports indicate subsheet portand omited ports + -Add: hierarchic: when listing ports, prefix them with their referer name + -Add: project properites dialog has a section for external sheets (hierarchic refernces to the hlibrary) and the toggle button converts them to aux + + [sch_rnd] + -Fix: memory leak on freeing all designs on exit (config state) + + [sim] + -Fix: memleak in sch_sim_hook_eng_call(): when removing a fungw function, free it + + [sim_ngspice] + -Fix: memleak: unload should call over to target_spice + + [std_cschem] + -Fix: hierarchic: always prepend hierarcic prefix to component name + -Add: hierarchic: implement engine binding for wirenet_name_to_net_name to prefix net names with hierarchic path + -Add: hierarchic: implement attrib-net-name-to-net-name translator engine hook so that connect attribute's net names are properly prefixed with the hierarchy + + [std_forge] + -Fix: memleak: attrib source + + [tagret_spice] + -Cleanup: make new bridge net creation simpler (always alloc) + + [target_pcb] + -Fix: uninitialized fields in target context struct + -Fix: memleak on whitelist/blacklist system + + [target_spice] + -Fix: memory leak on script_data + -Fix: generate both global and local component name to not break hierarchy + -Add: hierarchic: when generating full component name for a slotted device, prepend hierarchic prefix + -Add: hierarchic: prepend first character of the original component name before adding hierarchic path - first chaacter determines device type in the ancient spice format + -Add: include hierarchic prefix in display name - that's what gets exported + + [tests] + -Fix: export_spice should return false on failure + -Fix: std_forge_cond: use detected librnd extra ldflags for -L's when linking + -Add: test cases for hierarchic features + + 1.0.4 (r10002) ~~~~~~~~~~~~~~ [boxsym-rnd] Index: trunk/Release_notes =================================================================== --- trunk/Release_notes (revision 10409) +++ trunk/Release_notes (revision 10410) @@ -1,17 +1,20 @@ -Release notes for sch-rnd 1.0.4 +Release notes for sch-rnd 1.0.5 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -This is mainly a minor bugfix release, plus updating to new librnd API -plus introducing new alien format read: Orcad. +This release has a major new feature: hiearchic design. Most notable changes: -1. sch-rnd now depends on librnd >= 4.1.0. +1. support for hierarchic design -2. sch-rnd uses the new font rendering API of librnd, which makes non-graphical - sheets look better (with proper tab support) and allows some long term - features for future releases. +2. export_tedax_footprint plugin: useful if the schematics should be included + on silk layer in pcb-rnd -3. New alien format support for read: Orcad, using io_orcad. +3. the advanced search dialog displays scope of the search (sheet, project), + lets the user change it andprovides a "follow" option so the same open + dialog follows sheet/project changes when multiple sheets/projects are + open -4. Bugfixes in other alien formats (io_geda and io_altium). +4. minor improvements on displaying omitted components in the abstract model + +5. minor memleak cleanup