4 - The wrapper script `gnetlist2' is now the official gnetlist executable
10 - Renamed package `xorn.geda' to `gaf'
16 - Python backends can now be invoked using `gnetlist2'
22 - Added netlist backend for Igor2's tEDAx format
28 - Added options -l and -a to `xorn extract'
34 - Power symbols can now be defined using a netname=NAME attribute
35 instead of the old net=NAME:1
37 - Port symbols can now be defined using a portname=NAME attribute
38 instead of the old refdes=NAME
40 - Implemented parameter substitution for subschematics
42 - Object data is now validated by the storage library and invalid data
45 - Object data is normalized after copying; any stored object data is
46 guaranteed to be in a standard format
48 - Storage library: xorn_delete_object and xorn_delete_selected_objects
49 now return 0 on success and -1 on failure (no objects matching the
50 specified selection being considered success)
52 - Storage library: Object manipulation functions now have an
53 additional parameter `err' returning the error code
59 - Missing symbols are now handled properly
61 - Added python module `xorn.xml_writer' which provides general-purpose
62 XML writing functionality
64 - Added python modules `xorn.fixednum' and `xorn.hybridnum' which
65 implement a fixed-point number format without and with a hexadecimal
66 floating-point part, respectively
68 - Added XML schematic/symbol file format
70 - Added subcommand `xorn convert' which allows converting a schematic
71 or symbol file from one format to another
73 - When reading a schematic file which contains fallback versions of
74 symbols or pixmaps and a symbol or pixmap can't be found, a warning
75 is now issued (instead of an error) and the fallback version used
77 - Duplicate pinseq= values are no longer considered an error as long
78 as they aren't relevant for slotting
84 - Fixed a bug which caused a net segment to be internally listed twice
86 - Added regression tests for fixed bugs
88 - A pin which occurs in the slot definition of a slotted component but
89 is missing from the symbol is now considered an error
91 - Errors while reading a file are now reported to a callback object
92 and don't cause the state to become invalid
98 - Added Python module `xorn.guile' which allows adding Guile as a
99 script interpreter to a Python application
101 - Added gnetlist Guile API to the netlister
103 - Added `guile' backend which allows using backends written in Scheme
104 with the new netlister
106 - Added wrapper script `gnetlist2' as a drop-in replacement for
113 - Directory sources can now be recursive
119 - The ripperdir field on buses is now written correctly
121 - Fixed a bug which caused nets to be shorted when using customizable
124 - Fixed a bug which caused some components to remain unnamed in
125 hierarchical schematics
131 - Files which contain `\r\n' line endings are now read correctly
133 - Added python package `xorn.geda.netlist' which allows creating a
134 netlist from one or more gEDA schematic files
136 - Added a set of backends (mostly from gnetlist) which output netlists
139 - Added subcommand `xorn netlist', a command-line interface to the
146 - Added python module `xorn.geda.clib' which implements the gEDA
147 symbol library mechanism
153 - Added python package `xorn' which provides proxy classes for easy
154 access to the storage backend, base64 encoding/decoding, and helper
155 functions for writing files in a safe way
157 - Added python package `xorn.geda' which supports reading and writing
158 gEDA files and gEDA attribute handling
160 - Added command-line utility `xorn' with two sub-commands:
161 extract - extract embedded symbols or pixmaps from a schematic
162 find-symbol-by-pinout - find symbols matching a given pinout
164 - Python modules can now be imported from the build directory by
165 adding the subdirectory `built-packages' to PYTHONPATH
167 - Added internationalization
173 - Python extension: Members of data classes can now be passed as
174 constructor arguments
176 - Added symbol and pixmap attributes
178 - Python extension: All functions now raise KeyError if an object
179 argument does not exist
185 - Storage library: Functions returning an object list now have an
186 integer return type (instead of void). They will return 0 on
187 success and -1 on failure. The returned pointer may be NULL if no
188 objects are returned.
190 - Added API documentation. Type `make doxygen' to build.
193 xorn_object_is_selected (xorn.storage.object_is_selected)
194 xorn_select_difference (xorn.storage.select_difference)
195 xorn_select_including (xorn.storage.select_including)
196 xorn_select_excluding (xorn.storage.select_excluding)
198 - Objects now have an intrinsic order
200 - Text objects can be attached to net and component objects
203 xorn_get_object_location (xorn.storage.Revision.get_object_location)
204 xorn_relocate_object (xorn.storage.Revision.relocate_object)
205 xorn_get_objects_attached_to (xorn.storage.get_objects_attached_to)
206 xorn_select_attached_to (xorn.storage.select_attached_to)
208 --------------------------------------------------------------------------------
210 Copyright (C) 2013-2018 Roland Lutz
212 Permission is granted to copy, distribute and/or modify this document
213 under the terms of the GNU Free Documentation License, Version 1.2 or
214 any later version published by the Free Software Foundation; with no
215 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
216 Texts. A copy of the license is included in the ``GNU Free
217 Documentation License'' file as part of this distribution.