gtfs_df 0.10.1 → 0.10.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: 5200ee072c53d95cdb96af3fc8e0f15f9a15e2cc22684b5c9b2b2eeb4c103c8a
4
- data.tar.gz: 843492a5f86c595d48431edcf2decd800debc1ead5dd2df0e77d89bf920c01ce
3
+ metadata.gz: f128bb120303c7d0a4508f0d036812375893ea8c210a351535199b26f3aa3263
4
+ data.tar.gz: 554926a20907e8dedf02f786daa422a6bce1e3f876074a6b8106682b8a671eeb
5
5
  SHA512:
6
- metadata.gz: be450515810d21760afbff3800887e3e5605052bd52eaf7df81951d6193c141dc9487d6b566b9caae5bd44a990051f54907ded2fa619406018afb32df8f3209a
7
- data.tar.gz: b6efebb9c5190777a3698a2b747b8528a7a72598c96254fbc7c9ead11aceaa72de75d2a95fb5a4c60745a0aacb0234108e4e5c663650bd5e0d71b858881325ca
6
+ metadata.gz: 140df9b1b30d5210e6212ee8c7ee158217d26e2605ce9da9d0502eec90777ec4a4ee06a81555d858d69b53614af41d153836532aadd1a0053ec539b8caa9337e
7
+ data.tar.gz: 9f4fa2528b9897cac3aefb2019b80068adb2fc7022fd66601a91de284b7888cefafc4f5b2ad3f773ab01bb69849f43231fb6ef08155d0bc40fe1bcae9be5a8b1
data/CHANGELOG.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## [0.10.2] - 2026-03-20
2
+
3
+ ### 🐛 Bug Fixes
4
+
5
+ - Handle nested feeds
6
+
7
+ ### ⚙️ Miscellaneous Tasks
8
+
9
+ - Raise clear message for multi-feed inputs
1
10
  ## [0.10.1] - 2026-03-18
2
11
 
3
12
  ### 🐛 Bug Fixes
@@ -8,6 +17,7 @@
8
17
 
9
18
  - Normalize platforms
10
19
  - Ignore the examples folder on publishing
20
+ - Bump version to 0.10.1
11
21
  ## [0.10.0] - 2026-03-06
12
22
 
13
23
  ### 🚀 Features
@@ -14,15 +14,26 @@ module GtfsDf
14
14
  .map { |name| "#{name}.txt" }
15
15
  .to_set
16
16
 
17
+ seen = {}
18
+
17
19
  Dir.mktmpdir do |tmpdir|
18
20
  Zip::File.open(zip_path) do |zip_file|
19
21
  zip_file.each do |entry|
22
+ # Extract files in nested directories into the root of the tmpdir
23
+ file_name = File.basename(entry.name)
24
+
25
+ if seen[file_name]
26
+ raise GtfsDf::Error, "Found multiple instances of the same file: #{seen[file_name]} and #{entry.name}"
27
+ end
28
+
20
29
  # We're skipping:
21
- # - directories
22
30
  # - unrelated files
23
31
  # - empty feed files
24
- next unless entry.file? && relevant_files.include?(entry.name) && has_header?(entry)
25
- entry.extract(destination_directory: tmpdir)
32
+ next unless relevant_files.include?(file_name) && has_header?(entry)
33
+
34
+ seen[file_name] = entry.name
35
+
36
+ entry.extract(file_name, destination_directory: tmpdir)
26
37
  end
27
38
  end
28
39
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GtfsDf
4
- VERSION = "0.10.1"
4
+ VERSION = "0.10.2"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gtfs_df
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.10.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Mejorado