portage-ucp-bigcommerce 0.1.4 → 0.2.0

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: abe1a96bd9cf583809c3dfd5eb83f1a17bfea79e2b59a56d3b12591f83376bc5
4
- data.tar.gz: 1e8596629873156558901b60333919ea1f17a9405471f11d3e36ed6beac05692
3
+ metadata.gz: 9a71c96dc602da8be5b13f7356611d8172038c49c8b9d42d8d5b2208e9e2213f
4
+ data.tar.gz: 0137c7b98d2e2578320aa73608b85acbc5a7f5d826f4ea0e34a6cab9e4e6e5b2
5
5
  SHA512:
6
- metadata.gz: 1746834fbc6c6ebbad41e8f21b62f4036f6c302786cea915b3a1073cd6e3794cc24b9c3ff5c69f3c8b67935a52722e9f633b0fd7113656c7101a649c6ca1da22
7
- data.tar.gz: 32bc784dd25432905e9ceaadac0f8a8d436a5f2a94b4422f6fb59b85f4972b3967ddeabca0f8d9c787f287fd8015db99b4e19025bfa3829dc51cf7636e656626
6
+ metadata.gz: f8760851e94163dfa43272181da97bd191b137f7315076b1471aed3469b10fa88b840897986b4836d5a5a72da1949b180684b6427beff6c0f99313fca40a8c68
7
+ data.tar.gz: 638a13c5fd1441e3ad7d4b42196e4ce7aac87034de7580ecfc33d20dbf780bb9fe6f67f246c7b320e8c42779f96152fc7d06a89ba613ddc9f01170fa2771ef12
data/CHANGELOG.md CHANGED
@@ -4,6 +4,25 @@ All notable changes to this project are documented here. Format loosely follows
4
4
  [Keep a Changelog](https://keepachangelog.com/en/1.0.0/); this project is
5
5
  pre-1.0, so APIs may still shift between minor versions.
6
6
 
7
+ ## [Unreleased]
8
+
9
+ ## [0.2.0] - 2026-10-05
10
+
11
+ - **Removed the unused `Client#v2_post` and `Client#v3_put`.** Nothing in the gem called them. They were public on the client class, so this is **breaking** for any caller using them directly; minor-level for a pre-1.0 gem.
12
+
13
+ - **Removed `Mapper.money`.** It was a one-line pass-through to `Support::Amounts.money` that nothing in the gem called. It is a public module function, so this is **breaking** for any caller using it directly; minor-level for a pre-1.0 gem.
14
+
15
+ ## [0.1.5] - 2026-09-29
16
+
17
+ - Fixes a `NoMethodError` at launch: `exe/portage-ucp-bigcommerce` handed
18
+ the server `Server.build(adapter:).start`, but `Server.build` returns a
19
+ plain `MCP::Server` (mcp gem 0.25.0), which has no `#start` — only
20
+ `MCP::Server::Transports::StdioTransport#open` reads stdio frames. The exe
21
+ now calls that directly, matching `portage-ucp-etsy`'s exe. Adds
22
+ `spec/portage/ucp/bigcommerce/exe_spec.rb`, which runs the exe as a real
23
+ subprocess and pipes it a JSON-RPC `initialize` + `tools/list` handshake
24
+ to prove it actually starts and answers requests.
25
+
7
26
  ## [0.1.4] - 2026-09-17
8
27
 
9
28
  - No behavior change — widens the `portage-ucp` dependency pin to `~> 0.8`
@@ -5,7 +5,8 @@
5
5
  # vars, and — since this gem ships with permissive-nothing defaults (see
6
6
  # README's "Security hooks") — wire a real Authenticator/RateLimiter/etc. via
7
7
  # a config file loaded with PORTAGE_UCP_CONFIG, the same way `rackup -r` or
8
- # Sidekiq's `-r` work — see ../examples/portage_ucp.rb for a starting point.
8
+ # Sidekiq's `-r` work — see a starting point at
9
+ # https://github.com/tomtom87/Portage/blob/main/portage-ucp/examples/portage_ucp.rb.
9
10
  # Without one, the server still starts but rejects every mutating call.
10
11
  #
11
12
  # BIGCOMMERCE_PAYMENT_GATEWAY_ID is optional — only needed to call
@@ -28,4 +29,5 @@ adapter = Portage::Ucp::BigCommerce::Adapter.new(
28
29
  payment_gateway_id: ENV.fetch("BIGCOMMERCE_PAYMENT_GATEWAY_ID", nil)
29
30
  )
30
31
 
31
- Portage::Ucp::Mcp::Server.build(adapter: adapter).start
32
+ server = Portage::Ucp::Mcp::Server.build(adapter: adapter)
33
+ MCP::Server::Transports::StdioTransport.new(server).open
@@ -39,10 +39,6 @@ module Portage
39
39
  admin_request(Net::HTTP::Get, "v2", path)
40
40
  end
41
41
 
42
- def v2_post(path, body = {})
43
- admin_request(Net::HTTP::Post, "v2", path, body)
44
- end
45
-
46
42
  def v3_get(path)
47
43
  admin_request(Net::HTTP::Get, "v3", path)
48
44
  end
@@ -51,10 +47,6 @@ module Portage
51
47
  admin_request(Net::HTTP::Post, "v3", path, body)
52
48
  end
53
49
 
54
- def v3_put(path, body = {})
55
- admin_request(Net::HTTP::Put, "v3", path, body)
56
- end
57
-
58
50
  def v3_delete(path)
59
51
  admin_request(Net::HTTP::Delete, "v3", path)
60
52
  end
@@ -13,10 +13,6 @@ module Portage
13
13
  module Mapper
14
14
  module_function
15
15
 
16
- def money(amount, currency)
17
- Portage::Ucp::Support::Amounts.money(amount, currency)
18
- end
19
-
20
16
  def minor_units(amount)
21
17
  Portage::Ucp::Support::Amounts.decimal_to_minor(amount)
22
18
  end
@@ -1,7 +1,7 @@
1
1
  module Portage
2
2
  module Ucp
3
3
  module BigCommerce
4
- VERSION = "0.1.4".freeze
4
+ VERSION = "0.2.0".freeze
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: portage-ucp-bigcommerce
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom Whitbread
8
+ autorequire:
8
9
  bindir: exe
9
10
  cert_chain: []
10
- date: 1980-01-02 00:00:00.000000000 Z
11
+ date: 2026-10-05 00:00:00.000000000 Z
11
12
  dependencies:
12
13
  - !ruby/object:Gem::Dependency
13
14
  name: portage-ucp
@@ -82,6 +83,7 @@ dependencies:
82
83
  description: Implements Portage::Ucp::Adapter against a BigCommerce store's v3 Catalog/Carts/Checkouts
83
84
  APIs and v2 Orders API. Generic only — no merchant-specific business logic. Plain
84
85
  Net::HTTP, no bigcommerce/api runtime dependency.
86
+ email:
85
87
  executables:
86
88
  - portage-ucp-bigcommerce
87
89
  extensions: []
@@ -104,6 +106,7 @@ metadata:
104
106
  source_code_uri: https://github.com/tomtom87/Portage/tree/main/portage-ucp-bigcommerce
105
107
  changelog_uri: https://github.com/tomtom87/Portage/blob/main/portage-ucp-bigcommerce/CHANGELOG.md
106
108
  rubygems_mfa_required: 'true'
109
+ post_install_message:
107
110
  rdoc_options: []
108
111
  require_paths:
109
112
  - lib
@@ -118,7 +121,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
121
  - !ruby/object:Gem::Version
119
122
  version: '0'
120
123
  requirements: []
121
- rubygems_version: 4.0.21
124
+ rubygems_version: 3.5.22
125
+ signing_key:
122
126
  specification_version: 4
123
127
  summary: BigCommerce adapter for portage-ucp — standard catalog/cart/checkout/order
124
128
  over MCP and UCP