philiprehberger-data_mapper 0.3.3 → 0.3.6

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: c9a6ea78fb65d2e0ccc525ed00f972c1f33eee27b4e23c5466d67404ede5619c
4
- data.tar.gz: 23036151c8a6e1dc201f6afe4f49564145b09da3b7deb1cb89f7094561d26987
3
+ metadata.gz: 9f0ab442bcd2197500f34a09ad51bbed3c73c9fdd9a86ed614e6ddd65a2a70bf
4
+ data.tar.gz: ae50367310cf1a453b3e86939939a6bff15ca5381c856ba217c8eddc45900029
5
5
  SHA512:
6
- metadata.gz: efd9f9f777b1e625253494a0e474806c8e61e5089c6e0cebaffdb6e8e6e452b47b9256354c2763e32496855a7cfa649e5ac0e66e82326a7d26a4001a1371d996
7
- data.tar.gz: 19e9fbbc68e33b6eae597c8c92a12eaaf1d55a2606eba269ae971e93e4ff07fa3a45b08afc4361ac908dc99c021158a6113b462ca2b10428c9229b4414b9e343
6
+ metadata.gz: 493ae25281223c5bbb8acf73761de1462e6bc778c072ea277b403f0d3ef3e172605a7c5d7a5228056ff203928ea4b6437274425b4b420fb7955d38a85dac5ab0
7
+ data.tar.gz: 00bfa3b287bff6147a4f33b091c902f3ca2d7f6112f5429a80d943afcad9acfdc9a54990761526e698ace58066f56c033977dc215b05f423fb119622311f11fa
data/CHANGELOG.md CHANGED
@@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.3.6] - 2026-03-31
11
+
12
+ ### Changed
13
+ - Standardize README badges, support section, and license format
14
+
15
+ ## [0.3.5] - 2026-03-26
16
+
17
+ ### Fixed
18
+ - Add Sponsor badge to README
19
+ - Fix license section link format
20
+
21
+ ## [0.3.4] - 2026-03-24
22
+
23
+ ### Changed
24
+ - Expand test coverage to 55+ examples covering edge cases and error paths
25
+
10
26
  ## [0.3.3] - 2026-03-24
11
27
 
12
28
  ### Fixed
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![Tests](https://github.com/philiprehberger/rb-data-mapper/actions/workflows/ci.yml/badge.svg)](https://github.com/philiprehberger/rb-data-mapper/actions/workflows/ci.yml)
4
4
  [![Gem Version](https://badge.fury.io/rb/philiprehberger-data_mapper.svg)](https://rubygems.org/gems/philiprehberger-data_mapper)
5
- [![License](https://img.shields.io/github/license/philiprehberger/rb-data-mapper)](LICENSE)
5
+ [![Last updated](https://img.shields.io/github/last-commit/philiprehberger/rb-data-mapper)](https://github.com/philiprehberger/rb-data-mapper/commits/main)
6
6
 
7
7
  Data transformation DSL for mapping hashes and CSV rows
8
8
 
@@ -213,6 +213,24 @@ bundle exec rspec
213
213
  bundle exec rubocop
214
214
  ```
215
215
 
216
+ ## Support
217
+
218
+ If you find this project useful:
219
+
220
+ ⭐ [Star the repo](https://github.com/philiprehberger/rb-data-mapper)
221
+
222
+ 🐛 [Report issues](https://github.com/philiprehberger/rb-data-mapper/issues?q=is%3Aissue+is%3Aopen+label%3Abug)
223
+
224
+ 💡 [Suggest features](https://github.com/philiprehberger/rb-data-mapper/issues?q=is%3Aissue+is%3Aopen+label%3Aenhancement)
225
+
226
+ ❤️ [Sponsor development](https://github.com/sponsors/philiprehberger)
227
+
228
+ 🌐 [All Open Source Projects](https://philiprehberger.com/open-source-packages)
229
+
230
+ 💻 [GitHub Profile](https://github.com/philiprehberger)
231
+
232
+ 🔗 [LinkedIn Profile](https://www.linkedin.com/in/philiprehberger)
233
+
216
234
  ## License
217
235
 
218
- MIT
236
+ [MIT](LICENSE)
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "parsable"
4
- require_relative "reversible"
3
+ require_relative 'parsable'
4
+ require_relative 'reversible'
5
5
 
6
6
  module Philiprehberger
7
7
  module DataMapper
@@ -23,8 +23,8 @@ module Philiprehberger
23
23
  @computed_fields << ComputedDefinition.new(target, &)
24
24
  end
25
25
 
26
- def array_field(target, from: nil, split: ",", &transform)
27
- field(target, from: from, split: split, &transform)
26
+ def array_field(target, split: ',', **opts, &transform)
27
+ field(target, split: split, **opts, &transform)
28
28
  end
29
29
 
30
30
  def map(hash)
@@ -78,9 +78,9 @@ module Philiprehberger
78
78
  key_str = source.to_s
79
79
  return hash[source] if hash.key?(source)
80
80
  return hash[key_str] if hash.key?(key_str)
81
- return unless key_str.include?(".")
81
+ return unless key_str.include?('.')
82
82
 
83
- dig_nested(hash, key_str.split("."))
83
+ dig_nested(hash, key_str.split('.'))
84
84
  end
85
85
 
86
86
  def dig_nested(hash, keys)
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "csv"
4
- require "json"
3
+ require 'csv'
4
+ require 'json'
5
5
 
6
6
  module Philiprehberger
7
7
  module DataMapper
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Philiprehberger
4
4
  module DataMapper
5
- VERSION = "0.3.3"
5
+ VERSION = '0.3.6'
6
6
  end
7
7
  end
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "data_mapper/version"
4
- require_relative "data_mapper/field_definition"
5
- require_relative "data_mapper/computed_definition"
6
- require_relative "data_mapper/mapping_result"
7
- require_relative "data_mapper/mapping"
3
+ require_relative 'data_mapper/version'
4
+ require_relative 'data_mapper/field_definition'
5
+ require_relative 'data_mapper/computed_definition'
6
+ require_relative 'data_mapper/mapping_result'
7
+ require_relative 'data_mapper/mapping'
8
8
 
9
9
  module Philiprehberger
10
10
  module DataMapper
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: philiprehberger-data_mapper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philip Rehberger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-03-25 00:00:00.000000000 Z
11
+ date: 2026-03-31 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A zero-dependency Ruby gem for transforming data between formats with
14
14
  a mapping DSL, field renaming, type conversion, validation, and CSV support.