4 - Added missing configuration function `source-library-search'
6 - Fixed merging package and net names across multiple subsheets
7 instantiated by one component
9 - Duplicate symbol names within one library are only considered an
10 error if the symbol is actually used
16 - Migrated to Guile 2.2
18 - Backend helper modules are now located independently from the
19 location of the backend source file itself
25 - A new gnetlist command-line option `--report-gui' has been added
26 which shows errors and warnings in a GUI dialog
28 - Netlister error and warning messages now only contain coordinates if
29 this has been requested
31 - The number of allowed colors has been changed to 21
37 - Duplicate I/O ports in a subschematic as well as duplicate I/O pins
38 in a subschematic symbol are now treated correctly
40 - The python package `gaf' accepts the same kind of whitespace in
41 symbol and schematic files as libgeda does
43 - The number of fixed places in error message and XML file format
44 coordinates has been changed to 3 in order to match the concept of
45 gEDA/gaf units being "mils" (which isn't necessarily correct but may
52 - The command-line tool `xorn' returns exit status 99 on an internal
53 error and doesn't print error-reporting information any more when
54 interrupted with Ctrl+C
60 - The wrapper script `gnetlist2' is now the official gnetlist executable
66 - Renamed package `xorn.geda' to `gaf'
72 - Python backends can now be invoked using `gnetlist2'
78 - Added netlist backend for Igor2's tEDAx format
84 - Added options -l and -a to `xorn extract'
90 - Power symbols can now be defined using a netname=NAME attribute
91 instead of the old net=NAME:1
93 - Port symbols can now be defined using a portname=NAME attribute
94 instead of the old refdes=NAME
96 - Implemented parameter substitution for subschematics
98 - Object data is now validated by the storage library and invalid data
101 - Object data is normalized after copying; any stored object data is
102 guaranteed to be in a standard format
104 - Storage library: xorn_delete_object and xorn_delete_selected_objects
105 now return 0 on success and -1 on failure (no objects matching the
106 specified selection being considered success)
108 - Storage library: Object manipulation functions now have an
109 additional parameter `err' returning the error code
115 - Missing symbols are now handled properly
117 - Added python module `xorn.xml_writer' which provides general-purpose
118 XML writing functionality
120 - Added python modules `xorn.fixednum' and `xorn.hybridnum' which
121 implement a fixed-point number format without and with a hexadecimal
122 floating-point part, respectively
124 - Added XML schematic/symbol file format
126 - Added subcommand `xorn convert' which allows converting a schematic
127 or symbol file from one format to another
129 - When reading a schematic file which contains fallback versions of
130 symbols or pixmaps and a symbol or pixmap can't be found, a warning
131 is now issued (instead of an error) and the fallback version used
133 - Duplicate pinseq= values are no longer considered an error as long
134 as they aren't relevant for slotting
140 - Fixed a bug which caused a net segment to be internally listed twice
142 - Added regression tests for fixed bugs
144 - A pin which occurs in the slot definition of a slotted component but
145 is missing from the symbol is now considered an error
147 - Errors while reading a file are now reported to a callback object
148 and don't cause the state to become invalid
154 - Added Python module `xorn.guile' which allows adding Guile as a
155 script interpreter to a Python application
157 - Added gnetlist Guile API to the netlister
159 - Added `guile' backend which allows using backends written in Scheme
160 with the new netlister
162 - Added wrapper script `gnetlist2' as a drop-in replacement for
169 - Directory sources can now be recursive
175 - The ripperdir field on buses is now written correctly
177 - Fixed a bug which caused nets to be shorted when using customizable
180 - Fixed a bug which caused some components to remain unnamed in
181 hierarchical schematics
187 - Files which contain `\r\n' line endings are now read correctly
189 - Added python package `xorn.geda.netlist' which allows creating a
190 netlist from one or more gEDA schematic files
192 - Added a set of backends (mostly from gnetlist) which output netlists
195 - Added subcommand `xorn netlist', a command-line interface to the
202 - Added python module `xorn.geda.clib' which implements the gEDA
203 symbol library mechanism
209 - Added python package `xorn' which provides proxy classes for easy
210 access to the storage backend, base64 encoding/decoding, and helper
211 functions for writing files in a safe way
213 - Added python package `xorn.geda' which supports reading and writing
214 gEDA files and gEDA attribute handling
216 - Added command-line utility `xorn' with two sub-commands:
217 extract - extract embedded symbols or pixmaps from a schematic
218 find-symbol-by-pinout - find symbols matching a given pinout
220 - Python modules can now be imported from the build directory by
221 adding the subdirectory `built-packages' to PYTHONPATH
223 - Added internationalization
229 - Python extension: Members of data classes can now be passed as
230 constructor arguments
232 - Added symbol and pixmap attributes
234 - Python extension: All functions now raise KeyError if an object
235 argument does not exist
241 - Storage library: Functions returning an object list now have an
242 integer return type (instead of void). They will return 0 on
243 success and -1 on failure. The returned pointer may be NULL if no
244 objects are returned.
246 - Added API documentation. Type `make doxygen' to build.
249 xorn_object_is_selected (xorn.storage.object_is_selected)
250 xorn_select_difference (xorn.storage.select_difference)
251 xorn_select_including (xorn.storage.select_including)
252 xorn_select_excluding (xorn.storage.select_excluding)
254 - Objects now have an intrinsic order
256 - Text objects can be attached to net and component objects
259 xorn_get_object_location (xorn.storage.Revision.get_object_location)
260 xorn_relocate_object (xorn.storage.Revision.relocate_object)
261 xorn_get_objects_attached_to (xorn.storage.get_objects_attached_to)
262 xorn_select_attached_to (xorn.storage.select_attached_to)
264 --------------------------------------------------------------------------------
266 Copyright (C) 2013-2020 Roland Lutz
268 Permission is granted to copy, distribute and/or modify this document
269 under the terms of the GNU Free Documentation License, Version 1.2 or
270 any later version published by the Free Software Foundation; with no
271 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
272 Texts. A copy of the license is included in the ``GNU Free
273 Documentation License'' file as part of this distribution.