datapimp 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a1b62d4316928f5d3ffa350d05cb579649fa1a67
4
- data.tar.gz: d77cae1fa5c88ac3dedd9711dd8200cc98de1a6f
3
+ metadata.gz: db6b899afe30eba9db18f06a2c445e5b5dd16a16
4
+ data.tar.gz: a758f879ebfd9e41fc6375b8990316d42d6844aa
5
5
  SHA512:
6
- metadata.gz: f373b48034f1ca5382f7e19f81cb86d623fa143ec22d72cc5f924115dae2b137d5d4103771fb471593bdc794a9498f34cba989e5d547a3903b87cfdd4ed24c08
7
- data.tar.gz: 3e1df1aef41dfa912ebadde158c70fc8991869527d2b5b6f019739096110aa918f603e01c47e7029e6bdffdec97604b8fd022da7f3e2d5a4b78fbe1937651d6f
6
+ metadata.gz: e6c06637c2e2827bf14c10ea8c9e8581f34fb015e8f765a0d3f4893ab4e83e853573eb61666988b5b6695fe81cc854feb312f369f4ab382fd47f1f2469027580
7
+ data.tar.gz: eecc04222a7dba9f464e8c0d79457e00c692e6f778e27447240ab21c2bb30c2ef7b7054f6d73d0a9e9bb9e9c3e6d44c535476bdb66d7cc01fe62da6388885180
data/.gitignore CHANGED
@@ -17,3 +17,5 @@ test/version_tmp
17
17
  tmp
18
18
  *.log
19
19
  dev-branch/
20
+ distro/
21
+ datapimp.json
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ language: ruby
2
+
3
+ script:
4
+ - bundle exec rake
5
+
6
+ rvm:
7
+ - '2.2.0'
8
+ - '2.1.5'
data/ROADMAP.md ADDED
@@ -0,0 +1,23 @@
1
+ ### Support For Additional Data Sources
2
+
3
+ - JSON API
4
+
5
+ ```
6
+ datapimp sync data --type=json https://api.github.com/orgs/architects/repos
7
+ ```
8
+
9
+ - NOKOGIRI
10
+
11
+ The nokogiri datatype should support using CSS selectors to extract
12
+ an array of key value pairs from a URL. For example, pulling all of the data
13
+ from the product hunt website:
14
+
15
+ http://www.producthunt.com
16
+ records=ul.posts-group li.post
17
+ record=TODO (figure out syntax mapping data to css selectors)
18
+
19
+ ```
20
+ datapimp sync data --type=nokogiri http://www.producthunt.com --selectors=file
21
+ ```
22
+
23
+ - Implement converting an XLSX document on Dropbox to JSON
data/Rakefile CHANGED
@@ -12,13 +12,8 @@ Distribution.configure do |config|
12
12
  config.rb_version = '20150210-2.1.5'
13
13
  config.packaging_dir = File.expand_path 'packaging'
14
14
  config.native_extensions = [
15
- #'github-markdown-0.6.8',
16
- #'escape_utils-1.0.1',
17
- #'charlock_holmes-0.7.3',
18
- #'posix-spawn-0.3.9',
19
- #'nokogumbo-1.3.0',
20
- #'rugged-0.21.4',
21
- #'nokogiri-1.6.5',
15
+ 'escape_utils-1.0.1',
16
+ 'nokogiri-1.6.5',
22
17
  ]
23
18
  end
24
19
 
data/bin/datapimp CHANGED
@@ -12,7 +12,7 @@ require 'datapimp'
12
12
  require 'datapimp/cli'
13
13
 
14
14
  program :name, 'Datapimp'
15
- program :version, Datapimp::VERSION
16
- program :description, 'Datapimp style command line utilities'
15
+ program :version, Datapimp::VERSION || "1.0.1"
16
+ program :description, 'command line utilities for pulling data off of services'
17
17
 
18
- Datapimp::Cli.load_commands
18
+ Datapimp::Cli.load_commands()
data/datapimp.gemspec CHANGED
@@ -18,11 +18,11 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
19
 
20
20
  spec.add_dependency 'pry'
21
- spec.add_dependency 'hashie'
21
+ spec.add_dependency 'hashie', '< 3.0'
22
22
  spec.add_dependency 'colored'
23
23
  spec.add_dependency 'commander'
24
24
  spec.add_dependency 'fog-aws'
25
- spec.add_dependency 'dropbox-api', '> 0.4.3'
25
+ spec.add_dependency 'dropbox-api', '>= 0.4.6'
26
26
  spec.add_dependency 'google_drive'
27
27
  spec.add_dependency 'rack-contrib'
28
28
  spec.add_dependency 'uri_template'
@@ -32,6 +32,9 @@ Gem::Specification.new do |spec|
32
32
  spec.add_dependency 'launchy'
33
33
  spec.add_dependency 'oauth', '~> 0.4.7'
34
34
  spec.add_dependency 'octokit', '>= 3.0.0'
35
+ spec.add_dependency 'activesupport', '>= 4.0.0'
36
+ spec.add_dependency 'nokogiri', '1.6.5'
37
+ spec.add_dependency 'github-fs'
35
38
 
36
39
  spec.add_development_dependency "rake", '~> 0'
37
40
  spec.add_development_dependency "rack-test", '~> 0'
File without changes
@@ -3,13 +3,28 @@ command "list spreadsheets" do |c|
3
3
  c.description = "list the spreadsheets which can be used as datasources"
4
4
 
5
5
  c.option '--type TYPE', String, "What type of source data is this? #{ Datapimp::Sync.data_source_types.join(", ") }"
6
+ c.option '--filter PATTERN', String, "Filter the titles by the specified pattern"
6
7
 
7
8
  Datapimp::Cli.accepts_keys_for(c, :google, :dropbox)
8
9
 
9
10
  c.action do |args, options|
10
- Datapimp::Sync.google.spreadsheets.each do |sheet|
11
- puts "#{ sheet.key }\t\t#{ sheet.title }"
11
+ puts "\nKey / Argument\t\tTitle"
12
+ puts "============\t\t==========="
13
+ lines = Datapimp::Sync.google.spreadsheets.map do |sheet|
14
+ "#{ sheet.key }\t\t#{ sheet.title }"
15
+ end
16
+
17
+ lines = lines.grep(/#{options.filter}/) if options.filter.to_s.length > 0
18
+
19
+ lines.each {|l| puts(l) }
20
+
21
+ if lines.length > 0
22
+ puts "\n\nExample:"
23
+ puts "====="
24
+ puts "datapimp sync data #{ lines.first.split(/\t/).first } --type google-spreadsheet"
25
+ puts "\n\n"
12
26
  end
13
27
  end
28
+
14
29
  end
15
30
 
@@ -12,7 +12,11 @@ module Datapimp
12
12
  end
13
13
 
14
14
  def self.client(options={})
15
- require 'google_drive' unless defined?(::GoogleDrive)
15
+ unless defined?(::GoogleDrive)
16
+ require 'google_drive'
17
+ require 'google/api_client'
18
+ require 'google_drive/session'
19
+ end
16
20
 
17
21
  @client ||= begin
18
22
  instance.with_options(options)
@@ -1,3 +1,3 @@
1
1
  module Datapimp
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datapimp
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Soeder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-27 00:00:00.000000000 Z
11
+ date: 2015-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: hashie
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "<"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '3.0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "<"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: colored
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -84,16 +84,16 @@ dependencies:
84
84
  name: dropbox-api
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: 0.4.3
89
+ version: 0.4.6
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: 0.4.3
96
+ version: 0.4.6
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: google_drive
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -220,6 +220,48 @@ dependencies:
220
220
  - - ">="
221
221
  - !ruby/object:Gem::Version
222
222
  version: 3.0.0
223
+ - !ruby/object:Gem::Dependency
224
+ name: activesupport
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: 4.0.0
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: 4.0.0
237
+ - !ruby/object:Gem::Dependency
238
+ name: nokogiri
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - '='
242
+ - !ruby/object:Gem::Version
243
+ version: 1.6.5
244
+ type: :runtime
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - '='
249
+ - !ruby/object:Gem::Version
250
+ version: 1.6.5
251
+ - !ruby/object:Gem::Dependency
252
+ name: github-fs
253
+ requirement: !ruby/object:Gem::Requirement
254
+ requirements:
255
+ - - ">="
256
+ - !ruby/object:Gem::Version
257
+ version: '0'
258
+ type: :runtime
259
+ prerelease: false
260
+ version_requirements: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ version: '0'
223
265
  - !ruby/object:Gem::Dependency
224
266
  name: rake
225
267
  requirement: !ruby/object:Gem::Requirement
@@ -285,10 +327,12 @@ extensions: []
285
327
  extra_rdoc_files: []
286
328
  files:
287
329
  - ".gitignore"
330
+ - ".travis.yml"
288
331
  - Gemfile
289
332
  - Guardfile
290
333
  - LICENSE.txt
291
334
  - README.md
335
+ - ROADMAP.md
292
336
  - Rakefile
293
337
  - bin/datapimp
294
338
  - datapimp.gemspec
@@ -296,6 +340,7 @@ files:
296
340
  - lib/datapimp/cli.rb
297
341
  - lib/datapimp/cli/01_extensions.rb
298
342
  - lib/datapimp/cli/config.rb
343
+ - lib/datapimp/cli/create.rb
299
344
  - lib/datapimp/cli/list.rb
300
345
  - lib/datapimp/cli/setup.rb
301
346
  - lib/datapimp/cli/support/data_sync.rb