whimsy-asf 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 745af259ed57e8fb20ab09546ce7ed98a9a8de07
4
+ data.tar.gz: e3363e9e7659b841635624b80987499605bd547f
5
+ SHA512:
6
+ metadata.gz: 37c95ea9f180f4d1ef4f5f2e743355d6e9f93ef924d3681cc4145e737c56c5930665049cbf1bd7cd0f672c3901474f7d003380a713cf77d35f7f7797aa304fac
7
+ data.tar.gz: 6d40d2dbd65fc4e570d5e6791773e81edf4555c007e68f27962b06342b52d21f40cc0c87ec6c3ce2b7f44855cb89c98dbb9710c41642243a70cad5448c2a3004
data/asf.version CHANGED
@@ -1 +1 @@
1
- 0.0.1
1
+ 0.0.2
@@ -0,0 +1,27 @@
1
+ # load configuration information from $HOME/.whimsy
2
+
3
+ require 'yaml'
4
+
5
+ module ASF
6
+
7
+ class Config
8
+ @home = ENV['HOME'] || Dir.pwd
9
+
10
+ @config = YAML.load_file("#@home/.whimsy") rescue {}
11
+
12
+ # default :svn for backwards compatibility
13
+ @config[:svn] ||= ['/home/whimsysvn/svn/*']
14
+
15
+ # add libraries to RUBYLIB, load path
16
+ (@config[:lib] || []).each do |lib|
17
+ next unless File.exist? lib
18
+ ENV['RUBYLIB']=(ENV['RUBYLIB'].to_s.split(':')+[lib]).uniq.join(':')
19
+ $LOAD_PATH << lib unless $LOAD_PATH.include? lib
20
+ end
21
+
22
+ def self.get(value)
23
+ @config[value]
24
+ end
25
+ end
26
+
27
+ end
@@ -10,7 +10,7 @@ module ASF
10
10
 
11
11
  def self.repos
12
12
  @semaphore.synchronize do
13
- @repos ||= Hash[Dir['/home/whimsysvn/svn/*'].map { |name|
13
+ @repos ||= Hash[Dir[*ASF::Config.get(:svn)].map { |name|
14
14
  Dir.chdir name.untaint do
15
15
  [`svn info`[/URL: (.*)/,1].sub(/^http:/,'https:'), Dir.pwd.untaint]
16
16
  end
@@ -19,8 +19,19 @@ module ASF
19
19
  end
20
20
 
21
21
  def self.[](name)
22
- repos[(@mock+name.sub('private/','')).to_s.sub(/\/*$/, '')] ||
22
+ result = repos[(@mock+name.sub('private/','')).to_s.sub(/\/*$/, '')] ||
23
23
  repos[(@base+name).to_s.sub(/\/*$/, '')] # lose trailing slash
24
+
25
+ return result if result
26
+
27
+ # recursively try parent directory
28
+ if name.include? '/'
29
+ base = File.basename(name)
30
+ result = self[File.dirname(name)]
31
+ if result and File.exist?(File.join(result, base))
32
+ File.join(result, base)
33
+ end
34
+ end
24
35
  end
25
36
  end
26
37
 
data/lib/whimsy/asf.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require File.expand_path('../asf/config', __FILE__)
1
2
  require File.expand_path('../asf/committee', __FILE__)
2
3
  require File.expand_path('../asf/ldap', __FILE__)
3
4
  require File.expand_path('../asf/mail', __FILE__)
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: whimsy-asf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.0.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Sam Ruby
@@ -14,85 +13,76 @@ dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: nokogiri
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rack
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: ruby-ldap
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - '>='
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - '>='
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: tzinfo
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - '>='
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: wunderbar
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - '>='
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - '>='
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
- description: ! " This package contains a set of classes which encapsulate access\n
95
- \ to a number of data sources such as LDAP, ICLAs, auth lists, etc.\n"
83
+ description: |2
84
+ This package contains a set of classes which encapsulate access
85
+ to a number of data sources such as LDAP, ICLAs, auth lists, etc.
96
86
  email: rubys@intertwingly.net
97
87
  executables: []
98
88
  extensions: []
@@ -100,50 +90,50 @@ extra_rdoc_files: []
100
90
  files:
101
91
  - asf.gemspec
102
92
  - asf.version
103
- - lib/whimsy/asf.rb
104
- - lib/whimsy/asf/member.rb
105
- - lib/whimsy/asf/ldap.rb
106
- - lib/whimsy/asf/mail.rb
107
- - lib/whimsy/asf/icla.rb
108
- - lib/whimsy/asf/svn.rb
109
- - lib/whimsy/asf/podlings.rb
110
- - lib/whimsy/asf/site.rb
111
- - lib/whimsy/asf/auth.rb
112
- - lib/whimsy/asf/nominees.rb
113
- - lib/whimsy/asf/agenda/back.rb
114
- - lib/whimsy/asf/agenda/front.rb
115
- - lib/whimsy/asf/agenda/special.rb
116
93
  - lib/whimsy/asf/agenda/attachments.rb
94
+ - lib/whimsy/asf/agenda/back.rb
95
+ - lib/whimsy/asf/agenda/committee.rb
117
96
  - lib/whimsy/asf/agenda/exec-officer.rb
97
+ - lib/whimsy/asf/agenda/front.rb
118
98
  - lib/whimsy/asf/agenda/minutes.rb
119
- - lib/whimsy/asf/agenda/committee.rb
99
+ - lib/whimsy/asf/agenda/special.rb
120
100
  - lib/whimsy/asf/agenda.rb
121
- - lib/whimsy/asf/rack.rb
101
+ - lib/whimsy/asf/auth.rb
122
102
  - lib/whimsy/asf/committee.rb
103
+ - lib/whimsy/asf/config.rb
104
+ - lib/whimsy/asf/icla.rb
105
+ - lib/whimsy/asf/ldap.rb
106
+ - lib/whimsy/asf/mail.rb
107
+ - lib/whimsy/asf/member.rb
108
+ - lib/whimsy/asf/nominees.rb
109
+ - lib/whimsy/asf/podlings.rb
110
+ - lib/whimsy/asf/rack.rb
111
+ - lib/whimsy/asf/site.rb
112
+ - lib/whimsy/asf/svn.rb
123
113
  - lib/whimsy/asf/watch.rb
114
+ - lib/whimsy/asf.rb
124
115
  homepage: https://whimsy.apache.org/
125
116
  licenses:
126
117
  - Apache License, Version 2.0
118
+ metadata: {}
127
119
  post_install_message:
128
120
  rdoc_options: []
129
121
  require_paths:
130
122
  - lib
131
123
  required_ruby_version: !ruby/object:Gem::Requirement
132
- none: false
133
124
  requirements:
134
- - - ! '>='
125
+ - - '>='
135
126
  - !ruby/object:Gem::Version
136
127
  version: '0'
137
128
  required_rubygems_version: !ruby/object:Gem::Requirement
138
- none: false
139
129
  requirements:
140
- - - ! '>='
130
+ - - '>='
141
131
  - !ruby/object:Gem::Version
142
132
  version: '0'
143
133
  requirements: []
144
134
  rubyforge_project:
145
- rubygems_version: 1.8.23
135
+ rubygems_version: 2.0.14
146
136
  signing_key:
147
- specification_version: 3
137
+ specification_version: 4
148
138
  summary: Whimsy 'model' of the ASF
149
139
  test_files: []