backstage 0.1.13 → 0.1.14

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: 9de1bd6823d300ceef1f45b44ff97b635b6497ed1e58df6d814ec5ce45efc56e
4
- data.tar.gz: d2863d1096ece91857ab403a4fa874f015f4065b5d9922553eaccc09d2245061
3
+ metadata.gz: af33e498a31b4178f2565526576a747f3b40f79fe869d0c9f02e7b9147f250ed
4
+ data.tar.gz: e4a561394fe10ec3ac30a8bcbc3492bd13285881c9e1e1cf2d16a2ef3302e259
5
5
  SHA512:
6
- metadata.gz: f2799b494c57a749cc0c29595121fda2a90bf5c99704138bf70597fe14b1480c96c49984528b29f95fee0b1714ce0376e351be31057ea67b0fd6fb261675cb5d
7
- data.tar.gz: d95bbf7d40f238529b320ed0194f8c4fd6ecfc7799630e1274145423d869f1e36aeeb581a9abeb8a17761bc85464ca4618f705ad1e776ddf91f3cdb9bb1dcbef
6
+ metadata.gz: faf0d674103b06bffd2625b114aec195037f8ab3c08ff6a5c8786abb8b8fd5c53938c6f394a934e10820459089af5c0fcafda82d86ddae9c584081918287ceef
7
+ data.tar.gz: 1b2ee32beb0c16edfd8a7d2b08f86671ead990cc131272a60b9fd3a027fd8b9b1c5d37314ee7eccec221e6cd037fb9e6706d60dc8f97041dbfd1f11470e1a2ac
data/CHANGELOG.md CHANGED
@@ -7,6 +7,14 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.1.14] — 2026-05-26
11
+
12
+ ### Fixed
13
+
14
+ - `ActionsController` no longer falls back to `Backstage::ResourcesController` when no custom controller exists — raises `NotImplementedError` instead of silently dispatching inherited CRUD actions
15
+ - Custom action dispatch now uses `method_defined?(name, false)` so only actions defined directly on the host subclass are callable; inherited methods (`index`, `create`, `update`, `destroy`, etc.) are blocked
16
+ - Gemspec `homepage` corrected to point to the right repository
17
+
10
18
  ## [0.1.13] — 2026-05-26
11
19
 
12
20
  ### Added
@@ -8,14 +8,19 @@ module Backstage
8
8
  end
9
9
 
10
10
  resource_name = params[:resource].classify.pluralize
11
- controller_class = "Backstage::#{resource_name}Controller".safe_constantize ||
12
- Backstage::ResourcesController
11
+ controller_class = "Backstage::#{resource_name}Controller".safe_constantize
13
12
  action_name = params[:action_name]
14
13
 
15
- unless controller_class.method_defined?(action_name)
14
+ if controller_class.nil? || controller_class == Backstage::ResourcesController
15
+ raise NotImplementedError,
16
+ "Backstage: no custom controller found for #{resource_name}. " \
17
+ "Define Backstage::#{resource_name}Controller."
18
+ end
19
+
20
+ unless controller_class.method_defined?(action_name.to_sym, false)
16
21
  raise NotImplementedError,
17
22
  "Backstage: no action '#{action_name}' on #{controller_class}. " \
18
- "Define it in a Backstage::#{resource_name}Controller subclass."
23
+ "Define it in Backstage::#{resource_name}Controller."
19
24
  end
20
25
 
21
26
  status, headers, body = controller_class.action(action_name).call(request.env)
@@ -1,3 +1,3 @@
1
1
  module Backstage
2
- VERSION = "0.1.13"
2
+ VERSION = "0.1.14"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: backstage
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.13
4
+ version: 0.1.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gareth James
@@ -26,7 +26,6 @@ dependencies:
26
26
  version: '8.0'
27
27
  description:
28
28
  email:
29
- - g.claude@bemused.org
30
29
  executables: []
31
30
  extensions: []
32
31
  extra_rdoc_files: []
@@ -80,7 +79,7 @@ files:
80
79
  - lib/generators/backstage/install/templates/SKILL.md
81
80
  - lib/generators/backstage/install/templates/backstage.rb
82
81
  - lib/generators/backstage/install/templates/backstage.yml
83
- homepage: https://github.com/gjtorikian/backstage
82
+ homepage: https://github.com/garethfr/backstage
84
83
  licenses:
85
84
  - MIT
86
85
  metadata: {}