Tweaked Stream#serialize to be more GC-friendly.
[ruby-eet.git] / ChangeLog
1 --
2 $Id: ChangeLog 64 2005-06-27 19:22:58Z tilman $
3 ++
4
5 2005-06-27 Tilman Sauerbeck (tilman at code-monkey de)
6         * ext/ext.c: Tweaked Stream#serialize to be more GC-friendly
7
8 2005-06-09 Tilman Sauerbeck (tilman at code-monkey de)
9         * ext/ext.c: Object#to_eet: Don't put the final chunk in a stream
10           again, it's not needed
11         * ext/ext.c, test/test_stream.rb: If Stream#serialize is called on
12           a stream that includes non-Chunk elements, BadElementError is
13           raised
14         * ext/ext.c: Tweaked for_each_prop; use rb_ary_push() to add
15           chunks to the stream instead of calling Stream#push
16
17 2005-06-08 Tilman Sauerbeck (tilman at code-monkey de)
18         * ext/ext.c, lib/eet.rb, test/test_basic.rb:
19           Re-implemented Float#to_eet_chunks in C and switched format to
20           the one libeet uses.
21         * ext/ext.c, lib/eet.rb: Re-implemented Integer#to_eet_chunks
22           in C
23
24 2005-06-02 Tilman Sauerbeck (tilman at code-monkey de)
25         * Released version 0.1.3
26
27 2005-06-02 Tilman Sauerbeck (tilman at code-monkey de)
28         * ext/ext.c: Fixed to work on Ruby 1.8.{0,1} again
29         * lib/eet.rb: Bumped version number to 0.1.3
30         * ext/ext.c: Fixed RDoc comment for Object#to_eet
31         * Rakefile: If the CC environment variable is set, use its value
32           instead of calling "cc".
33         * NEWS: Updated for 0.1.3
34
35 2005-05-31 Tilman Sauerbeck (tilman at code-monkey de)
36         * ext/ext.c: Optimized Object#to_eet slightly
37
38 2005-05-30 Tilman Sauerbeck (tilman at code-monkey de)
39         * lib/eet.rb, ext/ext.c: Re-implemented Chunk#initialize in C
40         * ext/ext.c: Code cleanup
41         * lib/eet.rb, ext/ext.c: Re-implemented Object#to_eet in C
42         * ext/ext.c: Code cleanup
43
44 2005-05-25 Tilman Sauerbeck (tilman at code-monkey de)
45         * test/test_array_sub.rb: Added a test for the :sub format
46           specifier
47         * lib/eet.rb, test/test_chunk.rb: Chunk.deserialize doesn't
48           modify its argument any more, instead, the number of bytes
49           consumed is now returned, too.
50         * lib/eet.rb: Stream.deserialize fails if the given buffer is
51           empty
52         * lib/eet.rb: Chunk.deserialize fails if the given buffer is
53           empty
54
55 2005-05-19 Tilman Sauerbeck (tilman at code-monkey de)
56         * Rakefile: Code cleanup
57
58 2005-05-18 Tilman Sauerbeck (tilman at code-monkey de)
59         * lib/eet.rb: Grammar fix
60         * lib/eet.rb: Don't use Array#pack when the result is constant
61
62 2005-05-13 Tilman Sauerbeck (tilman at code-monkey de)
63         * ext/ext.c: Work around RDoc's limitations
64
65 2005-05-11 Tilman Sauerbeck (tilman at code-monkey de)
66         * ext/ext.c: Don't define BSWAP16, it's not used
67         * lib/eet.rb: Don't specify the parent class of Eet::Stream when
68           we re-open it
69
70 2005-05-10 Tilman Sauerbeck (tilman at code-monkey de)
71         * ext/ext.c: Store the result of rb_intern("include?") in a
72           global variable, since it's used very often
73
74 2005-04-30 Tilman Sauerbeck (tilman at code-monkey de)
75         * lib/eet.rb: Tweaked Stream#serialize for performance
76         * lib/eet.rb, ext/ext.c: Re-implemented Stream#serialize and
77           Chunk#serialize in C
78
79 2005-04-19 Tilman Sauerbeck (tilman at code-monkey de)
80         * Rakefile: Code cleanup
81
82 2005-04-12 Tilman Sauerbeck (tilman at code-monkey de)
83         * ext/ext.c: Code cleanup
84         * ext/ext.c: Don't pass VALUEs to rb_raise()
85         * ext/ext.c: Sanitized StringValue() usage
86
87 2005-04-11 Tilman Sauerbeck (tilman at code-monkey de)
88         * ext/ext.c: Use StringValue() instead of
89           Check_Type(blah, T_STRING)
90
91 2005-04-09 Tilman Sauerbeck (tilman at code-monkey de)
92         * Released version 0.1.2
93
94 2005-04-09 Tilman Sauerbeck (tilman at code-monkey de)
95         * Rakefile: Updated for rake 0.5.3
96         * lib/eet.rb: Bumped version number to 0.1.2
97         * NEWS: Updated for 0.1.2
98
99 2005-03-29 Tilman Sauerbeck (tilman at code-monkey de)
100         * Released version 0.1.1
101
102 2005-03-29 Tilman Sauerbeck (tilman at code-monkey de)
103         * README: Grammar fix
104         * Rakefile: Tweak lookup of PKG_VERSION
105         * NEWS, Rakefile: Added NEWS
106         * lib/eet.rb: Bumped version number to 0.1.1
107
108 2005-03-28 Tilman Sauerbeck (tilman at code-monkey de)
109         * Rakefile: Fixed casing of "Ruby-EET"
110         * Rakefile: explicitly require compositepublisher
111
112 2005-03-27 Tilman Sauerbeck (tilman at code-monkey de)
113         * README: Fixed casing of "Ruby-EET"
114         * ext/ext.c: Added support for compression parameters
115           to Eet::File#write_image and Eet::File#read_image
116
117 2005-03-27 Tilman Sauerbeck (tilman at code-monkey de)
118         * Released version 0.1.0
119
120 2005-03-27 Tilman Sauerbeck (tilman at code-monkey de)
121         * Rakefile: Added a publish task that uploads the current
122           tarball and the RDoc documentation to code-monkey.de
123         * README: Added a link to the online documentation
124         * Rakefile: Use Kernel#raise instead of Kernel#fail
125         * README: Improved project description
126         * Rakefile: Fixed the install task; eet.rb needs to be copied
127           to sitelibdir instead of sitearchdir
128         * README: Added a link to enlightenment.org to the description
129
130 2005-03-26 Tilman Sauerbeck (tilman at code-monkey de)
131         * README, Rakefile: Require Rake 0.5.0 or greater
132         * Rakefile: Added a PackageTask
133         * test/common.rb: Removed unused assertion
134         * lib/eet.rb: Bumped version number to 0.1.0
135
136 2005-03-25 Tilman Sauerbeck (tilman at code-monkey de)
137         * test/test_broken_classes.rb: Code cleanup
138
139 2005-03-23 Tilman Sauerbeck (tilman at code-monkey de)
140         * ext/ext.c, test/test_misc.rb: Eet::File methods check whether
141           EET entry keys contain binary zeroes
142
143 2005-03-16 Tilman Sauerbeck (tilman at code-monkey de)
144         * lib/eet.rb: Fixed Eet::Stream#initialize
145
146 2005-03-06 Tilman Sauerbeck (tilman at code-monkey de)
147         * Rakefile: fixed file permissions for eet.rb
148
149 2005-03-05 Tilman Sauerbeck (tilman at code-monkey de)
150         * Rakefile: use FileUtils to install eet.rb and eet_ext.so
151
152 2005-03-03 Tilman Sauerbeck (tilman at code-monkey de)
153         * ext/ext.c: EET_FILE_MODE_RW has been renamed to
154           EET_FILE_MODE_READ_WRITE
155
156 2005-02-15 Tilman Sauerbeck (tilman at code-monkey de)
157         * lib/eet.rb, test/hash.rb: Removed the :hash format hack
158         * test/basic.rb: Renamed to test_basic.rb
159         * test/broken_classes.rb: Renamed to test_broken_classes.rb
160         * test/chunk.rb: Renamed to test_chunk.rb
161         * test/hash.rb: Renamed to test_hash.rb
162         * test/list.rb: Renamed to test_list.rb
163         * test/misc.rb: Renamed to test_misc.rb
164         * test/stream.rb: Renamed to test_stream.rb
165         * test/sub.rb: Renamed to test_sub.rb
166         * README: Removed documentation for the :hash format hack
167         * lib/eet.rb: Added :sub format specifier to Array#to_eet_chunks
168         * lib/eet.rb, README: Removed edd_name entry from property hash
169
170 2005-02-14 Tilman Sauerbeck (tilman at code-monkey de)
171         * ext/ext.c: Enable highest compression for images
172         * lib/eet.rb: Added Eet::VERSION
173
174 2005-02-13 Tilman Sauerbeck (tilman at code-monkey de)
175         * lib/eet.rb: If a hash is encoded with the :hash type
176           specifier, make sure that the keys/values are strings
177         * README: Documentation update
178         * Rakefile: Split out eet-config calls, to catch missing libeet
179           early
180
181 2005-02-10 Tilman Sauerbeck (tilman at code-monkey de)
182         * lib/eet.rb, test/broken_classes.rb:
183           Implemented Object#to_eet_name and Object#to_eet_properties.
184           Adapted Object#to_eet's error checking and the broken classes
185           test.
186         * test/misc.rb: Use the new implementations of
187           #to_eet_name and #to_eet_properties
188         * test/misc.rb: Added a test for Object#to_eet_name and
189           Object#to_eet_properties
190         * Rakefile, test/hash.[rb,c], test/utils.c:
191           Reworked the hash test to not depend on hash.c/utils.c
192           anymore.
193         * lib/eet.rb: Added documentation for Object#to_eet_name and
194           Object#to_eet_properties
195
196 2005-02-09 Tilman Sauerbeck (tilman at code-monkey de)
197         * test/sub.rb, test/sub.c: Reworked the sub test to not
198           depend on sub.c anymore
199         * test/list.rb, test/list.c: Reworked the list test to not
200           depend on list.c anymore
201
202 2005-02-08 Tilman Sauerbeck (tilman at code-monkey de)
203         * lib/eet.rb: Eet::Chunk.new checks the tag for binary zeroes
204           again
205         * test/chunk.rb: Added a test for binary zeroes in tags
206         * lib/eet.rb: Added Eet::Chunk.deserialize
207         * test/chunk.rb: Added a test for Eet::Chunk.deserialize
208         * lib/eet.rb: Make sure Eet::Chunk.new is passed strings only
209         * lib/eet.rb: Added Eet::ChunkError
210         * test/chunk.rb: Added tests for the error handling in
211           Eet::Chunk.deserialize
212         * lib/eet.rb, test/stream.rb: Added Eet::Stream.deserialize
213         * test/basic.rb, test/basic.c: Rewrote basic test to not
214           depend on basic.c anymore
215
216 2005-02-07 Tilman Sauerbeck (tilman at code-monkey de)
217         * test/list.rb, test/sub.rb: Make sure to use an array as
218           the hash values in Object#to_eet_properties
219         * lib/eet.rb: Perform more aggressive type checking in
220           Object#to_eet. Added Eet::EetError, Eet::PropertyError and
221           Eet::NameError.
222         * test/chunk.rb, test/stream.rb: Added tests for the Eet::Chunk
223           and Eet::Stream classes
224         * ext/ext.c, test/misc.rb: Raise IOError if Eet::File#list is
225           called in write-only mode
226         * test/broken_classes.rb: Added tests for the errors that
227           Object#to_eet may raise
228         * test/basic.[c,rb]: Added a test for 64bit integers
229         * lib/eet.rb: Pack 32bit integers with the "V" specifier instead
230           of "i", to enforce little-endian format
231
232 2005-02-05 Tilman Sauerbeck (tilman at code-monkey de)
233         * ext/ext.c: Added Eet::File#read_image
234
235 2005-02-04 Tilman Sauerbeck (tilman at code-monkey de)
236         * test/misc.rb: Removed nested assertions
237         * ext/ext.c: raise IOError on zero writes
238         * test/misc.rb: added test_zero_write
239
240 2005-02-03 Tilman Sauerbeck (tilman at code-monkey de)
241         * test/misc.rb: Added some test for Eet::File#read and improved
242           other tests
243         * lib/eet.rb: Don't check for binary zeroes in tags
244
245 2005-02-01 Tilman Sauerbeck (tilman at code-monkey de)
246         * lib/eet.rb: Reworked Stream/Chunk interfaces
247         * lib/eet.rb: Validate input data in Chunk.new
248
249 2005-01-20 Tilman Sauerbeck (tilman at code-monkey de)
250         * Added some documentation