treequel 1.2.2 → 1.3.0pre384

Sign up to get free protection for your applications and to get access to all the features.
data.tar.gz.sig CHANGED
Binary file
data/ChangeLog ADDED
@@ -0,0 +1,3374 @@
1
+ 2011-01-10 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * Rakefile:
4
+ Cleaning up dependencies, adding a note to the post-install
5
+ [633dfb8ea77a] [github/master, master, tip]
6
+
7
+ * Manifest.txt:
8
+ Adding the ChangeLog to the release manifest
9
+ [8c1658a696bf]
10
+
11
+ 2011-01-07 Michael Granger <ged@FaerieMUD.org>
12
+
13
+ * bin/treewhat:
14
+ Added the missing 'filter' mode of treewhat.
15
+ [953995a0ad97]
16
+
17
+ * History.md, bin/treewhat, lib/treequel/branch.rb:
18
+ Updated History.md, squelch some debugging, fix --debug and
19
+ --loglevel options in treewhat.
20
+ [d20b35196dc6]
21
+
22
+ * lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
23
+ Added Treequel::Directory#reconnect.
24
+ [56c70223318a]
25
+
26
+ 2011-01-06 Michael Granger <ged@FaerieMUD.org>
27
+
28
+ * bin/treequel:
29
+ Automated merge with ssh://deveiate/Treequel
30
+ [62e7348050eb]
31
+
32
+ * bin/treequel:
33
+ More logging constant fixes for the treequel shell.
34
+ [6e159f32ed07]
35
+
36
+ * bin/treequel, lib/treequel/model/objectclass.rb:
37
+ Aesthetic cleanup
38
+ [78e65cb8f30a]
39
+
40
+ 2011-01-04 Michael Granger <ged@FaerieMUD.org>
41
+
42
+ * bin/treequel:
43
+ Fixing log level constants in the Treequel shell
44
+ [34e22e6f554c]
45
+
46
+ * lib/treequel/branch.rb, lib/treequel/model.rb,
47
+ lib/treequel/model/schemavalidations.rb,
48
+ lib/treequel/monkeypatches.rb, spec/treequel/branch_spec.rb:
49
+ Miscellaneous cleanup before 1.3.0 release.
50
+ * Treequel::Branch
51
+ - Check for explicit nil DN in .new
52
+ - Check for nil parent_dn in #parent
53
+ - Use 'top' instead of :top as objectClass default
54
+ * Treequel::Model
55
+ - New method #modification_ldif
56
+ - Commented out some spammy debugging
57
+ * Don't use Array() to array-ify values in
58
+ Treequel::Model::SchemaValidations to avoid unintentional #to_str
59
+ (on Time objects, specifically, but there are probably more)
60
+ [805069ea8b46]
61
+
62
+ 2010-12-30 Michael Granger <ged@FaerieMUD.org>
63
+
64
+ * lib/treequel/branch.rb, lib/treequel/model.rb,
65
+ lib/treequel/model/schemavalidations.rb,
66
+ spec/treequel/branch_spec.rb, spec/treequel/model_spec.rb:
67
+ Treequel::Model fixes
68
+ * Reapply objectClass mixins when the objectClass attribute is
69
+ modified
70
+ * Make the index operator return SINGLE/non-SINGLE values for new
71
+ objects, too.
72
+ * Fix incorrect LDIF generated by Treequel::Model#modifications
73
+ * Make the MUST validations take the attribute's arity into account.
74
+ [7edc8fbcdf90]
75
+
76
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
77
+ Change the return values of unset attributes to distinguish between
78
+ SINGLE and non-SINGLE attributes
79
+ [51487790ee27]
80
+
81
+ * lib/treequel/monkeypatches.rb, spec/treequel/monkeypatches_spec.rb:
82
+ Monkeypatch Date for LDAP time type conversions
83
+ [fc8d015d1084]
84
+
85
+ 2010-12-29 Michael Granger <ged@FaerieMUD.org>
86
+
87
+ * bin/treewhat:
88
+ Implemented the "display entry" mode for treewhat
89
+ [d9dafc7de90b]
90
+
91
+ * bin/treewhat:
92
+ Fixed the no-arg mode of treewhat
93
+ [c56127a56a75]
94
+
95
+ * Manifest.txt:
96
+ Updating release manifest with new files
97
+ [30a4d5b011bd]
98
+
99
+ * Rakefile, lib/treequel.rb:
100
+ Version bump.
101
+ [554028334395]
102
+
103
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
104
+ lib/treequel/mixins.rb, lib/treequel/model.rb,
105
+ lib/treequel/model/objectclass.rb,
106
+ lib/treequel/model/schemavalidations.rb, spec/lib/constants.rb,
107
+ spec/treequel/branch_spec.rb,
108
+ spec/treequel/model/objectclass_spec.rb,
109
+ spec/treequel/model/schemavalidations_spec.rb,
110
+ spec/treequel/model_spec.rb:
111
+ Commit of initial implementation of deferred-write in
112
+ Treequel::Model.
113
+ [14e2414890e0]
114
+
115
+ * manual/resources/css/manual.css:
116
+ HTML5 fixes for the manual CSS
117
+ [3702d4e0a2dd]
118
+
119
+ * Rakefile:
120
+ Only configure optional plugins if they've loaded
121
+ [c40aec37ca0b]
122
+
123
+ 2010-12-27 Michael Granger <ged@FaerieMUD.org>
124
+
125
+ * bin/treewhat:
126
+ Added basic artifact lookup
127
+ [b8887a51c1b2]
128
+
129
+ * README.md:
130
+ Strip whitespace, add mail addresses to authors
131
+ [a5025c08c083]
132
+
133
+ * lib/treequel/exceptions.rb:
134
+ Adding a new ValidationFailed exception class
135
+ [ec337bf92921]
136
+
137
+ * spec/treequel/branch_spec.rb:
138
+ Fixing a spec broken by the elimination of RDN-attribute extraction
139
+ from Treequel::Directory#create
140
+ [247d4b8f91d5]
141
+
142
+ * lib/treequel/branch.rb:
143
+ Cleanup Treequel::Branch#delete
144
+ [a6a076b5ccad]
145
+
146
+ * lib/treequel/model/errors.rb, spec/treequel/model/errors_spec.rb:
147
+ Adding an errors container for Treequel::Model validations
148
+ [07b460cc1eee]
149
+
150
+ * lib/treequel/directory.rb, spec/lib/helpers.rb,
151
+ spec/treequel/directory_spec.rb, spec/treequel/model_spec.rb:
152
+ Removed a bunch of unnecessary cruft from Treequel::Directory#create
153
+ [34868ca6b55f]
154
+
155
+ 2010-12-26 Michael Granger <ged@FaerieMUD.org>
156
+
157
+ * lib/treequel/branch.rb, lib/treequel/model.rb,
158
+ spec/treequel/branch_spec.rb, spec/treequel/model_spec.rb:
159
+ More work on the new Treequel::Model functionality:
160
+ * Cached converted attribute values are no longer frozen (for Model,
161
+ anyway), since modifications are determined by diffing against it.
162
+ This also allows one to turn off that behavior for Branch, as
163
+ well.
164
+ * Fixed a bug in attribute deletion/merging when the converted
165
+ attribute hadn't been cached yet.
166
+ * Added Treequel::Model#revert
167
+ * Fixed a bug in the proxy method for single-letter attribute names.
168
+ * Finished the implementation of Treequel::Model#modifications.
169
+
170
+ Thanks to Mahlon E. Smith for the pair!
171
+ [99e1ce9539c0]
172
+
173
+ * .hgignore:
174
+ Fixed some changed paths in the ignorefile
175
+ [80b38a3e7474]
176
+
177
+ * lib/treequel/directory.rb, spec/lib/constants.rb,
178
+ spec/lib/helpers.rb, spec/treequel/directory_spec.rb:
179
+ Treequel::Directory.root_dse now returns Treequel::Branches
180
+ [f1cdd9689425]
181
+
182
+ * Rakefile:
183
+ Set the manual source directory in the Rakefile
184
+ [17e90746ea3f]
185
+
186
+ * bin/treewhat:
187
+ More work on treewhat tool
188
+ [693342d03bda]
189
+
190
+ * docs/manual/layouts/default.page, docs/manual/layouts/intro.page,
191
+ docs/manual/lib/api-filter.rb, docs/manual/lib/editorial-filter.rb,
192
+ docs/manual/lib/examples-filter.rb, docs/manual/lib/links-filter.rb,
193
+ docs/manual/resources/css/manual.css,
194
+ docs/manual/resources/images/arrow_225_small.png,
195
+ docs/manual/resources/images/arrow_315_small.png,
196
+ docs/manual/resources/images/arrow_skip.png,
197
+ docs/manual/resources/images/cc-by.png, docs/manual/resources/images
198
+ /dialog-error.png, docs/manual/resources/images/dialog-
199
+ information.png, docs/manual/resources/images/dialog-warning.png,
200
+ docs/manual/resources/images/emblem-important.png,
201
+ docs/manual/resources/images/help.png,
202
+ docs/manual/resources/images/information.png,
203
+ docs/manual/resources/images/logo-small.png,
204
+ docs/manual/resources/images/logo.png,
205
+ docs/manual/resources/images/magnifier.png,
206
+ docs/manual/resources/images/magnifier_left.png,
207
+ docs/manual/resources/images/page_white_code.png,
208
+ docs/manual/resources/images/page_white_copy.png,
209
+ docs/manual/resources/images/printer.png,
210
+ docs/manual/resources/images/question.png,
211
+ docs/manual/resources/images/scripts_code.png,
212
+ docs/manual/resources/images/wrap.png,
213
+ docs/manual/resources/images/wrapping.png,
214
+ docs/manual/resources/js/jquery-1.3.2.min.js,
215
+ docs/manual/resources/js/jquery.ThickBox.js,
216
+ docs/manual/resources/js/manual.js, docs/manual/resources/js/sh.js,
217
+ docs/manual/resources/swf/clipboard.swf, docs/manual/src/index.page,
218
+ manual/layouts/default.page, manual/layouts/intro.page, manual/lib
219
+ /api-filter.rb, manual/lib/editorial-filter.rb, manual/lib/examples-
220
+ filter.rb, manual/lib/links-filter.rb,
221
+ manual/resources/css/manual.css,
222
+ manual/resources/images/arrow_225_small.png,
223
+ manual/resources/images/arrow_315_small.png,
224
+ manual/resources/images/arrow_skip.png, manual/resources/images/cc-
225
+ by.png, manual/resources/images/dialog-error.png,
226
+ manual/resources/images/dialog-information.png,
227
+ manual/resources/images/dialog-warning.png, manual/resources/images
228
+ /emblem-important.png, manual/resources/images/help.png,
229
+ manual/resources/images/information.png, manual/resources/images
230
+ /logo-small.png, manual/resources/images/logo.png,
231
+ manual/resources/images/magnifier.png,
232
+ manual/resources/images/magnifier_left.png,
233
+ manual/resources/images/page_white_code.png,
234
+ manual/resources/images/page_white_copy.png,
235
+ manual/resources/images/printer.png,
236
+ manual/resources/images/question.png,
237
+ manual/resources/images/scripts_code.png,
238
+ manual/resources/images/wrap.png,
239
+ manual/resources/images/wrapping.png,
240
+ manual/resources/js/jquery-1.3.2.min.js,
241
+ manual/resources/js/jquery.ThickBox.js,
242
+ manual/resources/js/manual.js, manual/resources/js/sh.js,
243
+ manual/resources/swf/clipboard.swf, manual/src/binding.page,
244
+ manual/src/branchcollections.page, manual/src/branches.page,
245
+ manual/src/branchsets.page, manual/src/connecting.page,
246
+ manual/src/examples.page, manual/src/index.page,
247
+ manual/src/models.page, manual/src/schema.page:
248
+ Laying out manual for hoe-manualgen
249
+ [d692b6298059]
250
+
251
+ 2010-12-23 Michael Granger <ged@FaerieMUD.org>
252
+
253
+ * spec/treequel/model/objectclass_spec.rb:
254
+ Added some more Treequel::Model::ObjectClass specs
255
+ [8f567053f9d5]
256
+
257
+ * lib/treequel/mixins.rb:
258
+ Fix block-style debugging method calls
259
+ [0297a8ce010f]
260
+
261
+ * Rakefile:
262
+ Check for the right method before calling #hg_sign_tags=
263
+ [94c9a49768e2]
264
+
265
+ * lib/treequel/monkeypatches.rb:
266
+ Adding a monkeypatch for bugs in Diff::LCS
267
+ [a639ec7d1215]
268
+
269
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
270
+ Started work on making Treequel::Model act more like an ORM (#save
271
+ method causes state change, not modification of the Model object)
272
+ [b5954f0c2524]
273
+
274
+ * lib/treequel/model/objectclass.rb,
275
+ spec/treequel/model/objectclass_spec.rb:
276
+ Adding the initial Treequel::Model::ObjectClass.create
277
+ implementation
278
+ [de5e733b533b]
279
+
280
+ * Manifest.txt:
281
+ Fixing modified path to the control behavior in the Manifest
282
+ [74dee58a18cd]
283
+
284
+ * bin/treequel, lib/treequel.rb, lib/treequel/mixins.rb,
285
+ spec/lib/helpers.rb:
286
+ Simplified and removed duplication from the logging code, also:
287
+ speed fixes
288
+ [e5c011bc1e9f]
289
+
290
+ * spec/lib/constants.rb:
291
+ Adding multi-value DN test data constants
292
+ [c2258e9f4d4c]
293
+
294
+ * lib/treequel/schema.rb:
295
+ Committing schema changes made to support treewhat
296
+ [b34309ac5332]
297
+
298
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
299
+ Fixing a bug in Treequel::Branch#merge for values that need
300
+ conversion
301
+ [d3f1f3a9285f]
302
+
303
+ * bin/treewhat:
304
+ Initial commit of a new (unfinished) directory-introspection tool
305
+ [146c03a0cc9c]
306
+
307
+ 2010-12-22 Michael Granger <ged@FaerieMUD.org>
308
+
309
+ * bin/treequel:
310
+ Removing inadvertant "rubygems" require in the treequel shell
311
+ [af18fc026917]
312
+
313
+ 2010-12-21 Michael Granger <ged@FaerieMUD.org>
314
+
315
+ * Rakefile:
316
+ Switched to hoe-mercurial, added guards for related top-level tasks
317
+ [01c81f8677ba]
318
+
319
+ 2010-12-15 Michael Granger <ged@FaerieMUD.org>
320
+
321
+ * Rakefile, experiments/paged_results_example.rb,
322
+ lib/treequel/behavior/control.rb, lib/treequel/branch.rb,
323
+ lib/treequel/branchset.rb, lib/treequel/controls/pagedresults.rb,
324
+ lib/treequel/directory.rb, spec/lib/constants.rb,
325
+ spec/lib/control_behavior.rb, spec/lib/helpers.rb,
326
+ spec/treequel/branch_spec.rb,
327
+ spec/treequel/controls/contentsync_spec.rb,
328
+ spec/treequel/controls/pagedresults_spec.rb,
329
+ spec/treequel/controls/sortedresults_spec.rb:
330
+ Extracted the controls behavior and rewrote the specs to use it.
331
+ [dd1713e2c08a]
332
+
333
+ 2010-12-14 Michael Granger <ged@FaerieMUD.org>
334
+
335
+ * .hgtags:
336
+ Added tag v1.2.2 for changeset ddd4a27bfa1a
337
+ [7673ef568a14]
338
+
339
+ * .hgsigs:
340
+ Added signature for changeset a0444fc510a3
341
+ [ddd4a27bfa1a] [v1.2.2]
342
+
343
+ * History.md:
344
+ Adding actual content to the History file
345
+ [a0444fc510a3]
346
+
347
+ * Rakefile, lib/treequel.rb, lib/treequel/branch.rb,
348
+ lib/treequel/directory.rb, lib/treequel/model.rb,
349
+ lib/treequel/monkeypatches.rb, spec/lib/helpers.rb,
350
+ spec/lib/matchers.rb, spec/treequel/branch_spec.rb:
351
+ Treequel::Branch bugfixes, build system work
352
+ * Bump version to 1.2.2
353
+ * More hoe fixups
354
+ * refactored Treequel::Branch specs to mock much less and fixed a few
355
+ bugs exposed by this work
356
+ * Added a monkeypatch to add equality to LDAP::Mod objects
357
+ [0c2883d2074a]
358
+
359
+ 2010-12-13 Michael Granger <ged@FaerieMUD.org>
360
+
361
+ * .hgsigs:
362
+ Added signature for changeset 1845c002216c
363
+ [03eca02ba232]
364
+
365
+ * .hgtags:
366
+ Added tag v1.2.1 for changeset 44ab19c2cced
367
+ [1845c002216c]
368
+
369
+ * Rakefile:
370
+ Giving up on converting the manual to something RDocable for now
371
+ [44ab19c2cced] [v1.2.1]
372
+
373
+ * lib/treequel/model.rb, lib/treequel/model/objectclass.rb,
374
+ spec/treequel/model/objectclass_spec.rb:
375
+ Allow Treequel::Model::ObjectClass#model_objectclasses arguments to
376
+ be anything that can #to_sym.
377
+ [9f4203117712]
378
+
379
+ 2010-12-10 Michael Granger <ged@FaerieMUD.org>
380
+
381
+ * project.yml:
382
+ Removing the project.yml
383
+ [e661ceaf2232]
384
+
385
+ * lib/treequel/model.rb:
386
+ Cleaned up Treequel::Model#inspect for models that haven't yet
387
+ loaded their entry
388
+ [43a411db65fc]
389
+
390
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
391
+ Added a new method: Treequel::Branch#loaded?
392
+ [11d3dcae4282]
393
+
394
+ * .hgsub, .hgsubstate, History.md, Manifest.txt, README.md, Rakefile,
395
+ Rakefile.local:
396
+ Converted to hoe
397
+ [cc8ec875118b]
398
+
399
+ 2010-12-08 Michael Granger <ged@FaerieMUD.org>
400
+
401
+ * lib/treequel.rb, lib/treequel/model.rb:
402
+ Added more debugging to the mixin application in Treequel::Model.
403
+ Bumped version to 1.2.1.
404
+ [b9106049e6aa]
405
+
406
+ 2010-11-30 Michael Granger <ged@FaerieMUD.org>
407
+
408
+ * .hgtags:
409
+ Added tag v1.2.0 for changeset 3ceba5117883
410
+ [610ee837acd2]
411
+
412
+ * .hgsigs:
413
+ Added signature for changeset c6166a5cbc23
414
+ [3ceba5117883] [v1.2.0]
415
+
416
+ * .hgsubstate, Rakefile:
417
+ Updated build system.
418
+ [c6166a5cbc23]
419
+
420
+ 2010-11-24 Michael Granger <ged@FaerieMUD.org>
421
+
422
+ * .hgsubstate, Rakefile, project.yml:
423
+ Updated build system.
424
+ [ccdee2d78e68]
425
+
426
+ * .hgsubstate, lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
427
+ Added hash-key conversion so Branches can be constructed with
428
+ Symbol-key hashargs.
429
+ [47697f2ebc27]
430
+
431
+ 2010-11-18 Michael Granger <ged@FaerieMUD.org>
432
+
433
+ * lib/treequel.rb, lib/treequel/branchset.rb, spec/lib/constants.rb,
434
+ spec/lib/helpers.rb, spec/treequel/branchset_spec.rb,
435
+ spec/treequel/model_spec.rb:
436
+ Adding 'Treequel::Branchset#from' mutator for changing the base DN.
437
+ * Bump version to 1.2.0
438
+ * Add Treequel::Branchset#from and specs for it.
439
+ * Spec cleanup
440
+ - Refactored some specs to mock completely outside the library
441
+ - Added a fixturing function to the spec helpers:
442
+ get_fixtured_directory()
443
+ - Replaced nested describes in some specs with contexts instead.
444
+ [44f8be0662c4]
445
+
446
+ 2010-11-11 Michael Granger <ged@FaerieMUD.org>
447
+
448
+ * Merging with 316:33a7dcde80a1
449
+ [72dd41272f6f]
450
+
451
+ * .hgsubstate, lib/treequel/model.rb, spec/treequel/branch_spec.rb,
452
+ spec/treequel/model_spec.rb, spec/treequel/monkeypatches_spec.rb:
453
+ Spec fixes for RSpec 2.0
454
+ * Fix RSpec regex workaround for Treequel::Model#respond_to?
455
+ * Fix monkeypatch Time tests for running outside of PST8PDT
456
+ [9f9460125077]
457
+
458
+ 2010-11-09 Michael Granger <ged@FaerieMUD.org>
459
+
460
+ * .hgsub, .hgsubstate:
461
+ Readding subrepo
462
+ [33a7dcde80a1]
463
+
464
+ * .hgsub, .hgsubstate, .hgsubstate:
465
+ Fixing subrepo corruption caused by rollback
466
+ [fc9ae9f5b034]
467
+
468
+ * README:
469
+ Merged with 310:cc7c63ff15a0
470
+ [c1b750e4e9fc]
471
+
472
+ * .hgsubstate, lib/treequel/branch.rb, lib/treequel/model.rb,
473
+ spec/treequel/branch_spec.rb,
474
+ spec/treequel/branchcollection_spec.rb,
475
+ spec/treequel/branchset_spec.rb,
476
+ spec/treequel/controls/pagedresults_spec.rb,
477
+ spec/treequel/controls/sortedresults_spec.rb,
478
+ spec/treequel/directory_spec.rb, spec/treequel/model_spec.rb:
479
+ stub! -> stub; added more debugging to try to track down the model
480
+ test failure
481
+ [380662d385e0]
482
+
483
+ 2010-11-03 Michael Granger <ged@FaerieMUD.org>
484
+
485
+ * README, README.md:
486
+ Converting the README to Markdown
487
+ [cc7c63ff15a0]
488
+
489
+ 2010-11-08 Michael Granger <ged@FaerieMUD.org>
490
+
491
+ * bin/treequel:
492
+ Fixed treequel shell's cp to support relative and absolute DNs
493
+ [7f20ab74d6b1]
494
+
495
+ 2010-10-22 Michael Granger <ged@FaerieMUD.org>
496
+
497
+ * lib/treequel/schema.rb, spec/lib/control_behavior.rb,
498
+ spec/lib/helpers.rb, spec/lib/matchers.rb,
499
+ spec/treequel/branch_spec.rb,
500
+ spec/treequel/branchcollection_spec.rb,
501
+ spec/treequel/branchset_spec.rb, spec/treequel/control_spec.rb,
502
+ spec/treequel/controls/contentsync_spec.rb,
503
+ spec/treequel/controls/pagedresults_spec.rb,
504
+ spec/treequel/controls/sortedresults_spec.rb,
505
+ spec/treequel/directory_spec.rb, spec/treequel/filter_spec.rb,
506
+ spec/treequel/mixins_spec.rb,
507
+ spec/treequel/model/objectclass_spec.rb,
508
+ spec/treequel/model_spec.rb, spec/treequel/monkeypatches_spec.rb,
509
+ spec/treequel/schema/attributetype_spec.rb,
510
+ spec/treequel/schema/ldapsyntax_spec.rb,
511
+ spec/treequel/schema/matchingrule_spec.rb,
512
+ spec/treequel/schema/matchingruleuse_spec.rb,
513
+ spec/treequel/schema/objectclass_spec.rb,
514
+ spec/treequel/schema/table_spec.rb, spec/treequel/schema_spec.rb,
515
+ spec/treequel_spec.rb:
516
+ Converted to RSpec 2.0
517
+ [26c3853695ea]
518
+
519
+ * .hgsub, .hgsubstate, Rakefile, project.yml:
520
+ Updating build system; add requirement for Ruby 1.8.7
521
+ [98b6847de872]
522
+
523
+ 2010-09-21 Michael Granger <ged@FaerieMUD.org>
524
+
525
+ * .hgtags:
526
+ Added tag 1.1.1 for changeset e52c71f4e4ca
527
+ [7f70394868e2]
528
+
529
+ * .hgsigs:
530
+ Added signature for changeset c6d26ab6a7a4
531
+ [e52c71f4e4ca] [1.1.1]
532
+
533
+ * lib/treequel.rb, lib/treequel/branch.rb, lib/treequel/model.rb,
534
+ spec/treequel/model_spec.rb:
535
+ Critical bugfix.
536
+ * Fix a critical bug in the mapping of objectClasses to Model objects
537
+ when the object is created with an entry hash rather than lazy-
538
+ loaded.
539
+ * Bump version to 1.1.1.
540
+ [c6d26ab6a7a4]
541
+
542
+ 2010-09-20 Michael Granger <ged@FaerieMUD.org>
543
+
544
+ * .hgtags:
545
+ Added tag 1.1.0 for changeset b415e0fce774
546
+ [92c28b14730a]
547
+
548
+ * .hgsigs:
549
+ Added signature for changeset 4ba782a3a7e4
550
+ [b415e0fce774] [1.1.0]
551
+
552
+ 2010-09-17 Michael Granger <ged@FaerieMUD.org>
553
+
554
+ * lib/treequel/model.rb, lib/treequel/schema/objectclass.rb,
555
+ spec/treequel/model_spec.rb,
556
+ spec/treequel/schema/objectclass_spec.rb:
557
+ Include mixins for inherited objectClasses, too.
558
+ [4ba782a3a7e4]
559
+
560
+ * Rakefile:
561
+ Updated build system
562
+ [f075a27a35eb]
563
+
564
+ * docs/manual/src/index.page:
565
+ Manual updates for the Model section (paired with Mahlon)
566
+ [c77bac0bf816]
567
+
568
+ 2010-09-15 Michael Granger <ged@FaerieMUD.org>
569
+
570
+ * lib/treequel/schema/attributetype.rb:
571
+ Use the #syntax method instead of the syntax_oid in #inspect output
572
+ so inherited syntaxes are shown
573
+ [1b375c5dc123]
574
+
575
+ * bin/treeirb:
576
+ Use the system LDAP config if no URI is given
577
+ [0786411cd707]
578
+
579
+ * lib/treequel/branch.rb:
580
+ Un-spam debugging on entry lookup
581
+ [d3a6c89d8004]
582
+
583
+ * lib/treequel/model.rb:
584
+ Overriding #inspect in Treequel::Model to show the list of
585
+ extensions applied to the entry
586
+ [2101482df41f]
587
+
588
+ 2010-08-25 Michael Granger <ged@FaerieMUD.org>
589
+
590
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
591
+ Rescue the right error in Treequel::Model#method_missing and add a
592
+ spec for the negative case.
593
+ [a384412c0e6f]
594
+
595
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
596
+ Load the entry from Model's #method_missing to catch calls to
597
+ methods that are added via objectClass mixins.
598
+ [b220a83d31b5]
599
+
600
+ 2010-08-23 Michael Granger <ged@FaerieMUD.org>
601
+
602
+ * lib/treequel/branch.rb, lib/treequel/schema/attributetype.rb,
603
+ spec/treequel/branch_spec.rb:
604
+ Fixing object/attribute mapping for attributes whose types that
605
+ inherit their syntax from their superclass
606
+ [2753f8405caf]
607
+
608
+ * Rakefile.local, docs/Treequel Manual Diagrams.graffle,
609
+ docs/manual/src/index.page, lib/treequel.rb, lib/treequel/branch.rb,
610
+ lib/treequel/directory.rb, lib/treequel/model/objectclass.rb,
611
+ lib/treequel/monkeypatches.rb, spec/lib/constants.rb,
612
+ spec/treequel/branch_spec.rb,
613
+ spec/treequel/branchcollection_spec.rb,
614
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
615
+ spec/treequel/filter_spec.rb, spec/treequel/mixins_spec.rb,
616
+ spec/treequel/model/objectclass_spec.rb,
617
+ spec/treequel/monkeypatches_spec.rb,
618
+ spec/treequel/schema/table_spec.rb, spec/treequel/schema_spec.rb,
619
+ spec/treequel/utils_spec.rb, spec/treequel_spec.rb:
620
+ Coverage improvements, manual work
621
+ * Improved coverage
622
+ * More work on the manual and manual graphics
623
+ [2e2b035d3721]
624
+
625
+ * docs/manual/lib/links-filter.rb, docs/manual/src/index.page,
626
+ lib/treequel.rb:
627
+ Started catching the manual up to 1.1.0.
628
+ [693a163bd068]
629
+
630
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
631
+ Made Treequel::Branch#delete with no arguments delete the entry
632
+ [df0b0594cb62]
633
+
634
+ 2010-08-19 Michael Granger <ged@FaerieMUD.org>
635
+
636
+ * lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
637
+ spec/lib/control_behavior.rb, spec/treequel/branch_spec.rb,
638
+ spec/treequel/branchcollection_spec.rb,
639
+ spec/treequel/branchset_spec.rb, spec/treequel/control_spec.rb,
640
+ spec/treequel/controls/contentsync_spec.rb,
641
+ spec/treequel/controls/pagedresults_spec.rb,
642
+ spec/treequel/controls/sortedresults_spec.rb,
643
+ spec/treequel/directory_spec.rb, spec/treequel/filter_spec.rb,
644
+ spec/treequel/mixins_spec.rb,
645
+ spec/treequel/model/objectclass_spec.rb,
646
+ spec/treequel/model_spec.rb,
647
+ spec/treequel/schema/attributetype_spec.rb,
648
+ spec/treequel/schema/ldapsyntax_spec.rb,
649
+ spec/treequel/schema/matchingrule_spec.rb,
650
+ spec/treequel/schema/matchingruleuse_spec.rb,
651
+ spec/treequel/schema/objectclass_spec.rb,
652
+ spec/treequel/schema/table_spec.rb, spec/treequel/schema_spec.rb,
653
+ spec/treequel/utils_spec.rb, spec/treequel_spec.rb:
654
+ Fixes for Ruby 1.9.2.
655
+ [31fc0ea1ea31]
656
+
657
+ * Rakefile, project.yml:
658
+ Build system update; fixed ruby-termios dependency
659
+ [7c7d3e2034b0]
660
+
661
+ 2010-08-18 Michael Granger <ged@FaerieMUD.org>
662
+
663
+ * lib/treequel/branchset.rb, lib/treequel/model.rb,
664
+ spec/treequel/branchset_spec.rb:
665
+ Implement Branchset operators
666
+ * COMPAT: Change the way Branchset#+ works with a Branch argument to
667
+ work with Model methods that return related searches.
668
+ * Implement Branchset#-
669
+ [f9151315d37f]
670
+
671
+ 2010-08-16 Michael Granger <ged@FaerieMUD.org>
672
+
673
+ * lib/treequel/constants.rb, lib/treequel/schema.rb,
674
+ lib/treequel/schema/attributetype.rb, spec/treequel/branch_spec.rb,
675
+ spec/treequel/schema/attributetype_spec.rb,
676
+ spec/treequel/schema_spec.rb:
677
+ Reworked operational attributes to use the 'USAGE' attribute at
678
+ Mahlon's suggestion.
679
+ * Operational attributes are now fetched from the schema.
680
+ * Treequel::Schema::AttributeType now has predicates for testing for
681
+ various usage types.
682
+ [cd3ef7e3ffb0]
683
+
684
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
685
+ Fixes for Treequel::Model instantiation and lookup.
686
+ * Don't try to add objectclass mixins to the nil returned from a
687
+ failed lookup.
688
+ * Expanded coverage for Treequel::Model.
689
+ [dfb032f5e5c1]
690
+
691
+ * lib/treequel/schema/table.rb, spec/treequel/schema/table_spec.rb:
692
+ Made Treequel::Schema::Table Enumerable
693
+ [844ee21c6916]
694
+
695
+ 2010-08-06 Michael Granger <ged@FaerieMUD.org>
696
+
697
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
698
+ Don't add the objectClass attribute when searching through
699
+ Treequel::Model if the search doesn't specify any return attributes.
700
+ [ff2629196b4e]
701
+
702
+ * lib/treequel/filter.rb:
703
+ Handle Sequel's Ruby1.9 Symbol-operator workaround in filter
704
+ attributes
705
+ [d4e58760ee34]
706
+
707
+ * lib/treequel/branch.rb:
708
+ Also output empty-string attributes as non-binary
709
+ [d60c6b83db01]
710
+
711
+ 2010-08-05 Michael Granger <ged@FaerieMUD.org>
712
+
713
+ * lib/treequel/branch.rb:
714
+ Unwrap base64ed LDIF lines before wrapping them to the new line
715
+ length.
716
+ [bb182f705fe5]
717
+
718
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
719
+ Fix LDIF-generation for really reals.
720
+ [32084630894f]
721
+
722
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
723
+ lib/treequel/model.rb, spec/treequel/model_spec.rb:
724
+ Optimizations, logging cleanup.
725
+ * Optimize falling through Treequel::Model#method_missing for branch-
726
+ traversal methods to avoid talking to the directory if possible.
727
+ * Clean up some of the chattier but not-as-useful debug logging
728
+ [aabbab99b093]
729
+
730
+ 2010-08-02 Michael Granger <ged@FaerieMUD.org>
731
+
732
+ * lib/treequel/branch.rb, lib/treequel/model.rb, spec/lib/matchers.rb,
733
+ spec/treequel/branch_spec.rb:
734
+ Bugfixes.
735
+ * Handle empty-string DNs in Treequel::Branch#parent_dn
736
+ * Tidy up LDIF-generation
737
+ * Add an RSpec workaround for Treequel::Model#respond_to?
738
+ [7a4f2e5bef0a]
739
+
740
+ 2010-07-29 Michael Granger <ged@FaerieMUD.org>
741
+
742
+ * lib/treequel/filter.rb, lib/treequel/model.rb:
743
+ Filter component symmetry, Model refactor
744
+ * Added an append method for Treequel::Filter::AndComponent to serve
745
+ as the underpinnings for an .and() method as soon as I figure out
746
+ a way to track the last-appended component so I can
747
+ collapse/follow apprpriately.
748
+ * Refactored Treequel::Model#find_attribute_type
749
+ [2f741e5294bf]
750
+
751
+ 2010-07-28 Michael Granger <ged@FaerieMUD.org>
752
+
753
+ * lib/treequel/branchset.rb, lib/treequel/filter.rb,
754
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
755
+ Added support for Sequel-style #or: branchset.filter( :something
756
+ ).or( :somethingelse ).
757
+ [bc0bc3aea136]
758
+
759
+ * lib/treequel/model.rb, spec/treequel/model_spec.rb:
760
+ Added Treequel::Model#respond_to?
761
+ [30091794b910]
762
+
763
+ 2010-07-27 Michael Granger <ged@FaerieMUD.org>
764
+
765
+ * lib/treequel/branch.rb, lib/treequel/constants.rb,
766
+ lib/treequel/directory.rb, lib/treequel/model.rb,
767
+ lib/treequel/monkeypatches.rb, lib/treequel/schema.rb,
768
+ spec/treequel/branch_spec.rb, spec/treequel/branchset_spec.rb,
769
+ spec/treequel/directory_spec.rb, spec/treequel/model_spec.rb,
770
+ spec/treequel/schema_spec.rb:
771
+ Bugfix, make object conversion work for setting attributes too.
772
+ * Add 'objectClass' to a Branchset that's resolved through a
773
+ Treequel::Model so the model knows what ObjectClass modules to
774
+ extend the results with.
775
+ * Make setters on a Treequel::Branch do conversion from Ruby objects
776
+ to correct LDAP attribute strings.
777
+ * Added operational-attribute awareness to Treequel::Schema objects
778
+ [e9c908b1f426]
779
+
780
+ 2010-07-26 Michael Granger <ged@FaerieMUD.org>
781
+
782
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
783
+ Bugfixes, coverage of LDIF-generation.
784
+ * Added support for empty base DNs to Treequel::Branch.
785
+ * Added a spec example for LDIF output; still need one for
786
+ Base64-encoded values, however.
787
+ [30ba889041a8]
788
+
789
+ 2010-07-16 Michael Granger <ged@FaerieMUD.org>
790
+
791
+ * bin/treequel:
792
+ Fixing the "cd .." special case
793
+ [a6dd7b685a6a]
794
+
795
+ 2010-07-14 Michael Granger <ged@FaerieMUD.org>
796
+
797
+ * lib/treequel/model.rb:
798
+ Untaint objectClasses passed to
799
+ Treequel::Model::mixins_for_objectclasses.
800
+ [2793fa802dad]
801
+
802
+ 2010-07-13 Michael Granger <ged@FaerieMUD.org>
803
+
804
+ * lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
805
+ The workaround for two-param syntax mapping Procs didn't work after
806
+ all. Modifying the default mappings to take that into account.
807
+ [b76dd9ca1f3f]
808
+
809
+ * experiments/schema_roundtrip.rb, lib/treequel/directory.rb,
810
+ lib/treequel/schema.rb, lib/treequel/schema/attributetype.rb,
811
+ lib/treequel/schema/ldapsyntax.rb,
812
+ lib/treequel/schema/matchingrule.rb,
813
+ lib/treequel/schema/matchingruleuse.rb,
814
+ lib/treequel/schema/objectclass.rb, spec/treequel/directory_spec.rb,
815
+ spec/treequel/schema/attributetype_spec.rb,
816
+ spec/treequel/schema/ldapsyntax_spec.rb,
817
+ spec/treequel/schema/matchingrule_spec.rb,
818
+ spec/treequel/schema/matchingruleuse_spec.rb,
819
+ spec/treequel/schema/objectclass_spec.rb:
820
+ Added schema-object roundtripping, with a script/specs to test it.
821
+ [70cc87a200ad]
822
+
823
+ * lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
824
+ Added the ability to set the default results class on a per-
825
+ directory basis.
826
+ [47e865bfef9e]
827
+
828
+ * bin/treequel, lib/treequel/model.rb, spec/treequel/model_spec.rb:
829
+ Fixes for Apache DS and bugfix in Treequel::Model.
830
+ * Don't assume the 'structuralObjectClass' operational attribute
831
+ exists in entries in the Treequel shell; Apache DS, for one,
832
+ doesn't have it.
833
+ * Fix a bug in Treequel::Model which caused under_barred attributes
834
+ not to try their camelCased equivalent.
835
+ [c61373e3dc49]
836
+
837
+ 2010-07-10 Michael Granger <ged@FaerieMUD.org>
838
+
839
+ * lib/treequel/branch.rb, lib/treequel/model.rb,
840
+ lib/treequel/model/objectclass.rb, spec/treequel/model_spec.rb:
841
+ Treequel::Model bugfix
842
+ * Fixed Treequel::Model registration logic for objectclasses with no
843
+ model_bases by registering them under the empty-string DN.
844
+ * Return duplicates from
845
+ Treequel::Model::ObjectClass::model_objectclasses and
846
+ ::model_bases.
847
+ * Add an alias for #include_operational_attrs ->
848
+ include_operational_attributes
849
+ [601003ff3077]
850
+
851
+ 2010-07-09 Michael Granger <ged@FaerieMUD.org>
852
+
853
+ * experiments/mixohm.rb, lib/treequel.rb, lib/treequel/model.rb,
854
+ lib/treequel/model/objectclass.rb,
855
+ spec/treequel/model/objectclass_spec.rb,
856
+ spec/treequel/model_spec.rb,
857
+ spec/treequel/schema/objectclass_spec.rb:
858
+ Adding Treequel::Model, bumping version to 1.1.0.
859
+ * New classes/modules: Treequel::Model, Treequel::Model::ObjectClass
860
+ * Adding the spike for the OHM implementation
861
+ [a76065cfeba0]
862
+
863
+ * Merged with 47bb9cd7af3b
864
+ [6dd6cb37f5ce]
865
+
866
+ 2010-07-08 Michael Granger <ged@FaerieMUD.org>
867
+
868
+ * .hgignore, lib/treequel/directory.rb:
869
+ Delegate the Treequel::Directory#root_dse method through its #conn
870
+ method too.
871
+ [3f4134d20d9d]
872
+
873
+ 2010-07-07 Michael Granger <ged@FaerieMUD.org>
874
+
875
+ * .hgtags:
876
+ Added tag 1.0.4 for changeset 0ec4ff0ce67f
877
+ [0188c2ba5b7e]
878
+
879
+ * .hgsigs:
880
+ Added signature for changeset c8534439a5bc
881
+ [0ec4ff0ce67f] [1.0.4]
882
+
883
+ * lib/treequel.rb:
884
+ Bumping version to 1.0.4 because I'm an idiot and included some
885
+ files that were intended for a future version in 1.0.3.
886
+ [c8534439a5bc]
887
+
888
+ * .hgtags:
889
+ Added tag 1.0.3 for changeset 65be21a77bfe
890
+ [47bb9cd7af3b]
891
+
892
+ * .hgsigs:
893
+ Added signature for changeset fd86e30957a6
894
+ [65be21a77bfe] [1.0.3]
895
+
896
+ * Rakefile, experiments/control-syntax-spike.rb, experiments/ohm.rb,
897
+ lib/treequel/branch.rb, lib/treequel/branchcollection.rb,
898
+ lib/treequel/branchset.rb, lib/treequel/exceptions.rb,
899
+ lib/treequel/mixins.rb, lib/treequel/schema/attributetype.rb,
900
+ lib/treequel/schema/objectclass.rb, lib/treequel/schema/table.rb,
901
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
902
+ spec/treequel/branchcollection_spec.rb,
903
+ spec/treequel/branchset_spec.rb, spec/treequel/mixins_spec.rb,
904
+ spec/treequel/schema/attributetype_spec.rb,
905
+ spec/treequel/schema/objectclass_spec.rb:
906
+ Build system update, prep for 1.0.3 release.
907
+ * Refactored some methods in Treequel::Branch to allow for easier
908
+ subclassing.
909
+ * Fixed an edge case in Treequel::BranchCollection mutators when they
910
+ are called without a mutating value, but require one.
911
+ * Added Treequel::Branchset#+
912
+ * Factored out DN normalization functions into a
913
+ Treequel::Normalization mixin
914
+ * Made Treequel::Schema::ObjectClass include its ancestors' MUST and
915
+ MAY OIDs by default in #must_oids and #may_oids.
916
+ * Covered some more edge cases in the specs
917
+ [fd86e30957a6]
918
+
919
+ 2010-06-14 Michael Granger <ged@FaerieMUD.org>
920
+
921
+ * bin/treequel:
922
+ Fix the 'parent' command in the treequel shell and the success
923
+ message for the 'cp' command.
924
+ [dd880dcd1b9a]
925
+
926
+ * bin/treequel, lib/treequel/directory.rb,
927
+ spec/treequel/directory_spec.rb:
928
+ Treequel shell cleanup, new subcommand,
929
+ Treequel::Directory#bound_user
930
+ * 'treequel' shell:
931
+ - Options and help consistency fixes
932
+ - Added 'whoami' command
933
+ * Make the bound user's DN fetchable via
934
+ Treequel::Directory#bound_user
935
+ [c2a696248d22]
936
+
937
+ 2010-06-10 Michael Granger <ged@FaerieMUD.org>
938
+
939
+ * Rakefile.local, bin/treequel, docs/manual/src/index.page,
940
+ lib/treequel/constants.rb:
941
+ Added 'cp' treequel shell command, removed FOLDED_LDIF_ATTRVAL_SPEC
942
+ pattern.
943
+ [61d5aae13b7e]
944
+
945
+ 2010-05-27 Michael Granger <ged@FaerieMUD.org>
946
+
947
+ * bin/treequel, lib/treequel/branch.rb, spec/treequel/branch_spec.rb:
948
+ Treequel shell cleanup, support config-loaded directory, Branch#move
949
+ fixes
950
+ * Treequel shell:
951
+ - Cleaned up the option-parsing/startup code
952
+ - Made the shell use the system config with no URL argument via
953
+ Treequel.directory_from_config instead of just defaulting to
954
+ ldap://localhost
955
+ - Fixed the 'mv' command
956
+ * Cleaned up the Treequel::Branch#move command, removing the
957
+ unfinished attribute-modification code, which was redundant.
958
+ [d9073c3a9f0e]
959
+
960
+ 2010-05-03 Michael Granger <ged@FaerieMUD.org>
961
+
962
+ * bin/treequel, lib/treequel/schema/table.rb:
963
+ Treequel shell work, made schema tables more Hash-like.
964
+ * Treequel shell:
965
+ - Added a 'mv' command
966
+ - Added a confirmation for the deletion of each sub-entry to 'rm', and
967
+ a -f(orce) flag to avoid it.
968
+ * Made Treequel::Schema::Table a bit more Hash-like with more
969
+ delegation.
970
+ [0982bb19bfb9]
971
+
972
+ 2010-04-14 Michael Granger <ged@FaerieMUD.org>
973
+
974
+ * lib/treequel.rb, spec/treequel_spec.rb:
975
+ Fixed a bug in Treequel.read_opts_from_config which caused
976
+ directory_from_config not to work. Thanks to Mahlon for spotting
977
+ this.
978
+ [b725e5424fa9]
979
+
980
+ 2010-04-13 Michael Granger <ged@FaerieMUD.org>
981
+
982
+ * lib/treequel/branch.rb, lib/treequel/directory.rb:
983
+ More YARD docs
984
+ [561646be1b80]
985
+
986
+ 2010-04-11 Michael Granger <ged@FaerieMUD.org>
987
+
988
+ * bin/treequel, lib/treequel/branch.rb, lib/treequel/constants.rb:
989
+ Fixed LDIF and highlighting in treequel shell
990
+ * Replaced LDIF function from ruby-ldap, as it modifies its receiver
991
+ and has hardcoded column width.
992
+ * Made the LDIF-matching pattern handle folded attribute values.
993
+ [94b428852c7a]
994
+
995
+ 2010-04-10 Michael Granger <ged@FaerieMUD.org>
996
+
997
+ * Rakefile:
998
+ Updated build system.
999
+ [a42d7297577a]
1000
+
1001
+ 2010-04-08 Michael Granger <ged@FaerieMUD.org>
1002
+
1003
+ * Rakefile, lib/treequel/branch.rb, lib/treequel/directory.rb,
1004
+ spec/treequel/branch_spec.rb:
1005
+ Updated build system, more YARDificiation.
1006
+ [a039187fcbfd]
1007
+
1008
+ 2010-04-07 Michael Granger <ged@FaerieMUD.org>
1009
+
1010
+ * Rakefile:
1011
+ Updated build system.
1012
+ [b54fe9c1171d]
1013
+
1014
+ * .hgignore, Rakefile, bin/treequel, docs/manual/src/index.page,
1015
+ lib/treequel.rb, lib/treequel/branch.rb,
1016
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
1017
+ lib/treequel/control.rb, lib/treequel/controls/contentsync.rb,
1018
+ lib/treequel/controls/pagedresults.rb,
1019
+ lib/treequel/controls/persistentsearch.rb,
1020
+ lib/treequel/controls/sortedresults.rb, lib/treequel/directory.rb,
1021
+ lib/treequel/exceptions.rb, lib/treequel/filter.rb,
1022
+ lib/treequel/mixins.rb, lib/treequel/monkeypatches.rb,
1023
+ lib/treequel/schema/ldapsyntax.rb,
1024
+ lib/treequel/schema/matchingrule.rb,
1025
+ lib/treequel/schema/matchingruleuse.rb,
1026
+ lib/treequel/sequel_integration.rb, lib/treequel/utils.rb,
1027
+ project.yml, spec/lib/control_behavior.rb, spec/lib/matchers.rb,
1028
+ spec/treequel/branch_spec.rb,
1029
+ spec/treequel/branchcollection_spec.rb,
1030
+ spec/treequel/controls/contentsync_spec.rb,
1031
+ spec/treequel/controls/pagedresults_spec.rb,
1032
+ spec/treequel/controls/sortedresults_spec.rb,
1033
+ spec/treequel/mixins_spec.rb, spec/treequel/schema/table_spec.rb:
1034
+ More specs, more YARD docs.
1035
+ * Finished SortedResultsControl spec
1036
+ * Added YARD docs for the top-level namespace, started work on the
1037
+ rest.
1038
+ * Added a warning when trying to use the ContentSyncControl
1039
+ * Removed the PersistentSearchControl, which isn't supported by any of
1040
+ my test servers, and has been replaced by the ContentSyncControl
1041
+ anyway.
1042
+ * Criteria in SortedResultsControl are now contained in a Struct
1043
+ instead of a Hash for more literate code.
1044
+ * Added an extension module (Treequel::LDAPControlExtensions) to add
1045
+ comparability to LDAP::Control
1046
+ * treequel shell: 'ls' command
1047
+ - added several sort criteria
1048
+ - refactored into smaller methods
1049
+ * Fixed ArgumentError in Treequel::Branch#delete, added the ability to
1050
+ delete individual attribute values
1051
+ * Started a collection of RSpec matchers (spec/lib/matchers.rb)
1052
+ [96125f5e3297]
1053
+
1054
+ 2010-04-06 Michael Granger <ged@FaerieMUD.org>
1055
+
1056
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
1057
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
1058
+ New method Treequel::Branch#values_at, rewrote #delete to be
1059
+ consistent with Hash#delete.
1060
+ * Added the #values_at method which works like Hash#values_at.
1061
+ * Made #delete operate on Branch attributes instead of duplicating the
1062
+ functionality of Directory#delete.
1063
+ * Made Treequel::Directory#modify take an Array of LDAP::Mod objects
1064
+ in addition to a hash of attribute modifications.
1065
+ [91486cbc9047]
1066
+
1067
+ 2010-03-23 Michael Granger <ged@FaerieMUD.org>
1068
+
1069
+ * lib/treequel.rb, spec/treequel_spec.rb:
1070
+ Added NSS-style ldap.conf support.
1071
+ [bc24a82b0e9c]
1072
+
1073
+ 2010-03-19 Michael Granger <ged@FaerieMUD.org>
1074
+
1075
+ * lib/treequel/directory.rb, lib/treequel/mixins.rb,
1076
+ lib/treequel/schema.rb, lib/treequel/schema/table.rb,
1077
+ spec/treequel/schema/table_spec.rb:
1078
+ Converted hash-based schema tables to a case-insensitive Table class
1079
+ (fixes #1)
1080
+ * Created a new Treequel::Schema::Table class which provides case-
1081
+ insensitive (as well as struct-like method) access to schema
1082
+ information.
1083
+ * Aliased Treequel::Directory#bind to #bind_as
1084
+ [2f756d5f12e2]
1085
+
1086
+ 2010-03-18 Michael Granger <ged@FaerieMUD.org>
1087
+
1088
+ * lib/treequel.rb, spec/treequel_spec.rb:
1089
+ Adding system-config methods to the Treequel methods
1090
+ [f8de798625ee]
1091
+
1092
+ 2010-03-02 Michael Granger <ged@FaerieMUD.org>
1093
+
1094
+ * spec/treequel/branchcollection_spec.rb:
1095
+ Finished specs for BranchCollection#empty?
1096
+ [02660115ea46]
1097
+
1098
+ 2010-03-01 Michael Granger <ged@FaerieMUD.org>
1099
+
1100
+ * bin/treequel, lib/treequel/branchcollection.rb,
1101
+ lib/treequel/branchset.rb, spec/treequel/branchcollection_spec.rb,
1102
+ spec/treequel/branchset_spec.rb:
1103
+ Treequel shell bugfixes, #empty? on Branchsets and BranchCollections
1104
+ * Handle tab when the command line is empty in the treequel shell.
1105
+ (Thanks Mahlon)
1106
+ * Add an #empty? predicate method to both Branchsets and
1107
+ BranchCollections (one spec still pending).
1108
+ [cbdb4342dc46]
1109
+
1110
+ 2010-02-17 Michael Granger <ged@FaerieMUD.org>
1111
+
1112
+ * bin/treequel, lib/treequel.rb, spec/treequel_spec.rb:
1113
+ Added an 'irb' command to the treequel shell, fixed build-number
1114
+ parsing.
1115
+ [5af1ee6a7f6c]
1116
+
1117
+ 2010-02-09 Michael Granger <ged@FaerieMUD.org>
1118
+
1119
+ * bin/treequel:
1120
+ Implemented the `-b bind_dn` option.
1121
+ [8a43b642fd91]
1122
+
1123
+ 2010-02-03 Michael Granger <ged@FaerieMUD.org>
1124
+
1125
+ * bin/treequel:
1126
+ Merged 233:1d06d28159a6
1127
+ [2a1bac85c038]
1128
+
1129
+ * bin/treequel, lib/treequel/constants.rb, lib/treequel/directory.rb,
1130
+ lib/treequel/schema.rb, lib/treequel/schema/attributetype.rb,
1131
+ spec/treequel/directory_spec.rb:
1132
+ Adding the beginnings of ActiveDirectory support, treequel shell
1133
+ options, server introspection.
1134
+ * Treequel shell:
1135
+ - Added a few initial command-line options for connection type, bind
1136
+ DN, etc.
1137
+ - Made colorization of encoded and URL attributes consistent with
1138
+ regular ones.
1139
+ - Downcase attribute names before using them in the 'cdn' command.
1140
+ * Added more server-introspection support to Treequel::Directory;
1141
+ added more control OIDs, and new methods for fetching supported
1142
+ extensions and features.
1143
+ * Adding ActiveDirectory support to Treequel::Schema:
1144
+ - Made alterations to the parser to support ActiveDirectory-style non-
1145
+ standard schema entries (OIDs in quotes, descriptors in
1146
+ attributeType SYNTAX attributes, etc.).
1147
+ - Handle the case where the schema doesn't have syntaxes, matching
1148
+ rules, and/or matching rule use entries.
1149
+ [e96bbf2e7325]
1150
+
1151
+ 2010-01-26 Michael Granger <ged@FaerieMUD.org>
1152
+
1153
+ * bin/treequel:
1154
+ Merged with 230:b994d8d9d608
1155
+ [1d06d28159a6]
1156
+
1157
+ * experiments/sorted_results_example.rb, lib/treequel/branchset.rb,
1158
+ lib/treequel/constants.rb, lib/treequel/controls/contentsync.rb,
1159
+ lib/treequel/controls/sortedresults.rb, lib/treequel/exceptions.rb:
1160
+ Initial (untested) implementation of the sorted results control.
1161
+ * Added Treequel::SortedResultsControl
1162
+ * Added an experiment for testing the sorted results control.
1163
+ * Re-sorted the OID constants to be in OID order
1164
+ [8b2fb7415412]
1165
+
1166
+ 2010-01-24 Michael Granger <ged@FaerieMUD.org>
1167
+
1168
+ * bin/treequel:
1169
+ Convert the option parsers to a class global instead of a constant
1170
+ [b994d8d9d608]
1171
+
1172
+ 2010-01-13 Michael Granger <ged@FaerieMUD.org>
1173
+
1174
+ * bin/treequel:
1175
+ Make treequel shell's 'cat' command error for non-existant entries
1176
+ [84087b01d473]
1177
+
1178
+ * bin/treequel:
1179
+ Fix the 'grep' command in the Treequel shell.
1180
+ [669a09149f48]
1181
+
1182
+ 2010-01-12 Michael Granger <ged@FaerieMUD.org>
1183
+
1184
+ * LICENSE, bin/treequel, examples/ldap-rack-auth.rb,
1185
+ experiments/contentsync.rb, experiments/filter-syntax-spike.rb,
1186
+ lib/treequel/controls/contentsync.rb, lib/treequel/directory.rb,
1187
+ spec/treequel/directory_spec.rb:
1188
+ Operational attributes propagation and treequel shell fixes.
1189
+ * Fix propagation of Treequel::Branch#include_operational_attrs flag
1190
+ through search.
1191
+ * Made short-form 'ls' output show entries with subordinates appear
1192
+ with a '/'.
1193
+ * Removed some old copied cruft from the treequel shell.
1194
+ * Added content-sync control experiment.
1195
+ * Got a little closer to content-sync control functioning.
1196
+ [ab2a2ff43b60]
1197
+
1198
+ 2010-01-07 Michael Granger <ged@FaerieMUD.org>
1199
+
1200
+ * bin/treequel:
1201
+ Merged with d77a0bf26034
1202
+ [14f5f723d0aa]
1203
+
1204
+ * Rakefile:
1205
+ Updated build system
1206
+ [00ac1bc4e917]
1207
+
1208
+ 2009-12-22 Michael Granger <ged@FaerieMUD.org>
1209
+
1210
+ * bin/treequel:
1211
+ Reworked LDIF display colors in the shell to be more visible.
1212
+ [d77a0bf26034]
1213
+
1214
+ * bin/treequel:
1215
+ Make the treequel shell fall back to plain connect (with a warning)
1216
+ if TLS fails.
1217
+ [9aeccec1ee84]
1218
+
1219
+ 2010-01-07 Michael Granger <ged@FaerieMUD.org>
1220
+
1221
+ * bin/treequel, lib/treequel/branch.rb, lib/treequel/constants.rb,
1222
+ lib/treequel/utils.rb:
1223
+ Improvements to the treequel shell, fixes for 1.9.1.
1224
+ * Fixes for 1.9.1:
1225
+ - Handle the change in the URI::REGEXP namespace under 1.9.1
1226
+ - Eliminated most of the shadowed variable warnings
1227
+ - Fixed the compact 'ls' display
1228
+ * Got the 'create' treequel shell command working reasonably well
1229
+ * Made Treequel::Branch#object_classes raise an exception if one of
1230
+ the specified additional_classes
1231
+ [5afefa230ef0]
1232
+
1233
+ 2010-01-06 Michael Granger <ged@FaerieMUD.org>
1234
+
1235
+ * lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
1236
+ Eliminate duplicates when smushing RDN attributes on a
1237
+ Treequel::Directory#create
1238
+ [83b178f0850e]
1239
+
1240
+ 2009-12-22 Michael Granger <ged@FaerieMUD.org>
1241
+
1242
+ * examples/ldap-monitor.rb, examples/ldap-
1243
+ monitor/public/css/master.css, examples/ldap-
1244
+ monitor/public/images/card_small.png, examples/ldap-
1245
+ monitor/public/images/chain_small.png, examples/ldap-
1246
+ monitor/public/images/globe_small.png, examples/ldap-
1247
+ monitor/public/images/globe_small_green.png, examples/ldap-
1248
+ monitor/public/images/plug.png, examples/ldap-
1249
+ monitor/public/images/shadows/large-30-down.png, examples/ldap-
1250
+ monitor/public/images/tick.png, examples/ldap-
1251
+ monitor/public/images/tick_circle.png, examples/ldap-
1252
+ monitor/public/images/treequel-favicon.png, examples/ldap-
1253
+ monitor/views/backends.erb, examples/ldap-
1254
+ monitor/views/connections.erb, examples/ldap-
1255
+ monitor/views/databases.erb, examples/ldap-
1256
+ monitor/views/dump_subsystem.erb, examples/ldap-
1257
+ monitor/views/index.erb, examples/ldap-monitor/views/layout.erb,
1258
+ examples/ldap-monitor/views/listeners.erb:
1259
+ Automated merge with ssh://hg@deveiate/Treequel
1260
+ [3bdd645530fe]
1261
+
1262
+ 2009-12-18 Michael Granger <ged@FaerieMUD.org>
1263
+
1264
+ * Merged with 5fd4033e1556
1265
+ [9571c9d8e4dd]
1266
+
1267
+ 2009-12-17 Michael Granger <ged@FaerieMUD.org>
1268
+
1269
+ * docs/openldap-oids.txt, lib/treequel/constants.rb,
1270
+ lib/treequel/controls/contentsync.rb,
1271
+ lib/treequel/controls/persistentsearch.rb,
1272
+ lib/treequel/directory.rb:
1273
+ More controls work, started several more control modules.
1274
+ * Adding a breakdown of all the controls the OpenLDAP server I have
1275
+ has, so I know which controls I can test against.
1276
+ * Added some control constants.
1277
+ * Added the ContentSyncControl and the PersistentSearchControl.
1278
+ * Added a Directory#supported_controls method.
1279
+ [ffc2ebacdfd0]
1280
+
1281
+ 2009-12-22 Michael Granger <ged@FaerieMUD.org>
1282
+
1283
+ * bin/treequel, examples/ldap-monitor.rb, examples/ldap-
1284
+ monitor/public/css/master.css, examples/ldap-
1285
+ monitor/public/images/card_small.png, examples/ldap-
1286
+ monitor/public/images/chain_small.png, examples/ldap-
1287
+ monitor/public/images/globe_small.png, examples/ldap-
1288
+ monitor/public/images/globe_small_green.png, examples/ldap-
1289
+ monitor/public/images/plug.png, examples/ldap-
1290
+ monitor/public/images/shadows/large-30-down.png, examples/ldap-
1291
+ monitor/public/images/tick.png, examples/ldap-
1292
+ monitor/public/images/tick_circle.png, examples/ldap-
1293
+ monitor/public/images/treequel-favicon.png, examples/ldap-
1294
+ monitor/views/backends.erb, examples/ldap-
1295
+ monitor/views/connections.erb, examples/ldap-
1296
+ monitor/views/databases.erb, examples/ldap-
1297
+ monitor/views/dump_subsystem.erb, examples/ldap-
1298
+ monitor/views/index.erb, examples/ldap-monitor/views/layout.erb,
1299
+ examples/ldap-monitor/views/listeners.erb, lib/treequel.rb:
1300
+ Treequel shell fix, splitting off the LDAP monitor example, version
1301
+ bump.
1302
+
1303
+ * Removed the check for an existing user record from the 'bind'
1304
+ command, as the user in question might not be visible until the
1305
+ bind happens.
1306
+ * Split off the ldap-monitor example into a project of its own
1307
+ (http://deveiate.org/misc.html).
1308
+ * Bumped the version to 1.0.2.
1309
+ [31c326800cc6]
1310
+
1311
+ 2009-12-16 Michael Granger <ged@FaerieMUD.org>
1312
+
1313
+ * Rakefile, lib/treequel/mixins.rb, project.yml:
1314
+ Updated build system, normalized comments in mixins.rb.
1315
+ [5fd4033e1556]
1316
+
1317
+ 2009-12-11 Michael Granger <ged@FaerieMUD.org>
1318
+
1319
+ * Rakefile.local, experiments/paged_results_example.rb,
1320
+ lib/treequel/controls/pagedresults.rb, lib/treequel/directory.rb,
1321
+ lib/treequel/mixins.rb, misc/ruby-ldap-controlsfix.patch,
1322
+ spec/lib/control_behavior.rb, spec/treequel/control_spec.rb,
1323
+ spec/treequel/controls/pagedresults_spec.rb:
1324
+ More work on controls,
1325
+ * Added a spec:gdb task for running specs under GDB.
1326
+ * Added a port of the paged-results control example that comes with
1327
+ Ruby-LDAP using Treequel instead.
1328
+ * Warn in the PagedResultsControl if the Ruby-LDAP that's installed is
1329
+ 0.9.9 or earlier, since those versions have broken #search_ext and
1330
+ #search_ext2 methods, and added a patch for 0.9.9.
1331
+ * Minimized the codepath differences between the two styles of
1332
+ Directory#search calls (with and without a block).
1333
+ * Added a shared behavior for control module specs.
1334
+ * Finished specs for the control module and the paged-results control.
1335
+ [b04972837e63]
1336
+
1337
+ 2009-12-08 Michael Granger <ged@FaerieMUD.org>
1338
+
1339
+ * lib/treequel.rb, lib/treequel/branch.rb, lib/treequel/branchset.rb,
1340
+ lib/treequel/constants.rb, lib/treequel/control.rb,
1341
+ lib/treequel/controls/pagedresults.rb, lib/treequel/directory.rb,
1342
+ lib/treequel/exceptions.rb, spec/treequel/branchset_spec.rb,
1343
+ spec/treequel/control_spec.rb, spec/treequel/directory_spec.rb:
1344
+ Finished initial Controls implementation, added PagedResultsControl.
1345
+ * Added delegators for
1346
+ Branchset->Branch->Directory->Conn#{controls,referrals}
1347
+ * Freeze the Treequel::Constants::Pattern constants so collisions show
1348
+ up right away. We'll reduce the number of exported constants soon,
1349
+ and the remaining ones will be the more-unique ones, but this
1350
+ change will at least stop it from happening (relatively) silently.
1351
+ * Finished the implementation of Treequel::Control
1352
+ * added tests for inclusion of controls in the searches that happen
1353
+ through Branchset
1354
+ * Added the interface for registering controls with Directory objects
1355
+ * Added Treequel::PagedResultsControl, which doesn't work quite yet
1356
+ because of a problem fetching the search cookie from the results.
1357
+ Not sure if this is a bug in Ruby-LDAP, or on our end.
1358
+ [d1ef2c0f53f2]
1359
+
1360
+ 2009-12-07 Mahlon E. Smith <mahlon@martini.nu>
1361
+
1362
+ * lib/treequel/control.rb, spec/treequel/control_spec.rb:
1363
+ Add scaffolding for Treequel::Control.
1364
+ [b937fbec04ca]
1365
+
1366
+ 2009-12-07 Michael Granger <ged@FaerieMUD.org>
1367
+
1368
+ * Rakefile, experiments/control-syntax-spike.rb,
1369
+ lib/treequel/branch.rb, lib/treequel/branchset.rb,
1370
+ spec/treequel/branch_spec.rb, spec/treequel/branchset_spec.rb:
1371
+ Law of Demeter fix and more work on the controls spike.
1372
+ [30f67c57d0bb]
1373
+
1374
+ 2009-12-06 Michael Granger <ged@FaerieMUD.org>
1375
+
1376
+ * .irbrc, Rakefile, bin/treequel, lib/treequel/branch.rb,
1377
+ lib/treequel/constants.rb, project.yml:
1378
+ Fixed the shell 'edit' command, cleaned up LDIF output, dependency
1379
+ fixes.
1380
+ - Made the LDIF output highlight correctly by adding LDIF regexen
1381
+ - Dup output values before converting them to LDIF
1382
+ - Removed dependencies are aren't required except for the 'treequel'
1383
+ shell.
1384
+ [014435b07b2d]
1385
+
1386
+ * bin/treequel, lib/treequel.rb:
1387
+ Adding '+' mode to 'cat' (stolen from shelldap)
1388
+ [b259ac7d021e]
1389
+
1390
+ 2009-12-01 Mahlon E. Smith <mahlon@martini.nu>
1391
+
1392
+ * Rakefile:
1393
+ Heh heh heh, he said 'fem'
1394
+ [150d5cf819a9]
1395
+
1396
+ 2009-11-17 Michael Granger <ged@FaerieMUD.org>
1397
+
1398
+ * .hgtags:
1399
+ Added tag 1.0.1 for changeset 9c9993ba908e
1400
+ [ff8226a744d8]
1401
+
1402
+ * .hgsigs:
1403
+ Added signature for changeset c5e4cb039999
1404
+ [9c9993ba908e] [1.0.1]
1405
+
1406
+ * bin/treequel, lib/treequel/branchset.rb,
1407
+ spec/treequel/branchset_spec.rb:
1408
+ Added Branchset#as, added 'yaml'/disabled 'edit' command in treequel
1409
+ shell
1410
+ [c5e4cb039999]
1411
+
1412
+ * Rakefile, project.yml:
1413
+ Updated build system.
1414
+ [67502a7b9224]
1415
+
1416
+ 2009-11-10 Michael Granger <ged@FaerieMUD.org>
1417
+
1418
+ * .hgignore:
1419
+ Ignore .orig files
1420
+ [fd8e18e00cf5]
1421
+
1422
+ * Rakefile, bin/treequel, lib/treequel/mixins.rb,
1423
+ lib/treequel/utils.rb:
1424
+ Factored out generic utility code from the treequel binary; added
1425
+ color logging
1426
+ [e7d7f6b3c101]
1427
+
1428
+ 2009-10-27 Michael Granger <ged@FaerieMUD.org>
1429
+
1430
+ * lib/treequel/filter.rb, spec/treequel/filter_spec.rb:
1431
+ Fix a bug in #filter( String => String )
1432
+ [8a309df5700a]
1433
+
1434
+ 2009-10-19 Michael Granger <ged@FaerieMUD.org>
1435
+
1436
+ * bin/treequel:
1437
+ Fixing highlighting for wrapped LDIF values in the treequel shell.
1438
+ [32cf480d20a5]
1439
+
1440
+ 2009-10-15 Michael Granger <ged@FaerieMUD.org>
1441
+
1442
+ * Rakefile, bin/treequel, examples/ldap-rack-auth.rb,
1443
+ experiments/ohm.rb, lib/treequel.rb:
1444
+ Version bump, build system updates, made 'treequel' gem-binary-
1445
+ friendly, and some experiments.
1446
+ * Beginnings of experimental rack middleware to do LDAP
1447
+ authentication.
1448
+ * Taking a different tack in the OHM idea.
1449
+ * Removed the $0 == __FILE__ wrapper around 'treequel' startup so it
1450
+ works from the gem.
1451
+ * Bumping version to 1.0.1.
1452
+ [ca660bd12f7f]
1453
+
1454
+ 2009-10-14 Michael Granger <ged@FaerieMUD.org>
1455
+
1456
+ * bin/treequel:
1457
+ Adding features to bin/treequel
1458
+ * Persistant history
1459
+ * Completion for attributes in command arguments
1460
+ * New 'rm' and 'grep' commands
1461
+ * Made the prompt for 'bind' a little clearer
1462
+ [9e4ba9a59fd3]
1463
+
1464
+ 2009-10-11 Michael Granger <ged@FaerieMUD.org>
1465
+
1466
+ * bin/treequel:
1467
+ Factored out short- and long-ls output generation into separate
1468
+ methods
1469
+ [b375e07370b2]
1470
+
1471
+ 2009-10-02 Michael Granger <ged@FaerieMUD.org>
1472
+
1473
+ * Rakefile, bin/treequel, lib/treequel.rb:
1474
+ * Fixed option parsing. Thanks to apeiros and dominikh on #Ruby-Pro
1475
+ @Freenode for their help.
1476
+ [ac1efb8eea87]
1477
+
1478
+ * bin/treequel:
1479
+ * Trying a different strategy for option-parsing
1480
+ [311df09556e1]
1481
+
1482
+ 2009-10-01 Michael Granger <ged@FaerieMUD.org>
1483
+
1484
+ * Automated merge with ssh://hg@repo.deveiate.org/Treequel
1485
+ [59c98c071fc3]
1486
+
1487
+ * Merged 192 and 193
1488
+ [186ab733dad9]
1489
+
1490
+ 2009-09-30 Michael Granger <ged@FaerieMUD.org>
1491
+
1492
+ * experiments/control-syntax-spike.rb, lib/treequel.rb, misc/ruby-
1493
+ terminfo-0.1.1.gem:
1494
+ Adding rebuilt terminfo gem and the beginnings of a spike to work
1495
+ out branch-control syntax
1496
+ [01e0025b7bdd]
1497
+
1498
+ 2009-08-13 Michael Granger <ged@FaerieMUD.org>
1499
+
1500
+ * .hgtags:
1501
+ Added tag 1.0.0 for changeset 300dd8a5aa24
1502
+ [744c193e6f50]
1503
+
1504
+ * .hgsigs:
1505
+ Added signature for changeset a4e90241950d
1506
+ [f907b569dcbe]
1507
+
1508
+ * README, Rakefile, lib/treequel/directory.rb:
1509
+ Miscellaneous docs fixups.
1510
+ [af4cd38971b0]
1511
+
1512
+ * README, lib/treequel/branchset.rb, spec/treequel/branchset_spec.rb:
1513
+ Adding Branchset#to_hash
1514
+ [98303f8ae4d2]
1515
+
1516
+ * Rakefile, project.yml:
1517
+ Updated build system.
1518
+ [3622b1711521]
1519
+
1520
+ * examples/company-directory.rb:
1521
+ Fixed the display in the company directory example template.
1522
+ [aeae86442cac]
1523
+
1524
+ * .hgignore, LICENSE, README, docs/manual/src/index.page, examples
1525
+ /company-directory.rb, examples/ldap-monitor.rb:
1526
+ * Adding some more examples, updating the README.
1527
+ * Moving benthanks to the README and manual instead of LICENSE.
1528
+ [24d2ac287c7a]
1529
+
1530
+ * LICENSE, README, Rakefile, project.yml:
1531
+ Some cleanup and additions for release.
1532
+ [9f455dbd34ef]
1533
+
1534
+ * lib/treequel.rb:
1535
+ Bumping version for release.
1536
+ [73f377edf18e]
1537
+
1538
+ * Rakefile, docs/manual/resources/js/sh.js, lib/treequel/filter.rb,
1539
+ spec/lib/helpers.rb, spec/treequel/filter_spec.rb,
1540
+ spec/treequel/mixins_spec.rb:
1541
+ Fixes for Ruby 1.9.1.
1542
+ [4c3e13d4e6c3]
1543
+
1544
+ * examples/ldap-monitor.rb, examples/ldap-
1545
+ monitor/public/css/master.css, examples/ldap-
1546
+ monitor/public/images/globe_small.png, examples/ldap-
1547
+ monitor/public/images/globe_small_green.png, examples/ldap-
1548
+ monitor/public/images/plug.png, examples/ldap-
1549
+ monitor/views/backends.erb, examples/ldap-
1550
+ monitor/views/databases.erb, examples/ldap-
1551
+ monitor/views/listeners.erb:
1552
+ More work on the ldap-monitor example.
1553
+ [b4408d13d3c1]
1554
+
1555
+ 2009-08-12 Michael Granger <ged@FaerieMUD.org>
1556
+
1557
+ * docs/manual/resources/css/deveiate.css,
1558
+ docs/manual/resources/js/sh.js, docs/manual/src/index.page,
1559
+ lib/treequel/directory.rb, lib/treequel/mixins.rb:
1560
+ * Removing unused deveiate-theme stylesheet.
1561
+ * Made examples use a new IRb SyntaxHighlighter brush instead of the
1562
+ Ruby one.
1563
+ * More manual work.
1564
+ * Fixed a bug in Treequel::Directory's default syntax mapping for
1565
+ boolean types.
1566
+ * Fixed a bug in Treequel::Delegation for delegated methods passed in
1567
+ as Symbols.
1568
+ * Made Directory delegate all possible Branch methods via its #base
1569
+ instead of just a few.
1570
+ [da86adb16b81]
1571
+
1572
+ * examples/ldap-monitor/public/css/master.css:
1573
+ Committing CSS I forgot to commit with the last rev
1574
+ [ec8f2af665c6]
1575
+
1576
+ 2009-08-11 Michael Granger <ged@FaerieMUD.org>
1577
+
1578
+ * docs/treequel-favicon.png, examples/ldap-monitor.rb, examples/ldap-
1579
+ monitor/public/css/master.css, examples/ldap-
1580
+ monitor/public/images/card_small.png, examples/ldap-
1581
+ monitor/public/images/chain_small.png, examples/ldap-
1582
+ monitor/public/images/tick.png, examples/ldap-
1583
+ monitor/public/images/tick_circle.png, examples/ldap-
1584
+ monitor/public/images/treequel-favicon.png, examples/ldap-
1585
+ monitor/views/backends.erb, examples/ldap-
1586
+ monitor/views/connections.erb, examples/ldap-
1587
+ monitor/views/dump_subsystem.erb, examples/ldap-
1588
+ monitor/views/layout.erb, examples/ldap_state.rb,
1589
+ spec/treequel_spec.rb:
1590
+ * Added another real-world example and added a bit more work to the
1591
+ web monitor app.
1592
+ * Made the rev spec tolerant of keywords being turned on or off.
1593
+ [bfc759ec3d3a]
1594
+
1595
+ * examples/ldap-monitor.rb, examples/ldap-
1596
+ monitor/public/css/master.css, examples/ldap-
1597
+ monitor/public/images/shadows/large-30-down.png, examples/ldap-
1598
+ monitor/views/connections.erb, examples/ldap-
1599
+ monitor/views/dump_subsystem.erb, examples/ldap-
1600
+ monitor/views/index.erb, examples/ldap-monitor/views/layout.erb,
1601
+ lib/treequel/branch.rb, spec/treequel/branch_spec.rb,
1602
+ spec/treequel_spec.rb:
1603
+ * Added my nascent LDAP web monitor sinatra app under examples/
1604
+ * Re-worked the way Treequel::Branch#[] works, as OpenLDAP's
1605
+ operational attributes don't seem to be in its schema, or at
1606
+ least not how it's being fetched currently. Need to investigate
1607
+ cn=subschema.
1608
+ * Fix the Treequel.version spec to expect the rev keyword.
1609
+ [c9e2a6b28d39]
1610
+
1611
+ 2009-08-10 Michael Granger <ged@FaerieMUD.org>
1612
+
1613
+ * docs/manual/src/index.page, experiments/userservice.rb,
1614
+ lib/treequel.rb, lib/treequel/branch.rb,
1615
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
1616
+ lib/treequel/directory.rb, lib/treequel/exceptions.rb,
1617
+ lib/treequel/filter.rb, lib/treequel/schema.rb,
1618
+ lib/treequel/schema/attributetype.rb,
1619
+ lib/treequel/schema/ldapsyntax.rb,
1620
+ lib/treequel/schema/matchingrule.rb,
1621
+ lib/treequel/schema/matchingruleuse.rb,
1622
+ lib/treequel/schema/objectclass.rb, spec/treequel_spec.rb:
1623
+ Stripped SVN constants and headers.
1624
+ [83fc292048c9]
1625
+
1626
+ * .irbrc, docs/manual/src/index.page,
1627
+ lib/treequel/branchcollection.rb, lib/treequel/filter.rb,
1628
+ spec/treequel/branchcollection_spec.rb,
1629
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
1630
+ * More manual work
1631
+ * Removed 'order' from BranchCollection
1632
+ * Fixed hash-filters for Hashes that contain both single matches and
1633
+ composite matches.
1634
+ [0b6835347c3b]
1635
+
1636
+ * docs/manual/resources/css/manual.css:
1637
+ Fixes for the manual footer
1638
+ [6b35527b9525]
1639
+
1640
+ * .hgignore, docs/Treequel Manual Diagrams.graffle,
1641
+ docs/manual/layouts/default.page, docs/manual/layouts/intro.page,
1642
+ docs/manual/resources/css/manual.css, docs/manual/resources/images
1643
+ /dialog-error.png, docs/manual/resources/images/dialog-
1644
+ information.png, docs/manual/resources/images/dialog-warning.png,
1645
+ docs/manual/resources/images/emblem-important.png,
1646
+ docs/manual/resources/images/logo-small.png,
1647
+ docs/manual/src/index.page, lib/treequel/branch.rb,
1648
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
1649
+ spec/treequel/branchset_spec.rb:
1650
+ * Removing Branch#order, since the client-library sort attribute and
1651
+ function don't do server-side ordering.
1652
+ [dfe7e7e17359]
1653
+
1654
+ 2009-08-05 Michael Granger <ged@FaerieMUD.org>
1655
+
1656
+ * docs/manual/resources/css/manual.css, docs/manual/src/index.page,
1657
+ lib/treequel/filter.rb, spec/treequel/filter_spec.rb:
1658
+ * Manual headings have a bit more top-margin.
1659
+ * More manual work.
1660
+ * Untangled Hash expressions from the Array cases and made them
1661
+ distinctly useful
1662
+ [21333d9653ff]
1663
+
1664
+ 2009-08-03 Michael Granger <ged@FaerieMUD.org>
1665
+
1666
+ * docs/manual/src/index.page:
1667
+ Merged f9ac0e1fa95f
1668
+ [b1aa9a5642f5]
1669
+
1670
+ * .irbrc, LICENSE, docs/manual/src/index.page:
1671
+ * Adding a prompt mode to the .irbrc for manual example generation.
1672
+ * More manual work.
1673
+ * Adding Mahlon to the license file.
1674
+ [4b7381e4c35c]
1675
+
1676
+ * docs/manual/lib/examples-filter.rb,
1677
+ docs/manual/resources/css/manual.css, docs/manual/src/index.page:
1678
+ * Finished conversion of the manual to client-side syntax-
1679
+ highlighting instead of Ultraviolet.
1680
+ * Merged some CSS from Redleaf's manual.
1681
+ [a0cbc5a505fb]
1682
+
1683
+ 2009-08-01 Michael Granger <ged@FaerieMUD.org>
1684
+
1685
+ * docs/manual/src/index.page, experiments/filter-syntax-spike.rb,
1686
+ experiments/inspect_entry.rb, experiments/laika.rb,
1687
+ experiments/ohm.rb, experiments/syntax-spike.rb,
1688
+ lib/treequel/branch.rb, lib/treequel/mixins.rb,
1689
+ lib/treequel/utils.rb:
1690
+ * Added details about Branchset#filter, #scope, #limit, and #select
1691
+ * Fixed the list of delegated branchset method in Treequel::Branch.
1692
+ [1d45903c1750]
1693
+
1694
+ 2009-07-31 Michael Granger <ged@FaerieMUD.org>
1695
+
1696
+ * Rakefile, project.yml:
1697
+ Updated build system
1698
+ [a3aeb3c6c147]
1699
+
1700
+ * .hgignore, Rakefile, docs/manual/src/index.page:
1701
+ Merged. Someday I'll get the hang of this.
1702
+ [0d8816a380da]
1703
+
1704
+ 2009-07-29 Michael Granger <ged@FaerieMUD.org>
1705
+
1706
+ * .hgignore, Rakefile, docs/manual/src/index.page,
1707
+ lib/treequel/filter.rb, project.yml, spec/treequel/filter_spec.rb:
1708
+ * Adding coverage cache to the ignorefile.
1709
+ * Added ruby-ldap dependency. Yay!
1710
+ * More work on the manual.
1711
+ * Made Treequel::Branch#filter treat a Hash like an array of tuples.
1712
+ [4ece63b2cc6e]
1713
+
1714
+ 2009-07-28 Michael Granger <ged@FaerieMUD.org>
1715
+
1716
+ * .hgignore, Rakefile:
1717
+ Merged with 34cc97817266
1718
+ [067907cead97]
1719
+
1720
+ 2009-07-27 Michael Granger <ged@FaerieMUD.org>
1721
+
1722
+ * .hgignore, Rakefile:
1723
+ Updated build system
1724
+ [109b2cbe661e]
1725
+
1726
+ * Merging work from gont
1727
+ [e67354b564e1]
1728
+
1729
+ 2009-07-24 Michael Granger <ged@FaerieMUD.org>
1730
+
1731
+ * .hgsub, .hgsubstate:
1732
+ Unlinking the subrepo, as it doesn't behave well enough quite yet.
1733
+ [9c59112d9e42]
1734
+
1735
+ 2009-07-28 Michael Granger <ged@FaerieMUD.org>
1736
+
1737
+ * .hgignore, Rakefile, docs/manual/src/index.page:
1738
+ Manual rewording, .hgignore updates
1739
+ [4c4abfba98e0]
1740
+
1741
+ 2009-07-24 Michael Granger <ged@FaerieMUD.org>
1742
+
1743
+ * .hgsub, .hgsubstate:
1744
+ Merging build system fixes
1745
+ [2e081686cd5d]
1746
+
1747
+ * Rakefile:
1748
+ Updated build system
1749
+ [dcf67ec9818a] <build-system-fixes>
1750
+
1751
+ * .hgsub, .hgsubstate, Rakefile:
1752
+ Removing subrepo, as it doesn't work quite the way I'd hoped.
1753
+ [b8de99344904] <build-system-fixes>
1754
+
1755
+ * .hgignore, .hgsubstate, Rakefile, Rakefile.local, project.yml:
1756
+ Initial commit of Mercurial-based tasks
1757
+ [5415543ce713] <build-system-fixes>
1758
+
1759
+ 2009-07-23 Michael Granger <ged@FaerieMUD.org>
1760
+
1761
+ * .hgsubstate, Rakefile, docs/treequel-red-small.png:
1762
+ Started converting svn-specific helpers and tasks to vcs-agnostic
1763
+ ones
1764
+ [48d9fbeb2d3e] <build-system-fixes>
1765
+
1766
+ 2009-07-21 Michael Granger <ged@FaerieMUD.org>
1767
+
1768
+ * .hgsub, .hgsubstate:
1769
+ Adding experimental .hgsub for the rake tasklibs
1770
+ [ae447545aa01]
1771
+
1772
+ 2009-07-21 Mahlon E. Smith <mahlon@martini.nu>
1773
+
1774
+ * docs/manual/src/index.page:
1775
+ Manual updates for Branches, Branchsets, and Directory.base.
1776
+ [7779841b6553]
1777
+
1778
+ 2009-07-21 Michael Granger <ged@FaerieMUD.org>
1779
+
1780
+ * docs/manual/resources/images/cc-by.png, docs/manual/src/index.page,
1781
+ lib/treequel/branch.rb, lib/treequel/branchset.rb,
1782
+ lib/treequel/directory.rb, lib/treequel/schema/objectclass.rb,
1783
+ spec/treequel/directory_spec.rb:
1784
+ * Treequel::Branch
1785
+ - Clear caches after a #delete
1786
+ - Return self from #create
1787
+ * Cleaned up Treequel::Schema::ObjectClass#inspect's return value a
1788
+ bit.
1789
+ * Check for non-existant objectClasses to avoid calling
1790
+ NilClass#structural? in Treequel::Directory#create.
1791
+ * Treequel::Branchset
1792
+ - Cleaned up #inspect's return value
1793
+ - New method: Sequel::Dataset-style #map
1794
+ * Manual work
1795
+ * Added a cc-by license badge instead of hitting creativecommons.org
1796
+ every time.
1797
+ [9baa3aa59ac7]
1798
+
1799
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
1800
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
1801
+ * Fixing Treequel::Branch#copy, which was mistakenly using a modrdn
1802
+ to copy.
1803
+ * Removing Treequel::Directory#copy, which was based on a misreading
1804
+ of `ldap_modrdn2()`.
1805
+ [d227d5d6f07e]
1806
+
1807
+ 2009-07-20 Michael Granger <ged@FaerieMUD.org>
1808
+
1809
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
1810
+ lib/treequel/directory.rb, lib/treequel/mixins.rb:
1811
+ * Treequel::Branch: Don't freeze non-Arrays in the cached attribute
1812
+ values hash.
1813
+ * Make a distinct copy of the log proxy for duplicated objects.
1814
+ * Manual work.
1815
+ [7af3d5893bbe]
1816
+
1817
+ * Rakefile, Rakefile.local, docs/manual/src/index.page,
1818
+ lib/treequel/directory.rb, lib/treequel/mixins.rb,
1819
+ spec/treequel/directory_spec.rb, spec/treequel/mixins_spec.rb:
1820
+ * Made the Hash merge function a module_function instead of a
1821
+ constant
1822
+ * Added copying to the manual, and fixed it in Treequel::Directory.
1823
+ * Added a local Rakefile, and added a manual-check task
1824
+ [0f343c7bac68]
1825
+
1826
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
1827
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
1828
+ spec/treequel/directory_spec.rb:
1829
+ * Added the ability to include operational attributes in
1830
+ Treequel::Branch at the class and instance level.
1831
+ * Bumped logging around binding/rebinding to INFO level.
1832
+ [88a37f71375a]
1833
+
1834
+ 2009-07-19 Michael Granger <ged@FaerieMUD.org>
1835
+
1836
+ * docs/manual/resources/images/wrap.png:
1837
+ Adding missing wrap.png for the manual
1838
+ [741f1a399ca8]
1839
+
1840
+ 2009-07-18 Michael Granger <ged@FaerieMUD.org>
1841
+
1842
+ * docs/manual/resources/images/logo.png, docs/manual/src/index.page,
1843
+ docs/treequel-red.png, docs/treequel-red.svg,
1844
+ lib/treequel/constants.rb, lib/treequel/directory.rb,
1845
+ lib/treequel/schema/objectclass.rb,
1846
+ spec/treequel/schema/objectclass_spec.rb:
1847
+ * Make ObjectClass#sup return the corresponding ObjectClass
1848
+ instance.
1849
+ * Added #get_extended_entry to Directory.
1850
+ * More manual work.
1851
+ [6f0e1d82faa4]
1852
+
1853
+ 2009-07-17 Michael Granger <ged@FaerieMUD.org>
1854
+
1855
+ * docs/manual/resources/css/manual.css,
1856
+ docs/manual/resources/images/arrow_225_small.png,
1857
+ docs/manual/resources/images/arrow_315_small.png,
1858
+ docs/manual/resources/images/arrow_skip.png,
1859
+ docs/manual/resources/images/information.png,
1860
+ docs/manual/resources/images/logo.png,
1861
+ docs/manual/resources/images/magnifier_left.png,
1862
+ docs/manual/resources/images/printer.png,
1863
+ docs/manual/resources/images/question.png,
1864
+ docs/manual/resources/images/scripts_code.png,
1865
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page, docs
1866
+ /treequel-red-medium.png, docs/treequel-red-small.png, docs
1867
+ /treequel-red.png, docs/treequel-red.svg, docs/treequel.svg:
1868
+ Cleaned up the manual syntax-highlighting a bunch. Red logo!
1869
+ [b470955b4277]
1870
+
1871
+ * docs/manual/layouts/intro.page, docs/manual/lib/examples-filter.rb,
1872
+ docs/manual/resources/css/manual.css,
1873
+ docs/manual/resources/images/help.png,
1874
+ docs/manual/resources/images/magnifier.png,
1875
+ docs/manual/resources/images/page_white_code.png,
1876
+ docs/manual/resources/images/page_white_copy.png,
1877
+ docs/manual/resources/images/printer.png,
1878
+ docs/manual/resources/images/wrapping.png,
1879
+ docs/manual/resources/js/manual.js, docs/manual/resources/js/sh.js,
1880
+ docs/manual/resources/swf/clipboard.swf, docs/manual/src/index.page:
1881
+ Use client-side highlighting instead of Ultraviolet.
1882
+ [31ce6958889d]
1883
+
1884
+ 2009-07-17 Mahlon E. Smith <mahlon@martini.nu>
1885
+
1886
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
1887
+ spec/treequel/branch_spec.rb:
1888
+ * Wrap branch rdn attributes in an array for easy mungin' and
1889
+ merging.
1890
+ * Fix base_dn option from URI parsing and options hash.
1891
+ * Minor manual updates.
1892
+ [2f1b04aa4c88]
1893
+
1894
+ 2009-07-17 Michael Granger <ged@FaerieMUD.org>
1895
+
1896
+ * docs/manual/lib/editorial-filter.rb,
1897
+ docs/manual/resources/css/manual.css,
1898
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page:
1899
+ * Manual work.
1900
+ [7fec5e5e47cf]
1901
+
1902
+ * docs/manual/layouts/intro.page,
1903
+ docs/manual/resources/images/logo.png,
1904
+ docs/manual/resources/js/jquery-1.3.2.min.js,
1905
+ docs/manual/resources/js/jquery.ThickBox.js,
1906
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page:
1907
+ * Logo and other manual work
1908
+ * Added the missing resources/js/ dir to the manual
1909
+ [4a9186101ea3]
1910
+
1911
+ * bin/treequel, docs/manual/src/index.page, docs/treequel-blue.svgz,
1912
+ lib/treequel/branch.rb, lib/treequel/directory.rb,
1913
+ lib/treequel/schema/objectclass.rb, spec/treequel/branch_spec.rb,
1914
+ spec/treequel/directory_spec.rb:
1915
+ * Treequel::Branch
1916
+ - Added #exists?, #get_child,
1917
+ - Fixed #object_classes and other schema-related methods.
1918
+ * Added Treequel::Schema::ObjectClass#structural?
1919
+ * Added some fixes for Ruby/LDAP 0.9.9.
1920
+ [eea6b8cff79a]
1921
+
1922
+ 2009-07-16 Mahlon E. Smith <mahlon@martini.nu>
1923
+
1924
+ * docs/manual/src/index.page, lib/treequel.rb, lib/treequel/branch.rb,
1925
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
1926
+ spec/treequel/directory_spec.rb, spec/treequel_spec.rb:
1927
+ * Wrap branch rdn attributes in an array for easy mungin' and
1928
+ merging.
1929
+ * Fix base_dn option from URI parsing and options hash.
1930
+ * Minor manual updates.
1931
+ [b27a0b79f367]
1932
+
1933
+ 2009-07-15 Michael Granger <ged@FaerieMUD.org>
1934
+
1935
+ * lib/treequel/branch.rb, lib/treequel/filter.rb,
1936
+ spec/treequel/filter_spec.rb:
1937
+ * Order attributes by their key when composing a multi-value RDN
1938
+ from a pair + a Hash for predictabilty.
1939
+ * Added support for negated Sequel expressions (e.g., `~:cn` =>
1940
+ `(!(cn=*))`, `~{:cn => 'foo'}` => `(!(cn=foo))` )
1941
+ [191820b894dc]
1942
+
1943
+ * docs/treequel.svgz:
1944
+ Adding logo
1945
+ [9e3c3d925484]
1946
+
1947
+ 2009-07-13 Michael Granger <ged@FaerieMUD.org>
1948
+
1949
+ * Rakefile, docs/manual/src/index.page, experiments/ohm.rb,
1950
+ lib/treequel.rb, lib/treequel/branch.rb,
1951
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
1952
+ lib/treequel/constants.rb, lib/treequel/directory.rb,
1953
+ lib/treequel/schema.rb, lib/treequel/schema/ldapsyntax.rb,
1954
+ lib/treequel/schema/matchingrule.rb,
1955
+ lib/treequel/schema/matchingruleuse.rb,
1956
+ spec/treequel/branch_spec.rb,
1957
+ spec/treequel/branchcollection_spec.rb,
1958
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
1959
+ spec/treequel_spec.rb:
1960
+ * Updated build system
1961
+ * Treequel::Branch:
1962
+ - refactored so it uses its DN for everything instead of having to
1963
+ constantly build its DN from its RDN attribute/value pair.
1964
+ - added support for multi-value RDNs (e.g., cn=foo+l=bar)
1965
+ - new method: #uri
1966
+ * Commented out the spammy debug from the schema-parsing functions
1967
+ * Treequel::Directory
1968
+ - Renamed #basedn to #base_dn
1969
+ - Added #base method for creating a Branch that wraps the base DN
1970
+ - Delegate Branch-ish methods through the new #base branch.
1971
+ - New method #uri
1972
+ - Refactored search methods to use search_ext2 for efficiency
1973
+ * Treequel::Branchset
1974
+ - refactored to explicitly use a Branch
1975
+ - made it Enumerable and refactored #all out as an alias for #entries
1976
+ - added a convenience method for creating a BranchCollection from the
1977
+ Branchset's results
1978
+ * Treequel::BranchCollection
1979
+ - made it Enumerable through each branchset's #each; refactored #all
1980
+ as an alias for #entries
1981
+ * Treequel::Constants
1982
+ - Added an inverse mapping for SCOPE.
1983
+ - Disambiguated the 'ESCAPED' pattern for DNs from the one for
1984
+ attribute values.
1985
+ * Updated the manual
1986
+ [aa1a22869419]
1987
+
1988
+ 2009-07-08 Michael Granger <ged@FaerieMUD.org>
1989
+
1990
+ * bin/treequel, experiments/dn.abnf, experiments/ohm.rb,
1991
+ lib/treequel/branch.rb, lib/treequel/constants.rb,
1992
+ lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
1993
+ * A bit more hacking on the OHM experiment.
1994
+ * Treequel::Branch
1995
+ - Made attribute values in #must_attributes_hash empty strings to
1996
+ distinguish them from those created by #may_attributes_hash.
1997
+ - Added #valid_attributes_hash as a convenience method for a merged
1998
+ `must_attributes_hash` and `may_attributes_hash`.
1999
+ * Made the collection class returned from Treequel::Directory#search
2000
+ settable via a hash parameter, with fallback to the class of the
2001
+ base argument if it supports `new_from_entry` or Treequel::Branch
2002
+ if not.
2003
+ * Added RFC 4514 (Distinguished Names) productions to
2004
+ Treequel::Constants::Patterns
2005
+ * Treequel shell:
2006
+ - Changed the 'cd' command to 'cdn'
2007
+ - Validate the RDN passed to 'cdn'
2008
+ - Added a 'parent' command to allow changing up one RDN
2009
+ - Added a 'log' command to allow setting of log level, default log
2010
+ level to 'WARN'
2011
+ [4f3928271278]
2012
+
2013
+ 2009-07-03 Michael Granger <ged@FaerieMUD.org>
2014
+
2015
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2016
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
2017
+ lib/treequel/schema/objectclass.rb, spec/treequel/branch_spec.rb,
2018
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb:
2019
+ * Treequel::Branch
2020
+ - Made entry-fetching not raise an exception, but just return nil
2021
+ instead.
2022
+ - Added #must_attributes_hash and #may_attributes_hash
2023
+ - Added a splat-array to #object_classes, #must_attribute_types,
2024
+ #must_oids, #may_attribute_types, #may_oids,
2025
+ * Added a logged warning for the case-sensitivity bug
2026
+ * Refactored the parameter-normalization stuff out of
2027
+ Treequel::Directory#search method for readability, and to
2028
+ simplify the argument signature of #search.
2029
+ [878ce9a276b2]
2030
+
2031
+ 2009-07-02 Michael Granger <ged@FaerieMUD.org>
2032
+
2033
+ * docs/manual/src/index.page, experiments/delegation_cost.rb,
2034
+ experiments/userservice.rb, lib/treequel/branch.rb,
2035
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
2036
+ lib/treequel/filter.rb, spec/treequel/branch_spec.rb,
2037
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
2038
+ spec/treequel/filter_spec.rb:
2039
+ * Adding experimental Arrow service that uses Treequel to return
2040
+ ou=People records.
2041
+ * Made Branch#create create the underlying entry instead of a child to
2042
+ better match what #delete, #modify, etc. are doing.
2043
+ * Treequel::Directory:
2044
+ - Fixed the argument list passed to LDAP::Conn#search_ext2 to match
2045
+ what the actual code expects.
2046
+ - Modified #create to create the entry underlying the branch passed in
2047
+ the first argument instead of an entry specified by RDN.
2048
+ * Treequel::Filter:
2049
+ - Factored out the tuple-parsing part of .parse_array_expression into
2050
+ a separate method.
2051
+ - Added a fallback to tuple-style expressions to handle expressions
2052
+ like { :uidNumber => 1414 }
2053
+ * Treequel::Branchset
2054
+ - Made it Enumerable
2055
+ - Added #limit
2056
+ * More work on the manual
2057
+ [f9b545b72c09]
2058
+
2059
+ 2009-06-30 Michael Granger <ged@FaerieMUD.org>
2060
+
2061
+ * experiments/ohm.rb, spec/treequel/filter_spec.rb:
2062
+ Removing the call to `Time.today` from the specs, as it requires the
2063
+ loading of 'time'.
2064
+ [a5b773de4514]
2065
+
2066
+ * lib/treequel/branch.rb, lib/treequel/connection.rb,
2067
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
2068
+ spec/treequel/connection_spec.rb, spec/treequel/directory_spec.rb:
2069
+ * Added Treequel::Branch#to_ufn
2070
+ * Removed Treequel::Connection class in favor of just handling the
2071
+ specific problems in the #search method.
2072
+ * Changed Treequel::Directory#search to be implemented in terms of
2073
+ #search_ext2 instead of the deprecated #search2
2074
+ [9e88e5e2559c]
2075
+
2076
+ 2009-06-29 Michael Granger <ged@FaerieMUD.org>
2077
+
2078
+ * experiments/ohm.rb, lib/treequel/filter.rb,
2079
+ spec/treequel/filter_spec.rb:
2080
+ * Adding the beginnings of an experimental object-mapping (tree-
2081
+ based ORM analogue) for LDAP entries.
2082
+ * Added handling for > and < Sequel expressions
2083
+ [e34950351275]
2084
+
2085
+ 2009-06-27 Michael Granger <ged@FaerieMUD.org>
2086
+
2087
+ * lib/treequel/utils.rb:
2088
+ Updated HTML logger formatter to the latest.
2089
+ [3bfc1759a408]
2090
+
2091
+ 2009-06-25 Michael Granger <ged@FaerieMUD.org>
2092
+
2093
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2094
+ spec/treequel/branch_spec.rb:
2095
+ * Renamed Treequel::Branch#modify to #merge
2096
+ * More manual work.
2097
+ [ba8c0f6589c3]
2098
+
2099
+ 2009-06-24 Michael Granger <ged@FaerieMUD.org>
2100
+
2101
+ * docs/manual/src/index.page:
2102
+ Fixed some LAIKA references in the manual.
2103
+ [9fc34044d06a]
2104
+
2105
+ 2009-06-23 Michael Granger <ged@FaerieMUD.org>
2106
+
2107
+ * docs/Treequel Manual Diagrams.graffle,
2108
+ docs/manual/layouts/intro.page,
2109
+ docs/manual/resources/css/manual.css, docs/manual/src/index.page,
2110
+ lib/treequel.rb, lib/treequel/constants.rb,
2111
+ lib/treequel/directory.rb, lib/treequel/mixins.rb,
2112
+ spec/treequel/directory_spec.rb, spec/treequel_spec.rb:
2113
+ * Fixed docs on the binding arguments for
2114
+ Treequel::Directory#initialize.
2115
+ * Fixed some typos.
2116
+ * Stopdoc'ed the sub-modules under Treequel::Constants.
2117
+ * Made Treequel.directory more flexible.
2118
+ * Added a tentative logo to the diagrams.
2119
+ * Updated the manual CSS and templates from Redleaf's.
2120
+ * Manual work.
2121
+ * Made the initial argument to Treequel::Directory#bind accept an
2122
+ object that duck-types as a Branch.
2123
+ [79dbb11efb67]
2124
+
2125
+ * lib/treequel/connection.rb, lib/treequel/directory.rb,
2126
+ lib/treequel/mixins.rb, spec/treequel/connection_spec.rb:
2127
+ * Added delegation to the connection wrapper.
2128
+ * Fixed a bug in the Treequel::Delegation code-generation when it
2129
+ generates a delegated assignment method (#foo=).
2130
+ [13c3ae870b11]
2131
+
2132
+ 2009-06-22 Michael Granger <ged@FaerieMUD.org>
2133
+
2134
+ * docs/manual/layouts/default.page, docs/manual/src/index.page,
2135
+ lib/treequel.rb, lib/treequel/branch.rb,
2136
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2137
+ lib/treequel/connection.rb, lib/treequel/constants.rb,
2138
+ lib/treequel/directory.rb, lib/treequel/exceptions.rb,
2139
+ lib/treequel/filter.rb, lib/treequel/schema.rb,
2140
+ lib/treequel/schema/attributetype.rb,
2141
+ lib/treequel/schema/ldapsyntax.rb,
2142
+ lib/treequel/schema/matchingrule.rb,
2143
+ lib/treequel/schema/matchingruleuse.rb,
2144
+ lib/treequel/schema/objectclass.rb,
2145
+ spec/treequel/connection_spec.rb, spec/treequel/directory_spec.rb,
2146
+ spec/treequel/filter_spec.rb:
2147
+ * Fixed RDoc headers.
2148
+ * Started work on a connection-abstraction that handles referrals,
2149
+ exception-normalization, and reconnection.
2150
+ * Merged filter constants into the Constants module's namespace and
2151
+ factored out some duplication and inconsistency.
2152
+ * Some manual work.
2153
+ * Fixed a buggy substring filter spec that was uncovered by the
2154
+ constants refactoring.
2155
+ [726aa7f95eb7]
2156
+
2157
+ 2009-06-18 Michael Granger <ged@FaerieMUD.org>
2158
+
2159
+ * README, Rakefile, docs/Treequel Manual Diagrams.graffle,
2160
+ lib/treequel.rb, lib/treequel/schema.rb, project.yml,
2161
+ spec/treequel/schema_spec.rb:
2162
+ * Updated the build system.
2163
+ * Untaint all schema names before trying to turn them into Symbols so
2164
+ it works under $SAFE = 1.
2165
+ * Fixed some documentation, updated the description with something
2166
+ less-vague.
2167
+ [062424db136b]
2168
+
2169
+ * Rakefile, lib/treequel.rb, lib/treequel/branch.rb,
2170
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2171
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
2172
+ spec/treequel/branchcollection_spec.rb,
2173
+ spec/treequel/branchset_spec.rb, spec/treequel_spec.rb:
2174
+ * Adding BranchCollection class.
2175
+ * Treequel::Branchset
2176
+ - Added #base_dn method
2177
+ - Added the base to the inspection text
2178
+ * Made argument to Treequel.directory optional
2179
+ [d175301aab61]
2180
+
2181
+ 2009-10-01 Michael Granger <ged@FaerieMUD.org>
2182
+
2183
+ * bin/treequel:
2184
+ * More work on option-parsing
2185
+ [a4acbdcb366e]
2186
+
2187
+ 2009-09-30 Michael Granger <ged@FaerieMUD.org>
2188
+
2189
+ * bin/treequel:
2190
+ Worked on the treequel shell, adding option-parsing and help
2191
+ [b1374ce2d79b]
2192
+
2193
+ * bin/treequel, lib/treequel/directory.rb:
2194
+ * Fixes for the treequel shell, which was very broken in the initial
2195
+ release. :/
2196
+ * Fixed method docs for Treequel::Directory#bind
2197
+ [0de4d48e9b2d]
2198
+
2199
+ 2009-08-13 Michael Granger <ged@FaerieMUD.org>
2200
+
2201
+ * .hgtags:
2202
+ Added tag 1.0.0 for changeset 300dd8a5aa24
2203
+ [104e3d7685c3]
2204
+
2205
+ * .hgsigs:
2206
+ Added signature for changeset a4e90241950d
2207
+ [300dd8a5aa24] [1.0.0]
2208
+
2209
+ * README, Rakefile, lib/treequel/directory.rb:
2210
+ Miscellaneous docs fixups.
2211
+ [a4e90241950d]
2212
+
2213
+ * README, lib/treequel/branchset.rb, spec/treequel/branchset_spec.rb:
2214
+ Adding Branchset#to_hash
2215
+ [e98fb34df0c0]
2216
+
2217
+ * Rakefile, project.yml:
2218
+ Updated build system.
2219
+ [e18bfe831135]
2220
+
2221
+ * examples/company-directory.rb:
2222
+ Fixed the display in the company directory example template.
2223
+ [a8927110eaa6]
2224
+
2225
+ * .hgignore, LICENSE, README, docs/manual/src/index.page, examples
2226
+ /company-directory.rb, examples/ldap-monitor.rb:
2227
+ * Adding some more examples, updating the README.
2228
+ * Moving benthanks to the README and manual instead of LICENSE.
2229
+ [dddcad307b99]
2230
+
2231
+ * LICENSE, README, Rakefile, project.yml:
2232
+ Some cleanup and additions for release.
2233
+ [c8fc81f20772]
2234
+
2235
+ * lib/treequel.rb:
2236
+ Bumping version for release.
2237
+ [e352bc86498a]
2238
+
2239
+ * Rakefile, docs/manual/resources/js/sh.js, lib/treequel/filter.rb,
2240
+ spec/lib/helpers.rb, spec/treequel/filter_spec.rb,
2241
+ spec/treequel/mixins_spec.rb:
2242
+ Fixes for Ruby 1.9.1.
2243
+ [73775f828f6b]
2244
+
2245
+ * examples/ldap-monitor.rb, examples/ldap-
2246
+ monitor/public/css/master.css, examples/ldap-
2247
+ monitor/public/images/globe_small.png, examples/ldap-
2248
+ monitor/public/images/globe_small_green.png, examples/ldap-
2249
+ monitor/public/images/plug.png, examples/ldap-
2250
+ monitor/views/backends.erb, examples/ldap-
2251
+ monitor/views/databases.erb, examples/ldap-
2252
+ monitor/views/listeners.erb:
2253
+ More work on the ldap-monitor example.
2254
+ [af19a52bb21a]
2255
+
2256
+ 2009-08-12 Michael Granger <ged@FaerieMUD.org>
2257
+
2258
+ * docs/manual/resources/css/deveiate.css,
2259
+ docs/manual/resources/js/sh.js, docs/manual/src/index.page,
2260
+ lib/treequel/directory.rb, lib/treequel/mixins.rb:
2261
+ * Removing unused deveiate-theme stylesheet.
2262
+ * Made examples use a new IRb SyntaxHighlighter brush instead of the
2263
+ Ruby one.
2264
+ * More manual work.
2265
+ * Fixed a bug in Treequel::Directory's default syntax mapping for
2266
+ boolean types.
2267
+ * Fixed a bug in Treequel::Delegation for delegated methods passed in
2268
+ as Symbols.
2269
+ * Made Directory delegate all possible Branch methods via its #base
2270
+ instead of just a few.
2271
+ [809044df70bd]
2272
+
2273
+ * examples/ldap-monitor/public/css/master.css:
2274
+ Committing CSS I forgot to commit with the last rev
2275
+ [633687b023c4]
2276
+
2277
+ 2009-08-11 Michael Granger <ged@FaerieMUD.org>
2278
+
2279
+ * docs/treequel-favicon.png, examples/ldap-monitor.rb, examples/ldap-
2280
+ monitor/public/css/master.css, examples/ldap-
2281
+ monitor/public/images/card_small.png, examples/ldap-
2282
+ monitor/public/images/chain_small.png, examples/ldap-
2283
+ monitor/public/images/tick.png, examples/ldap-
2284
+ monitor/public/images/tick_circle.png, examples/ldap-
2285
+ monitor/public/images/treequel-favicon.png, examples/ldap-
2286
+ monitor/views/backends.erb, examples/ldap-
2287
+ monitor/views/connections.erb, examples/ldap-
2288
+ monitor/views/dump_subsystem.erb, examples/ldap-
2289
+ monitor/views/layout.erb, examples/ldap_state.rb,
2290
+ spec/treequel_spec.rb:
2291
+ * Added another real-world example and added a bit more work to the
2292
+ web monitor app.
2293
+ * Made the rev spec tolerant of keywords being turned on or off.
2294
+ [f9551821eced]
2295
+
2296
+ * examples/ldap-monitor.rb, examples/ldap-
2297
+ monitor/public/css/master.css, examples/ldap-
2298
+ monitor/public/images/shadows/large-30-down.png, examples/ldap-
2299
+ monitor/views/connections.erb, examples/ldap-
2300
+ monitor/views/dump_subsystem.erb, examples/ldap-
2301
+ monitor/views/index.erb, examples/ldap-monitor/views/layout.erb,
2302
+ lib/treequel/branch.rb, spec/treequel/branch_spec.rb,
2303
+ spec/treequel_spec.rb:
2304
+ * Added my nascent LDAP web monitor sinatra app under examples/
2305
+ * Re-worked the way Treequel::Branch#[] works, as OpenLDAP's
2306
+ operational attributes don't seem to be in its schema, or at
2307
+ least not how it's being fetched currently. Need to investigate
2308
+ cn=subschema.
2309
+ * Fix the Treequel.version spec to expect the rev keyword.
2310
+ [85dadbaf70a9]
2311
+
2312
+ 2009-08-10 Michael Granger <ged@FaerieMUD.org>
2313
+
2314
+ * docs/manual/src/index.page, experiments/userservice.rb,
2315
+ lib/treequel.rb, lib/treequel/branch.rb,
2316
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2317
+ lib/treequel/directory.rb, lib/treequel/exceptions.rb,
2318
+ lib/treequel/filter.rb, lib/treequel/schema.rb,
2319
+ lib/treequel/schema/attributetype.rb,
2320
+ lib/treequel/schema/ldapsyntax.rb,
2321
+ lib/treequel/schema/matchingrule.rb,
2322
+ lib/treequel/schema/matchingruleuse.rb,
2323
+ lib/treequel/schema/objectclass.rb, spec/treequel_spec.rb:
2324
+ Stripped SVN constants and headers.
2325
+ [c8c4db6916f1]
2326
+
2327
+ * .irbrc, docs/manual/src/index.page,
2328
+ lib/treequel/branchcollection.rb, lib/treequel/filter.rb,
2329
+ spec/treequel/branchcollection_spec.rb,
2330
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
2331
+ * More manual work
2332
+ * Removed 'order' from BranchCollection
2333
+ * Fixed hash-filters for Hashes that contain both single matches and
2334
+ composite matches.
2335
+ [3624f71a141d]
2336
+
2337
+ * docs/manual/resources/css/manual.css:
2338
+ Fixes for the manual footer
2339
+ [1b0eaa8f5a64]
2340
+
2341
+ * .hgignore, docs/Treequel Manual Diagrams.graffle,
2342
+ docs/manual/layouts/default.page, docs/manual/layouts/intro.page,
2343
+ docs/manual/resources/css/manual.css, docs/manual/resources/images
2344
+ /dialog-error.png, docs/manual/resources/images/dialog-
2345
+ information.png, docs/manual/resources/images/dialog-warning.png,
2346
+ docs/manual/resources/images/emblem-important.png,
2347
+ docs/manual/resources/images/logo-small.png,
2348
+ docs/manual/src/index.page, lib/treequel/branch.rb,
2349
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
2350
+ spec/treequel/branchset_spec.rb:
2351
+ * Removing Branch#order, since the client-library sort attribute and
2352
+ function don't do server-side ordering.
2353
+ [72833e18e4f8]
2354
+
2355
+ 2009-08-05 Michael Granger <ged@FaerieMUD.org>
2356
+
2357
+ * docs/manual/resources/css/manual.css, docs/manual/src/index.page,
2358
+ lib/treequel/filter.rb, spec/treequel/filter_spec.rb:
2359
+ * Manual headings have a bit more top-margin.
2360
+ * More manual work.
2361
+ * Untangled Hash expressions from the Array cases and made them
2362
+ distinctly useful
2363
+ [bacf91784530]
2364
+
2365
+ 2009-08-03 Michael Granger <ged@FaerieMUD.org>
2366
+
2367
+ * docs/manual/src/index.page:
2368
+ Merged f9ac0e1fa95f
2369
+ [b53d391399ce]
2370
+
2371
+ * docs/manual/lib/examples-filter.rb,
2372
+ docs/manual/resources/css/manual.css, docs/manual/src/index.page:
2373
+ * Finished conversion of the manual to client-side syntax-
2374
+ highlighting instead of Ultraviolet.
2375
+ * Merged some CSS from Redleaf's manual.
2376
+ [afeff031274d]
2377
+
2378
+ * .irbrc, LICENSE, docs/manual/src/index.page:
2379
+ * Adding a prompt mode to the .irbrc for manual example generation.
2380
+ * More manual work.
2381
+ * Adding Mahlon to the license file.
2382
+ [f9ac0e1fa95f]
2383
+
2384
+ 2009-08-01 Michael Granger <ged@FaerieMUD.org>
2385
+
2386
+ * docs/manual/src/index.page, experiments/filter-syntax-spike.rb,
2387
+ experiments/inspect_entry.rb, experiments/laika.rb,
2388
+ experiments/ohm.rb, experiments/syntax-spike.rb,
2389
+ lib/treequel/branch.rb, lib/treequel/mixins.rb,
2390
+ lib/treequel/utils.rb:
2391
+ * Added details about Branchset#filter, #scope, #limit, and #select
2392
+ * Fixed the list of delegated branchset method in Treequel::Branch.
2393
+ [1ddf7d4212c7]
2394
+
2395
+ 2009-07-31 Michael Granger <ged@FaerieMUD.org>
2396
+
2397
+ * Rakefile, project.yml:
2398
+ Updated build system
2399
+ [6b5358420802]
2400
+
2401
+ * .hgignore, Rakefile, docs/manual/src/index.page:
2402
+ Merged. Someday I'll get the hang of this.
2403
+ [a5e715f5f877]
2404
+
2405
+ 2009-07-28 Michael Granger <ged@FaerieMUD.org>
2406
+
2407
+ * .hgignore, Rakefile:
2408
+ Merged with 34cc97817266
2409
+ [395b7bf6f248]
2410
+
2411
+ * .hgignore, Rakefile, docs/manual/src/index.page:
2412
+ Manual rewording, .hgignore updates
2413
+ [89f74035c67d]
2414
+
2415
+ 2009-07-29 Michael Granger <ged@FaerieMUD.org>
2416
+
2417
+ * .hgignore, Rakefile, docs/manual/src/index.page,
2418
+ lib/treequel/filter.rb, project.yml, spec/treequel/filter_spec.rb:
2419
+ * Adding coverage cache to the ignorefile.
2420
+ * Added ruby-ldap dependency. Yay!
2421
+ * More work on the manual.
2422
+ * Made Treequel::Branch#filter treat a Hash like an array of tuples.
2423
+ [46e6dce0c011]
2424
+
2425
+ 2009-07-27 Michael Granger <ged@FaerieMUD.org>
2426
+
2427
+ * .hgignore, Rakefile:
2428
+ Updated build system
2429
+ [34cc97817266]
2430
+
2431
+ * Merging work from gont
2432
+ [daf0e44c41ac]
2433
+
2434
+ 2009-07-24 Michael Granger <ged@FaerieMUD.org>
2435
+
2436
+ * .hgsub, .hgsubstate:
2437
+ Merging build system fixes
2438
+ [b7a919b2ad5d]
2439
+
2440
+ * Rakefile:
2441
+ Updated build system
2442
+ [620807d4c6d5] <build-system-fixes>
2443
+
2444
+ * .hgsub, .hgsubstate, Rakefile:
2445
+ Removing subrepo, as it doesn't work quite the way I'd hoped.
2446
+ [f631900a9ad8] <build-system-fixes>
2447
+
2448
+ * .hgsub, .hgsubstate:
2449
+ Unlinking the subrepo, as it doesn't behave well enough quite yet.
2450
+ [fc3c3bac2c22]
2451
+
2452
+ * .hgignore, .hgsubstate, Rakefile, Rakefile.local, project.yml:
2453
+ Initial commit of Mercurial-based tasks
2454
+ [65236b2101e5] <build-system-fixes>
2455
+
2456
+ 2009-07-23 Michael Granger <ged@FaerieMUD.org>
2457
+
2458
+ * .hgsubstate, Rakefile, docs/treequel-red-small.png:
2459
+ Started converting svn-specific helpers and tasks to vcs-agnostic
2460
+ ones
2461
+ [76e4c3cc308b] <build-system-fixes>
2462
+
2463
+ 2009-07-21 Michael Granger <ged@FaerieMUD.org>
2464
+
2465
+ * .hgsub, .hgsubstate:
2466
+ Adding experimental .hgsub for the rake tasklibs
2467
+ [8be8e94f829d]
2468
+
2469
+ 2009-07-21 Mahlon E. Smith <mahlon@martini.nu>
2470
+
2471
+ * docs/manual/src/index.page:
2472
+ Manual updates for Branches, Branchsets, and Directory.base.
2473
+ [7bd626d9f0cd]
2474
+
2475
+ 2009-07-21 Michael Granger <ged@FaerieMUD.org>
2476
+
2477
+ * docs/manual/resources/images/cc-by.png, docs/manual/src/index.page,
2478
+ lib/treequel/branch.rb, lib/treequel/branchset.rb,
2479
+ lib/treequel/directory.rb, lib/treequel/schema/objectclass.rb,
2480
+ spec/treequel/directory_spec.rb:
2481
+ * Treequel::Branch
2482
+ - Clear caches after a #delete
2483
+ - Return self from #create
2484
+ * Cleaned up Treequel::Schema::ObjectClass#inspect's return value a
2485
+ bit.
2486
+ * Check for non-existant objectClasses to avoid calling
2487
+ NilClass#structural? in Treequel::Directory#create.
2488
+ * Treequel::Branchset
2489
+ - Cleaned up #inspect's return value
2490
+ - New method: Sequel::Dataset-style #map
2491
+ * Manual work
2492
+ * Added a cc-by license badge instead of hitting creativecommons.org
2493
+ every time.
2494
+ [8ca3428f711e]
2495
+
2496
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
2497
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
2498
+ * Fixing Treequel::Branch#copy, which was mistakenly using a modrdn
2499
+ to copy.
2500
+ * Removing Treequel::Directory#copy, which was based on a misreading
2501
+ of `ldap_modrdn2()`.
2502
+ [15bfd9785019]
2503
+
2504
+ 2009-07-20 Michael Granger <ged@FaerieMUD.org>
2505
+
2506
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2507
+ lib/treequel/directory.rb, lib/treequel/mixins.rb:
2508
+ * Treequel::Branch: Don't freeze non-Arrays in the cached attribute
2509
+ values hash.
2510
+ * Make a distinct copy of the log proxy for duplicated objects.
2511
+ * Manual work.
2512
+ [74b7a9bca977]
2513
+
2514
+ * Rakefile, Rakefile.local, docs/manual/src/index.page,
2515
+ lib/treequel/directory.rb, lib/treequel/mixins.rb,
2516
+ spec/treequel/directory_spec.rb, spec/treequel/mixins_spec.rb:
2517
+ * Made the Hash merge function a module_function instead of a
2518
+ constant
2519
+ * Added copying to the manual, and fixed it in Treequel::Directory.
2520
+ * Added a local Rakefile, and added a manual-check task
2521
+ [3e4105c3ebaa]
2522
+
2523
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2524
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
2525
+ spec/treequel/directory_spec.rb:
2526
+ * Added the ability to include operational attributes in
2527
+ Treequel::Branch at the class and instance level.
2528
+ * Bumped logging around binding/rebinding to INFO level.
2529
+ [7a62ac4c346b]
2530
+
2531
+ 2009-07-19 Michael Granger <ged@FaerieMUD.org>
2532
+
2533
+ * docs/manual/resources/images/wrap.png:
2534
+ Adding missing wrap.png for the manual
2535
+ [206b077875e5]
2536
+
2537
+ 2009-07-18 Michael Granger <ged@FaerieMUD.org>
2538
+
2539
+ * docs/manual/resources/images/logo.png, docs/manual/src/index.page,
2540
+ docs/treequel-red.png, docs/treequel-red.svg,
2541
+ lib/treequel/constants.rb, lib/treequel/directory.rb,
2542
+ lib/treequel/schema/objectclass.rb,
2543
+ spec/treequel/schema/objectclass_spec.rb:
2544
+ * Make ObjectClass#sup return the corresponding ObjectClass
2545
+ instance.
2546
+ * Added #get_extended_entry to Directory.
2547
+ * More manual work.
2548
+ [1505adefc436]
2549
+
2550
+ 2009-07-17 Michael Granger <ged@FaerieMUD.org>
2551
+
2552
+ * docs/manual/resources/css/manual.css,
2553
+ docs/manual/resources/images/arrow_225_small.png,
2554
+ docs/manual/resources/images/arrow_315_small.png,
2555
+ docs/manual/resources/images/arrow_skip.png,
2556
+ docs/manual/resources/images/information.png,
2557
+ docs/manual/resources/images/logo.png,
2558
+ docs/manual/resources/images/magnifier_left.png,
2559
+ docs/manual/resources/images/printer.png,
2560
+ docs/manual/resources/images/question.png,
2561
+ docs/manual/resources/images/scripts_code.png,
2562
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page, docs
2563
+ /treequel-red-medium.png, docs/treequel-red-small.png, docs
2564
+ /treequel-red.png, docs/treequel-red.svg, docs/treequel.svg:
2565
+ Cleaned up the manual syntax-highlighting a bunch. Red logo!
2566
+ [12ec14055953]
2567
+
2568
+ * docs/manual/layouts/intro.page, docs/manual/lib/examples-filter.rb,
2569
+ docs/manual/resources/css/manual.css,
2570
+ docs/manual/resources/images/help.png,
2571
+ docs/manual/resources/images/magnifier.png,
2572
+ docs/manual/resources/images/page_white_code.png,
2573
+ docs/manual/resources/images/page_white_copy.png,
2574
+ docs/manual/resources/images/printer.png,
2575
+ docs/manual/resources/images/wrapping.png,
2576
+ docs/manual/resources/js/manual.js, docs/manual/resources/js/sh.js,
2577
+ docs/manual/resources/swf/clipboard.swf, docs/manual/src/index.page:
2578
+ Use client-side highlighting instead of Ultraviolet.
2579
+ [8c8193c00a6a]
2580
+
2581
+ 2009-07-17 Mahlon E. Smith <mahlon@martini.nu>
2582
+
2583
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2584
+ spec/treequel/branch_spec.rb:
2585
+ * Wrap branch rdn attributes in an array for easy mungin' and
2586
+ merging.
2587
+ * Fix base_dn option from URI parsing and options hash.
2588
+ * Minor manual updates.
2589
+ [1e2391e73329]
2590
+
2591
+ 2009-07-17 Michael Granger <ged@FaerieMUD.org>
2592
+
2593
+ * docs/manual/lib/editorial-filter.rb,
2594
+ docs/manual/resources/css/manual.css,
2595
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page:
2596
+ * Manual work.
2597
+ [96e0654c8652]
2598
+
2599
+ * docs/manual/layouts/intro.page,
2600
+ docs/manual/resources/images/logo.png,
2601
+ docs/manual/resources/js/jquery-1.3.2.min.js,
2602
+ docs/manual/resources/js/jquery.ThickBox.js,
2603
+ docs/manual/resources/js/manual.js, docs/manual/src/index.page:
2604
+ * Logo and other manual work
2605
+ * Added the missing resources/js/ dir to the manual
2606
+ [3e2835dbe859]
2607
+
2608
+ * bin/treequel, docs/manual/src/index.page, docs/treequel-blue.svgz,
2609
+ lib/treequel/branch.rb, lib/treequel/directory.rb,
2610
+ lib/treequel/schema/objectclass.rb, spec/treequel/branch_spec.rb,
2611
+ spec/treequel/directory_spec.rb:
2612
+ * Treequel::Branch
2613
+ - Added #exists?, #get_child,
2614
+ - Fixed #object_classes and other schema-related methods.
2615
+ * Added Treequel::Schema::ObjectClass#structural?
2616
+ * Added some fixes for Ruby/LDAP 0.9.9.
2617
+ [cf1c7d481519]
2618
+
2619
+ 2009-07-16 Mahlon E. Smith <mahlon@martini.nu>
2620
+
2621
+ * docs/manual/src/index.page, lib/treequel.rb, lib/treequel/branch.rb,
2622
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
2623
+ spec/treequel/directory_spec.rb, spec/treequel_spec.rb:
2624
+ * Wrap branch rdn attributes in an array for easy mungin' and
2625
+ merging.
2626
+ * Fix base_dn option from URI parsing and options hash.
2627
+ * Minor manual updates.
2628
+ [bf47d67f76f1]
2629
+
2630
+ 2009-07-15 Michael Granger <ged@FaerieMUD.org>
2631
+
2632
+ * lib/treequel/branch.rb, lib/treequel/filter.rb,
2633
+ spec/treequel/filter_spec.rb:
2634
+ * Order attributes by their key when composing a multi-value RDN
2635
+ from a pair + a Hash for predictabilty.
2636
+ * Added support for negated Sequel expressions (e.g., `~:cn` =>
2637
+ `(!(cn=*))`, `~{:cn => 'foo'}` => `(!(cn=foo))` )
2638
+ [7d8dc70f5fe1]
2639
+
2640
+ * docs/treequel.svgz:
2641
+ Adding logo
2642
+ [f21be0277b19]
2643
+
2644
+ 2009-07-13 Michael Granger <ged@FaerieMUD.org>
2645
+
2646
+ * Rakefile, docs/manual/src/index.page, experiments/ohm.rb,
2647
+ lib/treequel.rb, lib/treequel/branch.rb,
2648
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2649
+ lib/treequel/constants.rb, lib/treequel/directory.rb,
2650
+ lib/treequel/schema.rb, lib/treequel/schema/ldapsyntax.rb,
2651
+ lib/treequel/schema/matchingrule.rb,
2652
+ lib/treequel/schema/matchingruleuse.rb,
2653
+ spec/treequel/branch_spec.rb,
2654
+ spec/treequel/branchcollection_spec.rb,
2655
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
2656
+ spec/treequel_spec.rb:
2657
+ * Updated build system
2658
+ * Treequel::Branch:
2659
+ - refactored so it uses its DN for everything instead of having to
2660
+ constantly build its DN from its RDN attribute/value pair.
2661
+ - added support for multi-value RDNs (e.g., cn=foo+l=bar)
2662
+ - new method: #uri
2663
+ * Commented out the spammy debug from the schema-parsing functions
2664
+ * Treequel::Directory
2665
+ - Renamed #basedn to #base_dn
2666
+ - Added #base method for creating a Branch that wraps the base DN
2667
+ - Delegate Branch-ish methods through the new #base branch.
2668
+ - New method #uri
2669
+ - Refactored search methods to use search_ext2 for efficiency
2670
+ * Treequel::Branchset
2671
+ - refactored to explicitly use a Branch
2672
+ - made it Enumerable and refactored #all out as an alias for #entries
2673
+ - added a convenience method for creating a BranchCollection from the
2674
+ Branchset's results
2675
+ * Treequel::BranchCollection
2676
+ - made it Enumerable through each branchset's #each; refactored #all
2677
+ as an alias for #entries
2678
+ * Treequel::Constants
2679
+ - Added an inverse mapping for SCOPE.
2680
+ - Disambiguated the 'ESCAPED' pattern for DNs from the one for
2681
+ attribute values.
2682
+ * Updated the manual
2683
+ [e434f63779e5]
2684
+
2685
+ 2009-07-08 Michael Granger <ged@FaerieMUD.org>
2686
+
2687
+ * bin/treequel, experiments/dn.abnf, experiments/ohm.rb,
2688
+ lib/treequel/branch.rb, lib/treequel/constants.rb,
2689
+ lib/treequel/directory.rb, spec/treequel/directory_spec.rb:
2690
+ * A bit more hacking on the OHM experiment.
2691
+ * Treequel::Branch
2692
+ - Made attribute values in #must_attributes_hash empty strings to
2693
+ distinguish them from those created by #may_attributes_hash.
2694
+ - Added #valid_attributes_hash as a convenience method for a merged
2695
+ `must_attributes_hash` and `may_attributes_hash`.
2696
+ * Made the collection class returned from Treequel::Directory#search
2697
+ settable via a hash parameter, with fallback to the class of the
2698
+ base argument if it supports `new_from_entry` or Treequel::Branch
2699
+ if not.
2700
+ * Added RFC 4514 (Distinguished Names) productions to
2701
+ Treequel::Constants::Patterns
2702
+ * Treequel shell:
2703
+ - Changed the 'cd' command to 'cdn'
2704
+ - Validate the RDN passed to 'cdn'
2705
+ - Added a 'parent' command to allow changing up one RDN
2706
+ - Added a 'log' command to allow setting of log level, default log
2707
+ level to 'WARN'
2708
+ [f2b47be064b6]
2709
+
2710
+ 2009-07-03 Michael Granger <ged@FaerieMUD.org>
2711
+
2712
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2713
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
2714
+ lib/treequel/schema/objectclass.rb, spec/treequel/branch_spec.rb,
2715
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb:
2716
+ * Treequel::Branch
2717
+ - Made entry-fetching not raise an exception, but just return nil
2718
+ instead.
2719
+ - Added #must_attributes_hash and #may_attributes_hash
2720
+ - Added a splat-array to #object_classes, #must_attribute_types,
2721
+ #must_oids, #may_attribute_types, #may_oids,
2722
+ * Added a logged warning for the case-sensitivity bug
2723
+ * Refactored the parameter-normalization stuff out of
2724
+ Treequel::Directory#search method for readability, and to
2725
+ simplify the argument signature of #search.
2726
+ [57360b9b8143]
2727
+
2728
+ 2009-07-02 Michael Granger <ged@FaerieMUD.org>
2729
+
2730
+ * docs/manual/src/index.page, experiments/delegation_cost.rb,
2731
+ experiments/userservice.rb, lib/treequel/branch.rb,
2732
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
2733
+ lib/treequel/filter.rb, spec/treequel/branch_spec.rb,
2734
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
2735
+ spec/treequel/filter_spec.rb:
2736
+ * Adding experimental Arrow service that uses Treequel to return
2737
+ ou=People records.
2738
+ * Made Branch#create create the underlying entry instead of a child to
2739
+ better match what #delete, #modify, etc. are doing.
2740
+ * Treequel::Directory:
2741
+ - Fixed the argument list passed to LDAP::Conn#search_ext2 to match
2742
+ what the actual code expects.
2743
+ - Modified #create to create the entry underlying the branch passed in
2744
+ the first argument instead of an entry specified by RDN.
2745
+ * Treequel::Filter:
2746
+ - Factored out the tuple-parsing part of .parse_array_expression into
2747
+ a separate method.
2748
+ - Added a fallback to tuple-style expressions to handle expressions
2749
+ like { :uidNumber => 1414 }
2750
+ * Treequel::Branchset
2751
+ - Made it Enumerable
2752
+ - Added #limit
2753
+ * More work on the manual
2754
+ [1c3bd5a2a4f0]
2755
+
2756
+ 2009-06-30 Michael Granger <ged@FaerieMUD.org>
2757
+
2758
+ * experiments/ohm.rb, spec/treequel/filter_spec.rb:
2759
+ Removing the call to `Time.today` from the specs, as it requires the
2760
+ loading of 'time'.
2761
+ [1853efa345e2]
2762
+
2763
+ * lib/treequel/branch.rb, lib/treequel/connection.rb,
2764
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
2765
+ spec/treequel/connection_spec.rb, spec/treequel/directory_spec.rb:
2766
+ * Added Treequel::Branch#to_ufn
2767
+ * Removed Treequel::Connection class in favor of just handling the
2768
+ specific problems in the #search method.
2769
+ * Changed Treequel::Directory#search to be implemented in terms of
2770
+ #search_ext2 instead of the deprecated #search2
2771
+ [e5a2a960c89d]
2772
+
2773
+ 2009-06-29 Michael Granger <ged@FaerieMUD.org>
2774
+
2775
+ * experiments/ohm.rb, lib/treequel/filter.rb,
2776
+ spec/treequel/filter_spec.rb:
2777
+ * Adding the beginnings of an experimental object-mapping (tree-
2778
+ based ORM analogue) for LDAP entries.
2779
+ * Added handling for > and < Sequel expressions
2780
+ [9759280f111a]
2781
+
2782
+ 2009-06-27 Michael Granger <ged@FaerieMUD.org>
2783
+
2784
+ * lib/treequel/utils.rb:
2785
+ Updated HTML logger formatter to the latest.
2786
+ [bc236240ca46]
2787
+
2788
+ 2009-06-25 Michael Granger <ged@FaerieMUD.org>
2789
+
2790
+ * docs/manual/src/index.page, lib/treequel/branch.rb,
2791
+ spec/treequel/branch_spec.rb:
2792
+ * Renamed Treequel::Branch#modify to #merge
2793
+ * More manual work.
2794
+ [35d0872f8b7f]
2795
+
2796
+ 2009-06-24 Michael Granger <ged@FaerieMUD.org>
2797
+
2798
+ * docs/manual/src/index.page:
2799
+ Fixed some LAIKA references in the manual.
2800
+ [30445a043298]
2801
+
2802
+ 2009-06-23 Michael Granger <ged@FaerieMUD.org>
2803
+
2804
+ * docs/Treequel Manual Diagrams.graffle,
2805
+ docs/manual/layouts/intro.page,
2806
+ docs/manual/resources/css/manual.css, docs/manual/src/index.page,
2807
+ lib/treequel.rb, lib/treequel/constants.rb,
2808
+ lib/treequel/directory.rb, lib/treequel/mixins.rb,
2809
+ spec/treequel/directory_spec.rb, spec/treequel_spec.rb:
2810
+ * Fixed docs on the binding arguments for
2811
+ Treequel::Directory#initialize.
2812
+ * Fixed some typos.
2813
+ * Stopdoc'ed the sub-modules under Treequel::Constants.
2814
+ * Made Treequel.directory more flexible.
2815
+ * Added a tentative logo to the diagrams.
2816
+ * Updated the manual CSS and templates from Redleaf's.
2817
+ * Manual work.
2818
+ * Made the initial argument to Treequel::Directory#bind accept an
2819
+ object that duck-types as a Branch.
2820
+ [6cc39e6befdb]
2821
+
2822
+ * lib/treequel/connection.rb, lib/treequel/directory.rb,
2823
+ lib/treequel/mixins.rb, spec/treequel/connection_spec.rb:
2824
+ * Added delegation to the connection wrapper.
2825
+ * Fixed a bug in the Treequel::Delegation code-generation when it
2826
+ generates a delegated assignment method (#foo=).
2827
+ [3a204e54603e]
2828
+
2829
+ 2009-06-22 Michael Granger <ged@FaerieMUD.org>
2830
+
2831
+ * docs/manual/layouts/default.page, docs/manual/src/index.page,
2832
+ lib/treequel.rb, lib/treequel/branch.rb,
2833
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2834
+ lib/treequel/connection.rb, lib/treequel/constants.rb,
2835
+ lib/treequel/directory.rb, lib/treequel/exceptions.rb,
2836
+ lib/treequel/filter.rb, lib/treequel/schema.rb,
2837
+ lib/treequel/schema/attributetype.rb,
2838
+ lib/treequel/schema/ldapsyntax.rb,
2839
+ lib/treequel/schema/matchingrule.rb,
2840
+ lib/treequel/schema/matchingruleuse.rb,
2841
+ lib/treequel/schema/objectclass.rb,
2842
+ spec/treequel/connection_spec.rb, spec/treequel/directory_spec.rb,
2843
+ spec/treequel/filter_spec.rb:
2844
+ * Fixed RDoc headers.
2845
+ * Started work on a connection-abstraction that handles referrals,
2846
+ exception-normalization, and reconnection.
2847
+ * Merged filter constants into the Constants module's namespace and
2848
+ factored out some duplication and inconsistency.
2849
+ * Some manual work.
2850
+ * Fixed a buggy substring filter spec that was uncovered by the
2851
+ constants refactoring.
2852
+ [6defed90cfcc]
2853
+
2854
+ 2009-06-18 Michael Granger <ged@FaerieMUD.org>
2855
+
2856
+ * README, Rakefile, docs/Treequel Manual Diagrams.graffle,
2857
+ lib/treequel.rb, lib/treequel/schema.rb, project.yml,
2858
+ spec/treequel/schema_spec.rb:
2859
+ * Updated the build system.
2860
+ * Untaint all schema names before trying to turn them into Symbols so
2861
+ it works under $SAFE = 1.
2862
+ * Fixed some documentation, updated the description with something
2863
+ less-vague.
2864
+ [cdbb80f015b6]
2865
+
2866
+ * Rakefile, bin/treequel, lib/treequel.rb, lib/treequel/branch.rb,
2867
+ lib/treequel/branchcollection.rb, lib/treequel/branchset.rb,
2868
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
2869
+ spec/treequel/branchcollection_spec.rb,
2870
+ spec/treequel/branchset_spec.rb, spec/treequel_spec.rb:
2871
+ * Adding BranchCollection class.
2872
+ * Treequel::Branchset
2873
+ - Added #base_dn method
2874
+ - Added the base to the inspection text
2875
+ * Made argument to Treequel.directory optional
2876
+ [6da5c8ac1752]
2877
+
2878
+ 2009-06-17 Michael Granger <ged@FaerieMUD.org>
2879
+
2880
+ * Rakefile, bin/treeirb, bin/treequel, docs/Treequel Manual
2881
+ Diagrams.graffle, docs/manual/src/index.page, lib/treequel.rb,
2882
+ lib/treequel/branch.rb, spec/treequel_spec.rb:
2883
+ * Updated build system
2884
+ * Fixed a bug in Treequel::Branch#to_ldif
2885
+ * Modified Treequel.directory to also accept a options hash.
2886
+ * A little work on the manual
2887
+ * Started an OmniGraffle doc for manual diagrams
2888
+ [8713fc4b41a9]
2889
+
2890
+ 2009-06-11 Michael Granger <ged@FaerieMUD.org>
2891
+
2892
+ * docs/manual/layouts/default.page, docs/manual/lib/api-filter.rb,
2893
+ docs/manual/lib/editorial-filter.rb, docs/manual/lib/examples-
2894
+ filter.rb, docs/manual/lib/links-filter.rb,
2895
+ docs/manual/resources/css/deveiate.css,
2896
+ docs/manual/resources/css/manual.css, docs/manual/src/index.page:
2897
+ Adding the beginnings of a manual.
2898
+ [d33d81ff8327]
2899
+
2900
+ * bin/shelldapper, bin/treequel, lib/treequel/branch.rb,
2901
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
2902
+ spec/treequel/directory_spec.rb:
2903
+ * Treequel::Branch:
2904
+ - New methods: #rdn=, #split_dn, #<=>
2905
+ - Added Comparable interface
2906
+ - Made the proxy method actually check the schema for valid attribute
2907
+ type OIDs instead of assuming every message wanted a sub-
2908
+ branch.
2909
+ * Treequel::Directory:
2910
+ - Implemented #move
2911
+ - Fixed non-functional #children.
2912
+ - Same fix for #method_missing as in Branch.
2913
+ * Renamed 'shelldapper' to 'treequel' to reflect a planned change in
2914
+ direction (i.e., closer) to Sequel's 'sequel' shell.
2915
+ [99d1553532f1]
2916
+
2917
+ * bin/shelldapper, lib/treequel.rb, lib/treequel/directory.rb,
2918
+ spec/lib/constants.rb, spec/treequel/directory_spec.rb:
2919
+ * Fetch the default baseDN from the directory's root DSE instead of
2920
+ just using the empty string.
2921
+ * Giving up on rbreadline -- too buggy and slow.
2922
+ * More work on the shell.
2923
+ [3cf7a6589f40]
2924
+
2925
+ 2009-06-09 Michael Granger <ged@FaerieMUD.org>
2926
+
2927
+ * bin/shelldapper, lib/treequel/branch.rb, lib/treequel/directory.rb,
2928
+ lib/treequel/utils.rb, spec/treequel/branch_spec.rb,
2929
+ spec/treequel/schema/matchingrule_spec.rb:
2930
+ * Added Branch#to_ldif
2931
+ * Aliased Directory#dn to Directory#base
2932
+ * Fleshed out the shelldapper proof-of-concept.
2933
+ * Un-pendinged a Schema::MatchingRule spec that should have been
2934
+ passing, and made it pass.
2935
+ [decd99bd99e9]
2936
+
2937
+ 2009-06-08 Michael Granger <ged@FaerieMUD.org>
2938
+
2939
+ * lib/treequel/branch.rb, lib/treequel/branchset.rb,
2940
+ lib/treequel/constants.rb, lib/treequel/directory.rb,
2941
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
2942
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb:
2943
+ * Added datatype conversions for some of the default syntaxes to
2944
+ Directory.
2945
+ * Made Branch#[] fetch values through its directory's datatype
2946
+ conversion method.
2947
+ [b27a2eb78d02]
2948
+
2949
+ 2009-06-04 Michael Granger <ged@FaerieMUD.org>
2950
+
2951
+ * experiments/syntax-spike.rb, lib/treequel/branch.rb,
2952
+ lib/treequel/directory.rb, spec/lib/constants.rb,
2953
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
2954
+ * Treequel::Branch
2955
+ - Removed the #move method, as the requisite Directory#move method is
2956
+ not yet implemented.
2957
+ - Made #copy a bit more flexible.
2958
+ [4c2477eb2a68]
2959
+
2960
+ 2009-06-02 Michael Granger <ged@FaerieMUD.org>
2961
+
2962
+ * lib/treequel/constants.rb, lib/treequel/filter.rb,
2963
+ lib/treequel/schema/attributetype.rb,
2964
+ lib/treequel/schema/ldapsyntax.rb,
2965
+ spec/treequel/schema/attributetype_spec.rb:
2966
+ * Finished hooking up LDAPSyntax to AttributeType.
2967
+ * Fixed malformed UTF<n> patterns.
2968
+ [b02d86bf9162]
2969
+
2970
+ 2009-06-01 Michael Granger <ged@FaerieMUD.org>
2971
+
2972
+ * lib/treequel/constants.rb, lib/treequel/schema.rb,
2973
+ lib/treequel/schema/ldapsyntax.rb,
2974
+ lib/treequel/schema/matchingrule.rb,
2975
+ lib/treequel/schema/matchingruleuse.rb,
2976
+ spec/treequel/schema/ldapsyntax_spec.rb,
2977
+ spec/treequel/schema/matchingruleuse_spec.rb,
2978
+ spec/treequel/schema_spec.rb:
2979
+ * Finished implementation of matchingRuleUses and ldapSyntaxes.
2980
+ [7617a4b44fd9]
2981
+
2982
+ * lib/treequel/schema.rb, lib/treequel/schema/attributetype.rb,
2983
+ lib/treequel/schema/ldapsyntax.rb,
2984
+ lib/treequel/schema/matchingrule.rb,
2985
+ spec/treequel/schema/matchingrule_spec.rb, spec/treequel_spec.rb:
2986
+ * Checkpoint commit of Treequel::Schema::LDAPSyntax class.
2987
+ [99fd606993ac]
2988
+
2989
+ 2009-05-29 Michael Granger <ged@FaerieMUD.org>
2990
+
2991
+ * lib/treequel/constants.rb, lib/treequel/schema.rb,
2992
+ lib/treequel/schema/attributetype.rb,
2993
+ lib/treequel/schema/matchingrule.rb,
2994
+ spec/treequel/schema/attributetype_spec.rb,
2995
+ spec/treequel/schema/matchingrule_spec.rb,
2996
+ spec/treequel/schema/objectclass_spec.rb,
2997
+ spec/treequel/schema_spec.rb:
2998
+ * Adding Treequel::Schema::MatchingRule.
2999
+ * Added some missing tests for Treequel::Schema class methods.
3000
+ [3dd18fa1c7fc]
3001
+
3002
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
3003
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb,
3004
+ spec/treequel/filter_spec.rb:
3005
+ * Treequel::Branch -- Changed the 'value' and 'attribute' attributes
3006
+ to 'rdn_value' and 'rdn_attribute' for clarification.
3007
+ * Treequel::Directory#copy now automatically makes the necessary
3008
+ adjustments to the new record's RDN attribute and value.
3009
+ [cb93500e5d98]
3010
+
3011
+ * lib/treequel/directory.rb, lib/treequel/exceptions.rb,
3012
+ lib/treequel/filter.rb, lib/treequel/schema.rb,
3013
+ spec/treequel/filter_spec.rb:
3014
+ * Added custom #inspect methods for Schema and Directory.
3015
+ * Renamed Treequel::Filter::ExpressionError to
3016
+ Treequel::ExpressionError and moved it into
3017
+ lib/treequel/exceptions.rb.
3018
+ * Added the morning's work on Sequel expression-parsing. Symbol#like
3019
+ now interpreted as either a wildcarded 'equal' or an 'approx'
3020
+ filter, depending on whether the value has at least one asterisk.
3021
+ [fb415faaeddb]
3022
+
3023
+ 2009-05-23 Michael Granger <ged@FaerieMUD.org>
3024
+
3025
+ * Rakefile, lib/treequel/branch.rb, lib/treequel/directory.rb,
3026
+ project.yml, spec/treequel/directory_spec.rb:
3027
+ * Updated build system
3028
+ * Made Treequel::Directory#modify normalize the hash of attributes
3029
+ before using it.
3030
+ * Moved the dependency on 'ldap' to a requirement since there's no gem
3031
+ for 'ldap'.
3032
+ [aaef0c5c4703]
3033
+
3034
+ 2009-05-20 Michael Granger <ged@FaerieMUD.org>
3035
+
3036
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
3037
+ lib/treequel/filter.rb, spec/lib/constants.rb,
3038
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
3039
+ * Treequel::Branch
3040
+ - Implemented #parent and #children
3041
+ - Implemented #copy
3042
+ - Implemented #modify
3043
+ [3132d19804a1]
3044
+
3045
+ 2009-05-19 Michael Granger <ged@FaerieMUD.org>
3046
+
3047
+ * lib/treequel/schema/objectclass.rb:
3048
+ Include the superior class's name in
3049
+ Treequel::Schema::ObjectClass#inspect output.
3050
+ [e43f57f0f04c]
3051
+
3052
+ * lib/treequel/branch.rb, lib/treequel/constants.rb,
3053
+ lib/treequel/directory.rb, spec/treequel/branch_spec.rb,
3054
+ spec/treequel/directory_spec.rb:
3055
+ * Treequel::Branch
3056
+ - Implemented #delete and #create
3057
+ [3ebeec1eacf6]
3058
+
3059
+ 2009-05-18 Michael Granger <ged@FaerieMUD.org>
3060
+
3061
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
3062
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
3063
+ * Finished up Treequel::Branch#[]=
3064
+ [c615693a11e0]
3065
+
3066
+ 2009-05-18 Mahlon E. Smith <mahlon@martini.nu>
3067
+
3068
+ * lib/treequel.rb, lib/treequel/constants.rb,
3069
+ lib/treequel/directory.rb, spec/treequel/directory_spec.rb,
3070
+ spec/treequel_spec.rb:
3071
+ * If a user/pass is supplied via the directory connect URI, bind
3072
+ immediately.
3073
+ * Small whitespace cleanup(s)
3074
+ * Ruby 1.8.7 has an URI::LDAPS (where ruby 1.8.6 does not), so add it
3075
+ conditionally.
3076
+ * Don't attempt to connect via TLS if using the ldaps:// protocol.
3077
+ [72cd36c693ca]
3078
+
3079
+ 2009-05-16 Michael Granger <ged@FaerieMUD.org>
3080
+
3081
+ * lib/treequel/branch.rb, lib/treequel/constants.rb,
3082
+ lib/treequel/schema/objectclass.rb, spec/treequel/branch_spec.rb,
3083
+ spec/treequel/schema/objectclass_spec.rb:
3084
+ * Treequel::Branch
3085
+ - Remove #[] and #[]= delegators to the underlying entry in
3086
+ preparation for real accessors.
3087
+ - Added attributeType and objectClass introspection
3088
+ - Cache values fetched through #[] in preparation for datatype-
3089
+ conversion
3090
+ * Added Treequel::Schema::ObjectClass#may
3091
+ * Changed the quantifier for QDSTRINGS to zero-or-more as a workaround
3092
+ for malformed DESC attributes in the wild (namely the 'retcode'
3093
+ overlay in OpenLDAP)
3094
+ [a9bcbecb60f3]
3095
+
3096
+ 2009-05-15 Michael Granger <ged@FaerieMUD.org>
3097
+
3098
+ * lib/treequel/branch.rb, lib/treequel/directory.rb,
3099
+ lib/treequel/schema.rb, lib/treequel/schema/attributetype.rb,
3100
+ lib/treequel/schema/objectclass.rb, spec/lib/constants.rb,
3101
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb,
3102
+ spec/treequel/schema/attributetype_spec.rb,
3103
+ spec/treequel/schema/objectclass_spec.rb,
3104
+ spec/treequel/schema_spec.rb:
3105
+ * Treequel::Branch:
3106
+ - Raise an exception if the entry associated with a Branch can't be
3107
+ fetched.
3108
+ - Added the attribute-fetching operator (#[])
3109
+ * Finished the implementation of Treequel::Schema::AttributeType.
3110
+ * Added Treequel::Schema::ObjectClass#inspect
3111
+ * Treequel::Schema component objects now have a reference to their
3112
+ schema so they can look up associated OIDs.
3113
+ * Un-camelCased the schema component attributes
3114
+ * Cache the Treequel::Directory's #schema instead of re-fetching it
3115
+ every time.
3116
+ [72ccdbdccd8d]
3117
+
3118
+ 2009-05-14 Michael Granger <ged@FaerieMUD.org>
3119
+
3120
+ * lib/treequel/constants.rb, lib/treequel/mixins.rb,
3121
+ lib/treequel/schema.rb, lib/treequel/schema/attributetype.rb,
3122
+ lib/treequel/schema/objectclass.rb, spec/treequel/mixins_spec.rb,
3123
+ spec/treequel/schema/attributetype_spec.rb:
3124
+ * Finished the initial implementation of the
3125
+ Sequel::Schema::AttributeType class.
3126
+ * Added a Treequel::AttributeDeclarations mixin for various kind of
3127
+ attribute declaration functions. This just contains the
3128
+ `predicate_attr` function for now.
3129
+ * Factored the schema-part normalization methods across from
3130
+ Treequel::Schema::ObjectClass into Treequel::Schema so
3131
+ Treequel::Schema::AttributeType can use 'em too.
3132
+ [34bce6d3ec1a]
3133
+
3134
+ 2009-05-13 Michael Granger <ged@FaerieMUD.org>
3135
+
3136
+ * lib/treequel/constants.rb, lib/treequel/directory.rb,
3137
+ lib/treequel/schema.rb, lib/treequel/schema/objectclass.rb,
3138
+ spec/treequel/directory_spec.rb, spec/treequel/schema_spec.rb:
3139
+ * Replaced the plain Treequel::Directory#schema method with the one
3140
+ that returns a new Treequel::Schema parsed from the directory's
3141
+ LDAP::Schema.
3142
+ * Finished the objectClass portion of Treequel::Schema.
3143
+ * Started work on schema attributeTypes.
3144
+ [3a222b303870]
3145
+
3146
+ * lib/treequel/branch.rb, lib/treequel/branchset.rb,
3147
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
3148
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
3149
+ spec/treequel/schema/objectclass_spec.rb:
3150
+ * Renamed Treequel::Branch#attr_pair to #rdn.
3151
+ [4946985217e9]
3152
+
3153
+ 2009-05-12 Michael Granger <ged@FaerieMUD.org>
3154
+
3155
+ * lib/treequel/schema/objectclass.rb,
3156
+ spec/treequel/schema/objectclass_spec.rb:
3157
+ * Unified must/may oids into @must_oids and @may_oids to distinguish
3158
+ between them and the later Attribute objects that will be
3159
+ constructed from them.
3160
+ * Added #obsolete? predicate method for the OBSOLETE attribute.
3161
+ [da533735fb9f]
3162
+
3163
+ 2009-05-11 Michael Granger <ged@FaerieMUD.org>
3164
+
3165
+ * lib/treequel.rb, lib/treequel/schema/objectclass.rb,
3166
+ spec/treequel/schema/objectclass_spec.rb:
3167
+ * Added name, desc, kind, must, and may attribute normalization to
3168
+ Treequel::Schema::ObjectClass.
3169
+ [44a3834ff324]
3170
+
3171
+ * lib/treequel.rb, lib/treequel/constants.rb,
3172
+ lib/treequel/exceptions.rb, lib/treequel/schema.rb,
3173
+ lib/treequel/schema/objectclass.rb, spec/data/objectClasses.yml,
3174
+ spec/data/schema.yml, spec/treequel/schema/objectclass_spec.rb,
3175
+ spec/treequel/schema_spec.rb:
3176
+ Checkpoint commit:
3177
+ * More work on schema-parsing (objectClasses)
3178
+ * Added some exception classes
3179
+ * Removed accidentally-committed LAIKA objectClasses from the test
3180
+ schema data.
3181
+ [1d9b831d1579]
3182
+
3183
+ * .irbrc, lib/treequel/constants.rb, lib/treequel/schema.rb,
3184
+ spec/treequel/schema_spec.rb:
3185
+ Checkpoint commit:
3186
+ * Added some convenience stuff for testing patterns to .irbrc.
3187
+ * Finished the objectClass pattern; no tests yet.
3188
+ [9a1ba6888856]
3189
+
3190
+ 2009-05-08 Michael Granger <ged@FaerieMUD.org>
3191
+
3192
+ * .irbrc, lib/treequel/constants.rb:
3193
+ More work on parsing objectClasses.
3194
+ [fc25616368b8]
3195
+
3196
+ 2009-05-07 Michael Granger <ged@FaerieMUD.org>
3197
+
3198
+ * lib/treequel/constants.rb, lib/treequel/schema.rb,
3199
+ spec/data/objectClasses.yml, spec/lib/helpers.rb,
3200
+ spec/treequel/schema_spec.rb:
3201
+ Checkpoint commit -- converting schema regexps to match the BNF in
3202
+ RFC 4512 instead of the one from 2252.
3203
+ [2378ca43e383]
3204
+
3205
+ 2009-04-29 Michael Granger <ged@FaerieMUD.org>
3206
+
3207
+ * lib/treequel/constants.rb, spec/lib/helpers.rb:
3208
+ * Added more RFC2252 regexp patterns to constants.rb.
3209
+ * Upgraded spec helpers to use the webkit RSpec formatter if it's
3210
+ available.
3211
+ [feedf3cfda8b]
3212
+
3213
+ 2009-04-24 Michael Granger <ged@FaerieMUD.org>
3214
+
3215
+ * lib/treequel/branchset.rb, lib/treequel/constants.rb,
3216
+ lib/treequel/directory.rb, lib/treequel/schema.rb,
3217
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb,
3218
+ spec/treequel/schema_spec.rb:
3219
+ * Starting work on schema support.
3220
+ * Fixed calls to search2 caused by misdocumented defaults in Ruby-
3221
+ LDAP.
3222
+ [f2fef4dea785]
3223
+
3224
+ 2009-04-22 Michael Granger <ged@FaerieMUD.org>
3225
+
3226
+ * lib/treequel/filter.rb, spec/treequel/filter_spec.rb:
3227
+ * Fixed .filter( :attribute => value )
3228
+ * Added support for .filter( :attribute => Range )
3229
+ [fa68642a4c6b]
3230
+
3231
+ * .irbrc, lib/treequel.rb, lib/treequel/branchset.rb,
3232
+ lib/treequel/directory.rb, lib/treequel/filter.rb,
3233
+ lib/treequel/sequel_integration.rb, spec/treequel/branchset_spec.rb,
3234
+ spec/treequel/directory_spec.rb, spec/treequel/filter_spec.rb:
3235
+ * Started filter support for Sequel expressions
3236
+ * Branchset
3237
+ - Completed implementation for #order
3238
+ - Renamed #no_timeout to #without_timeout
3239
+ * Set up the connection in Treequel::Directory to be LDAPv3
3240
+ [d009a339d2cd]
3241
+
3242
+ 2009-04-21 Michael Granger <ged@FaerieMUD.org>
3243
+
3244
+ * LICENSE, README, lib/treequel/branch.rb, lib/treequel/branchset.rb,
3245
+ lib/treequel/constants.rb, lib/treequel/filter.rb,
3246
+ spec/treequel/branch_spec.rb, spec/treequel/branchset_spec.rb,
3247
+ spec/treequel/filter_spec.rb:
3248
+ More filter work.
3249
+ [cb0752ae5ce9]
3250
+
3251
+ 2009-04-20 Michael Granger <ged@FaerieMUD.org>
3252
+
3253
+ * lib/treequel/constants.rb, lib/treequel/filter.rb,
3254
+ spec/treequel/filter_spec.rb:
3255
+ Finished up initial filter work.
3256
+ [53fef8079a4e]
3257
+
3258
+ 2009-04-18 Michael Granger <ged@FaerieMUD.org>
3259
+
3260
+ * lib/treequel/constants.rb, lib/treequel/filter.rb:
3261
+ * Committing yesterday's work on substring filters before I fall
3262
+ asleep.
3263
+ [621dbbe99418]
3264
+
3265
+ 2009-04-16 Michael Granger <ged@FaerieMUD.org>
3266
+
3267
+ * experiments/filter-syntax-spike.rb, lib/treequel/filter.rb,
3268
+ spec/treequel/filter_spec.rb:
3269
+ * Started work on substring item filter syntax and class.
3270
+ * Added support for string literal clauses in a logical filter
3271
+ [b71338a3b66f]
3272
+
3273
+ * lib/treequel/branchset.rb, lib/treequel/filter.rb,
3274
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
3275
+ Checkpoint of more filter work.
3276
+ [27d7a681eb00]
3277
+
3278
+ 2009-04-15 Michael Granger <ged@FaerieMUD.org>
3279
+
3280
+ * Rakefile, lib/treequel/filter.rb, project.yml,
3281
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
3282
+ Committing this morning's work.
3283
+ [53cf56feaad8]
3284
+
3285
+ 2009-04-13 Michael Granger <ged@FaerieMUD.org>
3286
+
3287
+ * experiments/filter-syntax-spike.rb, lib/treequel/branchset.rb,
3288
+ lib/treequel/branchset/clauses.rb, lib/treequel/filter.rb,
3289
+ spec/treequel/branchset/clauses_spec.rb,
3290
+ spec/treequel/branchset_spec.rb, spec/treequel/filter_spec.rb:
3291
+ Checkpoint commit of this morning's work.
3292
+ [ba1440c71f01]
3293
+
3294
+ 2009-04-10 Michael Granger <ged@FaerieMUD.org>
3295
+
3296
+ * bin/shelldapper, experiments/filter-syntax-spike.rb,
3297
+ lib/treequel.rb, lib/treequel/branch.rb, lib/treequel/branchset.rb,
3298
+ lib/treequel/branchset/clauses.rb, lib/treequel/directory.rb,
3299
+ spec/treequel/branchset/clauses_spec.rb,
3300
+ spec/treequel/branchset_spec.rb, spec/treequel/directory_spec.rb:
3301
+ Checkpoint commit.
3302
+ [e8fd5884c22f]
3303
+
3304
+ 2009-04-09 Michael Granger <ged@FaerieMUD.org>
3305
+
3306
+ * experiments/syntax-spike.rb, lib/treequel/branch.rb,
3307
+ lib/treequel/branchset.rb, lib/treequel/directory.rb,
3308
+ spec/treequel/branch_spec.rb, spec/treequel/branchset_spec.rb:
3309
+ Checkpoint commit.
3310
+ [6924adc0feb2]
3311
+
3312
+ 2009-03-30 Michael Granger <ged@FaerieMUD.org>
3313
+
3314
+ * experiments/laika.rb, experiments/syntax-spike.rb,
3315
+ lib/treequel/branch.rb, lib/treequel/branchset.rb,
3316
+ spec/treequel/branch_spec.rb, spec/treequel/branchset_spec.rb:
3317
+ Checkpoint commit.
3318
+ [0c1438a9105a]
3319
+
3320
+ 2009-03-18 Michael Granger <ged@FaerieMUD.org>
3321
+
3322
+ * lib/treequel/branch.rb, spec/treequel/branch_spec.rb,
3323
+ spec/treequel_spec.rb:
3324
+ * Finished Treequel::Branch.new_from_dn
3325
+ * Finished pending specs.
3326
+ [5f3f334406cf]
3327
+
3328
+ 2009-03-10 Michael Granger <ged@FaerieMUD.org>
3329
+
3330
+ * experiments/inspect_entry.rb, lib/treequel.rb,
3331
+ lib/treequel/branch.rb, lib/treequel/directory.rb,
3332
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb:
3333
+ * Checkpoint of the morning's work.
3334
+ [83d533b2987d]
3335
+
3336
+ * .irbrc, lib/treequel.rb, lib/treequel/branch.rb,
3337
+ lib/treequel/directory.rb, spec/lib/constants.rb,
3338
+ spec/treequel/branch_spec.rb, spec/treequel/directory_spec.rb,
3339
+ spec/treequel_spec.rb:
3340
+ * Snapshot of today's work.
3341
+ [27b230b291a3]
3342
+
3343
+ 2009-03-09 Michael Granger <ged@FaerieMUD.org>
3344
+
3345
+ * experiments/delegation_cost.rb, lib/treequel.rb,
3346
+ lib/treequel/branch.rb, lib/treequel/constants.rb,
3347
+ lib/treequel/directory.rb, lib/treequel/mixins.rb,
3348
+ spec/lib/constants.rb, spec/treequel/branch_spec.rb,
3349
+ spec/treequel/directory_spec.rb, spec/treequel/mixins_spec.rb:
3350
+ * Committing the morning's work.
3351
+ [f73835204ddc]
3352
+
3353
+ * Rakefile, experiments/ldapexpr.rb, experiments/syntax-spike.rb,
3354
+ experiments/utils.rb, lib/treequel.rb, lib/treequel/directory.rb,
3355
+ lib/treequel/mixins.rb, lib/treequel/utils.rb,
3356
+ spec/lib/constants.rb, spec/lib/helpers.rb,
3357
+ spec/treequel/directory_spec.rb, spec/treequel/mixins_spec.rb,
3358
+ spec/treequel/utils_spec.rb, spec/treequel_spec.rb:
3359
+ * Updated build system
3360
+ * Renamed the spike to `syntax-spike.rb` and fleshed it out a bunch
3361
+ * Started on the actual implementation
3362
+ [7709b9520686]
3363
+
3364
+ 2009-03-07 Michael Granger <ged@FaerieMUD.org>
3365
+
3366
+ * LICENSE, README, Rakefile, experiments/ldapexpr.rb, lib/treequel.rb,
3367
+ project.yml:
3368
+ * Started an initial spike and installed build system.
3369
+ [d8e78b6b4088]
3370
+
3371
+ 2008-12-05 Michael Granger <ged@FaerieMUD.org>
3372
+
3373
+ * Creating repo
3374
+ [b21f833298d6]