treequel 1.5.2 → 1.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data.tar.gz.sig CHANGED
@@ -1 +1,3 @@
1
- &xSq�e���Z.�s����^�(�ʫ��Evm�D리��W[�� �6��~�L�U�\�S�Ll4 �W��L`W~��.y��<<���^_��ZI�<�2j2�}qCM�+V�n �>i-��g���L`�i�G��+����K �šʺ[(g�?R���`�8i�I,�x�#���U����yo�I�!���R!���{��'��F����\n�!vOUk�����.��yG��}��Hc���guP�۷3�)���:�N�5.(��]1
1
+ ,�D�P(���$i���
2
+ �f�V/6_�T�O�m�)����=�f@$��9����.@ ڲZ#z�o
3
+ ��e�=��N�Vp��,����Ԟ�����눣�nj1V�0�uK��c��4)���C�s� �����ٕ�/��-���i�)�E��Y��4�g�.�(Z%m?{�:<8�&��-A_$.k׼!�g�MJ� RV� �b]��ZMv����_ǚ��$5�u�o�9a8�RE������;ê
data/History.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## 1.5.3 [2011-04-07] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * Don't pollute the gemspec with Yard-only options
4
+ * Adding a --no-tls flag to the treequel shell
5
+ * Updated the 'treewhat' schema tool.
6
+ * Show additional details for some schema objects.
7
+ * Adding schema artifacts to the treewhat command
8
+ * Include regular attributes (in addition to operational ones) in the
9
+ root_dse, as AD stores everything in regular attributes.
10
+
1
11
  ## 1.5.2 [2011-03-17] Michael Granger <ged@FaerieMUD.org>
2
12
 
3
13
  * Manual updates
data/Rakefile CHANGED
@@ -4,6 +4,7 @@ require 'hoe'
4
4
 
5
5
  Hoe.plugin :mercurial
6
6
  Hoe.plugin :signing
7
+ Hoe.plugin :yard
7
8
  Hoe.plugin :manualgen
8
9
 
9
10
  Hoe.plugins.delete :rubyforge
@@ -58,45 +59,3 @@ ENV['VERSION'] ||= hoespec.spec.version.to_s
58
59
  # Tests use RSpec
59
60
  task :test => :spec
60
61
 
61
- begin
62
- include Hoe::MercurialHelpers
63
-
64
- task 'hg:precheckin' => :spec
65
-
66
- ### Task: prerelease
67
- desc "Append the package build number to package versions"
68
- task :pre do
69
- rev = get_numeric_rev()
70
- trace "Current rev is: %p" % [ rev ]
71
- hoespec.spec.version.version << "pre#{rev}"
72
- Rake::Task[:gem].clear
73
-
74
- Gem::PackageTask.new( hoespec.spec ) do |pkg|
75
- pkg.need_zip = true
76
- pkg.need_tar = true
77
- end
78
- end
79
-
80
- ### Make the ChangeLog update if the repo has changed since it was last built
81
- file '.hg/branch'
82
- file 'ChangeLog' => '.hg/branch' do |task|
83
- $stderr.puts "Updating the changelog..."
84
- content = make_changelog()
85
- File.open( task.name, 'w', 0644 ) do |fh|
86
- fh.print( content )
87
- end
88
- end
89
-
90
- # Rebuild the ChangeLog immediately before release
91
- task :prerelease => 'ChangeLog'
92
-
93
- rescue NameError => err
94
- task :no_hg_helpers do
95
- fail "Couldn't define the :pre task: %s: %s" % [ err.class.name, err.message ]
96
- end
97
-
98
- task :pre => :no_hg_helpers
99
- task 'ChangeLog' => :no_hg_helpers
100
-
101
- end
102
-
data/bin/treequel CHANGED
@@ -42,7 +42,7 @@ module IRB # :nodoc:
42
42
  def self.start_session( obj )
43
43
  unless @__initialized
44
44
  args = ARGV
45
- ARGV.replace( ARGV.dup )
45
+ ARGV.replace( [] )
46
46
  IRB.setup( nil )
47
47
  ARGV.replace( args )
48
48
  @__initialized = true
@@ -116,10 +116,12 @@ class Treequel::Shell
116
116
  ### Run the shell.
117
117
  def self::run( args )
118
118
  Treequel.logger.formatter = Treequel::ColorLogFormatter.new( Treequel.logger )
119
- bind_as, uri = self.parse_options( args )
119
+ bind_as, plaintext, uri = self.parse_options( args )
120
+
121
+ connect_type = plaintext ? :plain : :tls
120
122
 
121
123
  directory = if uri
122
- Treequel.directory( uri )
124
+ Treequel.directory( uri, :connect_type => connect_type )
123
125
  else
124
126
  Treequel.directory_from_config
125
127
  end
@@ -137,6 +139,7 @@ class Treequel::Shell
137
139
  collect {|name,lvl| name.to_s }.
138
140
  join(', ')
139
141
  bind_as = nil
142
+ plaintext = false
140
143
 
141
144
  oparser = OptionParser.new( "Usage: #{progname} [OPTIONS] [LDAPURL]" ) do |oparser|
142
145
  oparser.separator ' '
@@ -145,6 +148,11 @@ class Treequel::Shell
145
148
  bind_as = dn
146
149
  end
147
150
 
151
+ oparser.on( '--no-tls', FalseClass, "Use a plaintext (unencrypted) connection.",
152
+ "If you don't specify a connection URL, this option is ignored." ) do
153
+ plaintext = true
154
+ end
155
+
148
156
  oparser.on( '--loglevel=LEVEL', '-l LEVEL', Treequel::LOG_LEVELS.keys,
149
157
  "Set the logging level. Should be one of:", loglevels ) do |lvl|
150
158
  Treequel.logger.level = Treequel::LOG_LEVELS[ lvl ] or
@@ -165,7 +173,7 @@ class Treequel::Shell
165
173
 
166
174
  remaining_args = oparser.parse( argv )
167
175
 
168
- return bind_as, *remaining_args
176
+ return bind_as, plaintext, *remaining_args
169
177
  end
170
178
 
171
179
 
@@ -338,21 +346,6 @@ class Treequel::Shell
338
346
  protected
339
347
  #########
340
348
 
341
- ### Fetch a Treequel::Directory object for the directory at the given +uri+, or
342
- ### quit with an error if unable to do so.
343
- def get_ldap_directory( uri, options )
344
- if uri.port == LDAP::LDAP_PORT
345
- if options.try_tls
346
- return Treequel.directory( uri, :connect_type => :tls )
347
- else
348
- return Treequel.directory( uri, :connect_type => :plain )
349
- end
350
- else
351
- return Treequel.directory( uri, :connect_type => :ssl )
352
- end
353
- end
354
-
355
-
356
349
  ### Set up Readline completion
357
350
  def setup_completion
358
351
  Readline.completion_proc = self.method( :completion_callback ).to_proc
data/bin/treewhat CHANGED
@@ -79,9 +79,21 @@ class Treequel::What
79
79
  %{output instead.}
80
80
  text ''
81
81
 
82
- text 'Options:'
82
+ text 'Connection Options:'
83
83
  opt :ldapurl, "Specify the directory to connect to.",
84
84
  :default => default_directory.uri.to_s
85
+ text ''
86
+
87
+ text 'Display Options:'
88
+ opt :attrtypes, "Show attribute types for objects that have them."
89
+ opt :objectclasses, "Show objectclasses for objects that have them."
90
+ opt :syntaxes, "Show syntaxes for objects that have them."
91
+ opt :matching_rules, "Show matching rules for objects that have them."
92
+ opt :matching_rule_uses, "Show matching rule uses for objects that have them."
93
+ opt :all, "Show any of the above that are applicable."
94
+ text ''
95
+
96
+ text 'Other Options:'
85
97
  opt :debug, "Turn debugging on. Also sets the --loglevel to 'debug'."
86
98
  opt :loglevel, "Set the logging level. Must be one of: #{loglevels}",
87
99
  :default => Treequel::LOG_LEVEL_NAMES[ Treequel.logger.level ]
@@ -109,8 +121,19 @@ class Treequel::What
109
121
  end
110
122
 
111
123
  @options = options
112
- @prompt = HighLine.new
124
+ if @options.all?
125
+ @options[:attrtypes] =
126
+ @options[:objectclasses] =
127
+ @options[:syntaxes] =
128
+ @options[:matching_rules] =
129
+ @options[:matching_rule_uses] =
130
+ true
131
+ end
132
+
113
133
  @directory = Treequel.directory( options.ldapurl )
134
+ @prompt = HighLine.new
135
+
136
+ @prompt.wrap_at = @prompt.output_cols - 10
114
137
 
115
138
  self.log.debug "Created new treewhat command object for %s" % [ @directory ]
116
139
  end
@@ -136,7 +159,6 @@ class Treequel::What
136
159
  end
137
160
 
138
161
 
139
-
140
162
  ### Run the command with the specified +pattern+.
141
163
  def run( pattern=nil )
142
164
  self.log.debug "Running with pattern = %p" % [ pattern ]
@@ -188,9 +210,35 @@ class Treequel::What
188
210
  pr.say( "\n" )
189
211
  pr.say( dir.schema.to_s )
190
212
 
213
+ self.show_column_list( dir.schema.attribute_types.values, 'Attribute Types' ) if
214
+ self.options.attrtypes
215
+ self.show_column_list( dir.schema.object_classes.values, "Object Classes" ) if
216
+ self.options.objectclasses
217
+ self.show_column_list( dir.schema.ldap_syntaxes.values, "Syntaxes" ) if
218
+ self.options.syntaxes
219
+ self.show_column_list( dir.schema.matching_rules.values, "Matching Rules" ) if
220
+ self.options.matching_rules
221
+ self.show_column_list( dir.schema.matching_rule_uses.values, "Matching Rule Uses" ) if
222
+ self.options.matching_rule_uses
191
223
  end
192
224
 
193
225
 
226
+ ### Show the items from the given +enum+ under the specified +subheading+ in a columnized list.
227
+ def show_column_list( enum, subheading )
228
+ pr = self.prompt
229
+ items = nil
230
+
231
+ if enum.first.respond_to?( :name )
232
+ items = enum.map( &:name ).map( &:to_s ).uniq
233
+ else
234
+ items = enum.map( &:oid ).uniq
235
+ end
236
+
237
+ pr.say( "\n" )
238
+ pr.say( pr.color(subheading, :subheader) )
239
+ pr.say( pr.list(items.sort_by(&:downcase), :columns_across) )
240
+ end
241
+
194
242
 
195
243
  #
196
244
  # 'Show entry' mode
@@ -280,8 +328,34 @@ class Treequel::What
280
328
 
281
329
  ### Display a schema artifact in a readable way.
282
330
  def display_schema_artifact( artifact )
283
- self.prompt.say( artifact.class.name.sub(/.*::/, '') + ' ' )
284
- self.prompt.say( artifact.to_s )
331
+ self.prompt.say( self.prompt.color(artifact.class.name.sub(/.*::/, ''), :header) + ' ' )
332
+ self.prompt.say( self.prompt.color(artifact.to_s, :subheader) )
333
+
334
+ # Display some other stuff depending on what kind of thing it is
335
+ case artifact
336
+ when Treequel::Schema::AttributeType
337
+ self.display_attrtype_details( artifact )
338
+ end
339
+ end
340
+
341
+
342
+ ### Display additional details for the specified +attrtype+.
343
+ ### @param [Treequel::Schema::AttributeType] attrtype the attribute type object to display
344
+ def display_attrtype_details( attrtype )
345
+ ocs = self.directory.schema.object_classes.values.find_all do |oc|
346
+ ( oc.must_oids | oc.may_oids ).include?( attrtype.name.to_sym )
347
+ end
348
+
349
+ if ocs.empty?
350
+ self.prompt.say "No objectClasses with the '%s' attribute are in the current schema." %
351
+ [ attrtype.name ]
352
+ else
353
+ ocnames = ocs.uniq.map( &:name ).map( &:to_s ).sort
354
+
355
+ self.prompt.say "objectClasses with the '%s' attribute in the current schema:" %
356
+ [ attrtype.name ]
357
+ self.prompt.say( self.prompt.list(ocnames, :columns_across) )
358
+ end
285
359
  end
286
360
 
287
361
 
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.5.2
28
+ # @version 1.5.3
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.5.2'
56
+ VERSION = '1.5.3'
57
57
 
58
58
  # VCS revision
59
- REVISION = %q$Revision: ea0680256a65 $
59
+ REVISION = %q$Revision: 1f396aca7d8b $
60
60
 
61
61
  # Common paths for ldap.conf
62
62
  COMMON_LDAP_CONF_PATHS = %w[
@@ -189,7 +189,7 @@ class Treequel::Directory
189
189
 
190
190
  ### Fetch the root DSE as a Treequel::Branch.
191
191
  def root_dse
192
- return self.search( '', :base, '(objectClass=*)', :selectattrs => ['+'] ).first
192
+ return self.search( '', :base, '(objectClass=*)', :selectattrs => ['+', '*'] ).first
193
193
  end
194
194
 
195
195
 
data/spec/lib/helpers.rb CHANGED
@@ -129,7 +129,7 @@ module Treequel::SpecHelpers
129
129
  def get_fixtured_directory( conn )
130
130
  LDAP::SSLConn.stub( :new ).and_return( conn )
131
131
  conn.stub( :search_ext2 ).
132
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
132
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
133
133
  and_return( TEST_DSE )
134
134
  conn.stub( :set_option )
135
135
 
@@ -53,7 +53,7 @@ describe Treequel::Directory do
53
53
 
54
54
  it "is created with reasonable default options if none are specified" do
55
55
  @conn.stub( :search_ext2 ).
56
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
56
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
57
57
  and_return( TEST_DSE )
58
58
 
59
59
  dir = Treequel::Directory.new
@@ -87,7 +87,7 @@ describe Treequel::Directory do
87
87
  it "uses the first namingContext from the Root DSE if no base is specified" do
88
88
  LDAP::Conn.stub( :new ).and_return( @conn )
89
89
  @conn.stub( :search_ext2 ).
90
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
90
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
91
91
  and_return( TEST_DSE )
92
92
 
93
93
  dir = Treequel::Directory.new( @options.merge(:base_dn => nil) )
@@ -606,7 +606,7 @@ describe Treequel::Directory do
606
606
  before( :each ) do
607
607
  @control = Module.new { include Treequel::Control }
608
608
  @conn.stub( :search_ext2 ).
609
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
609
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
610
610
  and_return( TEST_DSE )
611
611
  end
612
612
 
@@ -647,7 +647,7 @@ describe Treequel::Directory do
647
647
  describe "to a server that supports extensions introspection" do
648
648
  before( :each ) do
649
649
  @conn.stub( :search_ext2 ).
650
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
650
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
651
651
  and_return( TEST_DSE )
652
652
  end
653
653
 
@@ -667,7 +667,7 @@ describe Treequel::Directory do
667
667
  describe "to a server that supports features introspection" do
668
668
  before( :each ) do
669
669
  @conn.stub( :search_ext2 ).
670
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
670
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
671
671
  and_return( TEST_DSE )
672
672
  end
673
673
 
@@ -686,7 +686,7 @@ describe Treequel::Directory do
686
686
  describe "to a server that doesn't support features introspection" do
687
687
  before( :each ) do
688
688
  @conn.stub( :search_ext2 ).
689
- with( "", 0, "(objectClass=*)", ["+"], false, nil, nil, 0, 0, 0, "", nil ).
689
+ with( "", 0, "(objectClass=*)", ["+", '*'], false, nil, nil, 0, 0, 0, "", nil ).
690
690
  and_return( TEST_DSE )
691
691
  end
692
692
 
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: 5
4
5
  prerelease:
5
- version: 1.5.2
6
+ segments:
7
+ - 1
8
+ - 5
9
+ - 3
10
+ version: 1.5.3
6
11
  platform: ruby
7
12
  authors:
8
13
  - Michael Granger
@@ -31,29 +36,37 @@ cert_chain:
31
36
  cmlhXe46pZNJgWKbxZah85jIjx95hR8vOI+NAM5iH9kOqK13DrxacTKPhqj5PjwF
32
37
  -----END CERTIFICATE-----
33
38
 
34
- date: 2011-03-17 00:00:00 -07:00
39
+ date: 2011-04-07 00:00:00 -07: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"
50
+ hash: 13
51
+ segments:
52
+ - 1
53
+ - 1
54
+ version: "1.1"
46
55
  type: :runtime
47
56
  version_requirements: *id001
48
57
  - !ruby/object:Gem::Dependency
49
- name: diff-lcs
58
+ name: ruby-ldap
50
59
  prerelease: false
51
60
  requirement: &id002 !ruby/object:Gem::Requirement
52
61
  none: false
53
62
  requirements:
54
63
  - - ~>
55
64
  - !ruby/object:Gem::Version
56
- version: "1.1"
65
+ hash: 25
66
+ segments:
67
+ - 0
68
+ - 9
69
+ version: "0.9"
57
70
  type: :runtime
58
71
  version_requirements: *id002
59
72
  - !ruby/object:Gem::Dependency
@@ -64,40 +77,60 @@ dependencies:
64
77
  requirements:
65
78
  - - ~>
66
79
  - !ruby/object:Gem::Version
80
+ hash: 29
81
+ segments:
82
+ - 1
83
+ - 2
84
+ - 1
67
85
  version: 1.2.1
68
86
  type: :development
69
87
  version_requirements: *id003
70
88
  - !ruby/object:Gem::Dependency
71
- name: rspec
89
+ name: hoe-yard
72
90
  prerelease: false
73
91
  requirement: &id004 !ruby/object:Gem::Requirement
74
92
  none: false
75
93
  requirements:
76
- - - ~>
94
+ - - ">="
77
95
  - !ruby/object:Gem::Version
78
- version: "2.4"
96
+ hash: 31
97
+ segments:
98
+ - 0
99
+ - 1
100
+ - 2
101
+ version: 0.1.2
79
102
  type: :development
80
103
  version_requirements: *id004
81
104
  - !ruby/object:Gem::Dependency
82
- name: ruby-termios
105
+ name: hoe-manualgen
83
106
  prerelease: false
84
107
  requirement: &id005 !ruby/object:Gem::Requirement
85
108
  none: false
86
109
  requirements:
87
110
  - - ~>
88
111
  - !ruby/object:Gem::Version
89
- version: "0.9"
112
+ hash: 27
113
+ segments:
114
+ - 0
115
+ - 1
116
+ - 0
117
+ version: 0.1.0
90
118
  type: :development
91
119
  version_requirements: *id005
92
120
  - !ruby/object:Gem::Dependency
93
- name: ruby-terminfo
121
+ name: hoe-yard
94
122
  prerelease: false
95
123
  requirement: &id006 !ruby/object:Gem::Requirement
96
124
  none: false
97
125
  requirements:
98
- - - ~>
126
+ - - ">="
99
127
  - !ruby/object:Gem::Version
100
- version: "0.1"
128
+ hash: 31
129
+ segments:
130
+ - 0
131
+ - 1
132
+ - 2
133
+ version: 0.1.2
101
134
  type: :development
102
135
  version_requirements: *id006
103
136
  - !ruby/object:Gem::Dependency
@@ -108,42 +141,104 @@ dependencies:
108
141
  requirements:
109
142
  - - ~>
110
143
  - !ruby/object:Gem::Version
144
+ hash: 13
145
+ segments:
146
+ - 0
147
+ - 3
111
148
  version: "0.3"
112
149
  type: :development
113
150
  version_requirements: *id007
114
151
  - !ruby/object:Gem::Dependency
115
- name: sysexits
152
+ name: ruby-termios
116
153
  prerelease: false
117
154
  requirement: &id008 !ruby/object:Gem::Requirement
118
155
  none: false
119
156
  requirements:
120
157
  - - ~>
121
158
  - !ruby/object:Gem::Version
122
- version: "1.0"
159
+ hash: 25
160
+ segments:
161
+ - 0
162
+ - 9
163
+ version: "0.9"
123
164
  type: :development
124
165
  version_requirements: *id008
125
166
  - !ruby/object:Gem::Dependency
126
- name: sequel
167
+ name: ruby-terminfo
127
168
  prerelease: false
128
169
  requirement: &id009 !ruby/object:Gem::Requirement
129
170
  none: false
130
171
  requirements:
131
172
  - - ~>
132
173
  - !ruby/object:Gem::Version
133
- version: "3.20"
174
+ hash: 9
175
+ segments:
176
+ - 0
177
+ - 1
178
+ version: "0.1"
134
179
  type: :development
135
180
  version_requirements: *id009
136
181
  - !ruby/object:Gem::Dependency
137
- name: hoe
182
+ name: rspec
138
183
  prerelease: false
139
184
  requirement: &id010 !ruby/object:Gem::Requirement
140
185
  none: false
141
186
  requirements:
142
- - - ">="
187
+ - - ~>
143
188
  - !ruby/object:Gem::Version
144
- version: 2.9.1
189
+ hash: 11
190
+ segments:
191
+ - 2
192
+ - 4
193
+ version: "2.4"
145
194
  type: :development
146
195
  version_requirements: *id010
196
+ - !ruby/object:Gem::Dependency
197
+ name: sequel
198
+ prerelease: false
199
+ requirement: &id011 !ruby/object:Gem::Requirement
200
+ none: false
201
+ requirements:
202
+ - - ~>
203
+ - !ruby/object:Gem::Version
204
+ hash: 47
205
+ segments:
206
+ - 3
207
+ - 20
208
+ version: "3.20"
209
+ type: :development
210
+ version_requirements: *id011
211
+ - !ruby/object:Gem::Dependency
212
+ name: sysexits
213
+ prerelease: false
214
+ requirement: &id012 !ruby/object:Gem::Requirement
215
+ none: false
216
+ requirements:
217
+ - - ~>
218
+ - !ruby/object:Gem::Version
219
+ hash: 15
220
+ segments:
221
+ - 1
222
+ - 0
223
+ version: "1.0"
224
+ type: :development
225
+ version_requirements: *id012
226
+ - !ruby/object:Gem::Dependency
227
+ name: hoe
228
+ prerelease: false
229
+ requirement: &id013 !ruby/object:Gem::Requirement
230
+ none: false
231
+ requirements:
232
+ - - ">="
233
+ - !ruby/object:Gem::Version
234
+ hash: 35
235
+ segments:
236
+ - 2
237
+ - 9
238
+ - 4
239
+ version: 2.9.4
240
+ type: :development
241
+ version_requirements: *id013
147
242
  description: |-
148
243
  Treequel is an LDAP toolkit for Ruby. It is intended to allow quick, easy
149
244
  access to LDAP directories in a manner consistent with LDAP's hierarchical,
@@ -162,6 +257,7 @@ extensions: []
162
257
 
163
258
  extra_rdoc_files:
164
259
  - Manifest.txt
260
+ - History.md
165
261
  files:
166
262
  - .gemtest
167
263
  - ChangeLog
@@ -248,8 +344,9 @@ post_install_message: |-
248
344
  You can install them automatically if you use the --development flag when
249
345
  installing Treequel.
250
346
  rdoc_options:
251
- - --main
252
- - README.md
347
+ - --title
348
+ - Treequel Documentation
349
+ - --quiet
253
350
  require_paths:
254
351
  - lib
255
352
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -257,17 +354,25 @@ required_ruby_version: !ruby/object:Gem::Requirement
257
354
  requirements:
258
355
  - - ">="
259
356
  - !ruby/object:Gem::Version
357
+ hash: 57
358
+ segments:
359
+ - 1
360
+ - 8
361
+ - 7
260
362
  version: 1.8.7
261
363
  required_rubygems_version: !ruby/object:Gem::Requirement
262
364
  none: false
263
365
  requirements:
264
366
  - - ">="
265
367
  - !ruby/object:Gem::Version
368
+ hash: 3
369
+ segments:
370
+ - 0
266
371
  version: "0"
267
372
  requirements: []
268
373
 
269
374
  rubyforge_project: treequel
270
- rubygems_version: 1.5.2
375
+ rubygems_version: 1.6.2
271
376
  signing_key:
272
377
  specification_version: 3
273
378
  summary: Treequel is an LDAP toolkit for Ruby
metadata.gz.sig CHANGED
Binary file