money-unirate-api 0.2.0 → 0.2.1

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: 490d985dd554f304b0c6d0ab2b2385624a36273162d36749069e58a0c8e926f4
4
- data.tar.gz: 04fa176af92435d2a2766e1c6b1124413b8a4a7a9ec96405394049e859a5e87f
3
+ metadata.gz: b4477e31c6a5e1b567761f5f07d5417ba16ef1eeead50d5b6794cea5f8d47de5
4
+ data.tar.gz: eadcce5a9a928ed2b2a6263e0298411c6853b92a627263ce2cd145622bd7c80d
5
5
  SHA512:
6
- metadata.gz: 1ba803dd753faba2cf5fee26218b369edaa4393d1bf889b63c1195197999723d29e93ac57b5f07042fbca324e2518256e9cc9dcc5915e0794389fa59a8f6a748
7
- data.tar.gz: 5dbf97b9bc7cb3be90a2369b53b54a46174dff9815fe8039fd6350892528f02e5c162416bcdd8865b7c1e59dc26ce6b9a9834049e171f61f784f1ac0f6408965
6
+ metadata.gz: 944a10bb35028051b0c96a81626afa293027609e81bb156b54891cd35b23200a2b1fb9f46085c15a9f450ac21d17aea14966c619adeb11afeff98fb3e5499c3b
7
+ data.tar.gz: a3b2f347758b1cf5050816888b362bebb920b9ce3c9de7c49706e70475dca8718667a682343dd70ad9364b873612d3b1ad2d3b7e2b1f12433ffb34448da77990
data/CHANGELOG.md CHANGED
@@ -4,6 +4,15 @@ All notable changes to this project are documented here. The format follows
4
4
  [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and this project
5
5
  adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.2.1] - 2026-09-10
8
+
9
+ ### Fixed
10
+
11
+ - `#update_rates` no longer raises `Money::Currency::UnknownCurrency` when the
12
+ UniRate snapshot includes currency codes the `money` gem doesn't register
13
+ (e.g. crypto such as `ETH`). Unknown codes are now skipped via
14
+ `Money::Currency.find`. Thanks to @jeroen-nijhof for the report and fix (#1).
15
+
7
16
  ## [0.2.0] - 2026-06-05
8
17
 
9
18
  ### Changed
data/README.md CHANGED
@@ -116,23 +116,76 @@ bundle exec rubocop
116
116
  ```
117
117
 
118
118
  <!-- unirate-ecosystem-footer:start -->
119
- ## Other UniRate clients
119
+ ## UniRate ecosystem
120
120
 
121
- UniRate ships official client libraries and framework integrations across the
122
- ecosystem. The repos below are all maintained under the
121
+ UniRate ships official integrations for 40+ ecosystems, all maintained under the
123
122
  [UniRate-API](https://github.com/UniRate-API) org.
124
123
 
125
- - **Languages:** [Python](https://github.com/UniRate-API/unirate-api-python) · [Node.js / TypeScript](https://github.com/UniRate-API/unirate-api-nodejs) · [Go](https://github.com/UniRate-API/unirate-api-go) · [Rust](https://github.com/UniRate-API/unirate-api-rust) · [Java](https://github.com/UniRate-API/unirate-api-java) · [Ruby](https://github.com/UniRate-API/unirate-api-ruby) · [PHP](https://github.com/UniRate-API/unirate-api-php) · [.NET](https://github.com/UniRate-API/unirate-api-dotnet) · [Swift](https://github.com/UniRate-API/unirate-api-swift)
126
- - **Web frameworks:** [NestJS](https://github.com/UniRate-API/nestjs-unirate) · [Django / Wagtail](https://github.com/UniRate-API/wagtail-unirate) · [FastAPI](https://github.com/UniRate-API/fastapi-unirate) · [Flask](https://github.com/UniRate-API/flask-unirate) · [React](https://github.com/UniRate-API/react-unirate) · [tRPC](https://github.com/UniRate-API/trpc-unirate)
127
- - **Static-site generators:** [Astro](https://github.com/UniRate-API/astro-unirate) · [Eleventy](https://github.com/UniRate-API/eleventy-unirate) · [Hugo](https://github.com/UniRate-API/hugo-unirate)
128
- - **Data / orchestration:** [Airflow](https://github.com/UniRate-API/airflow-provider-unirate) · [dbt](https://github.com/UniRate-API/dbt-unirate) · [LangChain](https://github.com/UniRate-API/langchain-unirate)
129
- - **Workflow / no-code:** [n8n](https://github.com/UniRate-API/n8n-nodes-unirate) · [Google Sheets](https://github.com/UniRate-API/unirate-sheets) · [MCP server](https://github.com/UniRate-API/unirate-mcp)
130
- - **Editors / tools:** [VS Code](https://github.com/UniRate-API/vscode-unirate) · [Obsidian](https://github.com/UniRate-API/obsidian-currency)
131
- - **Specialty bridges:** [NodaMoney (.NET)](https://github.com/UniRate-API/UniRateApi.NodaMoney) · [money gem (Ruby)](https://github.com/UniRate-API/money-unirate-api)
124
+ **Core clients (9 languages)**
125
+ [Python](https://github.com/UniRate-API/unirate-api-python) ·
126
+ [Node.js / TypeScript](https://github.com/UniRate-API/unirate-api-nodejs) ·
127
+ [Go](https://github.com/UniRate-API/unirate-api-go) ·
128
+ [Rust](https://github.com/UniRate-API/unirate-api-rust) ·
129
+ [Java](https://github.com/UniRate-API/unirate-api-java) ·
130
+ [Ruby](https://github.com/UniRate-API/unirate-api-ruby) ·
131
+ [PHP](https://github.com/UniRate-API/unirate-api-php) ·
132
+ [.NET](https://github.com/UniRate-API/unirate-api-dotnet) ·
133
+ [Swift](https://github.com/UniRate-API/unirate-api-swift)
134
+
135
+ **JavaScript / TypeScript**
136
+ [React](https://github.com/UniRate-API/react-unirate) ·
137
+ [Next.js](https://github.com/UniRate-API/next-unirate) ·
138
+ [Remix](https://github.com/UniRate-API/remix-unirate) ·
139
+ [SvelteKit](https://github.com/UniRate-API/sveltekit-unirate) ·
140
+ [Vue](https://github.com/UniRate-API/vue-unirate) ·
141
+ [Angular](https://github.com/UniRate-API/angular-unirate) ·
142
+ [Nuxt](https://github.com/UniRate-API/nuxt-unirate) ·
143
+ [NestJS](https://github.com/UniRate-API/nestjs-unirate) ·
144
+ [tRPC](https://github.com/UniRate-API/trpc-unirate)
145
+
146
+ **Static-site generators**
147
+ [Astro](https://github.com/UniRate-API/astro-unirate) ·
148
+ [Eleventy](https://github.com/UniRate-API/eleventy-unirate) ·
149
+ [Hugo](https://github.com/UniRate-API/hugo-unirate) ·
150
+ [Jekyll](https://github.com/UniRate-API/jekyll-unirate)
151
+
152
+ **CMS & e-commerce**
153
+ [Wagtail](https://github.com/UniRate-API/wagtail-unirate) ·
154
+ [WordPress](https://github.com/UniRate-API/unirate-currency-converter) ·
155
+ [WooCommerce](https://github.com/UniRate-API/unirate-woocs) ·
156
+ [Drupal](https://github.com/UniRate-API/drupal-unirate) ·
157
+ [Strapi](https://github.com/UniRate-API/strapi-plugin-unirate) ·
158
+ [Medusa](https://github.com/UniRate-API/medusa-plugin-unirate) ·
159
+ [Symfony](https://github.com/UniRate-API/unirate-bundle) ·
160
+ [Laravel](https://github.com/UniRate-API/laravel-money-unirate) ·
161
+ [Directus](https://github.com/UniRate-API/directus-extension-unirate)
162
+
163
+ **Data, AI & backend**
164
+ [LangChain (Python)](https://github.com/UniRate-API/langchain-unirate) ·
165
+ [LangChain.js](https://github.com/UniRate-API/langchain-js-unirate) ·
166
+ [FastAPI](https://github.com/UniRate-API/fastapi-unirate) ·
167
+ [Flask](https://github.com/UniRate-API/flask-unirate) ·
168
+ [Django REST Framework](https://github.com/UniRate-API/djangorestframework-unirate) ·
169
+ [Apache Airflow](https://github.com/UniRate-API/airflow-provider-unirate) ·
170
+ [dbt](https://github.com/UniRate-API/dbt-unirate)
171
+
172
+ **Platform & tools**
173
+ [MCP server](https://github.com/UniRate-API/unirate-mcp) ·
174
+ [CLI](https://github.com/UniRate-API/unirate-cli) ·
175
+ [Cloudflare Workers](https://github.com/UniRate-API/cloudflare-workers-unirate) ·
176
+ [Home Assistant](https://github.com/UniRate-API/unirate-home-assistant) ·
177
+ [n8n](https://github.com/UniRate-API/n8n-nodes-unirate) ·
178
+ [Google Sheets](https://github.com/UniRate-API/unirate-sheets) ·
179
+ [VS Code](https://github.com/UniRate-API/vscode-unirate) ·
180
+ [Obsidian](https://github.com/UniRate-API/obsidian-currency)
181
+
182
+ **Money library bridges**
183
+ [money gem (Ruby)](https://github.com/UniRate-API/money-unirate-api) ·
184
+ [NodaMoney (.NET)](https://github.com/UniRate-API/UniRateApi.NodaMoney)
132
185
 
133
186
  Get a free API key at [unirateapi.com](https://unirateapi.com).
134
187
  <!-- unirate-ecosystem-footer:end -->
135
188
 
136
189
  ## License
137
190
 
138
- MIT — see [LICENSE](LICENSE).
191
+ MIT — see [LICENSE](LICENSE).
@@ -5,5 +5,5 @@
5
5
  # gem: `Money` is a class there, and reopening it as a module at gem-build
6
6
  # time (before `money` is installed) would raise a TypeError.
7
7
  module MoneyUniRateApi
8
- VERSION = "0.2.0"
8
+ VERSION = "0.2.1"
9
9
  end
@@ -71,7 +71,11 @@ class Money
71
71
  def update_rates
72
72
  rates = fetch_rates
73
73
  add_rate(base_currency, base_currency, 1)
74
- rates.each { |code, value| add_rate(base_currency, code, value) }
74
+ rates.each do |code, value|
75
+ next unless Money::Currency.find(code)
76
+
77
+ add_rate(base_currency, code, value)
78
+ end
75
79
  @rates_updated_at = Time.now
76
80
  rates
77
81
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: money-unirate-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Unirate Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-05 00:00:00.000000000 Z
11
+ date: 2026-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: money