fronkin_bandcamp 0.4.0 → 0.4.1
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.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +18 -0
- data/{.pryrc → .irbrc} +2 -1
- data/Gemfile.lock +27 -34
- data/README.md +0 -3
- data/fronkin_bandcamp.gemspec +5 -6
- data/lib/fronkin_bandcamp/format.rb +2 -2
- data/lib/fronkin_bandcamp/release.rb +2 -2
- data/lib/fronkin_bandcamp/scraper.rb +1 -1
- data/lib/fronkin_bandcamp/version.rb +1 -1
- metadata +29 -43
- data/.travis.yml +0 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4a08ddf83d87a1de4a6118401d81bf724ee8f8d7e7a3f240f3132e4f157fe033
|
|
4
|
+
data.tar.gz: 19e1f11e58fccc2ed87c82d139c4ad722781ad6015fc22f757f29bf10dd419d4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5985a16d7c260bc321beeea3d48f498e1f0623e089f71aa40e57604a0be63043bca7f8385a9feedc3ace6b29936e01b7ed08c9348aa64818f46aefb823954114
|
|
7
|
+
data.tar.gz: 2eb20dfac2c298a7a2721104f364726e9ebdaffcb62496e3016d78a84181e97a2873304319e259927e596519686ba98b67a454c2f06bfa881a2541df48c5dd5c
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
name: Run tests
|
|
2
|
+
on: [pull_request]
|
|
3
|
+
jobs:
|
|
4
|
+
test:
|
|
5
|
+
strategy:
|
|
6
|
+
fail-fast: true
|
|
7
|
+
matrix:
|
|
8
|
+
os: [ubuntu-latest, macos-latest]
|
|
9
|
+
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
|
10
|
+
ruby: ['3.3', '3.4', '4.0']
|
|
11
|
+
runs-on: ${{ matrix.os }}
|
|
12
|
+
steps:
|
|
13
|
+
- uses: actions/checkout@v6
|
|
14
|
+
- uses: ruby/setup-ruby@v1
|
|
15
|
+
with:
|
|
16
|
+
ruby-version: ${{ matrix.ruby }}
|
|
17
|
+
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
|
18
|
+
- run: bundle exec rake
|
data/{.pryrc → .irbrc}
RENAMED
data/Gemfile.lock
CHANGED
|
@@ -1,52 +1,45 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
fronkin_bandcamp (0.4.
|
|
5
|
-
nokogiri (
|
|
4
|
+
fronkin_bandcamp (0.4.1)
|
|
5
|
+
nokogiri (~> 1.19)
|
|
6
|
+
ostruct (~> 0.6)
|
|
6
7
|
|
|
7
8
|
GEM
|
|
8
9
|
remote: https://rubygems.org/
|
|
9
10
|
specs:
|
|
10
|
-
awesome_print (1.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
rspec (3.
|
|
26
|
-
rspec-core (~> 3.7.0)
|
|
27
|
-
rspec-expectations (~> 3.7.0)
|
|
28
|
-
rspec-mocks (~> 3.7.0)
|
|
29
|
-
rspec-core (3.7.1)
|
|
30
|
-
rspec-support (~> 3.7.0)
|
|
31
|
-
rspec-expectations (3.7.0)
|
|
11
|
+
awesome_print (1.9.2)
|
|
12
|
+
diff-lcs (1.6.2)
|
|
13
|
+
mini_portile2 (2.8.7)
|
|
14
|
+
nokogiri (1.19.3)
|
|
15
|
+
mini_portile2 (~> 2.8.2)
|
|
16
|
+
racc (~> 1.4)
|
|
17
|
+
ostruct (0.6.3)
|
|
18
|
+
racc (1.8.1)
|
|
19
|
+
rake (13.4.2)
|
|
20
|
+
rspec (3.13.2)
|
|
21
|
+
rspec-core (~> 3.13.0)
|
|
22
|
+
rspec-expectations (~> 3.13.0)
|
|
23
|
+
rspec-mocks (~> 3.13.0)
|
|
24
|
+
rspec-core (3.13.6)
|
|
25
|
+
rspec-support (~> 3.13.0)
|
|
26
|
+
rspec-expectations (3.13.5)
|
|
32
27
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
33
|
-
rspec-support (~> 3.
|
|
34
|
-
rspec-mocks (3.
|
|
28
|
+
rspec-support (~> 3.13.0)
|
|
29
|
+
rspec-mocks (3.13.8)
|
|
35
30
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
36
|
-
rspec-support (~> 3.
|
|
37
|
-
rspec-support (3.7
|
|
31
|
+
rspec-support (~> 3.13.0)
|
|
32
|
+
rspec-support (3.13.7)
|
|
38
33
|
|
|
39
34
|
PLATFORMS
|
|
40
35
|
ruby
|
|
41
36
|
|
|
42
37
|
DEPENDENCIES
|
|
43
|
-
awesome_print (~> 1.
|
|
38
|
+
awesome_print (~> 1.9)
|
|
44
39
|
bundler
|
|
45
40
|
fronkin_bandcamp!
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
rake (~> 13.0)
|
|
49
|
-
rspec (~> 3.7)
|
|
41
|
+
rake (~> 13.4)
|
|
42
|
+
rspec (~> 3.13)
|
|
50
43
|
|
|
51
44
|
BUNDLED WITH
|
|
52
|
-
2.
|
|
45
|
+
2.5.17
|
data/README.md
CHANGED
data/fronkin_bandcamp.gemspec
CHANGED
|
@@ -21,12 +21,11 @@ Gem::Specification.new do |spec|
|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
22
22
|
spec.require_paths = ['lib']
|
|
23
23
|
|
|
24
|
-
spec.add_dependency 'nokogiri', '
|
|
24
|
+
spec.add_dependency 'nokogiri', '~> 1.19'
|
|
25
|
+
spec.add_dependency 'ostruct', '~> 0.6'
|
|
25
26
|
|
|
26
27
|
spec.add_development_dependency 'bundler'
|
|
27
|
-
spec.add_development_dependency 'rake', '~> 13.
|
|
28
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
|
29
|
-
spec.add_development_dependency '
|
|
30
|
-
spec.add_development_dependency 'pry-byebug', '~> 3.6'
|
|
31
|
-
spec.add_development_dependency 'awesome_print', '~> 1.8'
|
|
28
|
+
spec.add_development_dependency 'rake', '~> 13.4'
|
|
29
|
+
spec.add_development_dependency 'rspec', '~> 3.13'
|
|
30
|
+
spec.add_development_dependency 'awesome_print', '~> 1.9'
|
|
32
31
|
end
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
module FronkinBandcamp
|
|
2
|
-
module
|
|
2
|
+
module StringRefinement
|
|
3
3
|
refine String do
|
|
4
4
|
def kleanse
|
|
5
5
|
strip.gsub!(/\n\s+/, ' ')
|
|
@@ -7,7 +7,7 @@ module FronkinBandcamp
|
|
|
7
7
|
end
|
|
8
8
|
end
|
|
9
9
|
|
|
10
|
-
using
|
|
10
|
+
using StringRefinement
|
|
11
11
|
|
|
12
12
|
class Format
|
|
13
13
|
attr_reader :name, :product, :description, :product_images, :price, :is_available
|
|
@@ -11,7 +11,7 @@ module FronkinBandcamp
|
|
|
11
11
|
|
|
12
12
|
def initialize(doc)
|
|
13
13
|
@title = doc.css('div#name-section h2.trackTitle').text.strip
|
|
14
|
-
@date = Date.parse(doc.css('div.tralbumData.tralbum-credits
|
|
14
|
+
@date = Date.parse(doc.css('div.tralbumData.tralbum-credits').children[0].to_s.strip[9..-1]).strftime('%-m/%-d/%Y')
|
|
15
15
|
@description = doc.css('div.tralbumData.tralbum-about').text.strip.gsub(/\r/, "\n")
|
|
16
16
|
@credits = scrape_credits(doc)
|
|
17
17
|
@cover = doc.css('div#tralbumArt a.popupImage').attribute('href').value
|
|
@@ -26,7 +26,7 @@ module FronkinBandcamp
|
|
|
26
26
|
private
|
|
27
27
|
|
|
28
28
|
def scrape_tracks(doc)
|
|
29
|
-
track_titles = doc.css('table#track_table td.title-col span
|
|
29
|
+
track_titles = doc.css('table#track_table td.title-col span.track-title').map(&:text)
|
|
30
30
|
track_durations = doc.css('table#track_table td.title-col span.time').map { |node| node.text.strip }
|
|
31
31
|
track_titles.zip(track_durations).map.with_index { |t, idx| Track.new(idx + 1, t[0], t[1]) }
|
|
32
32
|
end
|
metadata
CHANGED
|
@@ -1,113 +1,99 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: fronkin_bandcamp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Fronk Lom Lom
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-05-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: nokogiri
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 1.
|
|
19
|
+
version: '1.19'
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - "
|
|
25
|
-
- !ruby/object:Gem::Version
|
|
26
|
-
version: 1.10.4
|
|
27
|
-
- !ruby/object:Gem::Dependency
|
|
28
|
-
name: bundler
|
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
|
30
|
-
requirements:
|
|
31
|
-
- - ">="
|
|
32
|
-
- !ruby/object:Gem::Version
|
|
33
|
-
version: '0'
|
|
34
|
-
type: :development
|
|
35
|
-
prerelease: false
|
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
-
requirements:
|
|
38
|
-
- - ">="
|
|
24
|
+
- - "~>"
|
|
39
25
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
26
|
+
version: '1.19'
|
|
41
27
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
28
|
+
name: ostruct
|
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
|
44
30
|
requirements:
|
|
45
31
|
- - "~>"
|
|
46
32
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
48
|
-
type: :
|
|
33
|
+
version: '0.6'
|
|
34
|
+
type: :runtime
|
|
49
35
|
prerelease: false
|
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
37
|
requirements:
|
|
52
38
|
- - "~>"
|
|
53
39
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
40
|
+
version: '0.6'
|
|
55
41
|
- !ruby/object:Gem::Dependency
|
|
56
|
-
name:
|
|
42
|
+
name: bundler
|
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
|
58
44
|
requirements:
|
|
59
|
-
- - "
|
|
45
|
+
- - ">="
|
|
60
46
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '
|
|
47
|
+
version: '0'
|
|
62
48
|
type: :development
|
|
63
49
|
prerelease: false
|
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
51
|
requirements:
|
|
66
|
-
- - "
|
|
52
|
+
- - ">="
|
|
67
53
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '
|
|
54
|
+
version: '0'
|
|
69
55
|
- !ruby/object:Gem::Dependency
|
|
70
|
-
name:
|
|
56
|
+
name: rake
|
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
|
72
58
|
requirements:
|
|
73
59
|
- - "~>"
|
|
74
60
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: '
|
|
61
|
+
version: '13.4'
|
|
76
62
|
type: :development
|
|
77
63
|
prerelease: false
|
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
65
|
requirements:
|
|
80
66
|
- - "~>"
|
|
81
67
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: '
|
|
68
|
+
version: '13.4'
|
|
83
69
|
- !ruby/object:Gem::Dependency
|
|
84
|
-
name:
|
|
70
|
+
name: rspec
|
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
|
86
72
|
requirements:
|
|
87
73
|
- - "~>"
|
|
88
74
|
- !ruby/object:Gem::Version
|
|
89
|
-
version: '3.
|
|
75
|
+
version: '3.13'
|
|
90
76
|
type: :development
|
|
91
77
|
prerelease: false
|
|
92
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
93
79
|
requirements:
|
|
94
80
|
- - "~>"
|
|
95
81
|
- !ruby/object:Gem::Version
|
|
96
|
-
version: '3.
|
|
82
|
+
version: '3.13'
|
|
97
83
|
- !ruby/object:Gem::Dependency
|
|
98
84
|
name: awesome_print
|
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
|
100
86
|
requirements:
|
|
101
87
|
- - "~>"
|
|
102
88
|
- !ruby/object:Gem::Version
|
|
103
|
-
version: '1.
|
|
89
|
+
version: '1.9'
|
|
104
90
|
type: :development
|
|
105
91
|
prerelease: false
|
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
93
|
requirements:
|
|
108
94
|
- - "~>"
|
|
109
95
|
- !ruby/object:Gem::Version
|
|
110
|
-
version: '1.
|
|
96
|
+
version: '1.9'
|
|
111
97
|
description: YO, this gem is a convenient web scraper for Bandcamp releases. Currently,
|
|
112
98
|
it scrapes artist and release information.
|
|
113
99
|
email:
|
|
@@ -116,10 +102,10 @@ executables: []
|
|
|
116
102
|
extensions: []
|
|
117
103
|
extra_rdoc_files: []
|
|
118
104
|
files:
|
|
105
|
+
- ".github/workflows/test.yml"
|
|
119
106
|
- ".gitignore"
|
|
120
|
-
- ".
|
|
107
|
+
- ".irbrc"
|
|
121
108
|
- ".rspec"
|
|
122
|
-
- ".travis.yml"
|
|
123
109
|
- CODE_OF_CONDUCT.md
|
|
124
110
|
- Gemfile
|
|
125
111
|
- Gemfile.lock
|
|
@@ -140,7 +126,7 @@ homepage: https://github.com/FTLam11/fronkin_bandcamp_scraper
|
|
|
140
126
|
licenses:
|
|
141
127
|
- MIT
|
|
142
128
|
metadata: {}
|
|
143
|
-
post_install_message:
|
|
129
|
+
post_install_message:
|
|
144
130
|
rdoc_options: []
|
|
145
131
|
require_paths:
|
|
146
132
|
- lib
|
|
@@ -155,8 +141,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
155
141
|
- !ruby/object:Gem::Version
|
|
156
142
|
version: '0'
|
|
157
143
|
requirements: []
|
|
158
|
-
rubygems_version: 3.
|
|
159
|
-
signing_key:
|
|
144
|
+
rubygems_version: 3.5.14
|
|
145
|
+
signing_key:
|
|
160
146
|
specification_version: 4
|
|
161
147
|
summary: This gem is a convenient web scraper for Bandcamp releases.
|
|
162
148
|
test_files: []
|