forked from neo4jrb/activegraph
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG
368 lines (318 loc) · 19.1 KB
/
CHANGELOG
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
== 2.2.3 / 2012-12-28
* Support for HA cluster with neo4j 1.9.X, #228, #99, #223
* Make sure the Identity map is cleared after an exception, #214
* Relationship other_node should return wrapped node, #226
* Automatically convert DateTimes to UTC, (neo4j-wrapper #7)
* get_or_create should return a wrapped node (neo4j-wrapper #8)
* Make it work with Neo4j 1.7.1 (neo4j-core, #19)
== 2.2.2 - skipped
== 2.2.1 / 2012-12-18
* Fix for JRuby 1.7.1 and Equal #225
* Fix for create nodes and relationship using Cypher (neo4j-core #17)
== 2.2.0 / 2012-10-02
* Using neo4j-cypher gem (1.0.0)
* Fix of neo4j-core configuration issue using boolean values #218
* Fixed RSpec issue on JRuby 1.7.x #217
* Aliased has_many to has_n, #183
== 2.2.0.rc1 / 2012-09-21
* Use neo4j-core and neo4j-wrapper version 2.2.0.rc1
* Use the neo4j-cypher gem
* Better support for Orm Adapter, #212
* Use Cypher query when finder method does not have a lucene index, #210
== 2.0.1 / 2012-06-06
* Use neo4j-core and neo4j-wrapper version 2.0.1
== 2.0.0 / 2012-05-07
(same as rc2)
== 2.0.0.rc2 / 2012-05-04
* Enable Identity Map by default
* Added versioning for Neo4j::Core
== 2.0.0.rc1 / 2012-05-03
* Fix of rake task to upgrade to 2.0
* Various Cypher DSL improvements, core(#3,#4,#5), #196
* Added Neo4j::VERSION
== 2.0.0.alpha.9 / 2012-04-27
* Fix for rails scaffold generator
== 2.0.0.alpha.8 / 2012-04-27
* Fix for "relationship to :all assigned twice for single instance" #178
* Fix for callback fire more then once (=> performance increase) #172
* Support for lucene search on array properties, #118
* Support for creating unique entities (get_or_create) #143
* Support for specifying has_n/has_one relationship with Strings instead of Class #160
* Support for serializer of hash and arrays on properties #185
* Fix for Neo4j::Rails::Relationship default property, #195
* Added support for pagination, see the neo4j-will_paginate gem
* Fixed Rails generators
* Added Cypher DSL support for is_a?
* Fix for "write_attribute persistes, contrary to AR convention" closes #182
== 2.0.0.alpha.7 / 2012-04-19
* fix for Neo4j::Config bug - did not work from rails to set the db location, closes #191
* has_n and has_one method generate class method returning the name of the relationship as a Symbol, closes #170
* Raise exception if trying to index boolean property, closes #180
* Made start_node= and end_node= protected closes 186
* Support for things like @dungeon.monsters.dangerous { |m| m[:weapon?] == 'sword' } closes #181
== 2.0.0.alpha.6 / 2012-04-15
* Complete rewrite and smaller change of API + lots of refactoring and better RSpecs
* Moved code to the neo4j-core and neo4j-wrapper gems
* Changed API - index properties using the Neo4j::Rails::Model (property :name, :index => :exact)
* Changed API - rel_type always returns a Symbol
* Changed API - #rels and #rel first parameter is always :outgoing, :incoming or :both
* Cypher DSL support, see neo4j-core
* Made the Lucene indexing more flexible
* Renamed size methods to count since it does simply count all the relationships (e.g. Person.all.count)
* Modularization - e.g. make it possible to create your own wrapper
* Added builder method for has_one relationships (just like ActiveRecord build_best_friend)
== 2.0.0.alpha.5 / 2012-03-27
* Fix for HA/cluster bug [#173]
* Upgrade to neo4j-community jars 1.7.0.alpha.1
* Fix for rails 3.2 [#131]
* Fix for BatchInserter bug, [#139]
* Added rake task for upgrading [#116]
* Added scripts for upgrading database [#116]
== 2.0.0.alpha.4 / 2012-01-17
* Fix node and rel enumerable for JRuby 1.9, Dmytrii Nagirniak
* Remove the will_paginate and move it to a separate gem Dmytrii Nagirniak, [#129][#132]
* Use type converter to determine how to handle multi-param attributes, Dmyitrii Nagirniak [#97]
* Set default storage_path in Rails to db [#96]
* Fix numeric Converter with nils and Float converter, Dmytrii Nagirniak
* Fix Neo4j::Rails::Model.find incorrect behavior with negative numbers, Dmytrii Nagirniak [#101]
* Allow to use symbols in batch inserter [#104]
* Split neo4j-jars gem into three jars, community,advanced&enterprise
== 2.0.0.alpha.1 / 2012-01-11
* Split JARS into a separate gem (neo4j-jars) [#115]
* Changed prefix of relationships so that it allows having incoming relationships from different classes with different relationship names. Migration is needed to update an already existing database - see issue #116. [#117]
* Fix for undefined method 'add_unpersited_outgoing_rel' [#111]
* Fix for Rails models named Property [#108] (Vivek Prahlad)
== 1.3.1 / 2011-12-14
* Make all relationships visible in Rails callback (rspecs #87, Dmytrii Nagirniak) [#211]
* Enable travis to build JRuby 1.9 (pull #87, Dmytrii Nagirniak) [#214]
* Support for composite lucene queries with OR and NOT (pull #89, Deepak N)
* Enforce the correct converter on a property type when the type is given (pull #86, Dmytrii Nagirniak)
* Development: make it easier to run RSpecs and guard (pull #85, Dmytrii Nagirniak)
* Added ability to disable observer (pull #84, Dmytrii Nagirniak)
* Fixing multiple assignment of has_one assocaition (pull #83 Deepak N)
* Accept association_id for has_one assocations (pull #82, Deepak N)
* Upgrade to 1.6.M01 Neo4j java jars [#209]
* Defer warning message 'Unknown outgoing relationship' (pull #81, Vivek Prahlad)
* Added string converter, e.g. property :name, :type => String (pull #80, Dmytrii Nagirniak)
* Added symbol converter e.g. property :status, :type => Symbol (pull #79, Dmytrii Nagirniak) [#205]
== 1.3.0 / 2011-12-06
* Added neo4j-upgrade script to rename lucene index files and upgrade to 1.5 [#197]
* Expose Neo4j::NodeMixin#index_types returning available indices (useful for Cypher queries) [#194]
* The to_other method is now available also in the Neo4j::Rails API [#193]
* Expose rel_type method for Neo4j::Rails::Relationship [#196]
* Support for breadth and depth first traversals [#198]
* Support for cypher query [#197]
* Fix for rule node concurrency issue (pull #78, Vivek Prahlad)
* Bugfix for the uniqueness validation for properties with quotes (pull #76, Vivek Prahlad)
* More performance tweaks (pull #75, #77, Vivek Prahlad)
* Fixing add_index for properties other than type string (pull #74, Deepak N)
* Significant performance boost for creating large numbers of models in a transaction (pull #73, Vivek Prahlad)
* Upgrade to neo4j 1.5 jars (pull #72, Vivek Prahlad)
* Fix for assigning nil values to incoming has_one relation (pull #70, Deepak N)
* Support for revert and fixes for Neo4j::Rails::Versioning (pull #71, Vivek Prahlad)
== 1.2.6 / 2011-11-02
* Generators can now generate relationships as well [#195]
* Better will_paginate support for Neo4j::Rails::Model [#194]
* Fixing updated_at to be set only if model has changed (pull #68, Deepak N)
* Bringing back changes removed during identiy map to fix bug [#190] (Deepak N)
* Fixing updated_at to be set only if model has changed, using callbacks instead of overriding method for stamping time (Deepak N)
* Added versioning support (pull #67) (Vivek Prahlad)
== 1.2.5 / 2011-10-21
* Faster traversals by avoiding loading Ruby wrappers (new method 'raw' on traversals) [#189]
* Support for IdentityMap [#188]
* Improved performance in event handler (Vivek Prahlad)
* Fixing issue with validates_presence_of validation (Vivek Prahlad)
* Implemented compositions support on Neo4j::Rails::Relationship (Kalyan Akella)
* Added after_initialize callback (Deepak N)
* Fixed performance issues on node deleted (Vivek Prahlad)
* Fixed a performance issue in the index_registry (Vivek Prahlad)
* Fixed uniqueness validation for :case_sensitive => false (Vivek Prahlad)
* Fixed update_attributes deleting relations when model is invalid (Deepak N)
* Fixed timestamp rails generator (Marcio Toshio)
== 1.2.4 / 2011-10-07
* Support for traversing with Neo4j::Node#eval_paths and setting uniqueness on traversals [#187]
* Removed unnecessary node creation on database start up (class nodes attached to reference node) (Vivek Prahlad)
* Safer multitenancy - automatically reset the reference node in thread local context after each request using rack middleware
* Bugfixes for multitenancy (Deepak N and Vivek Prahlad)
== 1.2.3 / 2011-10-01
* Multitenancy support by namespaced-indices & changeable reference node (Vivek Prahlad, pull 41)
* Added a Neo4j::Rails::Model#columns which returns all defined properties [#186]
* Fixed validation associated entities, parent model should be invalid if its nested model(s) is invalid (Vivek Prahlad)
* Fixed property validation to read value before conversion as per active model conventions (Deepak N)
* Fixed property_before_type_cast for loaded models (Deepak N)
* Better support for nested models via ActionView field_for [#185]
* BUG: fix for null pointer issue after delete_all on Neo4j::Rails::Model#has_n relationships (Vivek Prahlad)
* BUG: init_on_create was not called when creating a new relationship via the << operator [#183]
== 1.2.2 / 2011-09-15
* Added compositions support for rails mode (Deepak N)
* Added support for nested transactions at the Rails model level (Vivek Prahlad)
* Fixing issue where save for invalid entities puts them into an inconsistent state (Vivek Prahlad)
* Fix for issue with save when validation fails (Vivek Prahlad)
* Fix for accepts_nested_attributes_for when the associated entities are created before a new node (Vivek Prahlad)
* Fix to allow has_one relationships to handle nil assignments in models (Vivek Prahlad)
* Observers support for neo4j rails model using active model (Deepak N)
* Override ActiveModel i18n_scope for neo4j (Deepak N)
* Added finders similar to active record and mongoid (Deepak N)
* Added find!, find_or_create_by and find_or_initialize_by methods, similar to active record finders (Deepak N)
== 1.2.1 / 2011-08-29
* Fixed failing RSpecs for devise-neo4j gem - column_names method on neo4j orm adapter throws NoMethodError (thanks Deepak N)
== 1.2.0 / 2011-08-16
* Upgrade to java library neo4j 1.4.1, see http://neo4j.rubyforge.org/guides/configuration.html
== 1.1.4 / 2011-08-10
* Fixed dependency to will_paginate, locked to 3.0.pre4 (newly released 3.0.0 does not work yet with neo4j.rb)
== 1.1.3 / 2011-08-09
* real recursive rule to the top class, subclasses with rules did not work (Frédéric Vanclef)
* BUG: not able to create array properties on relationships (Pere Urbon)
* BUG: lucene did not work if starting up neo4j in read only mode (like rails console when the rails is already running)
== 1.1.2 / 2011-06-08
* Added configuration option 'enable_rules' to disable the _all relationships and custom rules [#176]
* Added a #node method on the Neo4j::Node and Neo4j::NodeMixin. Works like the #rel method but returns the node instead. [#174]
* Simplify creating relationship between two existing nodes [#175]
== 1.1.1 / 2011-05-26
* Made neo4j compatible with rails 3.1.0.rc1 [#170]
* Fix for neo4j-devise [#171]
* BUG: Neo4j::GraphAlgo shortest path does raise exception if two nodes are not connected [#172]
== 1.1.0 / 2011-05-13
* Support for embedding neo4j.rb by providing an already running db instance (#168)
* Neo4j::Rails::Relationships should be ActiveModel compliant (#156)
* Support for incoming relationships in Neo4j::Rails::Model (#157)
* to_json method for models no tags √ resolved (#154)
* Implement hash so that it will work with Sets (#160)
* Modified the traverser to allow iterating over paths not just over end_nodes (#161)
* Create method should take a block to initialize itself (#162)
* Upgrade to 1.3 neo4j java library (#164)
* Default `nodes' invocation for Algo path finders (#165)
* Property and index class methods modified to take arbitrary number of symbols optionally followed by options hash (#166)
* BUG: Setting property :system on Neo4j::Rails::Model should work (#163)
* BUG: update_attributes should convert values according to Type (#155)
* BUG: Neo4j::RelationshipMixin#relationship_type broken #(169)
* BUG: Relationship.load(nil) == Relationship.load(0) (#167)
* BUG: Full text search returns nil in rails model (#153)
== 1.0.0 / 2011-03-02
* Complete rewrite of everything.
* Replaced the lucene module with using the java neo4j-lucene integration instead
* Lots of improvements of the API
* Better ActiveModel/Rails integration
== 0.4.4 / 2010-08-01
* Fixed bug on traversing when using the RelationshipMixin (#121)
* BatchInserter and JRuby 1.6 - Fix iteration error with trying to modify in-place hash
== 0.4.3 / 2010-04-10
* Fixed .gitignore - make sure that we do not include unnecessarily files like neo4j databases. Release 0.4.2 contained test data.
* Added synchronize around Index.new so that two thread can't modify the same index at the same time.
== 0.4.2 / 2010-04-08
* No index on properties for the initialize method bug (#116)
* Tidy up Thread Synchronization in Lucene wrapper - lucene indexing performance improvement (#117)
* Permission bug loading neo4j jar file (#118)
* Spike: Make NodeMixin ActiveModel complient - experimental (#115)
== 0.4.1 / 2010-03-11
* Migrations (#108)
* BatchInserter (#111)
* Neo4j::Relationship.new should take a hash of properties (#110)
* Upgrade to neo4j-1.0 (#114)
* Bigfix: has_one should replace old relationship (#106)
* Bugfix: custom accessors for NodeMixin#update (#113)
* Bugfix: Indexed properties problem on extented ruby classes critical "properties indexer" (#112)
== 0.4.0 / 2010-02-06
* Performance improvements and Refactoring: Use and Extend Neo4j Java Classes (#97)
* Support for Index and Declaration of Properties on Relationships (#91)
* Upgrade to neo4j-1.0 rc (#100)
* All internal properties should be prefix with a '_',0.4.0 (#105)
* Generate relationship accessor methods for declared has_n and has_one relationships (#104)
* New way of creating relationship - Neo4j::Relationship.new (#103)
* Neo4j#init_node method should take one or more args (#98)
* Namespaced relationships: has_one...from using the wrong has_n...to(#92)
* Neo4j::NodeMixin and Neo4j::Node should allow a hash for initialization (#99)
== 0.3.3 / 2009-11-25
* Support for a counter property on has_lists (#75)
* Support for Cascade delete. On has_n, had_one and has_list (#81)
* NodeMixin#all should work with inheritance - Child classes should have a relationship of their own. (#64)
* Support for other lucene analyzer then StandardAnalyzer (#87)
* NodeMixin initialize should accept block like docs (#82)
* Add incoming relationship should work as expected: n1.relationships.incoming(:foo) << n2 (#80)
* Delete node from a has_list relationship should work as expected (#79)
* Improve stacktraces (#94)
* Removed sideeffect of rspecs (#90)
* Add debug method on NodeMixin to print it self (#88)
* Removed to_a method (#73)
* Upgrade to neo4j-1.0b10 (#95)
* Upgrade to lucene 2.9.0 (#83)
* Refactoring: RSpecs (#74)
* Refactoring: aggregate each, renamed to property aggregator (#72)
* BugFix: neo4j gem cannot be built from the source (#86)
* BugFix: Neo4j::relationship should not raise Exception if there are no relationships (#78)
== 0.3.2 / 2009-09-17
* Added support for aggregating nodes (#65)
* Wrapped Neo4j GraphAlgo AllSimplePath (#70)
* Added traversal with traversal position (#71)
* Removed DynamicAccessors mixin, replaced by [] operator (#67)
* Impl Neo4j.all_nodes (#69)
* Upgrated Neo4j jar file to 1.0-b9
* The Neo4j#relationship method now allows a filter parameter (#66)
* Neo4j.rb now can read database not created by Neo4j.rb - does not require classname property (#63)
* REST - added an "all" value for the depth traversal query parameter (#62)
* REST - Performance improvments using the Rest Mixin (#60)
== 0.3.1 / 2009-07-25
* Feature, extension - find path between given pair of nodes (#58)
* Fix a messy exception on GET /nodes/UnknownClassName (#57)
* Bug - exception on GET /nodes/classname/rel if rel is a has_one relationship (#56)
* Bug: GET /nodes/classname missing out nodes with no properties (#55)
* Bug: Lucene sorting caused exception if there were no documents (#54)
* Bug: reindexer fails to connect nodes to the IndexNode (#53)
== 0.3.0 / 2009-06-25
* Neo4j should track node changes
* RESTful support for lucene queries, sorting and paging
* RESTful support for Relationships
* RESTful support for Node and properties
* Experimental support for Master-Slave Replication via REST
* RESTful Node representation should contain hyperlinks to relationships
* Added some handy method like first and empty? on relationships
* Use new neo4j: neo-1.0-b8
* Add an event handler for create/delete nodes start/stop neo, update property/relationship
* The NodeMixin should behave like a hash, added [] and []= methods
* Support list topology - has_list and belongs_to_list Neo4j::NodeMixin Classmethods
* Should be possible to add relationships without declaring them (Neo4j#relationships.outgoing(:friends) << node)
* Neo4j extensions file structure, should be easy to create your own extensions
* Rename relation to relationship (Neo4j::Relations => Neo4j::Relationships, DynamicRelation => Relationship) [data incompatible change]
* Auto Transaction is now optional
* Setting Float properties fails under JRuby1.2.0
* Bug: Indexing relationships does not work
* Make the ReferenceNode include Neo4j::NodeMixin
* Added handy Neo4j class that simply includes the Neo4j::NodeMixin
* Neo4j::IndexNode now holds references to all nodes (Neo4j.ref_node -> Neo4j::IndexNode -> ...)
== 0.2.1 / 2009-03-15
* Refactoring of lucene indexing of the node space (28)
* Fixed bug on Neo4j::Nodemixin#property? (#22)
== 0.2.0 / 2009-01-20
* Impl. Neo4j::Node#traverse - enables traversal and filtering using TraversalPosition info (#17,#19)
* Impl. traversal to any depth (#15)
* Impl. traversal several relationships type at the same time (#16)
* Fixed a Lucene timezone bug (#20)
* Lots of refactoring of the neo4j.rb traversal code and RSpecs
== 0.1.0 / 2008-12-18
* Property can now be of any type (and not only String, Fixnum, Float)
* Indexing and Query with Date and DateTime
* YARD documentation
* Properties can be removed
* A property can be set to nil (it will then be removed).
== 0.0.7 / 2008-12-10
* Added method to_param and methods on the value object needed for Ruby on Rails
* Impl. update from a value object/hash for a node
* Impl. generation of value object classes/instances from a node.
* Refactoring the Transaction handling (reuse PlaceboTransaction instances if possible)
* Removed the need to start and stop neo. It will be done automatically when needed.
== 0.0.6 / 2008-12-03
* Removed the configuration from the Neo4j.start method. Now exist in Neo4j::Config and Lucene::Config.
* Implemented sort_by method.
* Lazy loading of search result. Execute the query and load the nodes only if needed.
* Added support to use lucene query language, example: Person.find("name:foo AND age:42")
* All test now uses RAM based lucene indexes.
== 0.0.5 / 2008-11-17
* Supports keeping lucene index in memory instead of on disk
* Added support for lucene full text search
* Fixed so neo4j runs on JRuby 1.1.5
* Implemented support for reindex all instances of a node class. This is needed if the lucene index is kept in memory or if the index is changed.
* Added ReferenceNode. All nodes now have a relationship from this reference node.
* Lots of refactoring
* Added the IMDB example. It shows how to create a neo database, lucene queries and node traversals.
== 0.0.4 / 2008-10-23
* First release to rubyforge