]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/src-isv/Changelog.mediawiki
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.databoard / src-isv / Changelog.mediawiki
1 ===0.6.5===\r
2 * DataParser does not parse 1.0E+14 ([https://www.simantics.org/redmine/issues/3798|#3798])\r
3 \r
4 ===0.6.2===\r
5 * Bindings for "generics" types can be constructed dynamically with BindingFactory2\r
6 ** Java collection bindings are in JavaBaseClassFactory \r
7 * Fixed binding cache bug. Bindings were acquired from cache and thus reinstantiated\r
8 * FileAccessor#reset(), flushes internal cache\r
9 * Removed org.simantics.databoard.datasource and org.simantics.databoard.history packages\r
10 * Variant#readFrom\r
11 * PriorityQueueBinding\r
12 * StreamAccessor, has no header, no array size, component type is fixed size, can be opened for read in another file handle\r
13 * More example code\r
14 \r
15 ===0.6.1===\r
16 * Accessor:\r
17 ** AccessorParam has Configurable Serializer-, Binding- and Adapter-Factories \r
18 ** Accessor always type adapts\r
19 ** ArrayAccessor#get(index, binding, value)\r
20 ** MapAccessorIterator\r
21 ** EventEmitter removed\r
22 ** Listener events are handled in user's executor\r
23 ** FileArrayAccessor#..noFlush methods\r
24 ** RecordAccessor#getSetField( FIELD_NAME, ... )\r
25 ** bug fixed in RandomAccessBinary affects FileAccessor\r
26 ** MapAccessor#count, MapAccessor#getEntries\r
27 * Binding:\r
28 ** MapBinding#count, MapBinding#getEntries        \r
29 \r
30 ===0.6.0=== \r
31 * Datatype:\r
32 ** Datatype#getComponentType( ChildReference )    \r
33 ** Rename: DataType -> Datatype, DataTypes -> Datatypes\r
34 ** Moved Default Datatypes under Datatypes class, e.g. Datatypes.STRING\r
35 * Binding: \r
36 ** Reading to existing objects, e.g. rectBinding.readFrom(b, rect, rect2);\r
37 ** New default binding scheme, e.g. Bindings#getDefaultBinding. Bindings.getDefaultBinding( Datatypes.BYTE_ARRAY ) -> byte[]\r
38 ** New reflection binding factory\r
39 ** New generic binding scheme\r
40 ** Moved Default bindings under Bindings class, e.g. StringBindingDefault.Instance --> Bindings.String\r
41 ** Generics support for reflection binding, eg. Binding binding = Bindings.getBinding(Map.class, String.class, Integer.class);\r
42 ** Removed unbound & single binding scheme\r
43 * Serialization: \r
44 ** Deserializing to exiting object, e.g. Serializer#deserialize(byte[], Object readTo);\r
45 ** New serializer factory\r
46 ** DataInput & DataOutput instead of BinaryReadable & BinaryWritable\r
47 ** ByteOrder removed from BinaryReadable & BinaryWritable. \r
48 ** ByteOrder is now Network Order (Big Endian).\r
49 ** Strings Modified-UTF-8 (used to be UTF-8)\r
50 ** Exceptions unified (now IOException, was SerializationException, IOException, BindingException)    \r
51 ** Removed FileReadable, FileWriteable - they were redundant with BinaryFile.\r
52 ** Deserializer protected from malformed data (no more out of memory)\r
53 * Accessor:\r
54 ** Reading to exsiting object, e.g. Accessor#getValue(Binding binding, Object readTo);\r
55 ** MapAccessor: Count(range), getEntries(range)\r
56 ** ArrayAccessor: setSize\r
57 ** AccessorReference -> ChildReference; FieldIndexReference ->IndexReference, FieldNameReference ->NameReference, TagReference -> ComponentReference, TagNameReference -> NameReference, TagIndexReference -> IndexReference, VariantValueReference -> ComponentReference\r
58 * Unsigned primitives: int, byte, long, short + mutable versions\r
59 * Fixed a bunch of small bugs, fixed documentation, fixed comments\r
60 \r
61 0.5.2 - 20.7.2010\r
62 * BinaryAccessor fixed bugs\r
63 * Simplified events, redundancy is removed\r
64 * Accessor Reference String Format\r
65 * Variant String Format\r
66 * Files Facade Class\r
67     - Do not use Wire / History, They are not ready in this release\r
68 \r
69 ===0.5.1===\r
70 * Fixed BinaryObject#close() now actually closes the file handle.\r
71 * Fixed Methods#createProxy several bugs fixed\r
72 * Fixed Range, the pattern\r
73 * Fixed BinarySerializer, size error in primitive array\r
74 * Fixed ReflectionEnumBinding and ReflectionUnionClassBinding #getTag, now throws BindingException on invalid input  \r
75 * Added Label Reference to accessor references\r
76 * Updated Accessor / InterestSet comments\r
77 * Updated documents\r
78 * Updated standard type library\r
79 \r
80 ===0.5.0===\r
81 Release Date: 1.4.2010 \r
82 \r
83 * DataTypes: \r
84 ** VariantType\r
85 ** MapType\r
86 ** public fields are privatized\r
87 * Binding: \r
88 ** public fields are privatized\r
89 ** iterators removed\r
90 ** unchecked methods that throw runtime exceptions\r
91 ** separation of abstract classes and implementing classes\r
92 ** modifications to existing instances (in addition to create new)\r
93 ** setters & getters & partial setters\r
94 ** hashValue, equals, compareTo       \r
95 ** createDefault, createRandom\r
96 ** clone value\r
97 * Generic Binding\r
98 ** Completely mutable objects\r
99 ** MutableInteger, MutableBoolean, ..., MutableString, VariantContainer, Variant\r
100 * Reflection Binding\r
101 ** Array, ArrayList, LinkedList\r
102 ** Map, HashMap, TreeMap \r
103 ** Set, HashSet, TreeSet\r
104 ** Enums\r
105 ** Object as variant\r
106 ** void\r
107 * Serializer\r
108 ** Value as InputStream\r
109 ** Convenient methods that figure out if identifiers are needed\r
110 ** Binary Serializer is now the default serializer\r
111 * Ascii\r
112 ** File extensions defined (.vle, .tpe)\r
113 ** Uses DataTypeRepository, DataValueRepository\r
114 * Binary Data Handling\r
115 ** File - .dat , always Variant\r
116 ** RandomAccessBinary -interface, variable sized blob with insert & remove\r
117 ** BinaryFile - File implementation with high performance cache\r
118 ** BinaryMemory - byte[], ByteBuffer implementation\r
119 ** Blob - A sub-container of a RandomAccessBinary\r
120 ** FileList - flushes after write\r
121 * Adapters\r
122 ** Type Adapter (e.g. adapt subtype to a supertype)\r
123 ** Clone\r
124 * Accessors\r
125 ** Accessor - unified interface to access, monitor and modify data models \r
126 ** Listener system               ( monitor objects ) \r
127 ** InterestSet system            ( what to monitor? )\r
128 ** Tree reference system         ( where has the change occured? )\r
129 ** Event system                  ( what is the change? )\r
130 ** Binary File implementation\r
131 ** Memory implementation\r
132 * Facades\r
133 ** Accessors - create and open accessors \r
134 ** Units - annexed from org.simantics.units (Hannu's)\r
135 ** Separated DataTypes to DataTypes, Bindings and Methods\r
136 * Testing\r
137 ** Thorough Binding test \r
138 ** Very thorough Binding test based on random types & values\r
139 ** Very thorough Accessor test case based on randon types & values\r
140 * Specifications\r
141 ** Binary File format changed, array & map length is uint32\r
142 ** Ascii file format changed\r
143 * Bug fixes\r
144 ** MethodInterface void return type fixed\r
145 ** Dosens of bugs in serializer\r
146 ** Dosens of bugs in Bindings \r
147 ** Methods - void as return argument fixed\r
148 ** Million fixes to everything else\r
149 * C++ Library\r
150 ** DataValues and DataTypes\r
151 ** Ascii parser\r
152 * Other\r
153 ** Library is now "org.simantics.DataBoard"\r
154 ** Website changed\r
155 ** Contracts       \r
156 ** Standard Type Library\r
157 ** Standard Unit Library\r
158 \r
159 ===0.4.0===\r
160 Release Date: 5.11.2009\r
161 \r
162 * Added: OptionalBinding hasValue(), getValue(), createNoValue() and createWithValue()\r
163 * Exception Rework: RuntimeExceptions converted to normal Exceptions\r
164 * Added: String to DataType parser \r
165 * Added: Regular Expression Pattern to StringType \r
166 * Added: Binding.assertInstanceIsValid()\r
167 * Fixed: Construction of OptionalBinding, now refers to correct OptionalType instance \r
168 * Added: Binding.getDataType() returns down casted type\r
169 * Modified: Binding always throws BindingException insteadof RuntimeException(e.g. ClassCastException)\r
170 * Fixed: ArrayBindings threw IllegalArgumentException with corred argument\r
171 * Added: ArrayBindings .create( Boxed[] array )\r
172 * Modified: MethodType requestType is always RecordType, and errorType is always UnionType\r
173 * Added: new concepts InterfaceType, InterfaceTypeDefinition\r
174 * Modified: Min&Max,MinLength&MaxLength -> Range,Length\r
175 * Added: Instance validator Binding.assertInstaceIsValid( instance )\r
176 * Fixed: Annotations now reach elements of array fields.\r
177 * Added: Default serializer format, see Binding.serializer()  \r
178 * Renamed: \r
179          Adapters -> AdapterRepository\r
180          MethodInterface -> InterfaceBinding\r
181          MethodDescription -> MethodTypeDefinition\r
182          MethodBinding -> MethodTypeBinding\r
183          MethodInterfaceClient -> Client\r
184          MethodInterfaceServer -> Server\r
185          MethodInterfaceConnection -> Connection\r
186          MethodInterfaceExample -> RemoteInterfaceExample / InterfaceBindingExample\r
187          IntType -> IntegerType\r
188          IntBinding -> IntegerBinding\r
189 \r
190 ===0.3.5===\r
191 Release Date: 1.9.2009\r
192 \r
193 * *fixed hashing bug in reflection binding cache\r
194 * *fixed DataType.toString\r
195 * *fixed RecordArray.skip() \r
196 \r
197 ===0.3.4===\r
198 Release Date: 2.9.2009\r
199 \r
200 * +Unit adapter\r
201 * +Primitive type adapter\r
202 * +MethodInterface\r
203 * +NumberBinding constructors\r
204 * -PhysicalBinding\r
205 * *Fixed bugs related to reflection bindings&datatypes with annotations\r
206 * + (Optional) ASM dependency \r
207 \r
208 ===0.3.3===\r
209 Release Date: 26.8.2009\r
210 \r
211 * Improved Adapter performance\r
212 * Remove name String\r
213 * Deep hash-equals to RecordType and UnionType (recursion was problematic)\r
214 * Added MethodType, MethodDescription, MethodBinding\r
215 * ReflectionBinding, (1) supports all-arguments-constructor, (2) Bean-style getter/setter classes, (3) get/set primitives in a record type\r
216 * Fixed BooleanArraySerializer, Ticket [2] \r
217 \r
218 ===0.3.2===\r
219 Release Date: 4.8.2009\r
220 \r
221 * Fixed ArrayBinding. \r
222 \r
223 ===0.3.1===\r
224 Release Date: 1.7.2009\r
225 \r
226 * Enumerations to ReflectionBinding\r
227 * PhysicalType -> field in NumberType\r
228 * DataTypes Facade-class \r
229 \r
230 ===0.3===\r
231 Release Date: 17.6.2009\r
232 \r
233 * GenericBinding\r
234 * DummyBinding\r
235 * ReflectionBinding\r
236 * FileList\r
237 * Adapter\r
238 * Buffered Reader & Writer, File Reader & Writer\r
239 * RecordType name (NOTE TO BE REMOVED)\r
240 * Serialization size\r
241 * Serialization skip\r
242 * byte[] optimization\r
243 * DataType visitor\r
244 * Byte Type\r
245 * Specific exceptions instead of generic\r
246 * Byte data validator\r
247 * Test Cases\r
248 * Multi-Dimension array restrictions \r
249 \r
250 ===0.2===\r
251 Release Date: 26.5.2009\r
252 \r
253 * Documentation\r
254 * Examples\r
255 * Better Performance\r
256 * Binding+Serialization Recursion\r
257 * StringFormat\r
258 * Mime Type\r
259 * Removed Redundant code \r
260 \r
261 ===0.1===\r
262 Release Date: 25.5.2009\r
263 \r
264 * Initial Release\r