From fdc3a886f7fa8d50d68162d1114f1871cfe715ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B8=A1=E5=8F=A3=E6=B5=AA=E4=BA=BA?= Date: Tue, 20 Oct 2026 21:02:11 +0800 Subject: [PATCH] release: v0.1.29 disabled photo mark explanations --- Dockerfile | 2 +- RELEASE_NOTES.md | 15 +++++++-------- SHA256SUMS | 14 +++++++------- docs/openapi.json | 2 +- pigway_frame_flow/api/app.py | 4 ++-- pigway_frame_flow/models.py | 4 ++-- pigway_frame_flow/web/index.html | 2 +- pyproject.toml | 2 +- 8 files changed, 22 insertions(+), 23 deletions(-) diff --git a/Dockerfile b/Dockerfile index 318bd11..c1195b3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,7 +43,7 @@ WORKDIR /app ARG BUILD_COMMIT=development ARG BUILD_TIME=unknown ENV BUILD_COMMIT=$BUILD_COMMIT BUILD_TIME=$BUILD_TIME -LABEL org.opencontainers.image.title="PIGWay Frame Flow" org.opencontainers.image.version="0.1.28" org.opencontainers.image.revision=$BUILD_COMMIT +LABEL org.opencontainers.image.title="PIGWay Frame Flow" org.opencontainers.image.version="0.1.29" org.opencontainers.image.revision=$BUILD_COMMIT USER 10333:10333 EXPOSE 18787 HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \ diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index badea66..8a3fa22 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,11 +1,10 @@ -# pigway-frame-flow v0.1.28 +# pigway-frame-flow v0.1.29 -源图库增加自动选图排除标记,并完善图库卡片交互。 +完善星标与“不再选用”禁用状态的原因提示。 -- 本地图库支持单张、批量“不再选用/恢复选用”;网盘等照片源支持星标及选用标记,按图库与图片 ID 保存。 -- 后续自动选图和自动拼图跳过被排除的图片;图片仍保留,可手动使用或恢复,不取消已提交任务。 -- 星标与不再选用互斥,前端禁用冲突按钮,后端校验单张、批量、照片源及并发提交,拒绝非法布尔值。 -- 卡片分别显示来源、星标/排除标记和时间;按钮按“显示到画框、星标保留、不再选用、下载图片、删除”排列,保持贴底、靠左及同行底边对齐。 -- 修正图库任务筛选控件空引用提示,保留删除确认和批量操作。 +- 禁用按钮悬停时明确说明当前标记冲突,以及先取消星标或恢复选用的操作步骤。 +- 覆盖本地图库卡片、批量操作及照片源列表;未选择图片时也提供原因提示。 +- 提示支持键盘聚焦和 Esc 关闭,按屏幕边界定位;切换页面或改变状态时清除旧提示。 +- 保留互斥校验、按钮顺序及卡片底部对齐行为。 -源码包保留 LICENSE、NOTICE 和第三方许可材料,不包含私有配置、数据库或会话。 +源码包保留 LICENSE、NOTICE 及第三方许可材料,不包含私有配置、数据库或会话。 diff --git a/SHA256SUMS b/SHA256SUMS index df07ec5..04ead85 100644 --- a/SHA256SUMS +++ b/SHA256SUMS @@ -5,12 +5,12 @@ b45d35d737f119a70bf40cb1f9626ff80772ed7913cb35f6e9b870d6ada01a15 .github/workfl c8c545718e9b9880555c950a078cac160c82e0cd6e593afcf20bc13727539ec5 .github/workflows/verify.yml 3931cc314019760a582e0914e2d9c0f3b862a004d0a30d374900edcad5f599e5 .gitignore 4b4ed4926a350cbeb71436541b4566e4ba7d2494ac95236b88827a9f5dd171c2 CONTRIBUTING.md -784ddd90ad45e4de196a7459bd3b7cb76daf57c374cd4a503be31a0e95e2b2a1 Dockerfile +b12a3f0ff3f15db8d79b5163d0750a3dd10eb56aadc41ada20c5f8a10b46c118 Dockerfile 6eb7728e6e73f9568ca6fd5ad6383d13ffc638f2870fefa2d86f72f39685c0fc LICENSE 250a2bcec248b074786d90e0329874628d70d5a0fe3b4fba47c8c57d4f84dcce NOTICE.md b7a41a2c00df1a0dbe3869d059d65c3bcaee8c50e51217c358527c4f1d3d6c98 README.md 94184f76401192678ec420c2ccd23142d90e07a8ccc882a4a0d4701a0c278afc README.zh-CN.md -441c9bf48ed54c32dc21e103a657c3f87b497cb96e358ca2c62f31b2d058ec14 RELEASE_NOTES.md +4a5de9afa11143f35fb98cb4b97bde4ac1f8b67646810522483d30aecdda16d2 RELEASE_NOTES.md 3dd364e47fdbd2ce9ce2df83342c523adc21583f093a5439d501b3424878ce2f SECURITY.md e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 build-cache/wheels/.gitkeep e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 config/.gitkeep @@ -37,14 +37,14 @@ f709156217c798f6b6230dae1f341373e0814a67ab90e881401da577f52ec3d3 docs/brand/pig da6734d8a23305f6254c0936dadff4ec34977b4c934f5067186423c8cfce3fc7 docs/brand/pigway-logo.png 0fa494a3fbd456c754bbea3f7f050be139e32e3b42b09a1ed953094087437210 docs/brand/pigway-logo.svg ac0481196e593ff9cca2e5133ff41fb3614268e6a10728a0deca3ad3bfb80b34 docs/integrations/TICKTAR.md -bd906c2e74d95360880f3c96fd78474458be243f7ac01bd6cbc6e737719bb9ad docs/openapi.json +349d7acb49ad5b5f1df169c6ffe99063f11a55ca8764302ac383663161f1c6fb docs/openapi.json 54bf7061e0626900ce35e19e81efc5c32c8fd6a0438bdad68f494e1ce81616d4 docs/research/KOKONNA_ACCOUNT_CAPABILITIES.md a07cbe71571c6e2d5a1b94897bd63321c74675c05d15438c4964eef39db0fd76 docs/research/KOKONNA_CONTENT_SUBSCRIPTIONS.md ec53d587b855be84283c50f8fb45be62a4c1caba78b28d436a8260fd171943a2 docs/research/KOKONNA_LOCAL_CONTROL.md 2a68fe95ba4afc24aec6abd3e6ab24a360eb6bc3005ab0fefd696190915d76c1 docs/research/KOKONNA_WIDGET_CATALOG.json e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 pigway_frame_flow/__init__.py e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 pigway_frame_flow/api/__init__.py -a2561122d40be5ed49bff2a4ad6cae628f9180ef28489853dd9bf1812e224ac6 pigway_frame_flow/api/app.py +0d9582321b07b570adeab0e6f4c7fddfd45b9ae8703c1ff75edb53ec5cde2e09 pigway_frame_flow/api/app.py 1efe9b1fc774a97e5be72d81199b1b65b25c258956fdf166aebff732cc820d7c pigway_frame_flow/api/history.py e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 pigway_frame_flow/core/__init__.py 0b8402603c2f397f4f42491873b27bf363959194b05a0c67c7b1d49596288b95 pigway_frame_flow/core/accounts.py @@ -88,7 +88,7 @@ a518965aa4db9abeb60865c315229c3053c8e9edd26d80f24dc0af0528bad9e6 pigway_frame_f 2a68fe95ba4afc24aec6abd3e6ab24a360eb6bc3005ab0fefd696190915d76c1 pigway_frame_flow/integrations/kokonna_official/widget_catalog.json aea594fb4e4c9a6e2094d4d7973eb627ac02fb632811b2d1a558a0ee1cd12e77 pigway_frame_flow/integrations/kokonna_official/widgets.py 1fe53f4bfb407b8db774fe730131ecf1213e16d752a3506c4c56b46365ea14e8 pigway_frame_flow/main.py -f16e9ae17da8bddf95622b4d8ef2626342a88cd9da2f97913db5bdaec5c409df pigway_frame_flow/models.py +c9afccb6336bcb312e738a3c46a402bb693f961dd1cfffb4fff7011f9c3c1395 pigway_frame_flow/models.py e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 pigway_frame_flow/providers/__init__.py b7a6cb8eb40d8dedfbce18777f8fbd433a174f14bcdadf498bd834132aa568fd pigway_frame_flow/providers/cloud_drives.py 58b070f0c814d639a4a912d079479d751d459816d59f2199d0be03e4d573ec3b pigway_frame_flow/providers/external.py @@ -129,13 +129,13 @@ d7d55b06ead173b4c23a277fa39800cadfc18f1163c500e8617cfc1f4ee0dea9 pigway_frame_f 0fa494a3fbd456c754bbea3f7f050be139e32e3b42b09a1ed953094087437210 pigway_frame_flow/web/favicon.svg 028a9f2000f0e9787e88d7815545d02d24c9247bff473b0fac54194d58103359 pigway_frame_flow/web/features.js a07ea444ab4ac75ea11e1188a431b48195353b1e08f7e80f3b931e8097ea6221 pigway_frame_flow/web/i18n.js -3f241f7180861aac148f4713e1538178e252b375172759e7d6bfdfa84042236b pigway_frame_flow/web/index.html +da655fc633ec69e5dfdfbb5c67ae8a878a2df35200a1231035f59edb640c1cf1 pigway_frame_flow/web/index.html 0fa494a3fbd456c754bbea3f7f050be139e32e3b42b09a1ed953094087437210 pigway_frame_flow/web/logo-symbol.svg 2ad647cb775eb3a8f665d0f2cf4520557b849bba5ed51acee75bd17cdd1a7c37 pigway_frame_flow/web/style.css cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 pigway_frame_flow/web/swagger-LICENSE 050bc415ee7048dcd881682678f720264e7da5e373f7461d7c58c755305255f7 pigway_frame_flow/web/swagger-ui-bundle.js 1ac324f7dcd27e4b9386b4bd6421271ec147e922a22c05ba24b11515e9aa6321 pigway_frame_flow/web/swagger-ui.css -0d444fe33713346788104b3473c4b413fd261e0abda77dae6cf174442b71812c pyproject.toml +5f392f94636d261ae2982815763b794ae9595a1b9226946b792105634ec3f559 pyproject.toml d34ac82e4c3feacd38546aa2f0a4491ab17ddbf3ad8f489375783166d78923f0 requirements.lock 008af5f4adf616c86e805febc016faad60be0008abf5dddad6e955f1d03606cf scripts/build-verify.sh 43e8345ac5f29c2a5d1fa751c0e7c963b00b5391817393541e72c52919f0f2b4 scripts/check-compose-remote.py diff --git a/docs/openapi.json b/docs/openapi.json index 20697d7..ca63116 100644 --- a/docs/openapi.json +++ b/docs/openapi.json @@ -2,7 +2,7 @@ "openapi": "3.1.0", "info": { "title": "PIGWay Frame Flow API", - "version": "0.1.28" + "version": "0.1.29" }, "paths": { "/api/v1/devices/{device_id}/widgets/selection": { diff --git a/pigway_frame_flow/api/app.py b/pigway_frame_flow/api/app.py index f9d3e27..7ce7474 100644 --- a/pigway_frame_flow/api/app.py +++ b/pigway_frame_flow/api/app.py @@ -134,7 +134,7 @@ def create_app(settings=None, start_worker=True): app = FastAPI( title="PIGWay Frame Flow API", docs_url=None, - version="0.1.28", + version="0.1.29", lifespan=lifespan, responses=error_responses, ) @@ -1099,7 +1099,7 @@ def create_app(settings=None, start_worker=True): supports_upload=True, ), ], - version="0.1.28", + version="0.1.29", mock=settings.mock, write_enabled=settings.write_enabled, api_key_configured=bool(settings.api_key) diff --git a/pigway_frame_flow/models.py b/pigway_frame_flow/models.py index 73bfb53..6c1de17 100644 --- a/pigway_frame_flow/models.py +++ b/pigway_frame_flow/models.py @@ -368,7 +368,7 @@ class SettingsView(BaseModel): class Health(BaseModel): status: str - version: str = "0.1.28" + version: str = "0.1.29" class Readiness(BaseModel): @@ -400,7 +400,7 @@ class RestoreRequest(StrictModel): class Version(BaseModel): product: str = "PIGWay Frame Flow" - version: str = "0.1.28" + version: str = "0.1.29" api_version: str = "v1" commit: str = "development" build_time: str = "unknown" diff --git a/pigway_frame_flow/web/index.html b/pigway_frame_flow/web/index.html index 6eea6e9..62ed828 100644 --- a/pigway_frame_flow/web/index.html +++ b/pigway_frame_flow/web/index.html @@ -1,3 +1,3 @@ PIGWay Frame Flow -
PIGWay Frame Flow

+
PIGWay Frame Flow

diff --git a/pyproject.toml b/pyproject.toml index 4dd0587..448cf0f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pigway-frame-flow" -version = "0.1.28" +version = "0.1.29" readme = "README.md" license = {file = "LICENSE"} requires-python = ">=3.14,<3.15"