sdl4r 0.9.4 → 0.9.5
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +28 -0
- data/README +9 -0
- data/Rakefile +3 -2
- data/TODO +78 -0
- data/doc/classes/SDL4R.html +207 -53
- data/doc/classes/SDL4R/Parser.html +111 -49
- data/doc/classes/SDL4R/SdlBinary.html +125 -65
- data/doc/classes/SDL4R/SdlParseError.html +52 -30
- data/doc/classes/SDL4R/SdlTimeSpan.html +497 -279
- data/doc/classes/SDL4R/Tag.html +866 -514
- data/doc/created.rid +1 -1
- data/doc/files/CHANGELOG.html +52 -25
- data/doc/files/LICENSE.html +43 -52
- data/doc/files/README.html +52 -43
- data/doc/files/lib/sdl4r/parser/reader_rb.html +16 -27
- data/doc/files/lib/sdl4r/parser/time_span_with_zone_rb.html +17 -21
- data/doc/files/lib/sdl4r/parser/token_rb.html +17 -21
- data/doc/files/lib/sdl4r/parser/tokenizer_rb.html +17 -21
- data/doc/files/lib/sdl4r/parser_rb.html +21 -22
- data/doc/files/lib/sdl4r/sdl4r_rb.html +25 -25
- data/doc/files/lib/sdl4r/sdl_binary_rb.html +17 -21
- data/doc/files/lib/sdl4r/sdl_parse_error_rb.html +17 -21
- data/doc/files/lib/sdl4r/sdl_time_span_rb.html +17 -21
- data/doc/files/lib/sdl4r/tag_rb.html +25 -24
- data/doc/files/lib/sdl4r_rb.html +17 -21
- data/doc/fr_class_index.html +15 -12
- data/doc/fr_file_index.html +23 -12
- data/doc/fr_method_index.html +176 -91
- data/doc/index.html +7 -10
- data/doc/rdoc-style.css +210 -119
- data/lib/sdl4r.rb +3 -0
- data/lib/sdl4r/parser.rb +3 -5
- data/lib/sdl4r/parser/reader.rb +3 -3
- data/lib/sdl4r/parser/time_span_with_zone.rb +3 -0
- data/lib/sdl4r/parser/token.rb +3 -0
- data/lib/sdl4r/parser/tokenizer.rb +3 -0
- data/lib/sdl4r/sdl4r.rb +20 -8
- data/lib/sdl4r/sdl_binary.rb +3 -0
- data/lib/sdl4r/sdl_parse_error.rb +3 -0
- data/lib/sdl4r/sdl_time_span.rb +3 -0
- data/lib/sdl4r/tag.rb +18 -4
- data/test/sdl4r/parser_test.rb +7 -2
- data/test/sdl4r/sdl4r_test.rb +6 -2
- data/test/sdl4r/sdl_test.rb +3 -0
- data/test/sdl4r/tag_test.rb +3 -0
- metadata +72 -74
- data/TODO.txt +0 -177
data/TODO.txt
DELETED
@@ -1,177 +0,0 @@
|
|
1
|
-
[x] Tag.each_attribute should allow to iterate on all namespaces if 'namespace' is nil
|
2
|
-
[x] Tag.get_attributes(namespace)
|
3
|
-
[x] Implementation of attributes=
|
4
|
-
[x] Implementation of Sdl.format()
|
5
|
-
[x] Handle milliseconds in Sdl.format()
|
6
|
-
[x] Handle timezones in Sdl.format()
|
7
|
-
[x] Handle the Time class in Sdl.format()
|
8
|
-
[x] Handle SdlTimeSpan in Sdl.format() ==> via to_s()
|
9
|
-
[x] Review SdlTimeSpan
|
10
|
-
[x] Instead of calling Tag.each_attribute(), we could have another way of calling attributes:
|
11
|
-
with or without given block. Same goes for each_value(), etc.
|
12
|
-
[x] Is Base64 really compatible with the format defined in the Java version ?
|
13
|
-
==> Seems so after having implemented more of the standard tests.
|
14
|
-
[x] Support both DateTime and Time in parsing (see Parser#combine())
|
15
|
-
==> SDL4R::new_date_time can be overriden
|
16
|
-
[x] Use Date instead of DateTime if only day was specified in SDL (parser.rb)
|
17
|
-
[x] Add a remove_all_children() to Tag
|
18
|
-
[x] Rethink the interfaces to access sub-tags, values, attributes, etc
|
19
|
-
(it is currently difficult to retrieve all the values, or the number of
|
20
|
-
sub-tags, etc)
|
21
|
-
==> to simplify access to values would be ok but attributes or children would be more difficult.
|
22
|
-
[x] See whether there is such a need to shield users from the actual arrays of
|
23
|
-
values (we return a copy for the time being).
|
24
|
-
==> We don't return copies anymore.
|
25
|
-
[ ] Add more unit tests
|
26
|
-
[x] Attribute tests
|
27
|
-
[x] Date tests
|
28
|
-
[x] Date + time test
|
29
|
-
[x] Time zone tests
|
30
|
-
[x] Number literal tests
|
31
|
-
[x] Strings literals (especially with line continuations)
|
32
|
-
[x] Sub tags tests
|
33
|
-
[x] "null" value test
|
34
|
-
[x] Comment tests
|
35
|
-
[ ] Bad syntax tests
|
36
|
-
[ ] Test write (unit tests)
|
37
|
-
[ ] Dates
|
38
|
-
[ ] Numbers
|
39
|
-
[A] Use YARD in order to generate documentation ?
|
40
|
-
==> alternatively, I tried to generate some RDoc templates but none worked in Rake...
|
41
|
-
[x] In the documentation, present a table giving the returned Ruby type for each SDL type.
|
42
|
-
[x] Change the interface of SdlTimeSpan to look like the interfaces of Date, DateTime or Time
|
43
|
-
==> Add alias methods.
|
44
|
-
[x] Have SdlTimeSpan implement Comparable
|
45
|
-
[ ] BUG: the line number is too high by 1 (the column is correct).
|
46
|
-
[x] PB: binary fields shouldn't be kept as Strings because they would not be saved as binaries but
|
47
|
-
as strings otherwise.
|
48
|
-
==> We use SdlBinary now.
|
49
|
-
[x] Change the module name to SDL4R? Something else?
|
50
|
-
==> Changed to SDL4R.
|
51
|
-
[/] Fix the differences between test_basic_types.sdl and what is generated from the parsed structure
|
52
|
-
[x] chars
|
53
|
-
[x] longs
|
54
|
-
[x] doubles
|
55
|
-
[x] decimals
|
56
|
-
[x] booleans
|
57
|
-
[x] null
|
58
|
-
[x] dates
|
59
|
-
[x] times
|
60
|
-
[x] negative times
|
61
|
-
[x] datetimes
|
62
|
-
[/] zone codes
|
63
|
-
==> Time only works in UTC, which means that the original zone code is lost.
|
64
|
-
==> DateTime doesn't give the zone code but only the offset.
|
65
|
-
[ ] Use TzTime? Use a custom object that knows whether a time zone was specified?
|
66
|
-
==> http://tztime.rubyforge.org/
|
67
|
-
==> along with TzInfo: http://tzinfo.rubyforge.org/
|
68
|
-
[x] BUG: Base64 wrapped lines are 64 chars long and not 72 (traditionnal length)
|
69
|
-
==> Because of a limitation in the regular expressions ==> find another algorithm
|
70
|
-
[x] See whether we can do better for numbers of arbitrary precision (decimals).
|
71
|
-
==> Ruby BigDecimal
|
72
|
-
==> Ruby Decimal http://ruby-decimal.rubyforge.org/
|
73
|
-
==> Now: http://flt.rubyforge.org/ : use this if the lib is available
|
74
|
-
==> We use flt if available.
|
75
|
-
[ ] See how Ruby floats relate to Java floats and doubles.
|
76
|
-
[ ] Add tests for the SDL class
|
77
|
-
[ ] Allow unicode characters in identifiers.
|
78
|
-
[ ] FUTURE: It might be useful to allow people to replace the standard types by their own. This
|
79
|
-
could be useful for dates or numbers, for instance.
|
80
|
-
[N] To install a gem in the Netbeans gems repository, it needs to run as an administrator.
|
81
|
-
Otherwise, it fails silently.
|
82
|
-
[x] Make it so that the tests pass (with errors or not), when Ftl (DecNum) is not available.
|
83
|
-
[x] Fix the ParserTest test.
|
84
|
-
[x] SDL 1.1: tag1; tag2 "a value"; tag3 name="foo"
|
85
|
-
[x] Create a Tokenizer class
|
86
|
-
[A] Test attributes with/without namespaces
|
87
|
-
==> Guess this is done in test_structures...
|
88
|
-
[x] Fix Test.test_strings: support for Unicode
|
89
|
-
==> Seems to work.
|
90
|
-
[ ] FUTURE: Consider being able to read text files that are not UTF-8(?)
|
91
|
-
[ ] BUG: the report on the line no in errors is off by 1 (at least in some cases)
|
92
|
-
[x] Try to move Reader, Tokenizer, etc to the private part of the SDL module
|
93
|
-
==> Doesn't seem to make a difference.
|
94
|
-
==> Moved to the Parser namespace.
|
95
|
-
[x] Factorize "each_child..." methods in Tag and refactor "children(recursive, name)" consequently
|
96
|
-
+ invert "name" and "recursive" in "children()"
|
97
|
-
[x] Return copies or original arrays in Tag?
|
98
|
-
==> we return the implementation Arrays or Hashes (or whatever) for efficiency.
|
99
|
-
However, we ask the users not to assume anything as we might protect the returned objects in
|
100
|
-
the future.
|
101
|
-
[A] BUG: test_tag_write_parse() does not work from the command line (ruby v1.8.7).
|
102
|
-
==> This is normal provided that flt was not installed.
|
103
|
-
[A] Tag.to_string(): break up long lines using the backslash
|
104
|
-
==> unless, some day, someone asks for it...
|
105
|
-
[ ] Tag.hash: the implementation is not very efficient.
|
106
|
-
==> Difficult to make better and still simple
|
107
|
-
==> Maybe possible when it's frozen.
|
108
|
-
[x] Implement reading from a URL(?) Other sources idiomatic in Ruby?
|
109
|
-
==> Strings, URIs, Pathnames, IOs
|
110
|
-
[x] See the XML and YAML APIs to find enhancements.
|
111
|
-
[x] Check the XML functionalities of Tag.
|
112
|
-
[x] Add tests for Tag
|
113
|
-
[x] Maybe some methods in the SDL module are not so useful to the general user: make them protected?
|
114
|
-
[ ] FUTURE: xpath, ypath ==> sdlpath(?)
|
115
|
-
[ ] FUTURE: evenemential parsing(?)
|
116
|
-
[x] Move Tokenizer, Reader, etc into the Parser module/class or prefix by Sdl
|
117
|
-
==> moved to sdl4r/parser
|
118
|
-
[ ] FUTURE: add a way to insert a tag after or before another(?)
|
119
|
-
[ ] FUTURE: allow some way of generating YAML(?)
|
120
|
-
[ ] FUTURE: allow to turn a YAML structure into a SDL one(?)
|
121
|
-
[x] Make a Gem
|
122
|
-
[x] Implement the convenience method of SDL (value(), list(), map())
|
123
|
-
[x] Move the test files to a sdl4r subdir
|
124
|
-
[x] 1.2: Ensure that there is a SDL.read() that returns a Tag
|
125
|
-
[x] 1.2: hasChild(), hasChildren() methods
|
126
|
-
[x] 1.2: getChildMap(), getChildStringMap() methods
|
127
|
-
[x] 1.3: periods in identifiers
|
128
|
-
[A] Create a History.txt file ==> See CHANGELOG
|
129
|
-
[x] Setup the Rubyforge website
|
130
|
-
[A] See how both Subversion repositories can be handled (is it necessary?)
|
131
|
-
==> No need for the Rubyforge project anymore, it seems (we use Rubygem and gemcutter directly)
|
132
|
-
[x] Add info to README
|
133
|
-
[x] Add LICENSE & CHANGELOG files
|
134
|
-
[x] State in the README that without Flt, all the tests can't run.
|
135
|
-
==> it's stated explicitely in the test
|
136
|
-
[w] Make it so that each test appears separately in test.rb (if possible)
|
137
|
-
[A] Have the use of Flt be optional.
|
138
|
-
==> We use BigDecimal instead.
|
139
|
-
[x] Be sure that there is a way to change the precision of Flt outside of SDL4
|
140
|
-
==> just change the precision in your thread before parsing
|
141
|
-
[x] Turn Rationals to Floats in coerce_or_fail()?
|
142
|
-
[ ] BUG: "rake package" tries to archive the contents twice: once with the command that I configure
|
143
|
-
in Rakefile, once with a zip command that can't work on my machine (zip is not installed). Why?
|
144
|
-
At least, the first archive is created and seems correct.
|
145
|
-
[x] Add a "Getting Started" chapter to the README
|
146
|
-
[ ] FUTURE: Would we need a "write" method in SDL4R?
|
147
|
-
[x] Implement coerce_or_fail: it is right now allowed to add any garbage to the SDL tags
|
148
|
-
[x] Fix the doc of Tag.add_value
|
149
|
-
[ ] Add tests and release a RC or beta version
|
150
|
-
[x] Make the parser components disappear from the RDoc
|
151
|
-
[x] Add tests for Tag attributes
|
152
|
-
[x] Add tests for Tag to_child_hash, etc
|
153
|
-
[x] Add tests for Tag eql?, etc
|
154
|
-
[x] Should we interpret arrays in arrays in Tag.<< as a structure specification?
|
155
|
-
Example: tag << [[1, 2], [3, 4]]
|
156
|
-
could mean adding 2 anonymous "content" tags to "tag" with the corresponding values
|
157
|
-
==> Works fine for matrices
|
158
|
-
[x] Make the methods of Tag that take a block have a better yield doc/completion
|
159
|
-
==> I added :yields: RDoc directives, which doesn't look like it's helping but I guess that's
|
160
|
-
all I can do for now.
|
161
|
-
[x] See if we can not support the right order for the namespaces
|
162
|
-
attribute("a1") # => just the name
|
163
|
-
attribute("ns1", "a1") # => namespace + name (instead of attribute("a1", "ns1") now)
|
164
|
-
[N] Never call a class "Test" => it can easily conflict with the "Test" module of Test::Unit and
|
165
|
-
then, it becomes quite difficult to understand why.
|
166
|
-
[x] Add tests for to_xml_string
|
167
|
-
[x] Be stricter and more explicit with Tag and attributes name/namespace
|
168
|
-
[x] Fix set_attributes: it was correct before.
|
169
|
-
[ ] Input relevant URLs on http://rubygems.org
|
170
|
-
[x] What prevents from doing the following?
|
171
|
-
tag.values << IO.new("toto.txt")
|
172
|
-
==> It doesn't break the behavior as long as the value type is OK. Even if it is not allowed,
|
173
|
-
it still is not too bad.
|
174
|
-
[x] Somehow, I didn't choose BigDecimal when I started to use Flt::DecNum. Can't remember why but
|
175
|
-
seems overly complicated.
|
176
|
-
==> Remove Flt.
|
177
|
-
[x] Rename sdl.rb to sdl4r.rb
|