-
-
Notifications
You must be signed in to change notification settings - Fork 246
/
Copy pathNEWS
136 lines (111 loc) · 6.13 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
GNU LibreDWG NEWS -- history of user-visible changes. -*-indented-text-*-
Copyright (C) 2018 Free Software Foundation, Inc.
See the end for copying conditions.
LibreDWG version 0.7 - released 2018/12/6 - still alpha:
new API:
* add dwg_get_OBJECT(dwg) API for all objects in a DWG.
analog to dwg_get_ENTITY, but including all objects, tables,
block headers, even if unowned.
Note that the dwg_api will be revamped from static to dynamic before 1.0.
field accessors will be by name argument and ... (va_args)
See the work/dynapi branch #59 (in progress).
dwg_get_OBJECT(dwg) will be renamed to dwg_getall_OBJECT(dwg),
dwg_get_ENTITY(blkhdr) to dwg_getall_ENTITY(blkhdr).
API breaking changes:
* Changed BITCODE_RC from signed to unsigned char (#44)
* LEADER changes: rename hooklineonxdir to hookline_dir,
rename unknown_bit_4 to hookline_on,
endptproj only until r2007. (but still not 100% correct)
* MULTILEADER changes: rename num_vertex to numpts (analog to LEADER),
change vertex to points[] (PR #49 Denis Pryt)
* Fixed dwg_get_ENTITY(hdr): NULL-terminate the result (#60)
Important bugfixes:
* Fixed all memory leaks and double-free's (#43, #42, PR #58 Denis Pryt)
* Fixed EED sizes (PR #48, Denis Pryt)
* Fixed BLOCK_HEADER.num_inserts, esp. with xref's (#44).
For decode and encode.
* Fixed LTYPE.dash (#44)
* Fixup LEADER DXF values and path_type with annot_type mixup.
* Fixed TABLE.value.data_type with flags kGeneral (#54 Denis Pryt)
* Fixes VECTOR_CHKCOUNT segfault on unassigned obj->dxfname's
(esp. for <=R12), and fix overflows (#56)
* dwglayers: fix for DICTIONARY breaking the list output (#51)
* dxf: fix dxf_blocks_write for empty paper_space (#52)
* Fixed example/load_dwg.py allowing non-critical error codes
Other newsworthy changes:
* Check for RUNNING_ON_VALGRIND and call dwg_free then, even
if previously skipped.
* Renamed all remaining API "null malloc" error messages to
"Out of memory"
* Harmonized in_dxfb with in_dxf, but still WIP
LibreDWG version 0.6.2 - released 2018/11/07 - still alpha:
Important bugfixes:
* Fixed several out_dxf segfaults (#39)
* Enhanced the section size limit from 2032 to 2040.
There were several DWG files with a section size of 2035
in the wild. (PR #41, Denis Pryt)
* Fixed EED realloc on decoding when end - dat->byte == 1
(PR #41, Denis Pryt)
LibreDWG version 0.6.1 - released 2018/11/05 - still alpha:
Important bugfixes:
* fix wrong FIELD_2DD_VECTOR in dwg decode (#40).
LibreDWG version 0.6 - released 2018/08/13 - still alpha:
API breaking changes:
* Removed dwg_obj_proxy_get_reactors(), use dwg_obj_get_reactors() instead.
* Renamed SORTENTSTABLE.owner_handle to SORTENTSTABLE.owner_dict.
* Renamed all -as-rNNNN program options to --as-rNNNN.
Other newsworthy changes:
* Removed all unused type-specific reactors and xdicobjhandle fields,
use the generic object and entity fields instead.
* Added signed BITCODE_RLd and BITCODE_BLd (int32_t) types.
* Added unknown_bits field to all UNSTABLE/DEBUGGING classes.
* Custom CFLAGS are now honored.
* Support for GNU parallel and coreutils timeout logfile and picat processing.
Important bugfixes:
* Fixed previously empty strings for r2007+ for some objects and entities (#34).
* Fixed r2010+ picture size calculation (DXF 160, 310), leading to wrong entity offsets.
* Added more checks for unstable objects: empty handles, controls, overflows, isnan.
* Fixed some common_entity_data, mostly with non-indexed colors and gradient filled HATCH
(#27, #28, #31)
* Fixed some proper relative handles, which were previously treated as NULL handle.
* Fixed writing TV strings, now the length includes the final \0 char.
* Fixed the initial minimal hash size, fixing an endless loop on very small
(truncated) DWG's (<1000 bytes).
* Much less memory leaks.
* Improved free, i.e. no more double free with EED data. (#33)
* Better perl bindings build support on Windows, prefer local dwg.h over
installed dwg.h on testing (#29).
* Fixed dejagnu compilation on C11 by using -fgnu89-inline (#2)
New features:
* Added unstable support for the objects ASSOCDEPENDENCY, ASSOCPLANESURFACEACTIONBODY,
DBCOLOR, DIMASSOC, DYNAMICBLOCKPURGEPREVENTER, HELIX, LIGHT, PERSSUBENTMANAGER,
UNDERLAYDEFINITION and the entities MULTILEADER, UNDERLAY.
* Added getopt_long() support to all programs, position independent options.
* Implemented examples/unknown to find field layouts of unknown objects.
With bd and bits helpers to decode unknowns.
Now with a http://picat-lang.org helper. See also HACKING and savannah News.
* Implemented parsing ACIS version 2 to the binary SAB format.
* Added all missing dwg_object_to_OBJECT() functions for objects.
* Added dwg_ent_minsert_set_num_cols(), dwg_ent_minsert_set_num_rows()
* Added --disable-dxf, --enable--debug configure options. With debug there are many
more unstable objects available.
* Added libredwg.pc (#30)
* Added valgrind supressions for known darwin/glibc leaks.
* Changed and clarified the semver version numbering on development checkouts with
major.minor[.patch[.build.nonmastercommits-gittag]]. See HACKING.
LibreDWG version 0.5 - released 2018/07/05:
This is the first public release ever, after several years of silence.
It can read most r13-r2018 DWG files, and write r2000 DWG,
write DXF and GeoJSON files for all versions.
There are also many new programs: dwgread, dwgwrite, dwgrewrite,
dwg2dxf, dwglayers, dwggrep, dwgbmp, dwg2SVG (very basic), dwg2ps (infancy).
See the manual, ChangeLog or git history for details.
The API is usable but still pretty rough, we might still rename
some functions or names for better consistency and add more encoding API.
Copyright information:
Copyright (C) 2009, 2010, 2015, 2018 Free Software Foundation, Inc.
This library is free software, licensed under the terms of the GNU
General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later version.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.