bibliothecary 13.0.0 → 13.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b8a1d72ed1c6410170cd105bd8fbac80589da11434227f6803c89d5903a6985
4
- data.tar.gz: ee6c6623a6a53ae65ccc5009091fea4640188f37d89baf1a871a39fceecba988
3
+ metadata.gz: d6c860318e60f88c4c1c6ee7269974148a708c342d2554a8b958e135f76daf65
4
+ data.tar.gz: a3f1c01a07947599217eebeb03aa0b92b47fa1fd3794168172a7ded5a38d103b
5
5
  SHA512:
6
- metadata.gz: 43df91da96ccbd93aa7a9b69e0f6a111a1962b4515bb211488cedb26b148f0cb5c76c0e0ff29758ee23eeaa4015aa4d73d468625e85a3cb7f1e9b12a0b6370f9
7
- data.tar.gz: 9826ee8c30e798b2d83decc6d25ec4dd673f24371a9992e60cf18bcef9eded7f7d492fc9b96caac3e378f0bec02a049d5ae4e66d0c9562587f1db70300c5b2aa
6
+ metadata.gz: ef3327b686f07ae57b769f285974341d18b2c2b3d40d5cfef422073475534ba30586f39f92679924e0941e26fc955589398da63937f6c0c69574082910ace619
7
+ data.tar.gz: 2e2e83293786ca74ac119269f9e5bd6e0f9ea44c346c1cbc46386e34a2bf5d1716dcf0b8c8434d92eccbc89eab81fe474c64670f8ac272544e4429157f5d037d
data/CHANGELOG.md CHANGED
@@ -13,6 +13,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
13
13
 
14
14
  ### Removed
15
15
 
16
+ ## [13.0.2] - 2025-07-21
17
+
18
+ ### Changed
19
+
20
+ - Handle scoped dependencies in PNPM lockfiles.
21
+
22
+ ## [13.0.1] - 2025-07-03
23
+
24
+ ### Changed
25
+
26
+ - Handle windows-style newlines in v1 yarn lockfiles.
27
+
16
28
  ## [13.0.0] - 2025-06-17
17
29
 
18
30
  ### Removed
@@ -274,7 +274,7 @@ module Bibliothecary
274
274
  def self.parse_maven_tree_items_with_depths(file_contents)
275
275
  file_contents
276
276
  .gsub(ANSI_MATCHER, "")
277
- .gsub(/\r\n?/, "\n")
277
+ .encode(universal_newline: true)
278
278
  # capture two groups; one is the ASCII art telling us the tree depth,
279
279
  # and two is the actual dependency
280
280
  .scan(/^\[INFO\]\s((?:[-+|\\]|\s)*)((?:[\w\.-]+:)+[\w\.\-${}]+)/)
@@ -197,6 +197,7 @@ module Bibliothecary
197
197
  # }, ...]
198
198
  def self.parse_v1_yarn_lock(contents, source = nil)
199
199
  contents
200
+ .encode(universal_newline: true)
200
201
  .gsub(/^#.*/, "")
201
202
  .strip
202
203
  .split("\n\n")
@@ -262,8 +263,8 @@ module Bibliothecary
262
263
 
263
264
  parsed_contents["packages"]
264
265
  .map do |name_version, details|
265
- # e.g. "/debug/2.6.9:"
266
- name, version = name_version.sub(/^\//, "").split("/", 2)
266
+ # e.g. "/debug/2.6.9" or "/@babel/types/7.28.1"
267
+ name, _slash, version = name_version.sub(/^\//, "").rpartition("/")
267
268
 
268
269
  # e.g. "/debug/2.2.0_supports-color@1.2.0:"
269
270
  version = version.split("_", 2)[0]
@@ -296,7 +297,7 @@ module Bibliothecary
296
297
  parsed_contents["packages"]
297
298
  .map do |name_version, details|
298
299
  # e.g. "/debug@2.6.9:"
299
- name, version = name_version.sub(/^\//, "").split("@", 2)
300
+ name, version = name_version.sub(/^\//, "").split(/(?<!^)@/, 2)
300
301
 
301
302
  # e.g. "debug@2.2.0(supports-color@1.2.0)"
302
303
  version = version.split("(", 2).first
@@ -334,8 +335,8 @@ module Bibliothecary
334
335
  # as of https://github.com/pnpm/pnpm/pull/7700.
335
336
  parsed_contents["snapshots"]
336
337
  .map do |name_version, _details|
337
- # e.g. "debug@2.6.9:"
338
- name, version = name_version.split("@", 2)
338
+ # e.g. "debug@2.6.9" or "@babel/types@7.28.1"
339
+ name, version = name_version.split(/(?<!^)@/, 2)
339
340
 
340
341
  # e.g. "debug@2.2.0(supports-color@1.2.0)"
341
342
  version = version.split("(", 2).first
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bibliothecary
4
- VERSION = "13.0.0"
4
+ VERSION = "13.0.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bibliothecary
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.0.0
4
+ version: 13.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Nesbitt
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2025-06-17 00:00:00.000000000 Z
10
+ date: 2025-07-21 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: commander
@@ -136,7 +135,6 @@ dependencies:
136
135
  - - ">="
137
136
  - !ruby/object:Gem::Version
138
137
  version: '0'
139
- description:
140
138
  email:
141
139
  - andrewnez@gmail.com
142
140
  executables:
@@ -210,7 +208,6 @@ licenses:
210
208
  - AGPL-3.0
211
209
  metadata:
212
210
  rubygems_mfa_required: 'true'
213
- post_install_message:
214
211
  rdoc_options: []
215
212
  require_paths:
216
213
  - lib
@@ -225,8 +222,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
225
222
  - !ruby/object:Gem::Version
226
223
  version: '0'
227
224
  requirements: []
228
- rubygems_version: 3.4.19
229
- signing_key:
225
+ rubygems_version: 3.6.3
230
226
  specification_version: 4
231
227
  summary: Find and parse manifests
232
228
  test_files: []