1 ==============================================
2 'gschem and Friends' Electronic Design Suite
3 ==============================================
5 Copyright (C) 1998-2012 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.1
11 =================================
13 * `gaf export' now accepts a `--scale' option.
15 * `gnetlist' now outputs internationalised messages.
17 Notable changes in gEDA/gaf 1.9.0
18 =================================
20 * A new schematic renderer library, `libgedacairo' has been added, and
21 all tools have been updated to use it. Related changes:
23 - The following configuration functions have been removed:
25 output-capstyle paper-sizes
26 output-color postscript-prolog
27 output-orientation print-command
28 output-type setpagedevice-orientation
29 paper-size setpagedevice-pagesize
31 - The following `gschem' configuration items have been added:
33 print-paper print-color
36 - `gschem' now generates PDF files rather than PostScript or EPS
39 - `gschem' now uses a standard GTK print dialog (with printer
40 selection, print preview, etc.)
42 * A new `gaf' command-line utility has been added. It provides a
43 number of subcommands:
45 - `gaf export' can be used to convert schematic files to PNG, SVG,
46 PDF, PS and EPS, with detailed control of paper size and margins.
47 It supports multi-page PDF and PS output.
49 - `gaf config' can be used to manipulate the project, user, and
50 system configuration stores (see below).
52 - `gaf shell' provides a Scheme REPL for batch manipulation of
53 schematic and symbol files.
55 * New project, user and system configuration stores have been added,
56 using a format similar to .desktop files. They can be manipulated
57 using the `gaf config' tool. Configuration parameters for most
58 tools will be converted to use this mechanism in future releases.
60 * The changes to highlighting of dangling net ends in gEDA/gaf 1.8.0
61 have been reverted. All dangling ends are once again flagged with a
62 brightly-coloured square.
64 * When editing a component with the `gschem' multi-attribute editor,
65 the dialog will now show the symbol name in its title.
67 * When using "Down Schematic" command in `gschem', an error message
68 will now be displayed if the subcircuit schematic cannot be loaded.
70 * Printing now uses a light background color map by default.
72 * Objects can now have the line end "cap style" adjusted in `gschem'.
74 * `gnetlist' now accepts the `-i' and `-g' command-line arguments
75 together. If you specify both `-i' and `-g', `gnetlist' will enter
76 the Scheme REPL after loading the requested backend but before
79 * `gattrib' now has translations for the user interface and various
82 Notable changes in gEDA/gaf 1.8.0
83 =================================
85 * `gschem' and `gnetlist' have updated and rewritten user guides.
87 * All tools now give more informative error messages if they are
88 unable to load schematic or symbol files due to syntax errors.
90 * All tools now correctly handle schematic and symbol files with `\r',
91 `\n', or `\r\n` line endings, or a mixture.
93 * Unconnected pin ends and net ends are now all drawn with the same
94 box marker in `gschem' and printed output.
96 * Net segments with at least two connections (including indirect
97 connections via `netname=' attributes) are now drawn with arrowheads
98 rather than box markers on dangling ends in `gschem' and printed
101 Notable changes in gEDA/gaf 1.7.2
102 =================================
104 * `geda-gaf' now requires GTK+ 2.16.0 or later.
106 * A greatly expanded Scheme API has been added to gEDA/gaf for use by
107 extension authors. See the `geda-scheme' Info manual for more
108 details. Existing extensions may need to be modified to load the
109 `(geda deprecated)' or `(gschem deprecated)' modules.
111 * The `component-library-search' function for `gafrc' files now skips
112 directories without symbols, and searches for libraries recursively.
114 * `gschem' keybinding improvements:
116 - Keybindings are now unaffected by Caps Lock.
118 - Keystrokes are displayed using the same characters as on keycaps
119 (e.g. `:' instead of `colon').
121 - Keystrokes may use extended modifiers (Super, Hyper and Meta).
123 - Key bindings can be modified in any rc file or interactively using
124 the `global-set-key' function. See notes in `system-gschemrc' for
127 * `gschem' now displays help files and component documentation on all
128 platforms, including Windows. The `locate' tool is no longer used
129 to search for component documentation files.
131 * The `schdiff' tool for generating visual diffs of schematics and
132 symbols has been added. It can be used with most version control
133 systems. See `man schdiff' for more details.
135 * The `bom' and `bom2' backends to `gnetlist' now give error messages
136 if no attribute file can be found. The `-O attrib_file=FILE' and
137 `-O attribs=ATTRIB,ATTRIB...' options have also been added.
139 * A new `ewnet' backend has been added to `gnetlist'. This outputs
140 netlists for use with the National Instruments ULTIboard layout
143 * The `verilog' backend to `gnetlist' now supports concatenated net
144 naming like "{a,b,c[3:0]}".
146 * `gsch2pcb' no longer supports the `m4_command' parameter in project
149 * The `--m4-pcbdir' and `--m4-file' arguments to `gsch2pcb' now work
152 * `gsymfix.pl' has been renamed to `gsymfix'.
154 * Man pages are now available for all programs installed as part of
157 * The undocumented programs `gnet_hier_verilog', `gsymupdate', `gschupdate'
158 and `sch2eaglepos.sh' are no longer installed to ${prefix}/bin.
160 Notable changes in gEDA/gaf 1.7.1
161 =================================
163 * gEDA is now compatible with Guile 2.0.
165 * gEDA/gaf applications no longer complain when trying to load an rc
166 file twice, or when an rc file doesn't exist.
168 * `gschem' allows objects to be moved by dragging without having to
171 * `gschem' now supports keybindings with more than one modifier key,
172 and "Deselect" is bound to <Control Shift A> by default.
174 * `gnetlist' correctly handles multiple renames of the same net. This
175 resolves some long-standing bugs with multipage schematics.
177 * The `spice-sdb' backend for `gnetlist' now has built-in support for
178 `SUBCKT_NMOS' and `SUBCKT_PMOS' devices.
180 * A new `makedepend' backend has been added to `gnetlist'. It
181 generates Makefile code for SPICE simulation dependencies.
183 * Visibility of embedded component attributes are now preserved by
186 * `gsch2pcb' correctly handles footprint names with hyphens (`-').
188 * `gsch2pcb' project files support quoting and escaping in
189 `schematics' entries.
191 * Considerable enhancements to Unicode support when printing
192 schematics or exporting PostScript.
194 Notable changes in gEDA/gaf 1.7.0
195 =================================
197 * All gEDA/gaf applications now handle configuration files much more
198 strictly, and provide much more useful feedback when an error
201 * Several changes to `gschem' command-line options:
203 - The `-t' option is no longer supported.
205 - Several command-line options now support a long-form alternative.
207 - The `-s' option can now be used to run multiple Scheme scripts
208 during `gschem' startup.
210 - A new `-c' option is available, which runs a Scheme expression
211 during `gschem' startup.
213 - A new `-L' option is available, which adds a directory to the
216 - A new `-V' or `--version' option is available, which displays
219 * `gschem' now provides a "Select All" function, which is bound to
220 <Control a> by default, along with a corresponding "Deselect"
223 * In the `gschem' "Add component" dialog, filtering the component
224 library will expand matching libraries. If the filter is cancelled,
225 all libraries are collapsed. Components can now be selected by
226 double-clicking on them in the component list.
228 * The `gschem' "Edit Text Properties" dialog now has an easier to use
231 * Printed text size now better matches on-screen text size in
234 * Special characters, including commas, are now escaped or quoted
235 appropriately in `gattrib' CSV output.
237 * Several changes to `gnetlist' command-line options:
239 - Four command-line options specific to the `spice-sdb' backend have
240 been removed. They can be replaced with `-O <option>' according
241 to the following table:
243 -e, --embedd -O embedd_mode
244 -I, --include -O include_mode
245 -n, --nomunge -O nomunge_mode
246 -s, --sort -O sort_mode
248 - The list of available backends is now obtained using a new
249 `--list-backends' option. `-g help' no longer outputs a list of
252 - A new `-L' option is available, which adds a directory to the
255 - A new `-V' or `--version' option is available, which displays
258 - When run with invalid command-line arguments, `gnetlist' now exits
259 with non-zero exit status.
261 * Several `gnetlist' backends have now been fixed so that it should no
262 longer be necessary to set an expanded Guile stack in gEDA's config
265 * The `spice-sdb' backend for `gnetlist' now supports probes
266 (`TESTPOINT' devices).
268 * The undocumented `mk_verilog_syms' program is no longer installed.
269 The symbols it creates are still installed to
270 `${prefix}/share/gEDA/sym/verilog'.
272 Notable changes in gEDA/gaf 1.6.2
273 =================================
275 * PNG export from `gschem' will now be cropped correctly.
277 * The `partlist' backends for `gnetlist' now handle hierarchical
280 * On Windows, `gschem' and `gattrib' will no longer launch with a
281 command window visible.
283 * `gnetlist-arg' is no longer valid in `gsch2pcb' project files.
285 Several other bugs were fixed, including a major crash bug in
288 Notable changes in gEDA/gaf 1.6.1
289 =================================
291 * Added accelerator mnemonics for root menus in gschem
293 * Lots of updated and new language translations in libgeda, gschem, and
294 gattrib. (Courtesy of language translators and Launchpad)
296 * Updated the shipped documentation from the official gEDA wiki
298 * Fixed the following bugs:
300 - 2876373: Fix rendering with zoomed out dashed lines
301 - 2901183: Fix for some manpage issues
302 - 2904715: Don't update page connectivity from o_place_rotate()
303 - 2949232: Fix slot editing routines to not edit inherited attributes
304 - Cherry picked some other bug fixes from master that should be in
307 Notable changes in gEDA/gaf 1.6.0
308 =================================
310 * Fixed the GtkItemEntry code inside of gattrib code so that it builds
313 * In gschem, rubberband pin to pin connections by adding nets.
315 * Cleanup of the slot handling code in libgeda.
317 * Fixes/updates to the MinGW port.
319 * Updated the shipped documentation from the online wiki.
321 Notable changes in gEDA/gaf 1.5.3/1.5.4
322 =======================================
324 * NOTE: gEDA/gaf 1.5.3 was released with some critical bugs, so
325 it was withdrawn before it was widely distributed.
327 * Text rendering using native system fonts:
329 - The various programs in gEDA/gaf no longer uses its own built-in
332 - Native system fonts are used for rendering, giving support for a
333 wider range of symbols, and better looking schematics.
335 * Always use PostScript fonts in gschem's PostScript output. The
336 "output-text", "text-output" and "output-vector-threshold" config
337 functions have been removed.
339 * Image rendering in 'gschem' uses cairo instead of GDK.
341 * Numerous build system changes:
343 - gEDA/gaf is now distributed as a single source archive, called
344 gEDA-<version>.tar.gz.
346 - GTK+ 2.10 or newer and Guile 1.8 or newer are now required.
348 - `intltool' is no longer required.
350 - Documentation is now installed to ${docdir} (usually
351 ${prefix}/share/doc/gEDA).
353 * The attribute edit dialog in `gschem' now has completion of most
354 common attribute names.
356 * The multi-attribute edit dialog in `gschem' now shows unpromoted
359 * Menu items in `gschem' now have icons and properly aligned key
360 bindings. They also support accelerator keys.
362 * The `gschem2pcb' and `PCBboard' netlist backends have been removed.
363 It is recommended to use `gsch2pcb' instead.
365 * Check for and reject non-footprint PCB files in 'gsch2pcb'.
367 * Removed unimplemented "File->Open" feature in 'gattrib'.
369 * Added --disable-gattrib command line flag to ./configure to disable the
370 building of 'gattrib'. This is useful if you are building against
371 gtk+ 2.17.x which breaks 'gattrib'.
373 * 'gnetlist' does not recommend drc2 every time it runs. The drc2
374 backend is only useful in certain circumstances.
376 * Assign shortcuts "vd" and "vl" for changing between color schemes
379 * Fix problem with attached net attribute not being honored in 'gnetlist'.
381 * Focus the "save" button in the close confirmation dialog in 'gattrib' and
384 * Accept empty attributes in the src file in 'tragesym'.
386 * Cleaned up the slot dialog box in 'gschem'.
388 * Changed the grip size rendering in 'gschem' to be reasonably sized when
391 * Introduction of a new attribute searching API in 'libgeda' and 'gschem'.
393 * Improvements and cleanup to the 'gnetlist' and 'gsymcheck' test suites.
395 * Fixed the following bugs:
397 - 1758673: Combine source tarballs
398 - 2058707: gschem, gattrib: Dangerous button focus in "Save changes"
400 - 2430369: gschem: Deselect invisible attribs with their parent object.
401 - 2449060: Graphic state left inconsistent cancelling from net mode
402 - 2460301: libgeda: Make o_complex_promote_attribs() respect keep_invisible
403 and libgeda: Make o_complex_copy() actually copy.
404 - 2455061: Gnetlist output changed, and tests fail with recent GLib
405 - 2655088: autogen.sh: Make sure to exit if autopoint fails.
406 - 2823703: gnet-pcbpins.scm: Quote pins names if they contain comma
407 or close parenthesis.
408 - 2823755: gnetlist: Fix DEBUG builds.
409 - 2836109: build-sys: Add check for groff html driver.
411 * Spanish translation were updated.
413 * Lots of code, infrastructure, and doxygen documentation cleanup and
416 Notable changes in gEDA/gaf 1.5.2
417 =================================
419 * `gschem' now uses Cairo for all rendering. This allows for
420 everything to be rendered anti-aliased.
422 * `gschem' now uses a mesh grid instead of dots by default.
424 * Net junction cues in `gschem' are drawn smaller now.
426 * Copy and paste now works between different `gschem' instances (using
429 * Recent files are no longer opened in a new `gschem' window.
431 * Major, *backwards-incompatible* changes to color handling in
432 `libgeda' and `gschem'.
434 - All colors are specified using hexadecimal `#RRGGBB' or
437 - The print and display color maps are now separate.
439 - A new Scheme syntax is used to inspect and modify color maps.
441 - If you wish to use a light background in `gschem', add the line:
443 (load (build-path geda-rc-path "gschem-colormap-lightbg"))
445 to your personal or project gschemrc file.
447 * Attributes of embedded objects are now shown in the right color.
449 * Bus pins are now supported by `gschem' and `libgeda', but are *not*
450 properly supported by the netlister. The pin type can be modified
451 by selecting a pin, then right-clicking it and selecting `Edit pin
454 * All of the symbols were modified to use overbar markup tags ("like
455 \_this\_") instead of separate lines.
457 * Log files are now saved to $HOME/.gEDA/logs rather than being
458 dropped in the current directory.
460 Notable changes in gEDA/gaf 1.5.1
461 =================================
463 * GTK+ version 2.8.x or later is now required.
465 * The selection behaviour in `gschem' was changed.
467 - Lines, unfilled boxes, unfilled circles, arcs, pins, nets, and
468 buses must be selected by clicking on the drawn path itself.
470 - Filled boxes, circles, text, and components, may be selected by
471 clicking anywhere in the bounding box.
473 - The default mouse click distance required to select an element was
474 increased to 10 pixels.
476 - Double-clicking on a net segment selects all connected net
479 * The percentage step in or out while zooming the display in `gschem'
480 is now configurable with the `zoom-gain' gschemrc parameter. The
481 default value is 20%.
483 * The size of steps when panning with the mouse wheel or with a
484 trackpad in `gschem' is now adjustable with the `scrollpan-steps'
485 gschemrc parameter. The default setting scrolls in steps of 1/8 of
488 * A number of improvements were made to the `gschem' component
491 - The dialog now shows a table of top-level attributes in the
494 - It is now possible to expand/collapse a library by clicking
497 * Changes to fill- and line-styles in `gschem' can now be undone.
499 * Arcs can now be adjusted in `gschem' using an arc angle dialog. It
500 can be accessed by selecting an arc and selecting Edit->Edit.
502 * It is now possible to rotate objects while placing them in `gschem'.
504 * Support for arbitrary filled and unfilled paths, using a subset of
505 the SVG path syntax. For more information, please see the file
506 format specification.
507 <http://wiki.geda-project.org/geda:file_format_spec>
509 - `gschem' does not yet provide a GUI for creating or editing path
510 elements. However, it does support rendering them. They can also
513 - Some of the symbols in the component library were updated to use
516 * A Scheme evaluation prompt was added to `gschem'. It can be
517 accessed by typing `:'.
519 * Improved algorithm for drawing hatched fills both on screen and in
522 * Color selection dialogs and menus in `gschem' now show the actual
523 color as well as the description. Color names are now translatable.
525 * `gattrib' now prompts to save changes.
527 * All of the unimplemented menu items and pages in `gattrib' were
530 * The `always-promote-attributes' gafrc parameter now takes a list of
531 strings as an argument. The space-delimited string syntax is
534 * Some optimisations were made to the `gnetlist' connection traversal
535 algorithm to speed up netlisting large designs.
537 * A new netlist backend was added to support Liquid PCB.
538 <http://www.liquidpcb.org/>
540 * The `bom2' netlist backend now generates a `qty' column.
542 * Several improvements and fixes were made to the `systemc' backend.
544 * The `--gnetlist-arg' option to gsch2pcb can now be used to pass
545 extra `gnetlist' arguments.
547 * `gsch2pcb' now emits files with the latest `pcb' file format.
549 * The `gxyrs' pick-and-place tool was added.
551 Notable changes in gEDA/gaf 1.5.0
552 =================================
554 * Magnetic net mode in `gschem'. Magnetic mode lets you draw nets and
555 automatically connect to valid end points (such as pins and other
556 nets). The `magnetic-net-mode' gschemrc parameter can be used to
557 enable/disable this feature.
559 * Rotating a component while moving it in `gschem' now rotates around
560 the current mouse location.
562 * The `verilog' and `vhdl' backends now work again.
564 * Embedded components can now be mirrored.
566 * The `pads' netlist backend now uses CRLF line endings.
571 Release notes for older versions of gEDA/gaf are available on the gEDA
572 website. <http://www.gpleda.org/news/index.html>