chore(release): v0.3.11 — CSP img-src hotfix (paste + media render)
양쪽 창의 CSP 가 img-src 부적합: - quickcapture/index.html: img-src 미지정 → blob: 차단 → paste thumbnail 안 보임 - inbox/index.html: img-src 에 inkling-media: 누락 → 저장된 노트 이미지 안 보임 v0.3.0 이후 잠재적 회귀. 사용자 dogfood 발견. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
21
CHANGELOG.md
21
CHANGELOG.md
@@ -3,6 +3,27 @@
|
|||||||
본 파일은 Inkling 의 버전별 사용자 영향 변경 사항을 기록한다.
|
본 파일은 Inkling 의 버전별 사용자 영향 변경 사항을 기록한다.
|
||||||
형식은 [Keep a Changelog](https://keepachangelog.com/) 를 느슨하게 따른다.
|
형식은 [Keep a Changelog](https://keepachangelog.com/) 를 느슨하게 따른다.
|
||||||
|
|
||||||
|
## [0.3.11] — 2026-05-12
|
||||||
|
|
||||||
|
붙여넣은 이미지 / 저장된 이미지가 양쪽 창에서 표시 안 되던 CSP 누락 hotfix.
|
||||||
|
|
||||||
|
### 수정
|
||||||
|
|
||||||
|
- **QuickCapture: paste 이미지 thumbnail 렌더 실패.** `quickcapture/index.html` 의 CSP 가 `img-src` 미지정 → `default-src 'self'` fallback → `URL.createObjectURL` 의 `blob:` URL 차단. `img-src 'self' data: blob:` 추가.
|
||||||
|
- **Inbox: 저장된 노트 이미지 렌더 실패.** `inbox/index.html` 의 CSP `img-src 'self' data: blob: file:` 가 `inkling-media:` 미허용 → `NoteCard` 의 `<img src="inkling-media://media/..." />` 차단 (custom protocol 자체는 main 에서 등록됐지만 renderer CSP 별도). `inkling-media:` 추가.
|
||||||
|
|
||||||
|
v0.3.0 (Cut A 이미지 첨부) 이후 양쪽 창에서 paste/render 가 잠재적으로 깨져있던 회귀. 사용자가 dogfood 중 발견.
|
||||||
|
|
||||||
|
### 게이트
|
||||||
|
|
||||||
|
- 단위 750 PASS (CSP meta tag 만 변경 — 코드 path 영향 없음)
|
||||||
|
- typecheck 0 errors
|
||||||
|
- 신규 npm dependency 0
|
||||||
|
|
||||||
|
### 업그레이드
|
||||||
|
|
||||||
|
v0.3.10 인스톨러 위에 v0.3.11 인스톨러를 같은 위치에 실행하면 in-place 업그레이드. 데이터/마이그레이션 변경 없음.
|
||||||
|
|
||||||
## [0.3.10] — 2026-05-12
|
## [0.3.10] — 2026-05-12
|
||||||
|
|
||||||
macOS fullscreen 환경에서 QuickCapture 핫키 (Cmd+Shift+J) 가 작동하지만 강제로 홈 데스크탑으로 Space 전환 후 표시되던 버그 fix.
|
macOS fullscreen 환경에서 QuickCapture 핫키 (Cmd+Shift+J) 가 작동하지만 강제로 홈 데스크탑으로 Space 전환 후 표시되던 버그 fix.
|
||||||
|
|||||||
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "inkling",
|
"name": "inkling",
|
||||||
"version": "0.3.10",
|
"version": "0.3.11",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "inkling",
|
"name": "inkling",
|
||||||
"version": "0.3.10",
|
"version": "0.3.11",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"better-sqlite3": "12.9.0",
|
"better-sqlite3": "12.9.0",
|
||||||
"electron-log": "5.2.0",
|
"electron-log": "5.2.0",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "inkling",
|
"name": "inkling",
|
||||||
"version": "0.3.10",
|
"version": "0.3.11",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Inkling — local-first 한 줄 보관 도구",
|
"description": "Inkling — local-first 한 줄 보관 도구",
|
||||||
"author": "altair823 <dlsrks0734@gmail.com>",
|
"author": "altair823 <dlsrks0734@gmail.com>",
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<html lang="ko">
|
<html lang="ko">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: file:" />
|
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob: file: inkling-media:" />
|
||||||
<title>Inkling</title>
|
<title>Inkling</title>
|
||||||
<style>
|
<style>
|
||||||
body { margin: 0; font-family: system-ui, sans-serif; background: #f5f5f7; color: #111; }
|
body { margin: 0; font-family: system-ui, sans-serif; background: #f5f5f7; color: #111; }
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<html lang="ko">
|
<html lang="ko">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8" />
|
<meta charset="UTF-8" />
|
||||||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'" />
|
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob:" />
|
||||||
<title>Inkling Capture</title>
|
<title>Inkling Capture</title>
|
||||||
<style>
|
<style>
|
||||||
html, body, #root { margin: 0; height: 100%; background: transparent; font-family: system-ui, sans-serif; overflow: hidden; }
|
html, body, #root { margin: 0; height: 100%; background: transparent; font-family: system-ui, sans-serif; overflow: hidden; }
|
||||||
|
|||||||
Reference in New Issue
Block a user