treequel 1.5.2 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
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