TiXI  3.3.0
/usr/src/packages/BUILD/Changelog.md
Go to the documentation of this file.
1 Changelog
2 =========
3 
4 Version 3.3.0
5 -------------
6 
7 API Changes:
8 
9  - ``::tixiXPathEvaluateNodeNumber`` will not throw an error anymore when an xml node does
10  not exist. Rather, the function will succeed and return zero. (issue #198)
11  - Fixed inconsistent behavior of the function ``::tixiUpdateTextElement``: This function should
12  only work, when the element path refers to a single element with no XML child nodes or at most
13  one text child node. This is now explicitly checked and an error is thrown, if these
14  prerequisites are not met. Without this, it is not clear how the function behaves e.g. at the
15  presence of comment child nodes.
16  - ``::tixiXPathExpressionGetTextByIndex`` now retrieves the complete content of an element
17  including text and comments.
18 
19 New Functions:
20 
21  - ``::tixiExportElementAsString`` retrieves the xml string of a given element (issue #202)
22  - ``::tixiImportElementFromString`` imports a char-string as a child element into an existing
23  tixi-document (issue #202).
24 
25 Version 3.2.0
26 -------------
27 
28 API Changes:
29 
30  - Fixed inconsistent behaviour of the function ``::tixiAddExternalLink``.
31  The function now creates external node links consistent to ``::tixiOpenDocumentRecursive``.
32  A new required argument defines, whether the newly created external node
33  should be directly loaded into the xml tree (issue #173).
34 
35 General Changes:
36 
37  - Drasting performance improvements when adding and changing vectors via
38  ``::tixiAddFloatVector`` and ``::tixiUpdateFloatVector`` by changing
39  the quadratic runtime behaviour to a linear behaviour (issue #183).
40  - Added support for Python 3.8 and Python 3.9 (issue #178).
41 
42 
43 Fixes:
44 - Fixed invalid calls in matlab bindings (issue #170).
45 - Fixed error code in ``::tixiGetFloatVector``, if a vector element is not a number (issue #184).
46 - Fixed a crash when saving to external xml documents (issue #175).
47 
48 
49 Version 3.1.1
50 -------------
51 
52 Fixes:
53 - Fix for `::tixiGetDoubleElement` and `::tixiGetIntegerElement` and elements with trailing whitespace.
54 - Removed all exit( ) calls in TiXI
55 
56 Version 3.1.0
57 ----------------
58 
59 API Changes:
60 - Deprecated all array functions. These are
61 
62  - `::tixiGetArray`
63  - `::tixiGetArrayDimensionNames`
64  - `::tixiGetArrayDimensions`
65  - `::tixiGetArrayDimensionSizes`
66  - `::tixiGetArrayDimensionValues`
67  - `::tixiGetArrayElementCount`
68  - `::tixiGetArrayElementNames`
69  - `::tixiGetArrayParameterNames`
70  - `::tixiGetArrayParameters`
71  - `::tixiGetArrayValue`
72 
73  **These functions will be removed in TiXI 3.3.0!**
74 
75 - ```::tixiGetDoubleElement``` and ```::tixiGetIntegerElement``` now return the error code ```::NO_NUMBER```,
76  if the element is not a number.
77  Before, TiXI returned '0' as a number without error.
78 - ```::tixiGetFloatVector``` and ```::tixiGetVectorSize``` do not check for `mapType="vector"` anymore.
79 
80 General Changes:
81 - The validation error messages produced by
82  ```::tixiSchemaValidateFromFile```, ```::tixiSchemaValidateWithDefaultsFromFile``` and
83  ```::tixiSchemaValidateFromString``` now show line numbers of the error in the xml file.
84 - Support of Matlab R2018a and newer
85 
86 New Functions:
87 - Added new function ```::tixiRemoveExternalLinks``` to remove links to external files to
88  improve validation of xml files.
89 
90 Fixes:
91 - Fixed several build problems
92 - Fixed adding empty vectors using ```::tixiAddFloatVector```
93 - Fixed crash for very long error messages
94 - Fixed decoding of special characters by ```::tixiGetTextElement```
95 
96 Version 3.0.3
97 ----------------
98 
99 General Changes:
100 - Improved cmake export scripts. Tixi installs should now be relocatable.
101 - The cmake build system now builds by default static libraries. If shared
102  libraries are desired, ```-DBUILD_SHARED_LIBS=ON``` has to be passed to cmake.
103 - Implemented caching for the functions ```tixiXPathExpressionGetXPath``` and
104  ```tixiXPathEvaluateNodeNumber``` to speed up queries on large files.
105 
106 New Functions:
107 - ```tixiSwapElements``` allows to exchange two xml elements.
108 - Added functions TixiGetNumberOfChilds, TixiGetChildNodeName and
109  TixiGetChildElementPaths to C++ Bindings.
110 
111 Fixes:
112 - Fixed indexing of text nodes. Now it is possible to directly select text nodes
113  using e.g. /root/a/text()[2].
114 - Fixed function ```tixiGetChildNodeName``` to returns also the namespace prefix.
115 
116 Version 3.0.2
117 ----------------
118 
119 New Functions:
120 - tixiRenameElement To rename an existing element
121 
122 
123 Version 3.0.1
124 ----------------
125 
126 General Changes:
127 - Completed C++ wrapper
128 
129 New Functions:
130 - tixiXSLTransformationToString To perform an xml transformation
131 
132 Fixes:
133 - Fixed an error in Python bindings that added a tixi prefix in front of all methods
134 
135 Version 3.0
136 ---------------
137 
138 General Changes:
139 - Renamed TIXI library to tixi3
140 - TiXI header file is now located under include/tixi3/tixi.h
141 - Added new C++ bindings for TiXI located under include/tixi3/tixicpp.h
142 
143 
144 Fixes:
145 - Fixed failure in ```tixiUIDCheckExists``` if a uID is duplicate
146 - Fixed invalid characters in Matlab bindings
147 - Fixed missing return value in the matlab bindings of ```tixiUIDCheckExists```
148 - Fixed compilation of the matlab bindings on linux
149 
150 Version 2.2.4
151 ---------------
152 
153 General Changes:
154  - Added XML namespace support
155  - Added Makefile to build the MATLAB interface with mex
156 
157 New Functions:
158 - Functions to write elements with namespaces
159 
160  - tixiCreateElementNS
161  - tixiCreateElementNSAtIndex
162  - tixiAddBooleanElementNS
163  - tixiAddDoubleElementNS
164  - tixiAddIntegerElementNS
165  - tixiAddTextElementNS
166  - tixiAddTextElementNSAtIndex
167 
168 - Funtions for namespace modifications
169 
170  - tixiSetElementNamespace
171  - tixiDeclareNamespace
172 
173 - Functions to register namespaces
174 
175  - tixiRegisterNamespace
176  - tixiRegisterNamespacesFromDocument
177 
178 Fixes:
179 - Fixed hard-coded libraries in CMake config scripts
180 
181 
182 Version 2.2.3
183 ---------------
184 
185 General Changes:
186 - Removed warning in tixiOpenDocumentRecursive, if no external
187  files are defined in the cpacs file
188 - Fixed problems with intel ifort in linux
189 - Added Fortran 03 interface. This has to be compiled by the user.
190 - The C-code of the matlab mex interface is now always shipped with tixi,
191  if the user wants to build it by himself.
192 
193 Version 2.2.2
194 ---------------
195 
196 General Changes:
197 - Less messages in case of errors to reduce clutter
198 
199 Fixes:
200 - Fixed tixiUpdateDoubleElement and tixiUpdateIntegerElement not updating
201  the element content, if the element was empty before
202 
203 
204 Version 2.2.1
205 ---------------
206 
207 API Changes:
208 - Removed ellipsis argument for error message handler. This
209  change affects code calling tixiSetPrintMsgFunc.
210 
211 New Functions:
212 - tixiGetPrintMsgFunc to return the internal message handler.
213 
214 
215 Version 2.2.0
216 ---------------
217 
218 General Changes:
219 - Support to load and save external data from directories
220  relative to the XML file rather than the current working directory
221 - Completely cleaned up code base for a common code style
222 
223 
224 New Functions:
225 - tixiXPathExpressionGetXPath to query an absolute XPath from
226  an XPath search query
227 - tixiGetDocumentPath to get the path of the currently opened file
228 
229 Fixes:
230 - All known memory issues fixed (more than 100)
231 - Fixed problems when dealing with external data
232 - Fixed many compiler warnings
233 
234 
235 Version 2.1.1
236 ---------------
237 
238 General Changes:
239 - Rerouting mechanism for error and warning messages
240  (a custom message handler can be installed)
241 - Added Python 3 support
242 
243 
244 API Changes:
245 - tixiAddFloatVector now has an additional precision parameter to control
246  e.g. the number of digits after the decimal point
247 
248 New Functions:
249 - tixiUpdateFloatVector to change the data of an already existing vector
250 - tixiSetPrintMsgFunc to install a custom message handler
251 
252 Fixes:
253 - tixiGetNumberOfChilds and tixiGetChildNodeName now ignore DTD nodes
254 - MATLAB specific: reverted tixiCheckElement, tixiCheckAttribute,
255  tixiCheckDocumentHandle, tixiCheckUIDExists to old behavior
256 
257 
258 Version 2.1.0
259 ---------------
260 
261 General Changes:
262 - Automatic generation of python and matlab bindings
263 - TiXI can now be used as an Android NDK native module
264 - TiXI installs cmake config files in order to be used by other projects
265 
266 
267 API Changes:
268 - Renamed tixiGetChildElementName to tixiGetChildNodeName. Its output is now
269  consistent with DOM standard.
270 - Removed tixiGetRawInterface
271 - Changed arguments in tixiAddPoint MATLAB binding
272 - Removed all matrix related functions
273 
274 New Functions:
275 - tixiGetNodeType, returns the type of an XML node accoring to DOM standard.
276 
277 
278 Fixes:
279 - Fixed incorrect return value of tixiGetFloatVector, if number of elements
280  read is smaller than expected
281 - TiXI can now be built with clang also on windows
282 - Fixed wrong formatting of the result XML, when inserting an xml element
283  using tixiCreateElementAtIndex
284 
285 
286 Version 2.0.4
287 ---------------
288 
289 New Functions:
290 - tixiGetChildElementName - Returns the name of a child element beneath a given path.
291 - tixiGetAttributeName - Returns the name of an attribute of a given node.
292 - tixiGetNumberOfChilds - Returns the number of childs elements of a given path.
293 - tixiGetNumberOfAttributes - Returns the number of attributes of a given node.
294 - tixiGetBooleanAttribute
295 
296 -Changes:
297 - Switched the API to const char strings. This should produce much less
298  warnings but should not break the current API/ABI.
299 - Added file tixi_version.h including all version information.
300 - Added support for visual leak detector
301 - Added check for python version < 3.0 and python version > 2.5
302 
303 Fixes:
304 - Fixed tixiUpdateTextElement not updating the text, if the node was empty before
305 - Fixed element retrieving of root node
306 - Fixed uIDCheckExists behaviour of python wrapper
307 
308 
309 Version 2.0.3
310 ---------------
311 
312 - Changed UnitTesting Framework to google-test
313 - Added coverage with gcov (gcc only) to project
314 - Added check that the number of elements in an array is the same as the specified array size
315 - Fixed null-pointer bug in tixiGetTextAttribute
316 - tixiAddCpacsHeader now creates also a CPACS version tag
317 - Documentation overhaul
318 
319 New Functions:
320 - tixiUpdateIntegerElement
321 - tixiUpdateBooleanElement
322 
323 
324 Version 2.0.2
325 ---------------
326 
327 - Fixed lots of memory leaks
328 - Improved usability of uIDCheckExists (python)
329 - Changed unit testing framework to google test (gtest-1.6.0)
330 - Added more unit tests
331 
332 
333 Version 2.0.1
334 ---------------
335 
336 - Installer for 64-bit Windows
337 - All-In-One installer with 3rd party dependencies for Windows
338 - Added MATLAB interface
339 
340 
341 Version 2.0
342 ---------------
343 
344 - Changes to fit CPACS-2.0 and TIGL-2.0.
345 
346 
347 Version 1.1
348 ---------------
349 
350 - Using a more recent version of MSVC (2008)
351 - Adding a JAVA (OSGi) Bundle that allows easy usage of TIXI functions from java code to repository. Right now the most important functions are implemented
352 
353 - New functions:
354  - tixiUpdateDoubleElement replaces an double element of a node
355  - tixiAddTextElementAtIndex could create a new element at a given position
356 
357 
358 Version 1.0
359 ---------------
360 
361 - Many functions now print more informative error messages
362 - Added a Python wrapper for the C-code and DLL handling (no need to manually convert cpython variables to python)
363 
364 New Functions:
365 - tixiUIDCheckLinks (new function) performs a check over all nodes with the uID "isLink"
366  and checks if the corresponding uid exists in that data set
367 
368 Fixes:
369 - tixiRemoveAttribute does not remove an attribute
370 - tixiCheckAttribute does no longer write an error message when not finding attributes
371 
372 
373 Version 0.9
374 ---------------
375 
376 - New function tixiUsePrettyPrint to make pretty print optional
377 - New UID helper functions:
378  - tixiUIDCheckDuplicates checks if all uID are unique
379  - tixiUIDGetXPath gives the XPath to a given uID
380  - tixiUIDCheckExists checks if a uID exists
381  - tixiUIDSetToXPath sets a uID to a given node
382  - tixiXPathEvaluateNodeNumber Evaluates a XPath expression and returns the number
383  of result nodes matching this xpath expression.
384  - tixiXPathExpressionGetTextByIndex Evaluates a XPath expression and returns
385  the text content of the resultnode matching this xpath expression.
386 
387 - Bugfix in tixiAddTextAttributes. The function does now replace a attribute
388  if there is already one with the same name.
389 - Bugfix in tixiRemoveAttribute. The function does deletes a attribute from a node correctly.
390 - TIXI 64-Bit libs are available for linux.

Generated Tue Mar 8 2022 14:43:05, by Martin Siggel DLR