treequel 1.4.3 → 1.4.4

Sign up to get free protection for your applications and to get access to all the features.
data/ChangeLog CHANGED
@@ -1,8 +1,94 @@
1
+ 2011-02-10 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .hgtags:
4
+ Added tag v1.4.4 for changeset c8b3e3f8e9b3
5
+ [706bf854263e] [master, tip]
6
+
7
+ * .hgsigs:
8
+ Added signature for changeset 8101dde32328
9
+ [c8b3e3f8e9b3] [v1.4.4]
10
+
11
+ * History.md:
12
+ Updated History.
13
+ [8101dde32328]
14
+
15
+ * Manifest.txt, lib/treequel.rb:
16
+ Add the .gemtest and Manifest to the manifest, bump patch version.
17
+ [8e97a0ecf0fc]
18
+
19
+ * .gemtest, Rakefile, lib/treequel/model.rb, spec/lib/helpers.rb,
20
+ spec/treequel/model_spec.rb:
21
+ Make Treequel testable via Gem Testers
22
+ [8c1b378a6584]
23
+
24
+ * experiments/modfault.rb, lib/treequel/monkeypatches.rb,
25
+ spec/lib/helpers.rb, spec/treequel/model_spec.rb:
26
+ Hack to work around the pointer-mismanagement of LDAP::Mod
27
+ [f7f7c33f9da5]
28
+
29
+ 2011-02-07 Michael Granger <ged@FaerieMUD.org>
30
+
31
+ * .hgtags:
32
+ Added tag v1.4.3 for changeset 3b27b0e2805b
33
+ [1976f2e4c4d4]
34
+
35
+ * .hgsigs:
36
+ Added signature for changeset c0980f0a7611
37
+ [3b27b0e2805b] [v1.4.3]
38
+
39
+ * History.md, lib/treequel.rb:
40
+ Bump version, update History.
41
+ [c0980f0a7611]
42
+
43
+ * bin/treequel:
44
+ Fixed missing DEFAULT_EDITOR constant. Thanks to Mike Hix.
45
+ [b190f1cc53a0]
46
+
47
+ 2011-02-02 Michael Granger <ged@FaerieMUD.org>
48
+
49
+ * .hgtags:
50
+ Added tag v1.4.2 for changeset 74935f7de61a
51
+ [dfc582e84534]
52
+
53
+ * .hgsigs:
54
+ Added signature for changeset 8e1d1e2cfb62
55
+ [74935f7de61a] [v1.4.2]
56
+
57
+ * bin/treequel:
58
+ More Treequel shell cleanup based on feedback from Michael Hix.
59
+ Thanks, man.
60
+ [8e1d1e2cfb62]
61
+
62
+ * bin/treequel:
63
+ Fix the signature of the 'quit' command. Thanks to Michael Hix for
64
+ pointing this out.
65
+ [2d5bd2f7b8ac]
66
+
67
+ * bin/treequel, lib/treequel.rb:
68
+ More treequel shell fixes. Bumped to 1.4.2.
69
+ [a48b3d18545c]
70
+
71
+ * .hgtags:
72
+ Added tag v1.4.1 for changeset 86aad9b336c5
73
+ [879a2821e45e]
74
+
75
+ * .hgsigs:
76
+ Added signature for changeset 72213abfe94d
77
+ [86aad9b336c5] [v1.4.1]
78
+
79
+ * lib/treequel.rb:
80
+ Bump patch version.
81
+ [72213abfe94d]
82
+
83
+ * bin/treequel:
84
+ Fixed result error as fatal exception
85
+ [f5c03eb30ffd]
86
+
1
87
  2011-01-31 Michael Granger <ged@FaerieMUD.org>
2
88
 
3
89
  * .hgtags:
4
90
  Added tag v1.4.0 for changeset 9a29615cfb6d
5
- [4826f3621e86] [master, tip]
91
+ [4826f3621e86]
6
92
 
7
93
  * .hgsigs:
8
94
  Added signature for changeset 63270598af6b
@@ -15,7 +101,7 @@
15
101
  * lib/treequel/constants.rb, lib/treequel/filter.rb,
16
102
  spec/treequel/filter_spec.rb:
17
103
  Escape filter metacharacters in simple filter components
18
- [a4a5a436af47] [github/master]
104
+ [a4a5a436af47]
19
105
 
20
106
  * Rakefile, manual/resources/fonts/GraublauWeb.otf,
21
107
  manual/resources/fonts/GraublauWebBold.otf,
@@ -52,12 +138,18 @@
52
138
  Merged with 411:ddbb3c3bdd00
53
139
  [ba7895d4e64b]
54
140
 
141
+ 2011-01-17 Michael Granger <ged@FaerieMUD.org>
142
+
143
+ * History.md:
144
+ Updated History
145
+ [9c4db65b40d7]
146
+
55
147
  2011-01-18 Michael Granger <ged@FaerieMUD.org>
56
148
 
57
149
  * manual/layouts/default.erb, manual/resources/css/manual.css,
58
150
  manual/src/index.page:
59
151
  Updating the manual.
60
- [ddbb3c3bdd00]
152
+ [ddbb3c3bdd00] [github/master]
61
153
 
62
154
  * LICENSE:
63
155
  I meant the README.md file. NOW update the LICENSE file
@@ -108,18 +200,8 @@
108
200
  Adding missing dependency
109
201
  [eaf742c5b836]
110
202
 
111
- 2011-01-14 Michael Granger <ged@FaerieMUD.org>
112
-
113
- * manual/src/models.page:
114
- Fixed some invalid api links in the models section
115
- [7759040905e0]
116
-
117
203
  2011-01-17 Michael Granger <ged@FaerieMUD.org>
118
204
 
119
- * History.md:
120
- Updated History
121
- [9c4db65b40d7]
122
-
123
205
  * .hgtags:
124
206
  Added tag v1.3.1 for changeset a6ea030fc88f
125
207
  [4caac8976d00]
@@ -134,6 +216,12 @@
134
216
  attributes to sometimes be doubled.
135
217
  [fb7ec4e38f66]
136
218
 
219
+ 2011-01-14 Michael Granger <ged@FaerieMUD.org>
220
+
221
+ * manual/src/models.page:
222
+ Fixed some invalid api links in the models section
223
+ [7759040905e0]
224
+
137
225
  2011-01-13 Michael Granger <ged@FaerieMUD.org>
138
226
 
139
227
  * .hgtags:
@@ -228,14 +316,14 @@
228
316
  Automated merge with ssh://deveiate/Treequel
229
317
  [62e7348050eb]
230
318
 
231
- * bin/treequel:
232
- More logging constant fixes for the treequel shell.
233
- [6e159f32ed07]
234
-
235
319
  * bin/treequel, lib/treequel/model/objectclass.rb:
236
320
  Aesthetic cleanup
237
321
  [78e65cb8f30a]
238
322
 
323
+ * bin/treequel:
324
+ More logging constant fixes for the treequel shell.
325
+ [6e159f32ed07]
326
+
239
327
  2011-01-04 Michael Granger <ged@FaerieMUD.org>
240
328
 
241
329
  * bin/treequel:
@@ -647,13 +735,6 @@
647
735
  * Merging with 316:33a7dcde80a1
648
736
  [72dd41272f6f]
649
737
 
650
- * .hgsubstate, lib/treequel/model.rb, spec/treequel/branch_spec.rb,
651
- spec/treequel/model_spec.rb, spec/treequel/monkeypatches_spec.rb:
652
- Spec fixes for RSpec 2.0
653
- * Fix RSpec regex workaround for Treequel::Model#respond_to?
654
- * Fix monkeypatch Time tests for running outside of PST8PDT
655
- [9f9460125077]
656
-
657
738
  2010-11-09 Michael Granger <ged@FaerieMUD.org>
658
739
 
659
740
  * .hgsub, .hgsubstate:
@@ -664,6 +745,17 @@
664
745
  Fixing subrepo corruption caused by rollback
665
746
  [fc9ae9f5b034]
666
747
 
748
+ 2010-11-11 Michael Granger <ged@FaerieMUD.org>
749
+
750
+ * .hgsubstate, lib/treequel/model.rb, spec/treequel/branch_spec.rb,
751
+ spec/treequel/model_spec.rb, spec/treequel/monkeypatches_spec.rb:
752
+ Spec fixes for RSpec 2.0
753
+ * Fix RSpec regex workaround for Treequel::Model#respond_to?
754
+ * Fix monkeypatch Time tests for running outside of PST8PDT
755
+ [9f9460125077]
756
+
757
+ 2010-11-09 Michael Granger <ged@FaerieMUD.org>
758
+
667
759
  * README:
668
760
  Merged with 310:cc7c63ff15a0
669
761
  [c1b750e4e9fc]
@@ -679,18 +771,18 @@
679
771
  test failure
680
772
  [380662d385e0]
681
773
 
682
- 2010-11-03 Michael Granger <ged@FaerieMUD.org>
683
-
684
- * README, README.md:
685
- Converting the README to Markdown
686
- [cc7c63ff15a0]
687
-
688
774
  2010-11-08 Michael Granger <ged@FaerieMUD.org>
689
775
 
690
776
  * bin/treequel:
691
777
  Fixed treequel shell's cp to support relative and absolute DNs
692
778
  [7f20ab74d6b1]
693
779
 
780
+ 2010-11-03 Michael Granger <ged@FaerieMUD.org>
781
+
782
+ * README, README.md:
783
+ Converting the README to Markdown
784
+ [cc7c63ff15a0]
785
+
694
786
  2010-10-22 Michael Granger <ged@FaerieMUD.org>
695
787
 
696
788
  * lib/treequel/schema.rb, spec/lib/control_behavior.rb,
@@ -1362,6 +1454,12 @@
1362
1454
  * Re-sorted the OID constants to be in OID order
1363
1455
  [8b2fb7415412]
1364
1456
 
1457
+ 2010-01-13 Michael Granger <ged@FaerieMUD.org>
1458
+
1459
+ * bin/treequel:
1460
+ Make treequel shell's 'cat' command error for non-existant entries
1461
+ [84087b01d473]
1462
+
1365
1463
  2010-01-24 Michael Granger <ged@FaerieMUD.org>
1366
1464
 
1367
1465
  * bin/treequel:
@@ -1370,10 +1468,6 @@
1370
1468
 
1371
1469
  2010-01-13 Michael Granger <ged@FaerieMUD.org>
1372
1470
 
1373
- * bin/treequel:
1374
- Make treequel shell's 'cat' command error for non-existant entries
1375
- [84087b01d473]
1376
-
1377
1471
  * bin/treequel:
1378
1472
  Fix the 'grep' command in the Treequel shell.
1379
1473
  [669a09149f48]
@@ -1404,19 +1498,6 @@
1404
1498
  Updated build system
1405
1499
  [00ac1bc4e917]
1406
1500
 
1407
- 2009-12-22 Michael Granger <ged@FaerieMUD.org>
1408
-
1409
- * bin/treequel:
1410
- Reworked LDIF display colors in the shell to be more visible.
1411
- [d77a0bf26034]
1412
-
1413
- * bin/treequel:
1414
- Make the treequel shell fall back to plain connect (with a warning)
1415
- if TLS fails.
1416
- [9aeccec1ee84]
1417
-
1418
- 2010-01-07 Michael Granger <ged@FaerieMUD.org>
1419
-
1420
1501
  * bin/treequel, lib/treequel/branch.rb, lib/treequel/constants.rb,
1421
1502
  lib/treequel/utils.rb:
1422
1503
  Improvements to the treequel shell, fixes for 1.9.1.
@@ -1438,6 +1519,15 @@
1438
1519
 
1439
1520
  2009-12-22 Michael Granger <ged@FaerieMUD.org>
1440
1521
 
1522
+ * bin/treequel:
1523
+ Reworked LDIF display colors in the shell to be more visible.
1524
+ [d77a0bf26034]
1525
+
1526
+ * bin/treequel:
1527
+ Make the treequel shell fall back to plain connect (with a warning)
1528
+ if TLS fails.
1529
+ [9aeccec1ee84]
1530
+
1441
1531
  * examples/ldap-monitor.rb, examples/ldap-
1442
1532
  monitor/public/css/master.css, examples/ldap-
1443
1533
  monitor/public/images/card_small.png, examples/ldap-
@@ -1458,27 +1548,6 @@
1458
1548
  Automated merge with ssh://hg@deveiate/Treequel
1459
1549
  [3bdd645530fe]
1460
1550
 
1461
- 2009-12-18 Michael Granger <ged@FaerieMUD.org>
1462
-
1463
- * Merged with 5fd4033e1556
1464
- [9571c9d8e4dd]
1465
-
1466
- 2009-12-17 Michael Granger <ged@FaerieMUD.org>
1467
-
1468
- * docs/openldap-oids.txt, lib/treequel/constants.rb,
1469
- lib/treequel/controls/contentsync.rb,
1470
- lib/treequel/controls/persistentsearch.rb,
1471
- lib/treequel/directory.rb:
1472
- More controls work, started several more control modules.
1473
- * Adding a breakdown of all the controls the OpenLDAP server I have
1474
- has, so I know which controls I can test against.
1475
- * Added some control constants.
1476
- * Added the ContentSyncControl and the PersistentSearchControl.
1477
- * Added a Directory#supported_controls method.
1478
- [ffc2ebacdfd0]
1479
-
1480
- 2009-12-22 Michael Granger <ged@FaerieMUD.org>
1481
-
1482
1551
  * bin/treequel, examples/ldap-monitor.rb, examples/ldap-
1483
1552
  monitor/public/css/master.css, examples/ldap-
1484
1553
  monitor/public/images/card_small.png, examples/ldap-
@@ -1507,6 +1576,25 @@
1507
1576
  * Bumped the version to 1.0.2.
1508
1577
  [31c326800cc6]
1509
1578
 
1579
+ 2009-12-18 Michael Granger <ged@FaerieMUD.org>
1580
+
1581
+ * Merged with 5fd4033e1556
1582
+ [9571c9d8e4dd]
1583
+
1584
+ 2009-12-17 Michael Granger <ged@FaerieMUD.org>
1585
+
1586
+ * docs/openldap-oids.txt, lib/treequel/constants.rb,
1587
+ lib/treequel/controls/contentsync.rb,
1588
+ lib/treequel/controls/persistentsearch.rb,
1589
+ lib/treequel/directory.rb:
1590
+ More controls work, started several more control modules.
1591
+ * Adding a breakdown of all the controls the OpenLDAP server I have
1592
+ has, so I know which controls I can test against.
1593
+ * Added some control constants.
1594
+ * Added the ContentSyncControl and the PersistentSearchControl.
1595
+ * Added a Directory#supported_controls method.
1596
+ [ffc2ebacdfd0]
1597
+
1510
1598
  2009-12-16 Michael Granger <ged@FaerieMUD.org>
1511
1599
 
1512
1600
  * Rakefile, lib/treequel/mixins.rb, project.yml:
@@ -2601,16 +2689,6 @@
2601
2689
  Merged. Someday I'll get the hang of this.
2602
2690
  [a5e715f5f877]
2603
2691
 
2604
- 2009-07-28 Michael Granger <ged@FaerieMUD.org>
2605
-
2606
- * .hgignore, Rakefile:
2607
- Merged with 34cc97817266
2608
- [395b7bf6f248]
2609
-
2610
- * .hgignore, Rakefile, docs/manual/src/index.page:
2611
- Manual rewording, .hgignore updates
2612
- [89f74035c67d]
2613
-
2614
2692
  2009-07-29 Michael Granger <ged@FaerieMUD.org>
2615
2693
 
2616
2694
  * .hgignore, Rakefile, docs/manual/src/index.page,
@@ -2621,6 +2699,16 @@
2621
2699
  * Made Treequel::Branch#filter treat a Hash like an array of tuples.
2622
2700
  [46e6dce0c011]
2623
2701
 
2702
+ 2009-07-28 Michael Granger <ged@FaerieMUD.org>
2703
+
2704
+ * .hgignore, Rakefile:
2705
+ Merged with 34cc97817266
2706
+ [395b7bf6f248]
2707
+
2708
+ * .hgignore, Rakefile, docs/manual/src/index.page:
2709
+ Manual rewording, .hgignore updates
2710
+ [89f74035c67d]
2711
+
2624
2712
  2009-07-27 Michael Granger <ged@FaerieMUD.org>
2625
2713
 
2626
2714
  * .hgignore, Rakefile:
@@ -2632,6 +2720,10 @@
2632
2720
 
2633
2721
  2009-07-24 Michael Granger <ged@FaerieMUD.org>
2634
2722
 
2723
+ * .hgsub, .hgsubstate:
2724
+ Unlinking the subrepo, as it doesn't behave well enough quite yet.
2725
+ [fc3c3bac2c22]
2726
+
2635
2727
  * .hgsub, .hgsubstate:
2636
2728
  Merging build system fixes
2637
2729
  [b7a919b2ad5d]
@@ -2644,10 +2736,6 @@
2644
2736
  Removing subrepo, as it doesn't work quite the way I'd hoped.
2645
2737
  [f631900a9ad8] <build-system-fixes>
2646
2738
 
2647
- * .hgsub, .hgsubstate:
2648
- Unlinking the subrepo, as it doesn't behave well enough quite yet.
2649
- [fc3c3bac2c22]
2650
-
2651
2739
  * .hgignore, .hgsubstate, Rakefile, Rakefile.local, project.yml:
2652
2740
  Initial commit of Mercurial-based tasks
2653
2741
  [65236b2101e5] <build-system-fixes>
data/History.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## 1.4.3 [2011-02-10] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * Added gem-testers support
4
+ * Added a monkeypatch to work around a memory-corruption issue in
5
+ ruby-ldap.
6
+
7
+
1
8
  ## 1.4.2 [2011-02-07] Michael Granger <ged@FaerieMUD.org>
2
9
 
3
10
  Fixed missing DEFAULT_EDITOR constant.
data/Manifest.txt ADDED
@@ -0,0 +1,69 @@
1
+ .gemtest
2
+ ChangeLog
3
+ History.md
4
+ LICENSE
5
+ Manifest.txt
6
+ README.md
7
+ Rakefile
8
+ bin/treeirb
9
+ bin/treequel
10
+ bin/treewhat
11
+ examples/company-directory.rb
12
+ examples/ldap-rack-auth.rb
13
+ examples/ldap_state.rb
14
+ lib/treequel.rb
15
+ lib/treequel/behavior/control.rb
16
+ lib/treequel/branch.rb
17
+ lib/treequel/branchcollection.rb
18
+ lib/treequel/branchset.rb
19
+ lib/treequel/constants.rb
20
+ lib/treequel/control.rb
21
+ lib/treequel/controls/contentsync.rb
22
+ lib/treequel/controls/pagedresults.rb
23
+ lib/treequel/controls/sortedresults.rb
24
+ lib/treequel/directory.rb
25
+ lib/treequel/exceptions.rb
26
+ lib/treequel/filter.rb
27
+ lib/treequel/mixins.rb
28
+ lib/treequel/model.rb
29
+ lib/treequel/model/errors.rb
30
+ lib/treequel/model/objectclass.rb
31
+ lib/treequel/model/schemavalidations.rb
32
+ lib/treequel/monkeypatches.rb
33
+ lib/treequel/schema.rb
34
+ lib/treequel/schema/attributetype.rb
35
+ lib/treequel/schema/ldapsyntax.rb
36
+ lib/treequel/schema/matchingrule.rb
37
+ lib/treequel/schema/matchingruleuse.rb
38
+ lib/treequel/schema/objectclass.rb
39
+ lib/treequel/schema/table.rb
40
+ lib/treequel/sequel_integration.rb
41
+ lib/treequel/utils.rb
42
+ spec/data/objectClasses.yml
43
+ spec/data/schema.yml
44
+ spec/lib/constants.rb
45
+ spec/lib/helpers.rb
46
+ spec/lib/matchers.rb
47
+ spec/treequel/branch_spec.rb
48
+ spec/treequel/branchcollection_spec.rb
49
+ spec/treequel/branchset_spec.rb
50
+ spec/treequel/control_spec.rb
51
+ spec/treequel/controls/contentsync_spec.rb
52
+ spec/treequel/controls/pagedresults_spec.rb
53
+ spec/treequel/controls/sortedresults_spec.rb
54
+ spec/treequel/directory_spec.rb
55
+ spec/treequel/filter_spec.rb
56
+ spec/treequel/mixins_spec.rb
57
+ spec/treequel/model/errors_spec.rb
58
+ spec/treequel/model/objectclass_spec.rb
59
+ spec/treequel/model/schemavalidations_spec.rb
60
+ spec/treequel/model_spec.rb
61
+ spec/treequel/monkeypatches_spec.rb
62
+ spec/treequel/schema/attributetype_spec.rb
63
+ spec/treequel/schema/ldapsyntax_spec.rb
64
+ spec/treequel/schema/matchingrule_spec.rb
65
+ spec/treequel/schema/matchingruleuse_spec.rb
66
+ spec/treequel/schema/objectclass_spec.rb
67
+ spec/treequel/schema/table_spec.rb
68
+ spec/treequel/schema_spec.rb
69
+ spec/treequel_spec.rb
data/Rakefile CHANGED
@@ -7,8 +7,6 @@ Hoe.plugin :yard
7
7
  Hoe.plugin :signing
8
8
  Hoe.plugin :manualgen
9
9
 
10
-
11
-
12
10
  Hoe.plugins.delete :rubyforge
13
11
 
14
12
  hoespec = Hoe.spec 'treequel' do
@@ -58,6 +56,9 @@ end
58
56
 
59
57
  ENV['VERSION'] ||= hoespec.spec.version.to_s
60
58
 
59
+ # Tests use RSpec
60
+ task :test => :spec
61
+
61
62
  begin
62
63
  include Hoe::MercurialHelpers
63
64
 
@@ -427,6 +427,8 @@ class Treequel::Model < Treequel::Branch
427
427
  end
428
428
  end
429
429
 
430
+ self.log.debug " attribute %p has %d adds and %d deletes" %
431
+ [ attribute, attrmods[:add].length, attrmods[:delete].length ]
430
432
  mods << LDAP::Mod.new( LDAP::LDAP_MOD_DELETE, attribute.to_s, attrmods[:delete] ) unless
431
433
  attrmods[:delete].empty?
432
434
  mods << LDAP::Mod.new( LDAP::LDAP_MOD_ADD, attribute.to_s, attrmods[:add] ) unless
@@ -49,7 +49,35 @@ end # module Treequel::LDAPModExtensions
49
49
  # @private
50
50
  class LDAP::Mod
51
51
  include Treequel::LDAPModExtensions
52
- end
52
+
53
+ # The following is a nasty hack to work around memory-corruption issues in
54
+ # LDAP::Mod. The RSTRING_PTR of the second argument to LDAP::Mod#initialize
55
+ # is used without strdup()ing it, which means if the String object that was
56
+ # passed to it is garbage-collected, the attribute name of the Mod object
57
+ # gets corrupted. This hack works around that by storing the String as an
58
+ # instance variable of the Mod object, ensuring it doesn't get collected
59
+ # until the Mod object itself does. Ick.
60
+
61
+ # Turn off warnings, alias away the C initialize, then restore the verbose
62
+ # level to what it was before
63
+ begin
64
+ oldwarnlvl = $VERBOSE
65
+ $VERBOSE = nil
66
+ alias :_initialize_ext :initialize
67
+ remove_method :initialize
68
+ ensure
69
+ $VERBOSE = oldwarnlvl
70
+ end
71
+
72
+ ### Override the initializer to keep the +attribute+ around while the object
73
+ ### is alive to prevent the underlying C String pointer from going away.
74
+ ### @see line 151 of mod.c.
75
+ def initialize( op, attribute, vals )
76
+ @attribute = attribute
77
+ _initialize_ext( op, attribute, vals )
78
+ end
79
+
80
+ end # class LDAP::Mod
53
81
 
54
82
 
55
83
  ### Extensions to the Time class to add LDAP (RFC4517) Generalized Time syntax
data/lib/treequel.rb CHANGED
@@ -25,7 +25,7 @@ end
25
25
 
26
26
  # A library for interacting with LDAP modelled after Sequel.
27
27
  #
28
- # @version 1.4.2
28
+ # @version 1.4.4
29
29
  #
30
30
  # @example
31
31
  # # Connect to the directory at the specified URL
@@ -53,10 +53,10 @@ end
53
53
  module Treequel
54
54
 
55
55
  # Library version
56
- VERSION = '1.4.3'
56
+ VERSION = '1.4.4'
57
57
 
58
58
  # VCS revision
59
- REVISION = %q$Revision: c0980f0a7611 $
59
+ REVISION = %q$Revision: 8e97a0ecf0fc $
60
60
 
61
61
  # Common paths for ldap.conf
62
62
  COMMON_LDAP_CONF_PATHS = %w[
data/spec/lib/helpers.rb CHANGED
@@ -17,6 +17,41 @@ require 'treequel'
17
17
  require 'spec/lib/constants'
18
18
  require 'spec/lib/matchers'
19
19
 
20
+ ### IRb.start_session, courtesy of Joel VanderWerf in [ruby-talk:42437].
21
+ require 'irb'
22
+ require 'irb/completion'
23
+
24
+ module IRB # :nodoc:
25
+ def self.start_session( obj )
26
+ unless @__initialized
27
+ args = ARGV
28
+ ARGV.replace( ARGV.dup )
29
+ IRB.setup( nil )
30
+ ARGV.replace( args )
31
+ @__initialized = true
32
+ end
33
+
34
+ workspace = WorkSpace.new( obj )
35
+ irb = Irb.new( workspace )
36
+
37
+ @CONF[:IRB_RC].call( irb.context ) if @CONF[:IRB_RC]
38
+ @CONF[:MAIN_CONTEXT] = irb.context
39
+
40
+ begin
41
+ prevhandler = Signal.trap( 'INT' ) do
42
+ irb.signal_handle
43
+ end
44
+
45
+ catch( :IRB_EXIT ) do
46
+ irb.eval_input
47
+ end
48
+ ensure
49
+ Signal.trap( 'INT', prevhandler )
50
+ end
51
+
52
+ end
53
+ end
54
+
20
55
 
21
56
  ### RSpec helper functions.
22
57
  module Treequel::SpecHelpers
@@ -129,6 +164,9 @@ end
129
164
  ### Mock with Rspec
130
165
  Rspec.configure do |c|
131
166
  c.mock_with :rspec
167
+
168
+ c.extend( Treequel::TestConstants )
169
+
132
170
  c.include( Treequel::TestConstants )
133
171
  c.include( Treequel::SpecHelpers )
134
172
  c.include( Treequel::Matchers )
@@ -11,24 +11,15 @@ BEGIN {
11
11
  }
12
12
 
13
13
  require 'rspec'
14
-
15
- require 'spec/lib/constants'
16
14
  require 'spec/lib/helpers'
17
- require 'spec/lib/matchers'
18
-
19
15
  require 'treequel/model'
20
16
 
21
- include Treequel::TestConstants
22
- include Treequel::Constants
23
17
 
24
18
  #####################################################################
25
19
  ### C O N T E X T S
26
20
  #####################################################################
27
21
 
28
22
  describe Treequel::Model do
29
- include Treequel::SpecHelpers,
30
- Treequel::Matchers
31
-
32
23
 
33
24
  before( :all ) do
34
25
  setup_logging( :fatal )
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,8 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: treequel
3
3
  version: !ruby/object:Gem::Version
4
+ hash: 15
4
5
  prerelease:
5
- version: 1.4.3
6
+ segments:
7
+ - 1
8
+ - 4
9
+ - 4
10
+ version: 1.4.4
6
11
  platform: ruby
7
12
  authors:
8
13
  - Michael Granger
@@ -31,29 +36,39 @@ cert_chain:
31
36
  cmlhXe46pZNJgWKbxZah85jIjx95hR8vOI+NAM5iH9kOqK13DrxacTKPhqj5PjwF
32
37
  -----END CERTIFICATE-----
33
38
 
34
- date: 2011-02-07 00:00:00 -08:00
39
+ date: 2011-02-10 00:00:00 -08:00
35
40
  default_executable:
36
41
  dependencies:
37
42
  - !ruby/object:Gem::Dependency
38
- name: ruby-ldap
43
+ name: diff-lcs
39
44
  prerelease: false
40
45
  requirement: &id001 !ruby/object:Gem::Requirement
41
46
  none: false
42
47
  requirements:
43
48
  - - ~>
44
49
  - !ruby/object:Gem::Version
45
- version: 0.9.11
50
+ hash: 23
51
+ segments:
52
+ - 1
53
+ - 1
54
+ - 2
55
+ version: 1.1.2
46
56
  type: :runtime
47
57
  version_requirements: *id001
48
58
  - !ruby/object:Gem::Dependency
49
- name: diff-lcs
59
+ name: ruby-ldap
50
60
  prerelease: false
51
61
  requirement: &id002 !ruby/object:Gem::Requirement
52
62
  none: false
53
63
  requirements:
54
64
  - - ~>
55
65
  - !ruby/object:Gem::Version
56
- version: 1.1.2
66
+ hash: 45
67
+ segments:
68
+ - 0
69
+ - 9
70
+ - 11
71
+ version: 0.9.11
57
72
  type: :runtime
58
73
  version_requirements: *id002
59
74
  - !ruby/object:Gem::Dependency
@@ -64,75 +79,142 @@ dependencies:
64
79
  requirements:
65
80
  - - ~>
66
81
  - !ruby/object:Gem::Version
82
+ hash: 29
83
+ segments:
84
+ - 1
85
+ - 2
86
+ - 1
67
87
  version: 1.2.1
68
88
  type: :development
69
89
  version_requirements: *id003
70
90
  - !ruby/object:Gem::Dependency
71
- name: rspec
91
+ name: hoe-yard
72
92
  prerelease: false
73
93
  requirement: &id004 !ruby/object:Gem::Requirement
74
94
  none: false
75
95
  requirements:
76
- - - ~>
96
+ - - ">="
77
97
  - !ruby/object:Gem::Version
78
- version: 2.4.0
98
+ hash: 31
99
+ segments:
100
+ - 0
101
+ - 1
102
+ - 2
103
+ version: 0.1.2
79
104
  type: :development
80
105
  version_requirements: *id004
81
106
  - !ruby/object:Gem::Dependency
82
- name: ruby-termios
107
+ name: hoe-manualgen
83
108
  prerelease: false
84
109
  requirement: &id005 !ruby/object:Gem::Requirement
85
110
  none: false
86
111
  requirements:
87
112
  - - ~>
88
113
  - !ruby/object:Gem::Version
89
- version: 0.9.6
114
+ hash: 29
115
+ segments:
116
+ - 0
117
+ - 0
118
+ - 1
119
+ version: 0.0.1
90
120
  type: :development
91
121
  version_requirements: *id005
92
122
  - !ruby/object:Gem::Dependency
93
- name: ruby-terminfo
123
+ name: columnize
94
124
  prerelease: false
95
125
  requirement: &id006 !ruby/object:Gem::Requirement
96
126
  none: false
97
127
  requirements:
98
128
  - - ~>
99
129
  - !ruby/object:Gem::Version
100
- version: 0.1.1
130
+ hash: 17
131
+ segments:
132
+ - 0
133
+ - 3
134
+ - 1
135
+ version: 0.3.1
101
136
  type: :development
102
137
  version_requirements: *id006
103
138
  - !ruby/object:Gem::Dependency
104
- name: columnize
139
+ name: ruby-termios
105
140
  prerelease: false
106
141
  requirement: &id007 !ruby/object:Gem::Requirement
107
142
  none: false
108
143
  requirements:
109
144
  - - ~>
110
145
  - !ruby/object:Gem::Version
111
- version: 0.3.1
146
+ hash: 55
147
+ segments:
148
+ - 0
149
+ - 9
150
+ - 6
151
+ version: 0.9.6
112
152
  type: :development
113
153
  version_requirements: *id007
114
154
  - !ruby/object:Gem::Dependency
115
- name: sysexits
155
+ name: ruby-terminfo
116
156
  prerelease: false
117
157
  requirement: &id008 !ruby/object:Gem::Requirement
118
158
  none: false
119
159
  requirements:
120
160
  - - ~>
121
161
  - !ruby/object:Gem::Version
122
- version: 1.0.2
162
+ hash: 25
163
+ segments:
164
+ - 0
165
+ - 1
166
+ - 1
167
+ version: 0.1.1
123
168
  type: :development
124
169
  version_requirements: *id008
125
170
  - !ruby/object:Gem::Dependency
126
- name: hoe
171
+ name: rspec
127
172
  prerelease: false
128
173
  requirement: &id009 !ruby/object:Gem::Requirement
129
174
  none: false
130
175
  requirements:
131
- - - ">="
176
+ - - ~>
132
177
  - !ruby/object:Gem::Version
133
- version: 2.9.0
178
+ hash: 31
179
+ segments:
180
+ - 2
181
+ - 4
182
+ - 0
183
+ version: 2.4.0
134
184
  type: :development
135
185
  version_requirements: *id009
186
+ - !ruby/object:Gem::Dependency
187
+ name: sysexits
188
+ prerelease: false
189
+ requirement: &id010 !ruby/object:Gem::Requirement
190
+ none: false
191
+ requirements:
192
+ - - ~>
193
+ - !ruby/object:Gem::Version
194
+ hash: 19
195
+ segments:
196
+ - 1
197
+ - 0
198
+ - 2
199
+ version: 1.0.2
200
+ type: :development
201
+ version_requirements: *id010
202
+ - !ruby/object:Gem::Dependency
203
+ name: hoe
204
+ prerelease: false
205
+ requirement: &id011 !ruby/object:Gem::Requirement
206
+ none: false
207
+ requirements:
208
+ - - ">="
209
+ - !ruby/object:Gem::Version
210
+ hash: 41
211
+ segments:
212
+ - 2
213
+ - 9
214
+ - 1
215
+ version: 2.9.1
216
+ type: :development
217
+ version_requirements: *id011
136
218
  description: |-
137
219
  Treequel is an LDAP toolkit for Ruby. It is intended to allow quick, easy
138
220
  access to LDAP directories in a manner consistent with LDAP's hierarchical,
@@ -149,12 +231,15 @@ executables:
149
231
  - treewhat
150
232
  extensions: []
151
233
 
152
- extra_rdoc_files: []
153
-
234
+ extra_rdoc_files:
235
+ - Manifest.txt
236
+ - History.md
154
237
  files:
238
+ - .gemtest
155
239
  - ChangeLog
156
240
  - History.md
157
241
  - LICENSE
242
+ - Manifest.txt
158
243
  - README.md
159
244
  - Rakefile
160
245
  - bin/treeirb
@@ -219,7 +304,6 @@ files:
219
304
  - spec/treequel/schema/table_spec.rb
220
305
  - spec/treequel/schema_spec.rb
221
306
  - spec/treequel_spec.rb
222
- - .gemtest
223
307
  has_rdoc: true
224
308
  homepage: http://deveiate.org/projects/Treequel
225
309
  licenses:
@@ -236,8 +320,11 @@ post_install_message: |-
236
320
  You can install them automatically if you use the --development flag when
237
321
  installing Treequel.
238
322
  rdoc_options:
239
- - --main
240
- - README.md
323
+ - --use-cache
324
+ - --protected
325
+ - --verbose
326
+ - --title
327
+ - Treequel Documentation
241
328
  require_paths:
242
329
  - lib
243
330
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -245,17 +332,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
245
332
  requirements:
246
333
  - - ">="
247
334
  - !ruby/object:Gem::Version
335
+ hash: 57
336
+ segments:
337
+ - 1
338
+ - 8
339
+ - 7
248
340
  version: 1.8.7
249
341
  required_rubygems_version: !ruby/object:Gem::Requirement
250
342
  none: false
251
343
  requirements:
252
344
  - - ">="
253
345
  - !ruby/object:Gem::Version
346
+ hash: 3
347
+ segments:
348
+ - 0
254
349
  version: "0"
255
350
  requirements: []
256
351
 
257
352
  rubyforge_project: treequel
258
- rubygems_version: 1.5.0
353
+ rubygems_version: 1.4.2
259
354
  signing_key:
260
355
  specification_version: 3
261
356
  summary: Treequel is an LDAP toolkit for Ruby
metadata.gz.sig CHANGED
Binary file