4 - A new gnetlist command-line option `--report-gui' has been added
5 which shows errors and warnings in a GUI dialog
7 - Netlister error and warning messages now only contain coordinates if
8 this has been requested
10 - The number of allowed colors has been changed to 21
16 - Duplicate I/O ports in a subschematic as well as duplicate I/O pins
17 in a subschematic symbol are now treated correctly
19 - The python package `gaf' accepts the same kind of whitespace in
20 symbol and schematic files as libgeda does
22 - The number of fixed places in error message and XML file format
23 coordinates has been changed to 3 in order to match the concept of
24 gEDA/gaf units being "mils" (which isn't necessarily correct but may
31 - The command-line tool `xorn' returns exit status 99 on an internal
32 error and doesn't print error-reporting information any more when
33 interrupted with Ctrl+C
39 - The wrapper script `gnetlist2' is now the official gnetlist executable
45 - Renamed package `xorn.geda' to `gaf'
51 - Python backends can now be invoked using `gnetlist2'
57 - Added netlist backend for Igor2's tEDAx format
63 - Added options -l and -a to `xorn extract'
69 - Power symbols can now be defined using a netname=NAME attribute
70 instead of the old net=NAME:1
72 - Port symbols can now be defined using a portname=NAME attribute
73 instead of the old refdes=NAME
75 - Implemented parameter substitution for subschematics
77 - Object data is now validated by the storage library and invalid data
80 - Object data is normalized after copying; any stored object data is
81 guaranteed to be in a standard format
83 - Storage library: xorn_delete_object and xorn_delete_selected_objects
84 now return 0 on success and -1 on failure (no objects matching the
85 specified selection being considered success)
87 - Storage library: Object manipulation functions now have an
88 additional parameter `err' returning the error code
94 - Missing symbols are now handled properly
96 - Added python module `xorn.xml_writer' which provides general-purpose
97 XML writing functionality
99 - Added python modules `xorn.fixednum' and `xorn.hybridnum' which
100 implement a fixed-point number format without and with a hexadecimal
101 floating-point part, respectively
103 - Added XML schematic/symbol file format
105 - Added subcommand `xorn convert' which allows converting a schematic
106 or symbol file from one format to another
108 - When reading a schematic file which contains fallback versions of
109 symbols or pixmaps and a symbol or pixmap can't be found, a warning
110 is now issued (instead of an error) and the fallback version used
112 - Duplicate pinseq= values are no longer considered an error as long
113 as they aren't relevant for slotting
119 - Fixed a bug which caused a net segment to be internally listed twice
121 - Added regression tests for fixed bugs
123 - A pin which occurs in the slot definition of a slotted component but
124 is missing from the symbol is now considered an error
126 - Errors while reading a file are now reported to a callback object
127 and don't cause the state to become invalid
133 - Added Python module `xorn.guile' which allows adding Guile as a
134 script interpreter to a Python application
136 - Added gnetlist Guile API to the netlister
138 - Added `guile' backend which allows using backends written in Scheme
139 with the new netlister
141 - Added wrapper script `gnetlist2' as a drop-in replacement for
148 - Directory sources can now be recursive
154 - The ripperdir field on buses is now written correctly
156 - Fixed a bug which caused nets to be shorted when using customizable
159 - Fixed a bug which caused some components to remain unnamed in
160 hierarchical schematics
166 - Files which contain `\r\n' line endings are now read correctly
168 - Added python package `xorn.geda.netlist' which allows creating a
169 netlist from one or more gEDA schematic files
171 - Added a set of backends (mostly from gnetlist) which output netlists
174 - Added subcommand `xorn netlist', a command-line interface to the
181 - Added python module `xorn.geda.clib' which implements the gEDA
182 symbol library mechanism
188 - Added python package `xorn' which provides proxy classes for easy
189 access to the storage backend, base64 encoding/decoding, and helper
190 functions for writing files in a safe way
192 - Added python package `xorn.geda' which supports reading and writing
193 gEDA files and gEDA attribute handling
195 - Added command-line utility `xorn' with two sub-commands:
196 extract - extract embedded symbols or pixmaps from a schematic
197 find-symbol-by-pinout - find symbols matching a given pinout
199 - Python modules can now be imported from the build directory by
200 adding the subdirectory `built-packages' to PYTHONPATH
202 - Added internationalization
208 - Python extension: Members of data classes can now be passed as
209 constructor arguments
211 - Added symbol and pixmap attributes
213 - Python extension: All functions now raise KeyError if an object
214 argument does not exist
220 - Storage library: Functions returning an object list now have an
221 integer return type (instead of void). They will return 0 on
222 success and -1 on failure. The returned pointer may be NULL if no
223 objects are returned.
225 - Added API documentation. Type `make doxygen' to build.
228 xorn_object_is_selected (xorn.storage.object_is_selected)
229 xorn_select_difference (xorn.storage.select_difference)
230 xorn_select_including (xorn.storage.select_including)
231 xorn_select_excluding (xorn.storage.select_excluding)
233 - Objects now have an intrinsic order
235 - Text objects can be attached to net and component objects
238 xorn_get_object_location (xorn.storage.Revision.get_object_location)
239 xorn_relocate_object (xorn.storage.Revision.relocate_object)
240 xorn_get_objects_attached_to (xorn.storage.get_objects_attached_to)
241 xorn_select_attached_to (xorn.storage.select_attached_to)
243 --------------------------------------------------------------------------------
245 Copyright (C) 2013-2020 Roland Lutz
247 Permission is granted to copy, distribute and/or modify this document
248 under the terms of the GNU Free Documentation License, Version 1.2 or
249 any later version published by the Free Software Foundation; with no
250 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
251 Texts. A copy of the license is included in the ``GNU Free
252 Documentation License'' file as part of this distribution.