studio-engine 0.32.0 → 0.32.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:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9525633783466e9475652bb4ded7c35b05c36165cf76db8c68db9e9ee357e0cb
|
|
4
|
+
data.tar.gz: 7e2bbfa555bd538f915985213fafe2a27de2ef6bb0a2ae6b4868054a3dea127b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 33d02975ad35287da64b3a75ee297efec825d68fa5b3823e5ec834dc67eb572df96e669cff6fa94ce731293b343f2b9b9aef8a9a4ce9a6b63d4bddd79989fbda
|
|
7
|
+
data.tar.gz: 792e5a6c4159be01aba533ad28e705d09576a2a8b5ee8b9af05f0dc1200ba2baddd8dad772f1eea6dd6d0b7957705d57901d937c0cf73be21a89d726fbccbd20
|
data/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,65 @@
|
|
|
2
2
|
|
|
3
3
|
The format is [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). This project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html) — `MAJOR.MINOR.PATCH`. Consumer Rails apps install the released RubyGems package with `gem "studio-engine", "~> 0.6"`; bumping the gem version and updating consumer lockfiles is a release.
|
|
4
4
|
|
|
5
|
-
## 0.32.
|
|
5
|
+
## 0.32.2 — 2026-08-09
|
|
6
|
+
|
|
7
|
+
**Two public-page navigation fixes** (found by the industries sidebar-adoption
|
|
8
|
+
review on the app's one public page): `components/_admin_dropdown` now renders
|
|
9
|
+
only for `admin?` viewers — it used to offer `/admin/theme` and `/error_logs`
|
|
10
|
+
links to signed-out strangers wherever the navbar mounted it; and
|
|
11
|
+
`components/_link_sidebar_trigger` no longer hardcodes `inline-flex` after the
|
|
12
|
+
caller's `class_name`, which beat `hidden md:inline-flex` in the cascade and
|
|
13
|
+
rendered the desktop trigger on mobile beside the real one. Callers now own
|
|
14
|
+
the display class (bare renders default to `inline-flex`). Regression view
|
|
15
|
+
tests pin both.
|
|
16
|
+
|
|
17
|
+
## 0.32.1 — Unreleased
|
|
18
|
+
|
|
19
|
+
**Setup-guide corrections.** Docs only — no code, no behavior change.
|
|
20
|
+
|
|
21
|
+
### Docs
|
|
22
|
+
|
|
23
|
+
- **`NEW_APP_SETUP.md` § 15 "Lint And CI" — the two things a fresh app gets wrong
|
|
24
|
+
by default.** Both surface as a red CI lane on the app's first push and both
|
|
25
|
+
read like code defects when they aren't.
|
|
26
|
+
|
|
27
|
+
*Lint:* the generated `.rubocop.yml` inherits `rubocop-rails-omakase`, which
|
|
28
|
+
enforces `[ a, b ]`, while scaffolded code routinely writes `[a, b]` — so a new
|
|
29
|
+
app is usually born with a red `lint` lane. Run `bin/rubocop -a` before the
|
|
30
|
+
first commit, and either format to the cop or disable it deliberately. The
|
|
31
|
+
section tabulates which apps did which, stamped with the `origin/main` ref it
|
|
32
|
+
was surveyed at; that table lives in the guide rather than here because
|
|
33
|
+
`studio-engine.gemspec:21` packages this CHANGELOG but excludes `docs/`, so the
|
|
34
|
+
guide can be corrected without an erratum and this file cannot.
|
|
35
|
+
|
|
36
|
+
*CI:* the generated workflow installs a short fixed list and nothing else, so an
|
|
37
|
+
app that shells out to any other binary must add it to the install step in EVERY
|
|
38
|
+
test-running job. How many jobs that is depends on your Rails version — 8.1
|
|
39
|
+
generates separate `test` and `system-test` jobs with separate install steps,
|
|
40
|
+
7.2 a single job running both suites — and the guide tabulates both. The
|
|
41
|
+
failure is misleading: the test raises inside its own setup, so the lane reads
|
|
42
|
+
as a code defect rather than a missing package. moms-app's `BookStitcher` shells
|
|
43
|
+
out to `ffmpeg`, its README had listed `ffmpeg` as a requirement all along, and
|
|
44
|
+
the requirement was simply never told to CI.
|
|
45
|
+
- **`NEW_APP_SETUP.md` § 15 also covers the system-test lane that tests nothing.**
|
|
46
|
+
`rails new` wires a `test:system` CI invocation and the capybara/selenium gems,
|
|
47
|
+
and what you get behind it depends on your Rails version. On **7.2**
|
|
48
|
+
(`app_generator.rb:254-258`, called at `:459` under `depends_on_system_test?` —
|
|
49
|
+
true for a plain `rails new`) `test/system/.keep` and
|
|
50
|
+
`application_system_test_case.rb` are created, so the lane
|
|
51
|
+
runs, finds zero tests, and reports **GREEN** — a pass that means nothing. On
|
|
52
|
+
**8.1** (`:257-262`) that scaffolding sits behind a
|
|
53
|
+
`devcontainer? && depends_on_system_test?` guard, so a plain `rails new` gets the
|
|
54
|
+
invocation without the directory and the lane goes **RED** on
|
|
55
|
+
`cannot load such file -- test/system`. Either way the lane is not testing your
|
|
56
|
+
app; the green one is the harder to notice. The section tabulates where each
|
|
57
|
+
house app actually stands.
|
|
58
|
+
- **§ 16 Verify** no longer asks you to confirm a "yellow Development Environment
|
|
59
|
+
bar" — that hand-rolled strip was replaced by the shared environment banner in
|
|
60
|
+
0.30.0, so the checklist now names the banner, DEV MODE, and the Local Inbox link.
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
## 0.32.0 — 2026-08-09
|
|
6
64
|
|
|
7
65
|
**Readable ink on every theme, and the `btn-primary` label joins the token
|
|
8
66
|
contract.** (The token work merged after 0.31.0 was cut, so both land here.)
|
|
@@ -135,6 +193,7 @@ Do these two in this order; they do not commute.
|
|
|
135
193
|
`consume_magic_link` / `preview_magic_link` and overriding hooks. In
|
|
136
194
|
particular, move any `reset_session` into `sign_in_existing` only — the
|
|
137
195
|
`:continue` path must not reach it.
|
|
196
|
+
|
|
138
197
|
## 0.30.1 — 2026-08-08
|
|
139
198
|
|
|
140
199
|
**`NEW_APP_SETUP.md` § 5 gave a command that does not exist.** 0.30.0 documented
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
<%# ADMIN chrome: renders only for admin? viewers. Signed-out and
|
|
2
|
+
non-admin visitors get nothing — this partial once leaked admin
|
|
3
|
+
links onto a public landing page. %>
|
|
4
|
+
<% if respond_to?(:admin?) && admin? %>
|
|
1
5
|
<div x-data="{ open: false }" class="relative leading-none">
|
|
2
6
|
<button @click="open = !open" class="flex text-secondary hover:text-heading transition" title="Admin">
|
|
3
7
|
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-4 h-4">
|
|
@@ -12,3 +16,4 @@
|
|
|
12
16
|
<a href="/error_logs" class="block px-4 py-2 text-sm text-body hover:text-heading hover:bg-surface-alt transition">Error Logs</a>
|
|
13
17
|
</div>
|
|
14
18
|
</div>
|
|
19
|
+
<% end %>
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
desktop icon rail and one in the mobile sub-navbar row). The click is
|
|
4
4
|
handled twice on purpose: the Alpine @click for normal operation, and the
|
|
5
5
|
document-level capture bridge in _link_sidebar for pre-Alpine clicks. %>
|
|
6
|
-
|
|
6
|
+
<%# The caller OWNS the display class: a hardcoded inline-flex here beats a
|
|
7
|
+
caller's `hidden md:inline-flex` in the cascade and un-hides the desktop
|
|
8
|
+
trigger on mobile. Bare renders default to inline-flex. %>
|
|
9
|
+
<% extra_classes = local_assigns.fetch(:class_name, "").presence || "inline-flex" %>
|
|
7
10
|
<% sidebar_admin = respond_to?(:admin?) && admin? %>
|
|
8
11
|
<button type="button"
|
|
9
12
|
@click.stop="$store.sidebars.linkTreeOpen = !$store.sidebars.linkTreeOpen"
|
|
10
|
-
class="<%=
|
|
13
|
+
class="<%= extra_classes %> h-9 w-9 items-center justify-center rounded-md text-secondary hover:text-heading hover:bg-surface-alt focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40 transition"
|
|
11
14
|
title="<%= sidebar_admin ? 'Admin Menu' : 'Links' %>"
|
|
12
15
|
aria-label="<%= sidebar_admin ? 'Toggle admin menu' : 'Toggle links menu' %>"
|
|
13
16
|
aria-controls="studio-link-sidebar studio-link-sidebar-mobile"
|
data/lib/studio/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: studio-engine
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.32.
|
|
4
|
+
version: 0.32.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alex McRitchie
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-08-
|
|
11
|
+
date: 2026-08-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rails
|