wwdcdownloader 20.17.0 → 20.18.0

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: 434cdc1a01d9bbda7696e45a6870648aa8de563d
4
- data.tar.gz: d4732cbaaedfde0eb0541e1db03c5d6eed5e3b6d
3
+ metadata.gz: 157cfa9966170da096e4d0487c5ee60d9a5269d9
4
+ data.tar.gz: ed304ffbe321916a19684b7551c8d40fc002c673
5
5
  SHA512:
6
- metadata.gz: 961178f2c810fd9c2c57eae4a8f1e18985e656b6246c6246b1330c3cc055f7054c1dd336897b620e73ff1c4e54f1e80a1008ae61516a7832aa0303e5c58a89cb
7
- data.tar.gz: 5b75935d3e17af52501f3e146f2694bc6ea24baa46e3600158e2541a17958977df5f76240e4e3cef549d59ae4dc02d9e7a01edbf5e724fc3405bd9f3e0cfa188
6
+ metadata.gz: bf5272373431c992cd5db53d1d85cf62873f189865db8a13078d6c0bde42bb70fa8c15afd0d7be545c333ec9ece01f60ec2f8113460dfedc5abec3fbbe0a6c35
7
+ data.tar.gz: 9ddafa24d427686df18612e0e43168d8f5f70eee438c3e3137e14f82ec33626dc71b77fb99bc4dd768cc34567f5d4a8a0bc3b215c62327071a553d9e862fb1c0
data/Gemfile CHANGED
@@ -7,7 +7,7 @@ gem "json", "~> 1.8.0"
7
7
 
8
8
  group :development do
9
9
  #gem "shoulda", ">= 0"
10
- gem "bundler", "~> 1.9.0"
11
- gem "jeweler", "~> 1.8.0"
10
+ gem "bundler", "~> 1.16.2"
11
+ gem "jeweler", "~> 2.1.1"
12
12
  #gem "rcov", ">= 0"
13
13
  end
data/Gemfile.lock CHANGED
@@ -1,50 +1,62 @@
1
1
  GEM
2
2
  remote: https://rubygems.org/
3
3
  specs:
4
- addressable (2.3.8)
5
- builder (3.2.2)
6
- faraday (0.8.9)
7
- multipart-post (~> 1.2.0)
8
- git (1.2.9.1)
9
- github_api (0.10.1)
10
- addressable
11
- faraday (~> 0.8.1)
4
+ addressable (2.5.2)
5
+ public_suffix (>= 2.0.2, < 4.0)
6
+ builder (3.2.3)
7
+ descendants_tracker (0.0.4)
8
+ thread_safe (~> 0.3, >= 0.3.1)
9
+ faraday (0.9.2)
10
+ multipart-post (>= 1.2, < 3)
11
+ git (1.4.0)
12
+ github_api (0.11.3)
13
+ addressable (~> 2.3)
14
+ descendants_tracker (~> 0.0.1)
15
+ faraday (~> 0.8, < 0.10)
12
16
  hashie (>= 1.2)
13
- multi_json (~> 1.4)
14
- nokogiri (~> 1.5.2)
17
+ multi_json (>= 1.7.5, < 2.0)
18
+ nokogiri (~> 1.6.0)
15
19
  oauth2
16
- hashie (3.4.2)
17
- highline (1.7.2)
18
- jeweler (1.8.8)
20
+ hashie (3.5.7)
21
+ highline (1.7.10)
22
+ jeweler (2.1.2)
19
23
  builder
20
- bundler (~> 1.0)
24
+ bundler (>= 1.0)
21
25
  git (>= 1.2.5)
22
- github_api (= 0.10.1)
26
+ github_api (~> 0.11.0)
23
27
  highline (>= 1.6.15)
24
- nokogiri (= 1.5.10)
28
+ nokogiri (>= 1.5.10)
25
29
  rake
26
30
  rdoc
27
- json (1.8.3)
28
- jwt (1.5.0)
29
- multi_json (1.11.0)
30
- multi_xml (0.5.5)
31
- multipart-post (1.2.0)
32
- nokogiri (1.5.10)
33
- oauth2 (1.0.0)
34
- faraday (>= 0.8, < 0.10)
31
+ semver
32
+ json (1.8.6)
33
+ jwt (1.5.6)
34
+ mini_portile2 (2.1.0)
35
+ multi_json (1.13.1)
36
+ multi_xml (0.6.0)
37
+ multipart-post (2.0.0)
38
+ nokogiri (1.6.8.1)
39
+ mini_portile2 (~> 2.1.0)
40
+ oauth2 (1.4.0)
41
+ faraday (>= 0.8, < 0.13)
35
42
  jwt (~> 1.0)
36
43
  multi_json (~> 1.3)
37
44
  multi_xml (~> 0.5)
38
- rack (~> 1.2)
39
- rack (1.6.1)
40
- rake (10.4.2)
41
- rdoc (4.2.0)
42
- json (~> 1.4)
45
+ rack (>= 1.2, < 3)
46
+ public_suffix (3.0.2)
47
+ rack (2.0.5)
48
+ rake (12.3.1)
49
+ rdoc (6.0.4)
50
+ semver (1.0.1)
51
+ thread_safe (0.3.6)
43
52
 
44
53
  PLATFORMS
45
54
  ruby
46
55
 
47
56
  DEPENDENCIES
48
- bundler (~> 1.9.0)
49
- jeweler (~> 1.8.0)
57
+ bundler (~> 1.16.2)
58
+ jeweler (~> 2.1.1)
50
59
  json (~> 1.8.0)
60
+
61
+ BUNDLED WITH
62
+ 1.16.2
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2017 Johannes Fahrenkrug
1
+ Copyright (c) 2018 Johannes Fahrenkrug
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/Readme.md CHANGED
@@ -1,10 +1,10 @@
1
- # WWDC 2017 Sample Code Downloader
1
+ # WWDC 2018 Sample Code Downloader
2
2
 
3
3
  ![First World WWDC Sample Code Problem](http://cdn.memegenerator.net/instances/400x/21928207.jpg)
4
4
 
5
5
  ## Sad days are over
6
6
 
7
- This script will download all the session material for you if you are a WWDC 2017 attendee OR NOT!
7
+ This script will download all the session material for you if you are a WWDC 2018 attendee OR NOT!
8
8
  You can now simply install WWDC-Downloader as a ruby gem like this:
9
9
 
10
10
  gem install wwdcdownloader
@@ -17,6 +17,6 @@ Run the script like this:
17
17
 
18
18
  wwdcdownloader [<target-dir>]
19
19
 
20
- The script will create a directory called "wwdc2017-assets" (or `target-dir` if given) in the directory you run the script from.
20
+ The script will create a directory called "wwdc2018-assets" (or `target-dir` if given) in the directory you run the script from.
21
21
 
22
22
  That's it. Enjoy and see you next year.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 20.17.0
1
+ 20.18.0
@@ -1,5 +1,5 @@
1
1
  # Have fun. Use at your own risk.
2
- # Copyright (c) 2017 Johannes Fahrenkrug
2
+ # Copyright (c) 2018 Johannes Fahrenkrug
3
3
 
4
4
  require 'rubygems'
5
5
  require 'fileutils'
@@ -23,9 +23,7 @@ rescue LoadError => e
23
23
  end
24
24
 
25
25
  class WWDCDownloader
26
- BASE_URI = 'https://devimages-cdn.apple.com/wwdc-services/h8a19f8f/049CCC2F-0D8A-4F7D-BAB9-2D8F5BAA7030/contents.json'
27
-
28
- WWDC_LIBRARIES = [{:base => 'https://developer.apple.com/library/content', :lib => '/navigation/library.json'}]
26
+ BASE_URI = 'https://devimages-cdn.apple.com/wwdc-services/j06970e2/296E57DA-8CE8-4526-9A3E-F0D0E8BD6543/contents.json'
29
27
 
30
28
  attr_accessor :downloaded_files, :dl_dir, :min_date, :proxy_uri
31
29
 
@@ -126,12 +124,12 @@ class WWDCDownloader
126
124
  sessions = res['contents']
127
125
  resources = res['resources']
128
126
 
129
- if sessions.size > 0
127
+ if sessions.size > 0 and 1 == 2
130
128
 
131
129
  sessions.each do |session|
132
- if session['type'] == 'Session' && session['eventId'] == 'wwdc2017'
130
+ if session['type'] == 'Session' && session['eventId'] == 'wwdc2018'
133
131
  title = session['title']
134
- session_id = session['id'].gsub('wwdc2017-', '')
132
+ session_id = session['id'].gsub('wwdc2018-', '')
135
133
  puts "Session #{session_id} '#{title}'..."
136
134
 
137
135
  if session['related'] && session['related']['resources']
@@ -179,54 +177,11 @@ class WWDCDownloader
179
177
  end
180
178
  end
181
179
 
182
- # scrape the WWDC libraries...
183
- puts
184
- puts "Scraping the WWDC libraries..."
185
- WWDC_LIBRARIES.each do |lib_hash|
186
- lib = "#{lib_hash[:base]}#{lib_hash[:lib]}"
187
- puts
188
- puts "Library #{lib}"
189
- self.read_url(lib) do |body|
190
- body = body.gsub("''", '""')
191
- # Fix misformatted JSON
192
- body = body.gsub(/\"platform\"\s*:\s*12,$\s*\}/, "\"platform\": 12\n}")
193
- res = JSON.parse(body)
194
-
195
- docs = res['documents']
196
-
197
- if docs.size > 0
198
- docs.each do |doc|
199
- if doc[2] == 5 and doc[3] >= self.min_date # sample code and newer or equal to min date
200
- title = doc[0]
201
-
202
- puts "Sample Code '#{title}'..."
203
-
204
- # get the files
205
- dirname = "#{dl_dir}/#{title.gsub(/\/|&|!|:/, '')}"
206
- did_create_dir = mkdir(dirname)
207
- puts " Created #{dirname}" if did_create_dir
208
-
209
- segments = doc[9].split('/')
210
- url = "#{lib_hash[:base]}/samplecode/#{segments[2]}/book.json"
211
-
212
- #puts url
213
- did_download = download_sample_code_from_book_json(url, "#{lib_hash[:base]}/samplecode/#{segments[2]}", dirname, false)
214
- if !did_download and did_create_dir
215
- Dir.delete( dirname )
216
- end
217
- end
218
- end
219
- else
220
- print "No code samples :(.\n"
221
- end
222
- end
223
- end
224
-
225
180
  puts "Done."
226
181
  end
227
182
 
228
183
  def self.run!(*args)
229
- puts "WWDC 2017 Session Material Downloader"
184
+ puts "WWDC 2018 Session Material Downloader"
230
185
  puts "by Johannes Fahrenkrug, @jfahrenkrug, springenwerk.com"
231
186
  puts "See you next year!"
232
187
  puts
@@ -236,10 +191,10 @@ class WWDCDownloader
236
191
  dl_dir = if args.size == 1
237
192
  args.last
238
193
  else
239
- 'wwdc2017-assets'
194
+ 'wwdc2018-assets'
240
195
  end
241
196
 
242
- w = WWDCDownloader.new(dl_dir, '2017-06-01')
197
+ w = WWDCDownloader.new(dl_dir, '2018-06-01')
243
198
  w.load
244
199
  return 0
245
200
  end
@@ -2,17 +2,19 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: wwdcdownloader 20.18.0 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
- s.name = "wwdcdownloader"
8
- s.version = "20.17.0"
8
+ s.name = "wwdcdownloader".freeze
9
+ s.version = "20.18.0"
9
10
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Johannes Fahrenkrug"]
12
- s.date = "2017-06-07"
13
- s.description = "At each year's WWDC, Apple releases great sample projects. Unfortunately it is very tedious to manually download all these treasures through your browser. WWDC-Downloader solves this problem for you!"
14
- s.email = "johannes@springenwerk.com"
15
- s.executables = ["wwdcdownloader"]
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib".freeze]
13
+ s.authors = ["Johannes Fahrenkrug".freeze]
14
+ s.date = "2018-06-06"
15
+ s.description = "At each year's WWDC, Apple releases great sample projects. Unfortunately it is very tedious to manually download all these treasures through your browser. WWDC-Downloader solves this problem for you!".freeze
16
+ s.email = "johannes@springenwerk.com".freeze
17
+ s.executables = ["wwdcdownloader".freeze]
16
18
  s.extra_rdoc_files = [
17
19
  "LICENSE.txt"
18
20
  ]
@@ -27,28 +29,27 @@ Gem::Specification.new do |s|
27
29
  "lib/wwdcdownloader.rb",
28
30
  "wwdcdownloader.gemspec"
29
31
  ]
30
- s.homepage = "https://github.com/jfahrenkrug/WWDC-Downloader"
31
- s.licenses = ["MIT"]
32
- s.require_paths = ["lib"]
33
- s.rubygems_version = "2.0.14.1"
34
- s.summary = "A small tool to download all the sample code of Apple's latest WWDC developer conference"
32
+ s.homepage = "https://github.com/jfahrenkrug/WWDC-Downloader".freeze
33
+ s.licenses = ["MIT".freeze]
34
+ s.rubygems_version = "2.5.2".freeze
35
+ s.summary = "A small tool to download all the sample code of Apple's latest WWDC developer conference".freeze
35
36
 
36
37
  if s.respond_to? :specification_version then
37
38
  s.specification_version = 4
38
39
 
39
40
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
40
- s.add_runtime_dependency(%q<json>, ["~> 1.8.0"])
41
- s.add_development_dependency(%q<bundler>, ["~> 1.9.0"])
42
- s.add_development_dependency(%q<jeweler>, ["~> 1.8.0"])
41
+ s.add_runtime_dependency(%q<json>.freeze, ["~> 1.8.0"])
42
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 1.16.2"])
43
+ s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.1.1"])
43
44
  else
44
- s.add_dependency(%q<json>, ["~> 1.8.0"])
45
- s.add_dependency(%q<bundler>, ["~> 1.9.0"])
46
- s.add_dependency(%q<jeweler>, ["~> 1.8.0"])
45
+ s.add_dependency(%q<json>.freeze, ["~> 1.8.0"])
46
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.16.2"])
47
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.1.1"])
47
48
  end
48
49
  else
49
- s.add_dependency(%q<json>, ["~> 1.8.0"])
50
- s.add_dependency(%q<bundler>, ["~> 1.9.0"])
51
- s.add_dependency(%q<jeweler>, ["~> 1.8.0"])
50
+ s.add_dependency(%q<json>.freeze, ["~> 1.8.0"])
51
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.16.2"])
52
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.1.1"])
52
53
  end
53
54
  end
54
55
 
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wwdcdownloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 20.17.0
4
+ version: 20.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johannes Fahrenkrug
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-07 00:00:00.000000000 Z
11
+ date: 2018-06-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 1.8.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 1.8.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.9.0
33
+ version: 1.16.2
34
34
  type: :development
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: 1.9.0
40
+ version: 1.16.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: jeweler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.8.0
47
+ version: 2.1.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.8.0
54
+ version: 2.1.1
55
55
  description: At each year's WWDC, Apple releases great sample projects. Unfortunately
56
56
  it is very tedious to manually download all these treasures through your browser.
57
57
  WWDC-Downloader solves this problem for you!
@@ -81,17 +81,17 @@ require_paths:
81
81
  - lib
82
82
  required_ruby_version: !ruby/object:Gem::Requirement
83
83
  requirements:
84
- - - '>='
84
+ - - ">="
85
85
  - !ruby/object:Gem::Version
86
86
  version: '0'
87
87
  required_rubygems_version: !ruby/object:Gem::Requirement
88
88
  requirements:
89
- - - '>='
89
+ - - ">="
90
90
  - !ruby/object:Gem::Version
91
91
  version: '0'
92
92
  requirements: []
93
93
  rubyforge_project:
94
- rubygems_version: 2.0.14.1
94
+ rubygems_version: 2.5.2
95
95
  signing_key:
96
96
  specification_version: 4
97
97
  summary: A small tool to download all the sample code of Apple's latest WWDC developer