gschem: Add comment
[geda-gaf.git] / NEWS
blob818aa6d8df403d61ed936b94e271eb136eed8d8d
1 ==============================================
2  'gschem and Friends' Electronic Design Suite
3 ==============================================
5 Copyright (C) 1998-2015 gEDA Developers
7 This file documents important user-visible changes in gEDA/gaf.  For
8 more information, please consult the `ChangeLog' file.
10 Notable changes in gEDA/gaf 1.9.3 (upcoming)
11 ============================================
13 * Added the library "xornstorage" and Python package "gaf" as a
14   (currently quite minimal) way to access gEDA/gaf functionality from
15   outside of gschem.  These are on the long term intended to replace
16   libgeda, making the core gEDA/gaf functionality available as a
17   library to both gschem and other applications.
19 * Refactored gnetlist:
21   - gnetlist is now part of the Python package "gaf" and uses the new
22     libraries instead of libgeda to work with gEDA files.
24   - Netlist backends can now be written in Python.
26   - When reading broken schematics and/or symbols, gnetlist doesn't
27     silently fail or produce bad output any more.  Conversely, this
28     means gnetlist has become more picky about input files: whenever
29     it occurs something that is likely to result in bad output, it
30     issues a warning or an error.
32   - In case there should be any problems with the refactored codebase,
33     the "old" gnetlist is still available as "gnetlist-legacy".
35 * There are new semantics for power and I/O port symbols:
37   - Power symbols can now use a netname=NET instead of a net=NET:1
38     attribute.  This allows using the attribute value as a visible
39     label, removing the need for individual power symbols.
41   - I/O port symbols in subschematics can now use a portname=PORT
42     instead of a refdes=PORT attribute to distinguish them from
43     regular components.  This allows gnetlist to detect if there are
44     any unconnected port symbols left.
46 * Hierarchical schematics can now use a simple form of parametrization
47   where the instantiating component contains an attribute of the form
48   `param=NAME=VALUE' and some attribute value in the subschematic
49   contains the pattern `$(NAME)', which will be replaced with `VALUE'.
50   This only works with regular attribute lookup from netlist backends
51   and won't affect special attributes like slot= or netname=, though.
53 * Added command-line tool `xorn' for low-level schematic and symbol
54   file manipulation.
56 * Added experimental XML file format (currently only supported by
57   gnetlist and the `xorn' command line utility).
59 * All tests now use the parallel test harness, speeding up `make
60   check' runs considerably when used with multiple jobs (-jN).
62 gschem changes
63 --------------
65 * Tool windows are now "dockable", i.e., they can be either used as
66   modal/non-modal dialogs or docked to the edges of the main window.
68 * The action mechanism used for menu items, tool buttons, and key
69   bindings has been redesigned, making several improvements possbile:
71   - Actions can now be used interchangeably in the main menu, toolbar,
72     context menu, and keymap.  They are defined in a single place
73     ("actions.c" for C actions and "builtins.scm" for Guile actions),
74     including metadata like name, icon, and tooltip.
76   - Menu items and tool buttons representing options have a little
77     check or radio box beside them indicating their current state.
79   - Menu items and tool buttons are greyed out while they can't be
80     used.
82   - Toolbar and context menu are customizable.
84   - Menu and toolbar definitions are simple Scheme variables, allowing
85     users to add actions to the menu without having to copy the menu
86     definition.  Actions are represented in Scheme code as applicable
87     SMOBs, allowing them to be called like procedures while retaining
88     the action information necessary for rendering the menus/toolbar.
90   - "Repeat Last Action" (usually bound to ".") uses the same logic as
91     the middle mouse button repeat action does, i.e., only actions
92     that "make sense" qualify for repeating.
94 * The menus, toolbar, and keymap have been revamped to more closely
95   resemble the "standards" for a desktop application.  Some actions
96   have been assigned more accessible or memorable keys.
98 * Attaching and detaching attributes now work as expected:
100   - "Attributes / Attach Attributes" used to depend on the order in
101     which objects were selected, taking the first selected object as
102     the base object to attach attributes to, regardless of its type.
103     Now, the selected objects are searched for a base object of
104     suitable type, and only if exactly one is found, the attributes
105     are attached to it.
107   - "Attributes / Detach Attributes" used to work on selected
108     components and nets, detaching all attributes from these objects.
109     It now works on the selected *attributes*, allowing the user to
110     selectively detach specific attributes while leaving the rest
111     attached.
113 * The "Light Color Scheme" (V L) selected from the menu now has a true
114   white background.  For compatibility, selecting the "lightbg"
115   colormap in gschemrc loads the old, light-gray color scheme; the new
116   color scheme can be selected as "whitebg".
118 * The library window has been made fit to be used as a dock window:
120   - When the dialog is resized to be taller than a certain aspect
121     ratio, it switches automatically to a stacked layout where the
122     preview and attribute panes are located below the symbol selector.
124   - While in stacked layout, the bottom panes can be expanded and
125     collapsed to give more room to the symbol selector.
127   - The window is automatically refreshed on library updates.
129 * Symbol editing has been improved:
131   - The page can now be scrolled to negative coordinates, making it
132     feasible to edit symbols without moving them away from the origin,
133     then translating them back.  This also allows to consciously
134     choose something that makes sense for the symbol as the location
135     of the origin.
137   - The coordinate origin is now indicated with slightly darker grid
138     lines.  (This can be enabled/disabled via "View / Show Origin".)
140   - The "Symbol Translate" action has been replaced with "Place
141     Origin" which lets the user select the position of the origin
142     interactively.
144 * Added Igor2's code for back-annotation from pcb-rnd.
146 * "File / Revert" only asks for confirmation if the file has been
147   modified.
149 * The "repeat" function of the middle mouse button now evaluates
150   actions at the current mouse position.
152 * Mouse gestures work properly again.
154 * Added further menu items:
156   - "View / Show Menubar" (V M)
157   - "View / Show Toolbar" (V T)
158   - "View / Show Scrollbars" (V S)
160   - "Tools / Select Locked Objects" (T L)
162 * Adding an attribute, changing the slot of a component, replacing the
163   contents of a picture, and selecting "Pan" from the menu used not to
164   work properly with undo/redo.  This has been fixed.
166 * "Edit / Undo" and "Edit / Redo" now show the name of the action that
167   will be undone/redone.
170 Notable changes in gEDA/gaf 1.9.2.1p
171 ====================================
173 * The gEDA/gaf source tarball no longer includes libintl.  When
174   building gEDA/gaf with internationalisation support, a GNU
175   gettext-compatible libintl is now required.
177 * A new Scheme API function, `log!`, has been added to the `(geda
178   log)` module.  It allows Scheme code to emit log messages in the
179   same way that the tools' C code does.
182 Notable changes in gEDA/gaf 1.9.2
183 =================================
184 * Build system changes:
186   - Guile 2.0 or newer is now required.
188   - top-level control file allowing continuous integration using
189     Travis CI has been added.
191 * Nullor expansion has been fixed in the `spice' and `spice-sdb'
192   backends.
194   - Element name prefix "E_" has been substituted for "E-" to prevent
195     errors output by some simulators (e.g. ngspice).
197   - A default gain value has been added in the nullor expansion code.
199 * Two obsolete scripts verilog2vhdl.sh and script.sed have been
200   removed.
202 * Undocumented and ambiguous feature of the `spice-sdb' backend for
203   gnetlist consisting in the possibility of using the "value="
204   attribute instead of "file=" only for include blocks and only in
205   embedding mode has been removed.
207 * The following scripts and programs have been moved from the `utils'
208   directory to a new `contrib' directory and are no longer installed
209   by default:
211          smash_megafile          olib
212          gmk_sym                 convert_sym
213          sarlacc_schem           sarlacc_sym
214          pads_backannotate       sw2asc
215          gnet_hier_verilog.sh
217 * `gpstoimage' has been removed from the distribution; equivalent
218   functionality is provided by the `gaf' command.
220 * `convert_sym.awk' has been removed from the distribution; equivalent
221   functionality is provided by the `convert_sym' command.
223 * gnetlist now supports output of netlists to the standard output.
225 * New Scheme procedures and hooks have been added.  Please see the
226   "geda-scheme" info manual for more details.
228   - `set-component-with-transform!' is a modified version of
229     `set-component!', which applies all the specified transformations
230     to a component and immediately updates it.
232   - `auto-refdes-reset!' resets components' refdeses
234   - `copy-objects-hook' is called whenever an object is copied, it can
235     be used, for example, to reset component's refdes on copy.
237 * The following gschem configuration items have been added:
239   - `third-button-cancel' cancels draw actions by the third mouse
240     button in mousepan mode.
242   - `grid-mode' sets default grid mode.
244 * Fixes/updates to the *BSD, Mac OS X, and MinGW builds.
246 * Changes in the gschem UI event state machine:
248   - New drawing modes apply immediately.
250   - Indication of an action being in progress has been added.
252   - Mirror action can now be used during an object placement.
254   - Show/hide text function is now enabled during other actions.
256   - RMB panning is now enabled during placing or drawing.
258 * Some gschem dialog have been merged, made non-modal, and placed in
259   sidebar:
261   - Color, line, fill and pin type dialogs have been merged into one
262     non-modal object properties dialog with widgets applying values
263     immediately.
265   - Text properties dialog.
267   - Options to control the magnetic net mode and the net rubber band
268     mode as well as grid mode and grid snap mode have been merged into
269     one options dialog.
271 * The following dialogs/windows have been converted into an info bar
272   and are now placed in bottom notebook:
274   - Log (status) window.
276   - Find text dialog.
278 * The following dialogs are now popup & docked the same way as the
279   execute script dialog:
281   - Show and hide text dialogs.
283   - Translate dialog.
285 * Other gschem GUI changes:
287   - Hotkeys and menu items to show/hide the sidebar and status window
288     have been added.
290   - Swatch for fill types has been added.
292   - Slot edit dialog now displays number of slots.
294   - Library folder structure in gschem is now displayed as tree.
296   - Indication of page change has been added in gschem main window's
297     title.
299 * Improved find text functionality:
301   - When searching for text, gschem now descends all files specified
302     in the comma separated list of the source attribute.
304   - There is now a widget that lists all occurences of the text
305     objects that contain the search string.
307   - The find text operation does not switch the current schematic in
308     the view or interfere with the most recent page up.
310   - The find text operation also searches all open pages instead of
311     the current one.
313   - The behavior of the find text operation works with multiple
314     toplevel windows open while running concurrent find text
315     operations.
317   - The find text operation can now use either a substring, pattern,
318     or regex. The pattern style uses * and ?. The regex uses glib,
319     which adheres to perl compatible regular expressions.
321 * Several symbols have been fixed/improved.
323 * gschemdoc has been enhanced to search in the user documentation
324   directory.
326 * Several translations have been added/updated.
328 * Man pages for gsymcheck and gschlas have been updated.
330 * Switches --help and -h have been added for most of gEDA utilities.
332 * Fixed the following bugs:
334   -  900122: Gschem crashes on ctrl-x.
335   - 1258834: spice-sdb crashes on non-existing files.
336   - 1463178: Gsch2pcb crashes when using `m4-pcbdir' option.
337   - 1478760: Gschem segmentation fault during find text.
338   - Gschem crashes on pressing the third mouse button.
339   - SVG output bug in `gaf export'.
340   - Several other bugs.
343 Notable changes in gEDA/gaf 1.9.1
344 =================================
346 * Unbalanced overbar markers are now rendered correctly.
348 * Most tools now no longer set the GEDADATA or GEDADATARC environment
349   variables (they still obey them though).
351 * `gschem' now provides a path drawing tool, accessed using <A H> or
352   the "Add Path" menu item.
354   - Add a cusp node by left-clicking.
356   - Add a Bezier curve node by left-dragging from the node point to
357     the control point.
359   - End the path by clicking on the same node point twice, or clicking
360     on the start node to close the path.
362 * On desktops that reparent menu bars (e.g. Ubuntu Unity) it is once
363   again possible to paste the clipboard using the menus.
365 * A number of `gschem' editing behaviour changes were made:
367   - Double-clicking on an entry in the "In Use" tab of the component
368     selector now behaves the same way as double-clicking in the
369     "Libraries" tab.
371   - When new attributes are attached to a net, they are placed at a 50
372     unit offset.
374   - The text color is now used as the default color for `pinlabel='
375     attributes.
377   - Pin attributes are no longer automatically replaced when rotating
378     or mirroring pins.
380   - It is possible to edit a text object even when other non-text
381     objects are selected.
383   - Control grips are now always drawn at the same on-screen size.
385 * The multi-attribute editor dialog in `gschem' has been extended to
386   support more cases:
388   - It now supports editing attributes of multiple selected
389     objects. These are aggregated into the dialog's attribute list.
391     Multiple attributes with the same name attached to any given
392     object are still shown in separate rows, but identically named
393     attributes from multiple selected objects will share a row. If a
394     row has differing values between objects, its value shows the text
395     "<various>" in a muted colour.
397   - Where an attribute is present in some, but not all selected
398     objects its name in the list is shown in red. A new popup menu
399     option allows copying such attributes to all selected objects.
401   - If no complex, placeholder, pin, net or bus objects are selected,
402     the dialog now falls back to editing any selected attribute text.
404     This allows editing of unattached or floating attributes in
405     symbols, or any attributes seleccted independantly of their owning
406     object. In this fallback mode, all attributes with the same name
407     shown in separate rows, and the "add attribute" functionality is
408     disabled.
410 * `gschem' has new icons for many editing commands.
412 * Several bugs were fixed in `gnetlist':
414   - Invalid attributes are ignored.
416   - Correct detection of graphical symbols.
418   - Components with no `refdes=' attribute are reported.
420   - Crash fixes for `drc' and `switcap' backends.
422 * `gaf export' now accepts a `--scale' option.
424 * The `--size', `--margins' and `--align' options to `gaf export' can
425   now accept their multiple arguments separated with a space ` ', a
426   colon `:' or a semicolon `;'.
428 * `gaf config' now handles the `-p' option properly.
430 * `gnetlist', `gsymcheck' and `gaf' now output internationalised
431   messages.
433 * New Scheme procedures were added. Please see the "geda-scheme" info
434   manual for more details.
436   - The (gschem action) module contains procedures for working with
437     user editing actions (i.e. commands accessed via the menus or
438     keybindings).
440   - Two new hooks were added: `bind-keys-hook' is called whenever
441     keymap bindings are changed; `action-property-hook' is called when
442     action properties are changed.
445 Notable changes in gEDA/gaf 1.9.0
446 =================================
448 * A new schematic renderer library, `libgedacairo' has been added, and
449   all tools have been updated to use it.  Related changes:
451   - The following configuration functions have been removed:
453          output-capstyle         paper-sizes
454          output-color            postscript-prolog
455          output-orientation      print-command
456          output-type             setpagedevice-orientation
457          paper-size              setpagedevice-pagesize
459   - The following `gschem' configuration items have been added:
461          print-paper             print-color
462          print-orientation
464   - `gschem' now generates PDF files rather than PostScript or EPS
465     files.
467   - `gschem' now uses a standard GTK print dialog (with printer
468     selection, print preview, etc.)
470 * A new `gaf' command-line utility has been added.  It provides a
471   number of subcommands:
473   - `gaf export' can be used to convert schematic files to PNG, SVG,
474     PDF, PS and EPS, with detailed control of paper size and margins.
475     It supports multi-page PDF and PS output.
477   - `gaf config' can be used to manipulate the project, user, and
478     system configuration stores (see below).
480   - `gaf shell' provides a Scheme REPL for batch manipulation of
481     schematic and symbol files.
483 * New project, user and system configuration stores have been added,
484   using a format similar to .desktop files.  They can be manipulated
485   using the `gaf config' tool.  Configuration parameters for most
486   tools will be converted to use this mechanism in future releases.
488 * The changes to highlighting of dangling net ends in gEDA/gaf 1.8.0
489   have been reverted.  All dangling ends are once again flagged with a
490   brightly-coloured square.
492 * When editing a component with the `gschem' multi-attribute editor,
493   the dialog will now show the symbol name in its title.
495 * When using "Down Schematic" command in `gschem', an error message
496   will now be displayed if the subcircuit schematic cannot be loaded.
498 * Printing now uses a light background color map by default.
500 * Objects can now have the line end "cap style" adjusted in `gschem'.
502 * `gnetlist' now accepts the `-i' and `-g' command-line arguments
503   together.  If you specify both `-i' and `-g', `gnetlist' will enter
504   the Scheme REPL after loading the requested backend but before
505   executing it.
507 * `gattrib' now has translations for the user interface and various
508   messages.
510 Notable changes in gEDA/gaf 1.8.2
511 =================================
513 Bugfix release.
515 * [994361] Fixed a libgeda crash bug involving nets inside symbols.
517 * [1226246] Fixed a gnetlist data corruption bug when using refdes
518   containing the string "POWER".
520 * Updates to build system to allow compilation from git on systems
521   with Automake >= 1.13.0.
523 Notable changes in gEDA/gaf 1.8.1
524 =================================
526 Bugfix release with correct dynamic version information for libgeda.
528 Notable changes in gEDA/gaf 1.8.0
529 =================================
531 * `gschem' and `gnetlist' have updated and rewritten user guides.
533 * All tools now give more informative error messages if they are
534   unable to load schematic or symbol files due to syntax errors.
536 * All tools now correctly handle schematic and symbol files with `\r',
537   `\n', or `\r\n` line endings, or a mixture.
539 * Unconnected pin ends and net ends are now all drawn with the same
540   box marker in `gschem' and printed output.
542 * Net segments with at least two connections (including indirect
543   connections via `netname=' attributes) are now drawn with arrowheads
544   rather than box markers on dangling ends in `gschem' and printed
545   output.
547 Notable changes in gEDA/gaf 1.7.2
548 =================================
550 * `geda-gaf' now requires GTK+ 2.16.0 or later.
552 * A greatly expanded Scheme API has been added to gEDA/gaf for use by
553   extension authors.  See the `geda-scheme' Info manual for more
554   details.  Existing extensions may need to be modified to load the
555   `(geda deprecated)' or `(gschem deprecated)' modules.
557 * The `component-library-search' function for `gafrc' files now skips
558   directories without symbols, and searches for libraries recursively.
560 * `gschem' keybinding improvements:
562   - Keybindings are now unaffected by Caps Lock.
564   - Keystrokes are displayed using the same characters as on keycaps
565     (e.g. `:' instead of `colon').
567   - Keystrokes may use extended modifiers (Super, Hyper and Meta).
569   - Key bindings can be modified in any rc file or interactively using
570     the `global-set-key' function.  See notes in `system-gschemrc' for
571     examples.
573 * `gschem' now displays help files and component documentation on all
574   platforms, including Windows.  The `locate' tool is no longer used
575   to search for component documentation files.
577 * The `schdiff' tool for generating visual diffs of schematics and
578   symbols has been added.  It can be used with most version control
579   systems.  See `man schdiff' for more details.
581 * The `bom' and `bom2' backends to `gnetlist' now give error messages
582   if no attribute file can be found.  The `-O attrib_file=FILE' and
583   `-O attribs=ATTRIB,ATTRIB...' options have also been added.
585 * A new `ewnet' backend has been added to `gnetlist'.  This outputs
586   netlists for use with the National Instruments ULTIboard layout
587   tool.
589 * The `verilog' backend to `gnetlist' now supports concatenated net
590   naming like "{a,b,c[3:0]}".
592 * `gsch2pcb' no longer supports the `m4_command' parameter in project
593   files.
595 * The `--m4-pcbdir' and `--m4-file' arguments to `gsch2pcb' now work
596   again.
598 * `gsymfix.pl' has been renamed to `gsymfix'.
600 * Man pages are now available for all programs installed as part of
601   gEDA/gaf.
603 * The undocumented programs `gnet_hier_verilog', `gsymupdate', `gschupdate'
604   and `sch2eaglepos.sh' are no longer installed to ${prefix}/bin.
606 Notable changes in gEDA/gaf 1.7.1
607 =================================
609 * gEDA is now compatible with Guile 2.0.
611 * gEDA/gaf applications no longer complain when trying to load an rc
612   file twice, or when an rc file doesn't exist.
614 * `gschem' allows objects to be moved by dragging without having to
615   select them first.
617 * `gschem' now supports keybindings with more than one modifier key,
618   and "Deselect" is bound to <Control Shift A> by default.
620 * `gnetlist' correctly handles multiple renames of the same net.  This
621   resolves some long-standing bugs with multipage schematics.
623 * The `spice-sdb' backend for `gnetlist' now has built-in support for
624   `SUBCKT_NMOS' and `SUBCKT_PMOS' devices.
626 * A new `makedepend' backend has been added to `gnetlist'.  It
627   generates Makefile code for SPICE simulation dependencies.
629 * Visibility of embedded component attributes are now preserved by
630   `gattrib'.
632 * `gsch2pcb' correctly handles footprint names with hyphens (`-').
634 * `gsch2pcb' project files support quoting and escaping in
635   `schematics' entries.
637 * Considerable enhancements to Unicode support when printing
638   schematics or exporting PostScript.
640 Notable changes in gEDA/gaf 1.7.0
641 =================================
643 * All gEDA/gaf applications now handle configuration files much more
644   strictly, and provide much more useful feedback when an error
645   occurs.
647 * Several changes to `gschem' command-line options:
649   - The `-t' option is no longer supported.
651   - Several command-line options now support a long-form alternative.
653   - The `-s' option can now be used to run multiple Scheme scripts
654     during `gschem' startup.
656   - A new `-c' option is available, which runs a Scheme expression
657     during `gschem' startup.
659   - A new `-L' option is available, which adds a directory to the
660     Scheme load path.
662   - A new `-V' or `--version' option is available, which displays
663     version information.
665 * `gschem' now provides a "Select All" function, which is bound to
666   <Control a> by default, along with a corresponding "Deselect"
667   function.
669 * In the `gschem' "Add component" dialog, filtering the component
670   library will expand matching libraries.  If the filter is cancelled,
671   all libraries are collapsed.  Components can now be selected by
672   double-clicking on them in the component list.
674 * The `gschem' "Edit Text Properties" dialog now has an easier to use
675   "Alignment" menu.
677 * Printed text size now better matches on-screen text size in
678   `gschem'.
680 * Special characters, including commas, are now escaped or quoted
681   appropriately in `gattrib' CSV output.
683 * Several changes to `gnetlist' command-line options:
685   - Four command-line options specific to the `spice-sdb' backend have
686     been removed.  They can be replaced with `-O <option>' according
687     to the following table:
689         -e, --embedd              -O embedd_mode
690         -I, --include             -O include_mode
691         -n, --nomunge             -O nomunge_mode
692         -s, --sort                -O sort_mode
694   - The list of available backends is now obtained using a new
695     `--list-backends' option.  `-g help' no longer outputs a list of
696     backends.
698   - A new `-L' option is available, which adds a directory to the
699     Scheme load path.
701   - A new `-V' or `--version' option is available, which displays
702     version information.
704   - When run with invalid command-line arguments, `gnetlist' now exits
705     with non-zero exit status.
707 * Several `gnetlist' backends have now been fixed so that it should no
708   longer be necessary to set an expanded Guile stack in gEDA's config
709   files.
711 * The `spice-sdb' backend for `gnetlist' now supports probes
712   (`TESTPOINT' devices).
714 * The undocumented `mk_verilog_syms' program is no longer installed.
715   The symbols it creates are still installed to
716   `${prefix}/share/gEDA/sym/verilog'.
718 Notable changes in gEDA/gaf 1.6.2
719 =================================
721  * PNG export from `gschem' will now be cropped correctly.
723  * The `partlist' backends for `gnetlist' now handle hierarchical
724    refdes correctly.
726  * On Windows, `gschem' and `gattrib' will no longer launch with a
727    command window visible.
729  * `gnetlist-arg' is no longer valid in `gsch2pcb' project files.
731 Several other bugs were fixed, including a major crash bug in
732 gnetlist.
734 Notable changes in gEDA/gaf 1.6.1
735 =================================
737 * Added accelerator mnemonics for root menus in gschem
739 * Lots of updated and new language translations in libgeda, gschem, and
740   gattrib.  (Courtesy of language translators and Launchpad)
742 * Updated the shipped documentation from the official gEDA wiki
744 * Fixed the following bugs:
746   - 2876373: Fix rendering with zoomed out dashed lines
747   - 2901183: Fix for some manpage issues
748   - 2904715: Don't update page connectivity from o_place_rotate()
749   - 2949232: Fix slot editing routines to not edit inherited attributes
750   - Cherry picked some other bug fixes from master that should be in
751     this release
753 Notable changes in gEDA/gaf 1.6.0
754 =================================
756 * Fixed the GtkItemEntry code inside of gattrib code so that it builds
757   using gtk+ > 2.16.x.
759 * In gschem, rubberband pin to pin connections by adding nets.
761 * Cleanup of the slot handling code in libgeda.
763 * Fixes/updates to the MinGW port.
765 * Updated the shipped documentation from the online wiki.
767 Notable changes in gEDA/gaf 1.5.3/1.5.4
768 =======================================
770 * NOTE: gEDA/gaf 1.5.3 was released with some critical bugs, so
771         it was withdrawn before it was widely distributed.
773 * Text rendering using native system fonts:
775   - The various programs in gEDA/gaf no longer uses its own built-in
776     line font.
778   - Native system fonts are used for rendering, giving support for a
779     wider range of symbols, and better looking schematics.
781 * Always use PostScript fonts in gschem's PostScript output.  The
782   "output-text", "text-output" and "output-vector-threshold" config
783   functions have been removed.
785 * Image rendering in 'gschem' uses cairo instead of GDK.
787 * Numerous build system changes:
789   - gEDA/gaf is now distributed as a single source archive, called
790     gEDA-<version>.tar.gz.
792   - GTK+ 2.10 or newer and Guile 1.8 or newer are now required.
794   - `intltool' is no longer required.
796   - Documentation is now installed to ${docdir} (usually
797     ${prefix}/share/doc/gEDA).
799 * The attribute edit dialog in `gschem' now has completion of most
800   common attribute names.
802 * The multi-attribute edit dialog in `gschem' now shows unpromoted
803   symbol attributes.
805 * Menu items in `gschem' now have icons and properly aligned key
806   bindings. They also support accelerator keys.
808 * The `gschem2pcb' and `PCBboard' netlist backends have been removed.
809   It is recommended to use `gsch2pcb' instead.
811 * Check for and reject non-footprint PCB files in 'gsch2pcb'.
813 * Removed unimplemented "File->Open" feature in 'gattrib'.
815 * Added --disable-gattrib command line flag to ./configure to disable the
816   building of 'gattrib'.  This is useful if you are building against
817   gtk+ 2.17.x which breaks 'gattrib'.
819 * 'gnetlist' does not recommend drc2 every time it runs.  The drc2
820   backend is only useful in certain circumstances.
822 * Assign shortcuts "vd" and "vl" for changing between color schemes
823   in 'gschem'.
825 * Fix problem with attached net attribute not being honored in 'gnetlist'.
827 * Focus the "save" button in the close confirmation dialog in 'gattrib' and
828   'gschem'.
830 * Accept empty attributes in the src file in 'tragesym'.
832 * Cleaned up the slot dialog box in 'gschem'.
834 * Changed the grip size rendering in 'gschem' to be reasonably sized when
835   zoomed in a lot.
837 * Introduction of a new attribute searching API in 'libgeda' and 'gschem'.
839 * Improvements and cleanup to the 'gnetlist' and 'gsymcheck' test suites.
841 * Fixed the following bugs:
843   - 1758673: Combine source tarballs
844   - 2058707: gschem, gattrib: Dangerous button focus in "Save changes"
845              dialog at quit
846   - 2430369: gschem: Deselect invisible attribs with their parent object.
847   - 2449060: Graphic state left inconsistent cancelling from net mode
848   - 2460301: libgeda: Make o_complex_promote_attribs() respect keep_invisible
849              and libgeda: Make o_complex_copy() actually copy.
850   - 2455061: Gnetlist output changed, and tests fail with recent GLib
851   - 2655088: autogen.sh: Make sure to exit if autopoint fails.
852   - 2823703: gnet-pcbpins.scm: Quote pins names if they contain comma
853              or close parenthesis.
854   - 2823755: gnetlist: Fix DEBUG builds.
855   - 2836109: build-sys: Add check for groff html driver.
857 * Spanish translation were updated.
859 * Lots of code, infrastructure, and doxygen documentation cleanup and
860   refactoring.
862 Notable changes in gEDA/gaf 1.5.2
863 =================================
865 * `gschem' now uses Cairo for all rendering.  This allows for
866   everything to be rendered anti-aliased.
868 * `gschem' now uses a mesh grid instead of dots by default.
870 * Net junction cues in `gschem' are drawn smaller now.
872 * Copy and paste now works between different `gschem' instances (using
873   the X selection).
875 * Recent files are no longer opened in a new `gschem' window.
877 * Major, *backwards-incompatible* changes to color handling in
878   `libgeda' and `gschem'.
880   - All colors are specified using hexadecimal `#RRGGBB' or
881     `#RRGGBBAA' syntax.
883   - The print and display color maps are now separate.
885   - A new Scheme syntax is used to inspect and modify color maps.
887   - If you wish to use a light background in `gschem', add the line:
889       (load (build-path geda-rc-path "gschem-colormap-lightbg"))
891     to your personal or project gschemrc file.
893 * Attributes of embedded objects are now shown in the right color.
895 * Bus pins are now supported by `gschem' and `libgeda', but are *not*
896   properly supported by the netlister.  The pin type can be modified
897   by selecting a pin, then right-clicking it and selecting `Edit pin
898   type...'.
900 * All of the symbols were modified to use overbar markup tags ("like
901   \_this\_") instead of separate lines.
903 * Log files are now saved to $HOME/.gEDA/logs rather than being
904   dropped in the current directory.
906 Notable changes in gEDA/gaf 1.5.1
907 =================================
909 * GTK+ version 2.8.x or later is now required.
911 * The selection behaviour in `gschem' was changed.
913   - Lines, unfilled boxes, unfilled circles, arcs, pins, nets, and
914     buses must be selected by clicking on the drawn path itself.
916   - Filled boxes, circles, text, and components, may be selected by
917     clicking anywhere in the bounding box.
919   - The default mouse click distance required to select an element was
920     increased to 10 pixels.
922   - Double-clicking on a net segment selects all connected net
923     segments.
925 * The percentage step in or out while zooming the display in `gschem'
926   is now configurable with the `zoom-gain' gschemrc parameter.  The
927   default value is 20%.
929 * The size of steps when panning with the mouse wheel or with a
930   trackpad in `gschem' is now adjustable with the `scrollpan-steps'
931   gschemrc parameter.  The default setting scrolls in steps of 1/8 of
932   a screen.
934 * A number of improvements were made to the `gschem' component
935   selection dialog.
937   - The dialog now shows a table of top-level attributes in the
938     selected symbol.
940   - It is now possible to expand/collapse a library by clicking
941     anywhere on its row.
943 * Changes to fill- and line-styles in `gschem' can now be undone.
945 * Arcs can now be adjusted in `gschem' using an arc angle dialog.  It
946   can be accessed by selecting an arc and selecting Edit->Edit.
948 * It is now possible to rotate objects while placing them in `gschem'.
950 * Support for arbitrary filled and unfilled paths, using a subset of
951   the SVG path syntax.  For more information, please see the file
952   format specification.
953   <http://wiki.geda-project.org/geda:file_format_spec>
955   - `gschem' does not yet provide a GUI for creating or editing path
956     elements.  However, it does support rendering them.  They can also
957     be printed.
959   - Some of the symbols in the component library were updated to use
960     paths.
962 * A Scheme evaluation prompt was added to `gschem'.  It can be
963   accessed by typing `:'.
965 * Improved algorithm for drawing hatched fills both on screen and in
966   PostScript output.
968 * Color selection dialogs and menus in `gschem' now show the actual
969   color as well as the description.  Color names are now translatable.
971 * `gattrib' now prompts to save changes.
973 * All of the unimplemented menu items and pages in `gattrib' were
974   removed.
976 * The `always-promote-attributes' gafrc parameter now takes a list of
977   strings as an argument.  The space-delimited string syntax is
978   deprecated.
980 * Some optimisations were made to the `gnetlist' connection traversal
981   algorithm to speed up netlisting large designs.
983 * A new netlist backend was added to support Liquid PCB.
984   <http://www.liquidpcb.org/>
986 * The `bom2' netlist backend now generates a `qty' column.
988 * Several improvements and fixes were made to the `systemc' backend.
990 * The `--gnetlist-arg' option to gsch2pcb can now be used to pass
991   extra `gnetlist' arguments.
993 * `gsch2pcb' now emits files with the latest `pcb' file format.
995 * The `gxyrs' pick-and-place tool was added.
997 Notable changes in gEDA/gaf 1.5.0
998 =================================
1000 * Magnetic net mode in `gschem'. Magnetic mode lets you draw nets and
1001   automatically connect to valid end points (such as pins and other
1002   nets).  The `magnetic-net-mode' gschemrc parameter can be used to
1003   enable/disable this feature.
1005 * Rotating a component while moving it in `gschem' now rotates around
1006   the current mouse location.
1008 * The `verilog' and `vhdl' backends now work again.
1010 * Embedded components can now be mirrored.
1012 * The `pads' netlist backend now uses CRLF line endings.
1014 Older versions
1015 ==============
1017 Release notes for older versions of gEDA/gaf are available on the gEDA
1018 website.  <http://www.gpleda.org/news/index.html>
1021    Local Variables:
1022    mode: text
1023    End: