@@ -135,17 +135,22 @@ def fetch_downloads(package_name)
135
135
def versions_metadata ( pkg_metadata , existing_version_numbers = [ ] )
136
136
version_numbers = get_json ( "#{ @registry_url } /docs/General/#{ pkg_metadata [ :name ] } /versions.json" )
137
137
version_numbers . map do |v |
138
- version_json = get_json ( "#{ @registry_url } /docs/General/#{ pkg_metadata [ :name ] } /#{ v } /pkg.json" )
139
- next if version_json . nil?
140
- {
141
- number : version_json [ 'version' ] ,
142
- published_at : version_json [ 'release_date' ] ,
143
- licenses : version_json [ 'license' ] ,
144
- metadata : {
145
- slug : version_json [ 'slug' ] ,
146
- uuid : version_json [ 'uuid' ] ,
138
+ begin
139
+ version_json = get_json ( "#{ @registry_url } /docs/General/#{ pkg_metadata [ :name ] } /#{ v } /pkg.json" )
140
+ next if version_json . nil?
141
+ {
142
+ number : version_json [ 'version' ] ,
143
+ published_at : version_json [ 'release_date' ] ,
144
+ licenses : version_json [ 'license' ] ,
145
+ metadata : {
146
+ slug : version_json [ 'slug' ] ,
147
+ uuid : version_json [ 'uuid' ] ,
148
+ }
147
149
}
148
- }
150
+ rescue Oj ::ParseError => e
151
+ Rails . logger . error "Failed to parse JSON for #{ pkg_metadata [ :name ] } version #{ v } : #{ e . message } "
152
+ next
153
+ end
149
154
end . compact
150
155
end
151
156
0 commit comments