gsch2pcb: Fix broken gnetlist backend.
[geda-gaf/peter-b.git] / NEWS
blobfdd42b0d798892e642737083800f136113a9f2f3
1 ==============================================
2  'gschem and Friends' Electronic Design Suite
3 ==============================================
5 Copyright (C) 1998-2011 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.7.2
11 =================================
13 * `geda-gaf' now requires GTK+ 2.16.0 or later.
15 * A greatly expanded Scheme API has been added to gEDA/gaf for use by
16   extension authors.  See the `geda-scheme' Info manual for more
17   details.  Existing extensions may need to be modified to load the
18   `(geda deprecated)' or `(gschem deprecated)' modules.
20 * `gschem' keybinding improvements:
22   - Keybindings are now unaffected by Caps Lock.
24   - Keystrokes are displayed using the same characters as on keycaps
25     (e.g. `:' instead of `colon').
27   - Keystrokes may use extended modifiers (Super, Hyper and Meta).
29   - Key bindings can be modified in any rc file or interactively using
30     the `global-set-key' function.  See notes in `system-gschemrc' for
31     examples.
33 * `gschem' now displays help files and component documentation on all
34   platforms, including Windows.  The `locate' tool is no longer used
35   to search for component documentation files.
37 * The `bom' and `bom2' backends to `gnetlist' now give error messages
38   if no attribute file can be found.  The `-O attrib_file=FILE' and
39   `-O attribs=ATTRIB,ATTRIB...' options have also been added.
41 * A new `ewnet' backend has been added to `gnetlist'.  This outputs
42   netlists for use with the National Instruments ULTIboard layout
43   tool.
45 * `gsch2pcb' no longer supports the `m4_command' parameter in project
46   files.
48 Notable changes in gEDA/gaf 1.7.1
49 =================================
51 * gEDA is now compatible with Guile 2.0.
53 * gEDA/gaf applications no longer complain when trying to load an rc
54   file twice, or when an rc file doesn't exist.
56 * `gschem' allows objects to be moved by dragging without having to
57   select them first.
59 * `gschem' now supports keybindings with more than one modifier key,
60   and "Deselect" is bound to <Control Shift A> by default.
62 * `gnetlist' correctly handles multiple renames of the same net.  This
63   resolves some long-standing bugs with multipage schematics.
65 * The `spice-sdb' backend for `gnetlist' now has built-in support for
66   `SUBCKT_NMOS' and `SUBCKT_PMOS' devices.
68 * A new `makedepend' backend has been added to `gnetlist'.  It
69   generates Makefile code for SPICE simulation dependencies.
71 * Visibility of embedded component attributes are now preserved by
72   `gattrib'.
74 * `gsch2pcb' correctly handles footprint names with hyphens (`-').
76 * `gsch2pcb' project files support quoting and escaping in
77   `schematics' entries.
79 * Considerable enhancements to Unicode support when printing
80   schematics or exporting PostScript.
82 Notable changes in gEDA/gaf 1.7.0
83 =================================
85 * All gEDA/gaf applications now handle configuration files much more
86   strictly, and provide much more useful feedback when an error
87   occurs.
89 * Several changes to `gschem' command-line options:
91   - The `-t' option is no longer supported.
93   - Several command-line options now support a long-form alternative.
95   - The `-s' option can now be used to run multiple Scheme scripts
96     during `gschem' startup.
98   - A new `-c' option is available, which runs a Scheme expression
99     during `gschem' startup.
101   - A new `-L' option is available, which adds a directory to the
102     Scheme load path.
104   - A new `-V' or `--version' option is available, which displays
105     version information.
107 * `gschem' now provides a "Select All" function, which is bound to
108   <Control a> by default, along with a corresponding "Deselect"
109   function.
111 * In the `gschem' "Add component" dialog, filtering the component
112   library will expand matching libraries.  If the filter is cancelled,
113   all libraries are collapsed.  Components can now be selected by
114   double-clicking on them in the component list.
116 * The `gschem' "Edit Text Properties" dialog now has an easier to use
117   "Alignment" menu.
119 * Printed text size now better matches on-screen text size in
120   `gschem'.
122 * Special characters, including commas, are now escaped or quoted
123   appropriately in `gattrib' CSV output.
125 * Several changes to `gnetlist' command-line options:
127   - Four command-line options specific to the `spice-sdb' backend have
128     been removed.  They can be replaced with `-O <option>' according
129     to the following table:
131         -e, --embedd              -O embedd_mode
132         -I, --include             -O include_mode
133         -n, --nomunge             -O nomunge_mode
134         -s, --sort                -O sort_mode
136   - The list of available backends is now obtained using a new
137     `--list-backends' option.  `-g help' no longer outputs a list of
138     backends.
140   - A new `-L' option is available, which adds a directory to the
141     Scheme load path.
143   - A new `-V' or `--version' option is available, which displays
144     version information.
146   - When run with invalid command-line arguments, `gnetlist' now exits
147     with non-zero exit status.
149 * Several `gnetlist' backends have now been fixed so that it should no
150   longer be necessary to set an expanded Guile stack in gEDA's config
151   files.
153 * The `spice-sdb' backend for `gnetlist' now supports probes
154   (`TESTPOINT' devices).
156 * The undocumented `mk_verilog_syms' program is no longer installed.
157   The symbols it creates are still installed to
158   `${prefix}/share/gEDA/sym/verilog'.
160 Notable changes in gEDA/gaf 1.6.2
161 =================================
163  * PNG export from `gschem' will now be cropped correctly.
165  * The `partlist' backends for `gnetlist' now handle hierarchical
166    refdes correctly.
168  * On Windows, `gschem' and `gattrib' will no longer launch with a
169    command window visible.
171  * `gnetlist-arg' is no longer valid in `gsch2pcb' project files.
173 Several other bugs were fixed, including a major crash bug in
174 gnetlist.
176 Notable changes in gEDA/gaf 1.6.1
177 =================================
179 * Added accelerator mnemonics for root menus in gschem
181 * Lots of updated and new language translations in libgeda, gschem, and
182   gattrib.  (Courtesy of language translators and Launchpad) 
184 * Updated the shipped documentation from the official gEDA wiki
186 * Fixed the following bugs:
188   - 2876373: Fix rendering with zoomed out dashed lines
189   - 2901183: Fix for some manpage issues
190   - 2904715: Don't update page connectivity from o_place_rotate()
191   - 2949232: Fix slot editing routines to not edit inherited attributes 
192   - Cherry picked some other bug fixes from master that should be in
193     this release
195 Notable changes in gEDA/gaf 1.6.0
196 =================================
198 * Fixed the GtkItemEntry code inside of gattrib code so that it builds
199   using gtk+ > 2.16.x.
201 * In gschem, rubberband pin to pin connections by adding nets.
203 * Cleanup of the slot handling code in libgeda.
205 * Fixes/updates to the MinGW port.
207 * Updated the shipped documentation from the online wiki.
209 Notable changes in gEDA/gaf 1.5.3/1.5.4
210 =======================================
212 * NOTE: gEDA/gaf 1.5.3 was released with some critical bugs, so
213         it was withdrawn before it was widely distributed.
215 * Text rendering using native system fonts:
217   - The various programs in gEDA/gaf no longer uses its own built-in
218     line font.
220   - Native system fonts are used for rendering, giving support for a
221     wider range of symbols, and better looking schematics.
223 * Always use PostScript fonts in gschem's PostScript output.  The
224   "output-text", "text-output" and "output-vector-threshold" config
225   functions have been removed.
227 * Image rendering in 'gschem' uses cairo instead of GDK.
229 * Numerous build system changes:
231   - gEDA/gaf is now distributed as a single source archive, called
232     gEDA-<version>.tar.gz.
234   - GTK+ 2.10 or newer and Guile 1.8 or newer are now required.
236   - `intltool' is no longer required.
238   - Documentation is now installed to ${docdir} (usually
239     ${prefix}/share/doc/gEDA).
241 * The attribute edit dialog in `gschem' now has completion of most
242   common attribute names.
244 * The multi-attribute edit dialog in `gschem' now shows unpromoted
245   symbol attributes.
247 * Menu items in `gschem' now have icons and properly aligned key
248   bindings. They also support accelerator keys.
250 * The `gschem2pcb' and `PCBboard' netlist backends have been removed.
251   It is recommended to use `gsch2pcb' instead.
253 * Check for and reject non-footprint PCB files in 'gsch2pcb'.
255 * Removed unimplemented "File->Open" feature in 'gattrib'.
257 * Added --disable-gattrib command line flag to ./configure to disable the
258   building of 'gattrib'.  This is useful if you are building against
259   gtk+ 2.17.x which breaks 'gattrib'.
261 * 'gnetlist' does not recommend drc2 every time it runs.  The drc2
262   backend is only useful in certain circumstances.
264 * Assign shortcuts "vd" and "vl" for changing between color schemes
265   in 'gschem'.
267 * Fix problem with attached net attribute not being honored in 'gnetlist'.
269 * Focus the "save" button in the close confirmation dialog in 'gattrib' and
270   'gschem'.
272 * Accept empty attributes in the src file in 'tragesym'.
274 * Cleaned up the slot dialog box in 'gschem'.
276 * Changed the grip size rendering in 'gschem' to be reasonably sized when
277   zoomed in a lot.
279 * Introduction of a new attribute searching API in 'libgeda' and 'gschem'.
281 * Improvements and cleanup to the 'gnetlist' and 'gsymcheck' test suites.
283 * Fixed the following bugs:
285   - 1758673: Combine source tarballs
286   - 2058707: gschem, gattrib: Dangerous button focus in "Save changes"
287              dialog at quit
288   - 2430369: gschem: Deselect invisible attribs with their parent object.
289   - 2449060: Graphic state left inconsistent cancelling from net mode
290   - 2460301: libgeda: Make o_complex_promote_attribs() respect keep_invisible
291              and libgeda: Make o_complex_copy() actually copy.
292   - 2455061: Gnetlist output changed, and tests fail with recent GLib
293   - 2655088: autogen.sh: Make sure to exit if autopoint fails.
294   - 2823703: gnet-pcbpins.scm: Quote pins names if they contain comma
295              or close parenthesis.
296   - 2823755: gnetlist: Fix DEBUG builds.
297   - 2836109: build-sys: Add check for groff html driver.
299 * Spanish translation were updated.
301 * Lots of code, infrastructure, and doxygen documentation cleanup and
302   refactoring.
304 Notable changes in gEDA/gaf 1.5.2
305 =================================
307 * `gschem' now uses Cairo for all rendering.  This allows for
308   everything to be rendered anti-aliased.
310 * `gschem' now uses a mesh grid instead of dots by default.
312 * Net junction cues in `gschem' are drawn smaller now.
314 * Copy and paste now works between different `gschem' instances (using
315   the X selection).
317 * Recent files are no longer opened in a new `gschem' window.
319 * Major, *backwards-incompatible* changes to color handling in
320   `libgeda' and `gschem'.
322   - All colors are specified using hexadecimal `#RRGGBB' or
323     `#RRGGBBAA' syntax.
325   - The print and display color maps are now separate.
327   - A new Scheme syntax is used to inspect and modify color maps.
329   - If you wish to use a light background in `gschem', add the line:
331       (load (build-path geda-rc-path "gschem-colormap-lightbg"))
333     to your personal or project gschemrc file.
335 * Attributes of embedded objects are now shown in the right color.
337 * Bus pins are now supported by `gschem' and `libgeda', but are *not*
338   properly supported by the netlister.  The pin type can be modified
339   by selecting a pin, then right-clicking it and selecting `Edit pin
340   type...'.
342 * All of the symbols were modified to use overbar markup tags ("like
343   \_this\_") instead of separate lines.
345 * Log files are now saved to $HOME/.gEDA/logs rather than being
346   dropped in the current directory.
348 Notable changes in gEDA/gaf 1.5.1
349 =================================
351 * GTK+ version 2.8.x or later is now required.
353 * The selection behaviour in `gschem' was changed. 
355   - Lines, unfilled boxes, unfilled circles, arcs, pins, nets, and
356     buses must be selected by clicking on the drawn path itself.
358   - Filled boxes, circles, text, and components, may be selected by
359     clicking anywhere in the bounding box.
361   - The default mouse click distance required to select an element was
362     increased to 10 pixels.
364   - Double-clicking on a net segment selects all connected net
365     segments.
367 * The percentage step in or out while zooming the display in `gschem'
368   is now configurable with the `zoom-gain' gschemrc parameter.  The
369   default value is 20%.
371 * The size of steps when panning with the mouse wheel or with a
372   trackpad in `gschem' is now adjustable with the `scrollpan-steps'
373   gschemrc parameter.  The default setting scrolls in steps of 1/8 of
374   a screen.
376 * A number of improvements were made to the `gschem' component
377   selection dialog.
379   - The dialog now shows a table of top-level attributes in the
380     selected symbol.
382   - It is now possible to expand/collapse a library by clicking
383     anywhere on its row.
385 * Changes to fill- and line-styles in `gschem' can now be undone.
387 * Arcs can now be adjusted in `gschem' using an arc angle dialog.  It
388   can be accessed by selecting an arc and selecting Edit->Edit.
390 * It is now possible to rotate objects while placing them in `gschem'.
392 * Support for arbitrary filled and unfilled paths, using a subset of
393   the SVG path syntax.  For more information, please see the file
394   format specification.
395   <http://geda.seul.org/wiki/geda:file_format_spec>
397   - `gschem' does not yet provide a GUI for creating or editing path
398     elements.  However, it does support rendering them.  They can also
399     be printed.
401   - Some of the symbols in the component library were updated to use
402     paths.
404 * A Scheme evaluation prompt was added to `gschem'.  It can be
405   accessed by typing `:'.
407 * Improved algorithm for drawing hatched fills both on screen and in
408   PostScript output.
410 * Color selection dialogs and menus in `gschem' now show the actual
411   color as well as the description.  Color names are now translatable.
413 * `gattrib' now prompts to save changes.
415 * All of the unimplemented menu items and pages in `gattrib' were
416   removed.
418 * The `always-promote-attributes' gafrc parameter now takes a list of
419   strings as an argument.  The space-delimited string syntax is
420   deprecated.
422 * Some optimisations were made to the `gnetlist' connection traversal
423   algorithm to speed up netlisting large designs.
425 * A new netlist backend was added to support Liquid PCB.
426   <http://www.liquidpcb.org/>
428 * The `bom2' netlist backend now generates a `qty' column.
430 * Several improvements and fixes were made to the `systemc' backend.
432 * The `--gnetlist-arg' option to gsch2pcb can now be used to pass
433   extra `gnetlist' arguments.
435 * `gsch2pcb' now emits files with the latest `pcb' file format.
437 * The `gxyrs' pick-and-place tool was added.
439 Notable changes in gEDA/gaf 1.5.0
440 =================================
442 * Magnetic net mode in `gschem'. Magnetic mode lets you draw nets and
443   automatically connect to valid end points (such as pins and other
444   nets).  The `magnetic-net-mode' gschemrc parameter can be used to
445   enable/disable this feature.
447 * Rotating a component while moving it in `gschem' now rotates around
448   the current mouse location.
450 * The `verilog' and `vhdl' backends now work again.
452 * Embedded components can now be mirrored.
454 * The `pads' netlist backend now uses CRLF line endings.
456 Older versions
457 ==============
459 Release notes for older versions of gEDA/gaf are available on the gEDA
460 website.  <http://www.gpleda.org/news/index.html>
463    Local Variables:
464    mode: text
465    End: