sixarm_ruby_yaml_load_documents_globber 1.5.0

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.
@@ -0,0 +1 @@
1
+ ^(�$)}-H_Y3ۨ&v�q�8���,�0��,-u`�o�3)�,�I��N��H����ݛ�1�Q��ҺWZܦ�����\܂Q=�o"�8��=�O$A+;uRS��P-���_�n����w�f�FqB
File without changes
@@ -0,0 +1,32 @@
1
+
2
+ = SixArm.com Ruby Gem Install
3
+
4
+
5
+ First-time users: add our gem certificate and source.
6
+ When you do this once, it works for all our gems.
7
+
8
+ sudo wget http://sixarm.com/sixarm.pem
9
+ sudo gem cert --add sixarm.pem
10
+ sudo gem sources --add http://sixarm.com
11
+
12
+ Install the gem with advanced options.
13
+
14
+ sudo gem install sixarm_ruby_yaml_loader --test --trust-policy HighSecurity
15
+
16
+
17
+ == Notes
18
+
19
+ Do you have any questions, comments, suggestions, or feedback?
20
+ Let us know, we're happy to help. Our email is sixarm@sixarm.com
21
+
22
+ Do you want to create your own high security gems?
23
+ Learn how at http://www.rubygems.org/read/chapter/21
24
+
25
+ To see your current gem certificate list:
26
+
27
+ sudo gem cert --list
28
+
29
+ Our cert looks like this:
30
+
31
+ /C=US/ST=California/L=San Francisco/O=SixArm/CN=sixarm.com
32
+
@@ -0,0 +1,12 @@
1
+ LICENSE
2
+
3
+ You may choose any of these licenses:
4
+
5
+ - CreativeCommons License, Non-commercial Share Alike
6
+ - LGPL, GNU Lesser General Public License
7
+ - MIT License
8
+ - Ruby License
9
+
10
+ THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
11
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
12
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
@@ -0,0 +1,21 @@
1
+
2
+
3
+ = SixArm.com » Ruby » YAML load documents via globs for many files at once
4
+
5
+ Author:: Joel Parker Henderson, joelparkerhenderson@gmail.com
6
+ Copyright:: Copyright (c) 2006-2011 Joel Parker Henderson
7
+ License:: See LICENSE.txt file
8
+
9
+ Load YAML files by specifying file globs, and yield to blocks
10
+ for more convenient processing of the results.
11
+
12
+ @example To load documents from all files that end in ".yaml"
13
+ YAML.load_documents_globber_and_yield_document('*.yaml'){|document|
14
+ #...whatever you want to do with each yaml document
15
+ }
16
+
17
+ @example To load documents from all files that end in ".yaml" and process the key-value pairs:
18
+ YAML.load_documents_globber_and_yield_key_values('*.yaml'){|key,values|
19
+ #...whatever you want to do with each yaml key and its yaml values
20
+ }
21
+
@@ -0,0 +1,8 @@
1
+ # -*- coding: utf-8 -*-
2
+ require 'rake'
3
+ require 'rake/testtask'
4
+
5
+ Rake::TestTask.new(:test) do |t|
6
+ t.libs << 'lib' << 'test'
7
+ t.pattern = 'test/*.rb'
8
+ end
@@ -0,0 +1,83 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ =begin rdoc
4
+
5
+ = SixArm.com » Ruby » YAML load documents via globs for many files at once
6
+
7
+ Author:: Joel Parker Henderson, joelparkerhenderson@gmail.com
8
+ Copyright:: Copyright (c) 2006-2011 Joel Parker Henderson
9
+ License:: See LICENSE.txt file
10
+
11
+ Load YAML files by specifying file globs, and yield to blocks
12
+ for more convenient processing of the results.
13
+
14
+ @example To load documents from all files that end in ".yaml"
15
+ YAML.load_documents_globber_and_yield_document('*.yaml'){|document|
16
+ #...whatever you want to do with each yaml document
17
+ }
18
+
19
+ @example To load documents from all files that end in ".yaml" and process the key-value pairs:
20
+ YAML.load_documents_globber_and_yield_key_values('*.yaml'){|key,values|
21
+ #...whatever you want to do with each yaml key and its yaml values
22
+ }
23
+
24
+ =end
25
+
26
+ require 'yaml'
27
+
28
+ module YAML
29
+
30
+
31
+ # Specify one or more directory patterns, load each file, and yield each YAML document to a block.
32
+ #
33
+ # @see [Dir#glob](http://www.ruby-doc.org/core/classes/Dir.html#M002347) for pattern details.
34
+ #
35
+ # @example To load documents in files ending in ".yaml"
36
+ # YAML.load_documents_via_globs_and_yield_document('/tmp/*.yaml'){|document|
37
+ # #...whatever you want to do with each yaml document
38
+ # }
39
+ #
40
+ # @example To load documents in files beginning in "foo" or "bar"
41
+ # YAML.load_documents_via_globs_and_yield_document('/tmp/foo*.yaml','/tmp/bar*.yaml','){|document|
42
+ # #...whatever you want to do with the yaml document
43
+ # }
44
+
45
+ def YAML.load_documents_globber_and_yield_document(*globs)
46
+ globs=[*globs.flatten]
47
+ globs.each do |glob|
48
+ Dir[glob].each do |filename|
49
+ File.open(filename) do |file|
50
+ YAML.load_documents(file) do |document|
51
+ yield document
52
+ end #load
53
+ end #file
54
+ end #dir
55
+ end #each
56
+ end #def
57
+
58
+
59
+ # Specify one or more directory patterns, load each file, and yield each YAML key and its values to a block.
60
+ #
61
+ # @see [Dir#glob](http://www.ruby-doc.org/core/classes/Dir.html#M002347) for pattern details.
62
+ #
63
+ # @example To load each key and its values, in files ending in ".yaml"
64
+ # YAML.load_documents_via_globs_and_yield_key_values('/tmp/*.yaml'){|yaml_key,yaml_values|
65
+ # #...whatever you want to do with each yaml key and its values
66
+ # }
67
+ #
68
+ # @example To load documents in files beginning in "foo" or "bar" and get each key and its values:
69
+ # YAML.load_documents_via_globs_and_yield_key_values('/tmp/foo*.yaml','/tmp/bar*.yaml','){|key,values|
70
+ # #...whatever you want to do with each yaml key and its yaml values
71
+ # }
72
+ def YAML.load_documents_globber_and_yield_key_values(*globs)
73
+ YAML.load_documents_globber_and_yield_document(globs){|document|
74
+ document.keys.each{|key|
75
+ yield key, document[key]
76
+ }
77
+ }
78
+ end
79
+
80
+
81
+ end
82
+
83
+
@@ -0,0 +1,56 @@
1
+ # -*- coding: utf-8 -*-
2
+ require 'simplecov'
3
+ SimpleCov.start
4
+ require 'test/unit'
5
+ require 'sixarm_ruby_yaml_load_documents_globber'
6
+
7
+ class YAMLLoaderTest < Test::Unit::TestCase
8
+
9
+ MYDIR=File.join('test')
10
+
11
+ def test_load_documents_globber_data_files
12
+ dirpath=File.join(MYDIR,'test_*.yml')
13
+ expect=[File.join(MYDIR,'test_1.yml'),File.join(MYDIR,'test_2.yml')]
14
+ actual=Dir[dirpath].sort
15
+ assert_equal(expect,actual,"Dir[#{dirpath}] expects test data files")
16
+ end
17
+
18
+ def test_load_documents_globber_and_yield_document
19
+ dirpath=File.join(MYDIR,'test_*.yml')
20
+ expect=[
21
+ "a:a1,a10,a2,a20,a3,a30;b:b1,b10,b2,b20,b3,b30;c:c1,c10,c2,c20,c3,c30",
22
+ "d:d1,d10,d2,d20,d3,d30;e:e1,e10,e2,e20,e3,e30;f:f1,f10,f2,f20,f3,f30",
23
+ "g:g1,g10,g2,g20,g3,g30;h:h1,h10,h2,h20,h3,h30;i:i1,i10,i2,i20,i3,i30",
24
+ "j:j1,j10,j2,j20,j3,j30;k:k1,k10,k2,k20,k3,k30;l:l1,l10,l2,l20,l3,l30",
25
+ "m:m1,m10,m2,m20,m3,m30;n:n1,n10,n2,n20,n3,n30;o:o1,o10,o2,o20,o3,o30",
26
+ "p:p1,p10,p2,p20,p3,p30;q:q1,q10,q2,q20,q3,q30;r:r1,r10,r2,r20,r3,r30",
27
+ ]
28
+ actual=[]
29
+ YAML.load_documents_globber_and_yield_document(dirpath){|document|
30
+ actual << document.keys.map{|key|
31
+ values=document[key]; "#{key}:#{values.sort.join(",")}"
32
+ }.sort.join(";")
33
+ }
34
+ actual.sort!
35
+ assert_equal(expect,actual,'YAML.load_documents_globber_and_yield_document')
36
+ end
37
+
38
+ def test_load_documents_globber_and_yield_key_values
39
+ dirpath=File.join(MYDIR,'test_*.yml')
40
+ expect=[
41
+ "a:a1,a10,a2,a20,a3,a30","b:b1,b10,b2,b20,b3,b30","c:c1,c10,c2,c20,c3,c30",
42
+ "d:d1,d10,d2,d20,d3,d30","e:e1,e10,e2,e20,e3,e30","f:f1,f10,f2,f20,f3,f30",
43
+ "g:g1,g10,g2,g20,g3,g30","h:h1,h10,h2,h20,h3,h30","i:i1,i10,i2,i20,i3,i30",
44
+ "j:j1,j10,j2,j20,j3,j30","k:k1,k10,k2,k20,k3,k30","l:l1,l10,l2,l20,l3,l30",
45
+ "m:m1,m10,m2,m20,m3,m30","n:n1,n10,n2,n20,n3,n30","o:o1,o10,o2,o20,o3,o30",
46
+ "p:p1,p10,p2,p20,p3,p30","q:q1,q10,q2,q20,q3,q30","r:r1,r10,r2,r20,r3,r30",
47
+ ]
48
+ actual=[]
49
+ YAML.load_documents_globber_and_yield_key_values(dirpath){|key,values|
50
+ actual << "#{key}:#{values.sort.join(",")}"
51
+ }
52
+ actual.sort!
53
+ assert_equal(expect,actual,'YAML.load_documents_globber_and_yield_key_values')
54
+ end
55
+
56
+ end
@@ -0,0 +1,38 @@
1
+ a:
2
+ a1: "a10"
3
+ a2: "a20"
4
+ a3: "a30"
5
+ b:
6
+ b1: "b10"
7
+ b2: "b20"
8
+ b3: "b30"
9
+ c:
10
+ c1: "c10"
11
+ c2: "c20"
12
+ c3: "c30"
13
+ ---
14
+ d:
15
+ d1: "d10"
16
+ d2: "d20"
17
+ d3: "d30"
18
+ e:
19
+ e1: "e10"
20
+ e2: "e20"
21
+ e3: "e30"
22
+ f:
23
+ f1: "f10"
24
+ f2: "f20"
25
+ f3: "f30"
26
+ ---
27
+ g:
28
+ g1: "g10"
29
+ g2: "g20"
30
+ g3: "g30"
31
+ h:
32
+ h1: "h10"
33
+ h2: "h20"
34
+ h3: "h30"
35
+ i:
36
+ i1: "i10"
37
+ i2: "i20"
38
+ i3: "i30"
@@ -0,0 +1,38 @@
1
+ j:
2
+ j1: "j10"
3
+ j2: "j20"
4
+ j3: "j30"
5
+ k:
6
+ k1: "k10"
7
+ k2: "k20"
8
+ k3: "k30"
9
+ l:
10
+ l1: "l10"
11
+ l2: "l20"
12
+ l3: "l30"
13
+ ---
14
+ m:
15
+ m1: "m10"
16
+ m2: "m20"
17
+ m3: "m30"
18
+ n:
19
+ n1: "n10"
20
+ n2: "n20"
21
+ n3: "n30"
22
+ o:
23
+ o1: "o10"
24
+ o2: "o20"
25
+ o3: "o30"
26
+ ---
27
+ p:
28
+ p1: "p10"
29
+ p2: "p20"
30
+ p3: "p30"
31
+ q:
32
+ q1: "q10"
33
+ q2: "q20"
34
+ q3: "q30"
35
+ r:
36
+ r1: "r10"
37
+ r2: "r20"
38
+ r3: "r30"
metadata ADDED
@@ -0,0 +1,86 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: sixarm_ruby_yaml_load_documents_globber
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 1.5.0
6
+ platform: ruby
7
+ authors:
8
+ - SixArm
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain:
12
+ - |
13
+ -----BEGIN CERTIFICATE-----
14
+ MIIDBDCCAm2gAwIBAgIJAKPwEETU5bHoMA0GCSqGSIb3DQEBBQUAMGAxCzAJBgNV
15
+ BAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1TYW4gRnJhbmNp
16
+ c2NvMQ8wDQYDVQQKEwZTaXhBcm0xEzARBgNVBAMTCnNpeGFybS5jb20wHhcNMTAx
17
+ MjEzMjMyNzEzWhcNMTMwOTA4MjMyNzEzWjBgMQswCQYDVQQGEwJVUzETMBEGA1UE
18
+ CBMKQ2FsaWZvcm5pYTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEPMA0GA1UEChMG
19
+ U2l4QXJtMRMwEQYDVQQDEwpzaXhhcm0uY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GN
20
+ ADCBiQKBgQC94mD9JDwBsunsOI0VR3CXXbOWg9cWaWciwFyJNFiM7A9I8KPLfXUw
21
+ QC4czUe5ZuG4WHvinrWhkrCK+1dWBqoEClxdF/FoKO5a+tonGCjjmfy81JmFjjyx
22
+ eTsjsHyvw+Qik9kpf9aj6+pnkNrVswgNHVea2o9yabbEiS6VSeJWoQIDAQABo4HF
23
+ MIHCMB0GA1UdDgQWBBQzPJtqmSgc53eDN7aSzDQwr9TALDCBkgYDVR0jBIGKMIGH
24
+ gBQzPJtqmSgc53eDN7aSzDQwr9TALKFkpGIwYDELMAkGA1UEBhMCVVMxEzARBgNV
25
+ BAgTCkNhbGlmb3JuaWExFjAUBgNVBAcTDVNhbiBGcmFuY2lzY28xDzANBgNVBAoT
26
+ BlNpeEFybTETMBEGA1UEAxMKc2l4YXJtLmNvbYIJAKPwEETU5bHoMAwGA1UdEwQF
27
+ MAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAooEexP/oPam1TP71SyuhxMb+uTrZbSQe
28
+ jVB+ExRwWadGwaNPUA56d39qwavwP+iu+3JpeonNMVvbWXF5naCX/dNFIeREHzER
29
+ ZDRQYMqru9TEMna6HD9zpcstF7vwThGovlOQ+3Y6plQ4nMzipXcZ9THqs65PIL0q
30
+ eabwpCbAopo=
31
+ -----END CERTIFICATE-----
32
+
33
+ date: 2011-04-17 00:00:00 -07:00
34
+ default_executable:
35
+ dependencies: []
36
+
37
+ description:
38
+ email: sixarm@sixarm.com
39
+ executables: []
40
+
41
+ extensions: []
42
+
43
+ extra_rdoc_files: []
44
+
45
+ files:
46
+ - .gemtest
47
+ - Rakefile
48
+ - README.rdoc
49
+ - INSTALL.txt
50
+ - LICENSE.txt
51
+ - lib/sixarm_ruby_yaml_load_documents_globber.rb
52
+ - test/sixarm_ruby_yaml_load_documents_globber_test.rb
53
+ - test/test_1.yml
54
+ - test/test_2.yml
55
+ has_rdoc: true
56
+ homepage: http://sixarm.com/
57
+ licenses: []
58
+
59
+ post_install_message:
60
+ rdoc_options: []
61
+
62
+ require_paths:
63
+ - lib
64
+ required_ruby_version: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: "0"
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: "0"
76
+ requirements: []
77
+
78
+ rubyforge_project:
79
+ rubygems_version: 1.6.2
80
+ signing_key:
81
+ specification_version: 3
82
+ summary: "SixArm.com \xC2\xBB Ruby \xC2\xBB YAML load documents via globs for many files at once"
83
+ test_files:
84
+ - test/sixarm_ruby_yaml_load_documents_globber_test.rb
85
+ - test/test_1.yml
86
+ - test/test_2.yml
@@ -0,0 +1 @@
1
+ �1 ̣�x~�(.{�ʡ� ���-p���&p���_���~x���Oe�n5���}@˕�;u\>�,QaN@G=� 7�W�S�D.�xBM��ؗXCt��}��S!|GZ ����Ct?-^I���U�H