ehbrs_ruby_utils 0.17.2 → 0.17.3

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
  SHA256:
3
- metadata.gz: '0956ea6c5610c08b284ec10a2411f0009595800090099c8be4c6f739e6db77ee'
4
- data.tar.gz: 75e01da42947a0c3c466eef4f91808f8e287b7e34609dec9d1c9a60c66c53a19
3
+ metadata.gz: e33992f6ff34c43794a34bf8e7d9947aeb9a8987c407374128136b5d84a8ce41
4
+ data.tar.gz: 052645d454f893b434f3d9a46b6881483f96a5a9cb5f32fc56634a8119e9f049
5
5
  SHA512:
6
- metadata.gz: f58b7b7d1887bea81a4a06f8031200c0b10d339778a5f040715e3b50cbd7328f7c6ec6a250207c419dff144a5ed85ced8a5bd49dfc66380df506744fde779958
7
- data.tar.gz: 6f831b1434f663d0a38c25cd2cc8504df986a6d934fd934d5dd8b84fb9303a6335ff251de57af931ab616e9dd52e21e0f24eb485e04d23ffd731962cfd8ea6ab
6
+ metadata.gz: 53cae13cd044d18a702e2a1a58ccf95191e19fb8688ae6e28624fc12e73e165818d0067b1064c8a29b5a4b23d471e134c858e29b1151375f7d95ea4a6598aa61
7
+ data.tar.gz: 9e6ab67552a88c0b201c6657f9cb3fe9387663a1d68654ca9b611baa8b8217cd1a67567c39602ce9ec83bbc2a6f9c700b004a147e64ce0d49858906b7f2a7a5f
@@ -26,16 +26,22 @@ module EhbrsRubyUtils
26
26
  end
27
27
 
28
28
  def artist
29
- songs.lazy.map { |v| v.tag.artist }.find(&:present?)
29
+ from_songs_tag(:artist)
30
30
  end
31
31
 
32
32
  def title
33
- songs.lazy.map { |v| v.tag.album }.find(&:present?)
33
+ from_songs_tag(:album)
34
34
  end
35
35
 
36
+ private
37
+
36
38
  def songs_uncached
37
39
  ::EhbrsRubyUtils::Music::LyricsBook::Song.create_list(self, path.children)
38
40
  end
41
+
42
+ def from_songs_tag(field)
43
+ songs.lazy.map { |v| v.tag.send(field) }.find(&:present?)
44
+ end
39
45
  end
40
46
  end
41
47
  end
@@ -11,7 +11,6 @@ module EhbrsRubyUtils
11
11
  r = files.sort.map { |path| new(parent, path) }.select(&:valid?)
12
12
  previous = parent.first_previous
13
13
  r.map do |e|
14
- e.reset_cache
15
14
  e.previous = previous
16
15
  previous = e
17
16
  end
@@ -12,10 +12,17 @@ module EhbrsRubyUtils
12
12
  delegate :provider, to: :book
13
13
  delegate :tag, :to_s, to: :container
14
14
 
15
+ DEFAULT_TITLE = 'Unknown title'
16
+
15
17
  def album
16
18
  parent
17
19
  end
18
20
 
21
+ # @return [Array<String>
22
+ def fs_object_id
23
+ %w[artist album title].map { |k| tag.send(k) }
24
+ end
25
+
19
26
  def lyrics
20
27
  fetch_lyrics unless lyrics_cached?
21
28
  cached_lyrics
@@ -37,7 +44,9 @@ module EhbrsRubyUtils
37
44
  "#{number} - #{title}"
38
45
  end
39
46
 
40
- delegate :title, to: :tag
47
+ def title
48
+ tag.if_present(DEFAULT_TITLE, &:title)
49
+ end
41
50
 
42
51
  private
43
52
 
@@ -55,8 +64,7 @@ module EhbrsRubyUtils
55
64
  end
56
65
 
57
66
  def lyrics_cache
58
- (%w[artist album title].map { |k| tag.send(k) } + [provider.identifier])
59
- .inject(fs_cache) { |a, e| a.child(e) }
67
+ fs_cache.child(provider.identifier)
60
68
  end
61
69
 
62
70
  def number_uncached
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EhbrsRubyUtils
4
- VERSION = '0.17.2'
4
+ VERSION = '0.17.3'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ehbrs_ruby_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.2
4
+ version: 0.17.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo H. Bogoni
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-05 00:00:00.000000000 Z
11
+ date: 2022-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -16,88 +16,94 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.8'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.8.5
19
+ version: '0.10'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0.8'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.8.5
26
+ version: '0.10'
33
27
  - !ruby/object:Gem::Dependency
34
28
  name: avm
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: '0.3'
33
+ version: '0.18'
40
34
  - - ">="
41
35
  - !ruby/object:Gem::Version
42
- version: 0.3.2
36
+ version: 0.18.1
43
37
  type: :runtime
44
38
  prerelease: false
45
39
  version_requirements: !ruby/object:Gem::Requirement
46
40
  requirements:
47
41
  - - "~>"
48
42
  - !ruby/object:Gem::Version
49
- version: '0.3'
43
+ version: '0.18'
50
44
  - - ">="
51
45
  - !ruby/object:Gem::Version
52
- version: 0.3.2
46
+ version: 0.18.1
53
47
  - !ruby/object:Gem::Dependency
54
48
  name: eac_fs
55
49
  requirement: !ruby/object:Gem::Requirement
56
50
  requirements:
57
51
  - - "~>"
58
52
  - !ruby/object:Gem::Version
59
- version: '0.10'
53
+ version: '0.12'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 0.12.3
60
57
  type: :runtime
61
58
  prerelease: false
62
59
  version_requirements: !ruby/object:Gem::Requirement
63
60
  requirements:
64
61
  - - "~>"
65
62
  - !ruby/object:Gem::Version
66
- version: '0.10'
63
+ version: '0.12'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 0.12.3
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: eac_ruby_utils
69
69
  requirement: !ruby/object:Gem::Requirement
70
70
  requirements:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
- version: '0.70'
73
+ version: '0.102'
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 0.102.1
74
77
  type: :runtime
75
78
  prerelease: false
76
79
  version_requirements: !ruby/object:Gem::Requirement
77
80
  requirements:
78
81
  - - "~>"
79
82
  - !ruby/object:Gem::Version
80
- version: '0.70'
83
+ version: '0.102'
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: 0.102.1
81
87
  - !ruby/object:Gem::Dependency
82
88
  name: eac_templates
83
89
  requirement: !ruby/object:Gem::Requirement
84
90
  requirements:
85
91
  - - "~>"
86
92
  - !ruby/object:Gem::Version
87
- version: '0.1'
93
+ version: '0.3'
88
94
  - - ">="
89
95
  - !ruby/object:Gem::Version
90
- version: 0.1.1
96
+ version: 0.3.2
91
97
  type: :runtime
92
98
  prerelease: false
93
99
  version_requirements: !ruby/object:Gem::Requirement
94
100
  requirements:
95
101
  - - "~>"
96
102
  - !ruby/object:Gem::Version
97
- version: '0.1'
103
+ version: '0.3'
98
104
  - - ">="
99
105
  - !ruby/object:Gem::Version
100
- version: 0.1.1
106
+ version: 0.3.2
101
107
  - !ruby/object:Gem::Dependency
102
108
  name: taglib-ruby
103
109
  requirement: !ruby/object:Gem::Requirement
@@ -105,6 +111,9 @@ dependencies:
105
111
  - - "~>"
106
112
  - !ruby/object:Gem::Version
107
113
  version: '1.1'
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: 1.1.2
108
117
  type: :runtime
109
118
  prerelease: false
110
119
  version_requirements: !ruby/object:Gem::Requirement
@@ -112,6 +121,9 @@ dependencies:
112
121
  - - "~>"
113
122
  - !ruby/object:Gem::Version
114
123
  version: '1.1'
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ version: 1.1.2
115
127
  - !ruby/object:Gem::Dependency
116
128
  name: ultimate_lyrics
117
129
  requirement: !ruby/object:Gem::Requirement
@@ -119,6 +131,9 @@ dependencies:
119
131
  - - "~>"
120
132
  - !ruby/object:Gem::Version
121
133
  version: '0.1'
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: 0.1.3
122
137
  type: :runtime
123
138
  prerelease: false
124
139
  version_requirements: !ruby/object:Gem::Requirement
@@ -126,6 +141,9 @@ dependencies:
126
141
  - - "~>"
127
142
  - !ruby/object:Gem::Version
128
143
  version: '0.1'
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: 0.1.3
129
147
  - !ruby/object:Gem::Dependency
130
148
  name: aranha-parsers
131
149
  requirement: !ruby/object:Gem::Requirement