diff --git a/README.md b/README.md index c3b0c28..eae17a1 100644 --- a/README.md +++ b/README.md @@ -79,7 +79,7 @@ docker run -d --name specdock \ -p 127.0.0.1:3000:3000 \ -e PUBLIC_DEMO=true \ -e PROXY_ENABLED=false \ - docker.io/d8vik/specdock:v1.0.1 + docker.io/d8vik/specdock:v1.0.2 ``` Or keep configuration in a local env file: @@ -96,7 +96,7 @@ MOCK_SERVER_ENABLED=false docker run -d --name specdock \ -p 127.0.0.1:3000:3000 \ --env-file ./specdock.env \ - docker.io/d8vik/specdock:v1.0.1 + docker.io/d8vik/specdock:v1.0.2 ``` If you prefer Compose with the published image, create your own @@ -105,7 +105,7 @@ If you prefer Compose with the published image, create your own ```yaml services: specdock: - image: docker.io/d8vik/specdock:v1.0.1 + image: docker.io/d8vik/specdock:v1.0.2 ports: - "127.0.0.1:3000:3000" environment: @@ -125,7 +125,7 @@ Check health: curl -fsS http://127.0.0.1:3000/api/health ``` -Use immutable version tags such as `docker.io/d8vik/specdock:v1.0.1`; the project does not rely on `latest` for releases. +Use immutable version tags such as `docker.io/d8vik/specdock:v1.0.2`; the project does not rely on `latest` for releases. ## Desktop diff --git a/apps/api/package.json b/apps/api/package.json index 8c39b13..00f625d 100644 --- a/apps/api/package.json +++ b/apps/api/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/api", - "version": "1.0.1", + "version": "1.0.2", "private": true, "type": "module", "scripts": { @@ -12,8 +12,8 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2", "fastify": "5.8.5", "tsx": "4.22.4" }, diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 5c722ac..0e87b1d 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/desktop", - "version": "1.0.1", + "version": "1.0.2", "description": "SpecDock Electron desktop workspace beta.", "private": true, "author": "SpecDock contributors", @@ -19,9 +19,9 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@specdock/api": "1.0.1", - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1" + "@specdock/api": "1.0.2", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2" }, "devDependencies": { "electron": "41.7.1", diff --git a/apps/web/package.json b/apps/web/package.json index 5aef5ca..ac4cfbc 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/web", - "version": "1.0.1", + "version": "1.0.2", "private": true, "type": "module", "scripts": { @@ -11,9 +11,9 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1", - "@specdock/ui": "1.0.1", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2", + "@specdock/ui": "1.0.2", "@tailwindcss/vite": "4.3.1", "@tanstack/react-query": "5.101.0", "@vitejs/plugin-react": "6.0.2", diff --git a/apps/web/src/styles/settings-workspace-blocks.css b/apps/web/src/styles/settings-workspace-blocks.css index 3f08ffb..0a9668b 100644 --- a/apps/web/src/styles/settings-workspace-blocks.css +++ b/apps/web/src/styles/settings-workspace-blocks.css @@ -136,14 +136,18 @@ .settings-field-grid { display: grid; - grid-template-columns: repeat(3, minmax(0, 1fr)); + grid-template-columns: minmax(0, 1fr); gap: 0.55rem; } -@media (max-width: 720px) { - .settings-field-grid { - grid-template-columns: 1fr; - } +.settings-field-grid > .block, +.settings-field-grid .field { + min-width: 0; +} + +.settings-field-grid .field { + box-sizing: border-box; + width: 100%; } .settings-block-name { diff --git a/docs/DEPLOYMENT.md b/docs/DEPLOYMENT.md index e490410..884cdbc 100644 --- a/docs/DEPLOYMENT.md +++ b/docs/DEPLOYMENT.md @@ -41,7 +41,7 @@ Published image tags: ```txt docker.io/d8vik/specdock:v0.1.0 docker.io/d8vik/specdock:v0.2.2 -docker.io/d8vik/specdock:v1.0.1 +docker.io/d8vik/specdock:v1.0.2 ``` Use version tags for repeatable deployments. Do not rely on `latest`. @@ -57,7 +57,7 @@ docker run -d --name specdock \ -p 127.0.0.1:3000:3000 \ -e PUBLIC_DEMO=true \ -e PROXY_ENABLED=false \ - docker.io/d8vik/specdock:v1.0.1 + docker.io/d8vik/specdock:v1.0.2 ``` To pass more configuration, either add more `-e` flags or use an env file: @@ -78,7 +78,7 @@ TRUST_PROXY=false docker run -d --name specdock \ -p 127.0.0.1:3000:3000 \ --env-file ./specdock.env \ - docker.io/d8vik/specdock:v1.0.1 + docker.io/d8vik/specdock:v1.0.2 ``` Keep `PROXY_ENABLED=false` for public demo use. If you enable proxy mode, diff --git a/docs/RELEASE.md b/docs/RELEASE.md index f8cc06e..b79fd7d 100644 --- a/docs/RELEASE.md +++ b/docs/RELEASE.md @@ -1,6 +1,6 @@ # Release -This document describes the manual release path for `v1.0.1`. +This document describes the manual release path for `v1.0.2`. ## Preflight @@ -33,8 +33,8 @@ GitHub-hosted desktop artifacts are published by the `Desktop Release` workflow for a new immutable `v*` tag: ```bash -git tag v1.0.1 -git push origin v1.0.1 +git tag v1.0.2 +git push origin v1.0.2 ``` The workflow builds macOS, Windows, and Linux artifacts, generates @@ -77,7 +77,7 @@ Build a local image for smoke testing: ```bash docker build \ - -t docker.io/d8vik/specdock:v1.0.1 \ + -t docker.io/d8vik/specdock:v1.0.2 \ . ``` @@ -87,7 +87,7 @@ Smoke the image locally: docker run --rm -p 127.0.0.1:3000:3000 \ -e PUBLIC_DEMO=true \ -e PROXY_ENABLED=false \ - docker.io/d8vik/specdock:v1.0.1 + docker.io/d8vik/specdock:v1.0.2 ``` Check: @@ -102,7 +102,7 @@ Publish the Docker Hub multi-arch version tag: ```bash docker buildx build \ --platform linux/amd64,linux/arm64 \ - -t docker.io/d8vik/specdock:v1.0.1 \ + -t docker.io/d8vik/specdock:v1.0.2 \ --push \ . ``` @@ -114,7 +114,7 @@ Always publish an immutable version tag. Do not publish `latest` unless you inte Before creating or pushing a release tag, create the release note: ```txt -docs/release-notes/v1.0.1.md +docs/release-notes/v1.0.2.md ``` The release note is required for every release and must be named after the @@ -124,11 +124,11 @@ Do not move old release tags. Create a new immutable tag for every patch release. ```bash -git tag v1.0.1 +git tag v1.0.2 git push origin main -git push origin v1.0.1 +git push origin v1.0.2 git push gitlab main -git push gitlab v1.0.1 +git push gitlab v1.0.2 ``` The GitHub Actions Docker workflow publishes the Docker Hub image when `v*` tags are pushed, assuming these repository secrets exist: diff --git a/docs/release-notes/v1.0.2.md b/docs/release-notes/v1.0.2.md new file mode 100644 index 0000000..7d03970 --- /dev/null +++ b/docs/release-notes/v1.0.2.md @@ -0,0 +1,19 @@ +# SpecDock v1.0.2 + +SpecDock v1.0.2 is a patch release for the stable desktop line. + +## Fixed + +- Desktop runtime numeric settings now stack correctly inside the Settings + dialog instead of overflowing in narrow layouts. +- Desktop release workflow keeps immutable GitHub Releases intact and directs + maintainers to publish a new patch tag when assets already exist. +- Desktop documentation includes the unsigned macOS install workaround. + +## Security + +- No proxy, mock server, request execution, or persistence trust boundaries + changed in this release. +- Desktop proxy and mock server remain disabled by default. +- Unsigned macOS downloads should still be verified with `SHA256SUMS.txt` + before clearing quarantine locally. diff --git a/package-lock.json b/package-lock.json index e4bb516..f30f082 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "specdock", - "version": "1.0.1", + "version": "1.0.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "specdock", - "version": "1.0.1", + "version": "1.0.2", "license": "MIT", "workspaces": [ "packages/*", @@ -27,10 +27,10 @@ }, "apps/api": { "name": "@specdock/api", - "version": "1.0.1", + "version": "1.0.2", "dependencies": { - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2", "fastify": "5.8.5", "tsx": "4.22.4" }, @@ -41,12 +41,12 @@ }, "apps/desktop": { "name": "@specdock/desktop", - "version": "1.0.1", + "version": "1.0.2", "license": "MIT", "dependencies": { - "@specdock/api": "1.0.1", - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1" + "@specdock/api": "1.0.2", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2" }, "devDependencies": { "electron": "41.7.1", @@ -542,11 +542,11 @@ }, "apps/web": { "name": "@specdock/web", - "version": "1.0.1", + "version": "1.0.2", "dependencies": { - "@specdock/core": "1.0.1", - "@specdock/generator": "1.0.1", - "@specdock/ui": "1.0.1", + "@specdock/core": "1.0.2", + "@specdock/generator": "1.0.2", + "@specdock/ui": "1.0.2", "@tailwindcss/vite": "4.3.1", "@tanstack/react-query": "5.101.0", "@vitejs/plugin-react": "6.0.2", @@ -8193,7 +8193,7 @@ }, "packages/core": { "name": "@specdock/core", - "version": "1.0.1", + "version": "1.0.2", "dependencies": { "@apidevtools/swagger-parser": "12.1.0", "yaml": "2.9.0", @@ -8206,9 +8206,9 @@ }, "packages/generator": { "name": "@specdock/generator", - "version": "1.0.1", + "version": "1.0.2", "dependencies": { - "@specdock/core": "1.0.1", + "@specdock/core": "1.0.2", "jszip": "3.10.1" }, "devDependencies": { @@ -8218,7 +8218,7 @@ }, "packages/ui": { "name": "@specdock/ui", - "version": "1.0.1", + "version": "1.0.2", "devDependencies": { "typescript": "5.9.3", "vitest": "4.1.9" diff --git a/package.json b/package.json index af9e2bc..d0b01ab 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "specdock", - "version": "1.0.1", + "version": "1.0.2", "private": true, "license": "MIT", "engines": { diff --git a/packages/core/package.json b/packages/core/package.json index d4a2a36..324887a 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/core", - "version": "1.0.1", + "version": "1.0.2", "private": true, "type": "module", "main": "dist/index.js", diff --git a/packages/core/src/constants.ts b/packages/core/src/constants.ts index 9822451..e252450 100644 --- a/packages/core/src/constants.ts +++ b/packages/core/src/constants.ts @@ -1,6 +1,6 @@ import type { GenerateOptions, UserSettings } from "./types.js"; -export const APP_VERSION = "1.0.1"; +export const APP_VERSION = "1.0.2"; export const CURRENT_STORAGE_VERSION = "1"; export const STORAGE_KEYS = { diff --git a/packages/generator/package.json b/packages/generator/package.json index d3b19a7..600329c 100644 --- a/packages/generator/package.json +++ b/packages/generator/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/generator", - "version": "1.0.1", + "version": "1.0.2", "private": true, "type": "module", "main": "dist/index.js", @@ -19,7 +19,7 @@ "generate": "tsx src/cli/generate.ts" }, "dependencies": { - "@specdock/core": "1.0.1", + "@specdock/core": "1.0.2", "jszip": "3.10.1" }, "devDependencies": { diff --git a/packages/generator/src/index.ts b/packages/generator/src/index.ts index 170f2d1..21b2ff7 100644 --- a/packages/generator/src/index.ts +++ b/packages/generator/src/index.ts @@ -24,7 +24,7 @@ import { buildSdkModel } from "./sdk-model.js"; import { generateTypesFile } from "./types-file.js"; import { generateZodFile } from "./zod-file.js"; -export const GENERATOR_VERSION = "1.0.1"; +export const GENERATOR_VERSION = "1.0.2"; export const generateSdk = ( spec: unknown, diff --git a/packages/ui/package.json b/packages/ui/package.json index c37d966..3d387a9 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -1,6 +1,6 @@ { "name": "@specdock/ui", - "version": "1.0.1", + "version": "1.0.2", "private": true, "type": "module", "main": "dist/index.js",