跳到内容

更新日志 ​

1.4.0 - 2026-10-03 ​

  • 新增可选的宿主回收站引用保护服务;永久删除及容量清理均保留仍被引用的文件,统一 PHP 数组和 Symfony 配置默认值。

  • SVG 上传采用静态白名单校验,拒绝活动内容、外部引用及转义 URL;安全 SVG 使用原图预览,不生成位图变体,仍遵守资源扩展名配置。

  • 完善文件及文件夹上下文操作、共享链接服务、覆盖确认、失败项重试和无障碍交互。

  • 选择器保持底部布局稳定,重复打开时聚焦已有窗口;完善嵌入管理器高度。

  • PDF 预览仅允许同源框架嵌入,继续要求授权并禁止响应缓存。

  • 稳定包观察期间对 Packagist 公告接口的瞬时失败进行有限重试,同时保持真实漏洞失败。

1.3.0 - 2026-09-04 ​

  • 新增公开、框架无关的存储 Adapter 契约验证器,以及每周 MinIO 与按 Secret 启用的 AWS S3、Cloudflare R2、Backblaze B2 供应商检查。
  • 固定 Symfony 集成演示中的全部第三方运行时版本,并新增要求六个真实编辑器实例 完成初始化的每周浏览器契约。

1.2.2 - 2026-09-04 ​

  • 将不可变的 1.0 缺陷观察证据与干净消费者巡检分离;从 Packagist 安装前,先确认最新 稳定版本已存在于全部七个同步仓库。
  • 为私有前端 Workspace 使用明确的非发布版本,避免其内部 Metadata 与 Composer Release 继续漂移。

1.2.1 - 2026-08-30 ​

  • 将上传进度改为可拖动、可关闭的独立窗口,并可从工具栏百分比恢复;文件与文件夹 上传合并为一个拆分按钮,默认执行文件上传。
  • 将回收站移至左侧栏,为最近使用增加可搜索的独立页面,并将最近使用和收藏文件的 侧栏预览限制为五项。
  • 优化桌面与移动端分页,使用紧凑图标按钮、稳定页码指示和更清晰的每页数量输入; 英文界面统一使用 Trash。

1.2.0 - 2026-08-30 ​

  • Core、HTTP、PSR-15、S3 和 Symfony 6.4 Bridge 新增 PHP 8.1 支持,同时 Symfony 7.4 与 Laravel 12/13 继续以 PHP 8.2 为最低版本。
  • 在兼容 PHP 8.1 语法的同时保留只读属性语义,并新增 PHP 8.1 依赖解析与 Runtime 测试覆盖。

1.1.3 - 2026-08-30 ​

  • 重新整理 Symfony、Laravel、Slim、Mezzio、纯 PHP PSR-15 与 Core-only 安装指南,并将公开安装命令更新至当前 1.1 系列。
  • 新增包含真实产品截图的三语 CMS 编辑器指南,并从文档首页、导航、页脚与 安装后指引提供入口。
  • 更新三份仓库 README,说明框架对应的 Package 选择并展示真实界面;文档截图 不会进入 Composer 发布 Archive。

1.1.2 - 2026-08-30 ​

  • Picker 显式传入 resource 时,默认将导航与返回结果锁定在该资源,并在启动时 验证资源可见性;SDK 会拒绝资源不匹配的弹窗结果。
  • 宿主可通过 picker.lock_resource: false 设置直接 Picker URL 的全局默认行为, 或在单次 SDK 调用中传入 lockResource: false 以允许显示和切换其他授权资源。
  • 保留 Laravel 和 PSR-15 拆分仓库的连续生成历史,同时继续拒绝发布任何非生成的 远端变更。

1.1.1 - 2026-08-30 ​

  • 新增 Laravel 12/13、Slim 4、Mezzio 3 和纯 PHP 的完整框架集成指南,涵盖安装、 宿主授权、CSRF、路由和生产验证步骤。
  • 明确不可改变的兼容边界:PHP 8 主线绝不为 PHP 7.2 降级;PHP 7.2 是否继续开发, 始终是独立的 Legacy 产品决策。
  • 建立独立公开的 sohophp/sofinder-legacy 仓库及通过的 PHP 7.2.5/7.3/7.4 基线 CI;Runtime 移植保持暂停,且明确不发布版本。
  • Symfony S3 示例的同源宿主文件路由改为相对 URL,避免编辑器从子目录选择图片时, 将请求上下文误判的 HTTP/HTTPS 协议固化到内容中。
  • 让编辑器演示的大文件上传兼容 PHP 常见的 2 MiB 开发限制;普通表单上传失败不再产生 未处理 Promise;同时恢复演示空间配额显示及支持资源的工具栏回收站入口。

1.1.0 - 2026-08-30 ​

  • 将 Laravel 12/13,以及供 Slim 4、Mezzio 3 和纯 PHP 使用的共享 PSR-15 Bridge 晋级为正式支持;如实记录维护者批准的观察期豁免,同时保留成功的在线 CI、零 P0/P1 审计、拆分发布及干净消费者证据。
  • 创建公开的 sohophp/sofinder-laravel 与 sohophp/sofinder-psr15 拆分仓库, 用于同步 1.1 版本线。
  • 新增框架无关的文档预览 Dispatcher Contract。Symfony、Laravel 与 PSR-15 现在共享 同一显式异步预览边界;PSR 宿主选择 Messenger 模式但未提供 Dispatcher 时会启动失败。

1.0.2 - 2026-08-30 ​

  • 将框架无关的文档预览消息转换为可自行处理的 Laravel Queue Job,使 document_preview.mode=auto|messenger 实际使用宿主 Bus;共享消息 DTO 已移入 Core。
  • Laravel 的分块会话、维护锁、指标、恶意软件状态和文档预览任务现在默认使用宿主配置的 Cache Repository 与原子锁;不支持安全锁的 Cache Driver 会在启动时直接失败。
  • 发布受门禁保护的 Bridge 前,在线核验成功的 GitHub Actions 记录,匹配 Symfony 矩阵 Commit、Workflow 路径、main 分支及观察期后的运行日期,不再只信任 URL 文本。
  • 将框架晋级版本作为稳定最低版本而非完全相同的 Tag,使政策能如实记录 1.0.2,同时不重置 以不可变 1.0.0 Release 为起点的观察时钟。
  • 将三种语言文档与 Repository README 中已退役的 Beta 安装命令替换为稳定 Symfony Bridge 1.x 包,同时明确保留原包名作为兼容选项。
  • 在 30 天观察期内持续用 PHP 8.2 与 8.5 把五个不可变的稳定 1.0.0 包从 Packagist 安装到使用独立缓存的干净项目,并校验仓库来源、框架边界与依赖审计状态。
  • 未来 PSR-15 拆分包现在会安装到无框架的干净消费者,明确断言不会拉入 Symfony 或 Laravel,并分别使用 Nyholm 与 Guzzle PSR-7 Factory 启动完整浏览器/资源 Runtime。
  • 发布演练现在把未来 Laravel 拆分仓库安装到全新的 Laravel 12/PHP 8.2 与 Laravel 13/PHP 8.5 应用,并针对安装后的包 执行自动发现、配置/路由缓存、全部 52 路由、Artisan、浏览器、CSRF、上传下载、Range 与前端资源验证。
  • PSR-15 本地应用工厂现在自动发现发布包内的前端资源,并在未来拆分仓库的干净 Composer 消费者中实际启动 /browser、读取真实资源,避免用户传入仓库内部路径。
  • 将框架无关 Browser Action 加入 PSR-15 本地 Runtime,默认注册全部 52 条中央路由, 并在 PHP 矩阵两端通过 Chromium 分别启动 Slim 4、Mezzio 3 和纯 PHP 的真实 React UI。
  • 将 sohophp/sofinder-s3 收紧为框架无关的 Core Adapter Library,并把保持类名 兼容的 Bundle 与 DI Extension 移入 Symfony Bridge,使 Headless S3 安装不再携带 或暴露 Symfony 集成。
  • Symfony 路由集合现在直接由框架无关的中央端点清单生成,同时保持原有 Bundle YAML 导入方式、路由名称、参数约束和宿主前缀行为;Symfony 的 /browser 继续由宿主渲染,其余 51 个 HTTP 操作统一通过共享 PSR Dispatcher,不再由各功能 Controller 重复解析请求。
  • 中央端点清单与 OpenAPI 文档现在执行双向校验,在发布任何框架 Bridge 前同时阻止 未记录的运行时路由和不存在的文档端点。
  • 在真实 Symfony、Laravel、Slim、Mezzio 和纯 PHP 宿主执行中央 51 路由清单,并比较 状态/错误 Envelope、响应结构和安全响应头,同时保留写操作与 Stream 生命周期测试。
  • 在 Laravel 12/13 边界示例运行真实 Chromium UI Smoke,验证浏览器 Bootstrap、Session CSRF 配置、共享 API Discovery、安全响应头及前端运行时错误。
  • Laravel 与无框架 PSR Runtime 现执行与 Symfony 同级的 Runtime、Storage、图片、文档预览 和维护就绪检查,不再以空检查集合返回 Readiness。

0.1.0-beta.31 - 2026-08-29 ​

  • 新增 Jodit 4 选择器与原生上传适配器、类型声明、体积检查、测试、文档及可运行的 Symfony 演示页签。

0.1.0-beta.30 - 2026-08-28 ​

  • 新增 wangEditor 5 选择器与上传适配器、类型声明、体积检查、集成测试、文档及可运行的 Symfony 演示页签。

0.1.0-beta.29 - 2026-08-28 ​

  • 桌面水印拖动改用鼠标事件,触控和手写笔继续使用指针事件,使自由定位在 Chromium、Firefox 和 WebKit 中保持一致。

0.1.0-beta.28 - 2026-08-28 ​

  • 将自由拖动水印的指针跟踪提升到窗口级,修复 Firefox 中指针离开水印元素后拖动中断的问题。

0.1.0-beta.27 - 2026-08-28 ​

  • 已固定文件夹、收藏文件、最近使用和文件夹导航现在可拖动到左右侧栏并调整顺序;布局会持久保存,也支持方向键操作。
  • 明确拆分侧栏保存功能:收藏仅接受文件,快速访问改为“已固定文件夹”且仅接受文件夹;旧配置和可清理的失效 Metadata 保持兼容。
  • 将单图裁剪、旋转、缩放、预设尺寸、优化和水印统一到响应式图片编辑器,并支持自由拖动水印位置。
  • 增加界面黑体、清晰黑体和典雅宋体三种水印字体;缺少字体时可按配置下载经过 SHA-256 校验的固定 Noto CJK 字体并缓存。
  • 图片编辑器每次打开及保存后都会刷新原图,避免再次编辑时载入加水印前的旧缓存;仅加水印时使用 100 质量输出。
  • 新增统一的查看与排序菜单,提供多种图标/列表展示、紧凑密度、窗格、列、排序方向及自适应左右弹出的分组选项。
  • 修复批量重命名窗口排版,并让右侧文件夹导航的图标、缩进、紧凑行及选中反馈与左侧一致。

0.1.0-beta.26 - 2026-08-28 ​

  • CKEditor 5 上传工厂现在返回兼容新版 plugins 和 extraPlugins 初始化方式的可构造 插件,同时继续由宿主项目自托管 CKEditor。

0.1.0-beta.25 - 2026-08-28 ​

  • 重新设计文档站首页和指南布局,补充深色、移动端、无障碍及视觉回归检查。
  • 修复简体和繁体中文导航、侧栏及上下页错误跳转英文页面的问题,并增加构建期跨语言链接检查。
  • 去除首页窄代码框的内部横向滚动条,同时保留正文长代码块的正常滚动。
  • 将文件管理器的选择操作菜单移出横向滚动工具栏,确保“全部选择”“全部取消”和“反向选择”在桌面及窄屏下都可见、可操作。

0.1.0-beta.24 - 2026-08-28 ​

  • 新增有扫描上限的跨目录/Workspace 资产搜索、字段及类型等筛选、URL 状态、最近搜索和可编辑资产属性侧栏。
  • 新增默认关闭的本地/共享资产使用追踪、授权 API、递归删除预检警告,以及 CKEditor 稳定 ID 替换和可配置上传资源路由。
  • 新增可撤销、绑定文件版本的私有资产访问会话,以及幂等、支持 Dry-run/JSON 的 sofinder:assets:migrate 迁移命令。
  • 发布可选 AssetVersionProviderInterface 和仅提供建议的 AssetEnrichmentProviderInterface,核心不启用版本保存或 AI 处理。
  • 优化资产元数据窗口布局,新增有数量限制的多语言替代文本及编辑器语言回退,并保持原资产目录接口兼容。
  • 补齐 Picker/上传编辑器集成中的图片替代文本,详情、预览和右键均可编辑资产元数据,并增加独立的 metadata.update 写权限。
  • 将断点续传 Session 绑定可信 Workspace,增加可扩展的跨 Workspace 可写存储目录安全审计。
  • Symfony 演示启用资产目录和响应式变体,收紧相关 OpenAPI 返回契约,并保持 Picker 单文件独立构建。
  • 新增宿主控制的 Workspace 切换器,按 CKEditor 公开上传契约封装响应式 URL,并将文档构建固定到已修复安全问题的 Vite 6.4.3。

0.1.0-beta.23 - 2026-08-27 ​

  • 新增可选的宿主 Workspace 解析及资源边界,并隔离文件、资产和用户元数据。
  • 新增带 Schema 版本、操作 ID 和安全失败码的资产操作事件,同时保留旧事件兼容。
  • 冻结插件描述符 1.0,拒绝未知字段和路径穿越,并提供 sofinder:plugin:validate --json。

0.1.0-beta.22 - 2026-08-27 ​

  • 新增默认关闭的懒注册资产目录、本地/共享存储、稳定 UUID 及乐观并发元数据。
  • 新增图片替代文本、资产标题、共享标签及详情面板编辑入口。
  • 新增受鉴权、尺寸白名单和原子缓存保护的按需响应式图片变体。

0.1.0-beta.21 - 2026-08-27 ​

  • 新增兼容的 Asset Reference 1.0 返回契约,并保留 Entry 和 Picker 1.0。

  • 新增无 React 上传任务 SDK,支持进度、取消、重试、断点续传和四种同名策略。

  • 新增独立 CKEditor 5、TinyMCE、TipTap、Quill 上传适配器、类型声明、体积门槛和演示。

  • 图片原图预览按需加载,支持适应窗口、25/50/100/200%、居中、键盘与 Ctrl/Command 滚轮缩放、失败重试和大图内存提示。

  • 上传扩展名默认自动转为小写,仅允许宿主配置,并在普通、分块和编辑器上传中统一由服务端执行。

  • 快速访问仅在明确确认不存在后删除,利用 metadata 存在状态,变更失败时保留链接,并处理旧响应、后台刷新和多标签页同步。

  • 加固本地目录并发删除、替换、权限和符号链接竞态;发布流程也执行 Chromium、Firefox、WebKit 全套回归。

  • 修复大界面缩放下设置分区被压缩到只剩标题的问题;窗口统一滚动且分区内容保持完整高度。

0.1.0-beta.20 - 2026-08-27 ​

  • 修复 LibreOffice 转换后的 Office 文档在全屏模式下仍保留普通预览高度的问题。
  • 细分 Office 预览的提交、排队、转换及 PDF 加载状态,缓存命中不再闪烁,并在管理员 安全状态中显示转换器、缓存和任务诊断信息。
  • 将快速访问与收藏彻底解耦;保留兼容的路径数组,同时增加文件、文件夹及失效项描述, 打开失效项时可安全清理。
  • 按任务重新组织偏好设置,独立提供“恢复系统默认设置”,且用户偏好不能覆盖宿主关闭的能力。
  • 语言包改为按需加载,初始应用入口门槛降至 95 KiB gzip,并精确固定浏览器回归工具版本。
  • /live 保持匿名且仅返回最小状态,深度 /health 继续受保护;Chromium、Firefox、 WebKit 均覆盖暗色、移动端、长名称和 Windows 缩放布局。
  • 快速访问默认跨根目录持续显示,新增“全部/当前根目录”偏好,并支持文件或文件夹通过右键加入、移除。
  • 新增浏览器级命名偏好方案,可保存、覆盖、选择应用或删除整套界面设置。
  • 将“左侧目录树”改名为“文件夹导航”,并支持每位用户选择放在左侧或右侧边栏。
  • 将单文件交付入口简化为“下载、分享”:下载在新的浏览器标签页或窗口中打开,分享窗口 统一提供复制网址和可选的本地 QR Code,并继续遵守登录及签名网址失效规则。
  • 收藏功能启用后在左侧栏显示有界收藏夹,标题链接到支持搜索、打开定位和取消收藏的 独立页面;每位用户最多添加 12 个文件或文件夹到“快速访问”,既有 Metadata Store 保持兼容。
  • 将全部选择、全部取消和反向选择归入统一菜单;新增按名称、类型、大小、日期、标签 分组及固定类型筛选,操作范围限定为当前可见分页。
  • 优化列表单元格 Padding、列宽边界及所有列的文字溢出省略;可选面板和语言包改为 延迟加载,主入口继续满足 95 KiB gzip 门槛。
  • 持久化有上下限的用户级网格/列表大小和列表列宽;表头分隔线支持指针拖动、键盘 调整及双击按内容自动适配。
  • 将 Symfony 参考“检查文件”动作及其宿主路由限制在开发演示环境,生产环境和普通 集成项目不再显示或暴露它。
  • 列表中每个可见表头均可触发服务端排序;重复点击切换方向,并新增 MIME 类型 排序以及不同的升序/降序图标。
  • 点击菜单外部时关闭右上角“更多操作”菜单;菜单内部控件保持可操作,并支持按 Esc 关闭后将焦点返回菜单按钮。

0.1.0-beta.19 - 2026-08-27 ​

  • 扩展 Symfony 演示和快速开始的文件资源白名单,默认涵盖常用 Microsoft Office/OpenDocument、文本、图片、压缩包、音频和视频格式,同时保留主动内容 及可执行扩展名的默认拒绝列表。

0.1.0-beta.18 - 2026-08-27 ​

  • 普通 Symfony s3 演示环境只需配置一个 Provider 即可启动;可选的第二个 Provider 移至明确启用的 s3_dual 环境。
  • 为可选的 S3 Prefix、公开 URL、Session Token 和 Path-Style 设置提供安全默认值,同时继续强制配置 Endpoint、Bucket 和凭据。
  • CI 新增单 Provider S3 演示预热测试,确保未配置第二套变量时文件浏览器仍可启动。

0.1.0-beta.17 - 2026-08-27 ​

  • 将演示 Private 资源隔离到新的空白代理目录,并由安全审计阻止公开与代理资源共用物理根目录。

  • 新增自动 Inline/Messenger Office 预览任务,包含幂等排队、完整状态、重试、过期、共享状态、缓存清理及仅在转换就绪后创建 PDF Frame 的进度 UI。

  • 新增跨节点病毒扫描状态、陈旧 Pending 恢复、/live、可插拔存储/队列探针,以及 Office、队列和 ClamAV 超时指标。

  • 将可选前端面板拆为 Manifest 白名单懒加载 Chunk,并强制初始入口 gzip 不超过 100 KiB,同时保留轻量 Picker。

  • 完善 Office Job、OpenAPI 与 Plugin Descriptor 契约,固定 CI Action 与服务镜像,并为 Tag 触发的预发布生成 SBOM、SHA-256 和 Provenance。

  • 新增宿主强制开关,覆盖批量重命名、图片编辑/处理、文档预览和安全状态的 UI 与 HTTP Endpoint。

  • 新增 Markdown Picker 适配器及精确 Origin Allowlist 跨域握手,不使用通配符 postMessage。

  • 新增 Redis/PDO 共享指标、维护 Lease/状态,以及需要共享暂存目录的官方多节点分块 Session 协调。

  • 新增上传、覆盖、配额、回收站及断点续传领域并发测试,并为恢复/永久删除加入原子锁。

  • 新增图片与维护健康检查、存储耗时观察、上传/限流专用指标及带版本 Capability Endpoint。

  • 新增运行时 Config Schema 与 API Snapshot 检查;冻结 1.0 Plugin UI 为声明式同源 Action/Previewer。

  • 通过 .php-version 固定本地开发版本,PHP 与 Composer 命令统一使用仓库执行器,并保留 PHP_BIN 供兼容性测试覆盖。

0.1.0-beta.16 - 2026-08-26 ​

  • 新增需鉴权的 PDF 预览及可选 LibreOffice Office 转换预览,使用私有版本缓存、健康检查与安全内联响应。
  • 新增可见的病毒扫描状态及记录、失败时关闭的 ClamAV 集成,以及通过、隔离、失败、待扫描状态。
  • 新增短期签名私有网址、可配置的稳定宿主 Controller 网址、强化的 Unicode 下载响应头及浏览器安全策略。
  • 新增有界批量图片压缩、格式转换、文字水印与图片水印,并公开运行时能力。
  • 新增轻量文件类型图标、分别持久化的网格项目与列表行大小;批量重命名、压缩/水印改为用户主动启用。
  • 新增维护状态、缓存清理及 metadata 修复命令,支持 JSON、dry-run 与机器可读失败状态。
  • 扩展插件预览和 UI 契约、API Schema、错误目录、模糊测试及新公共行为的发布验证。

0.1.0-beta.15 - 2026-08-26 ​

  • 新增带版本的弹窗 Picker SDK、深层链接,以及 CKEditor 5、TinyMCE、TipTap、Quill 和普通表单适配器,并提供可运行的本地集成矩阵。
  • 新增文件夹上传、确定性批量重命名、有界 UTF-8 文本预览与 SHA-256 校验值。
  • 深层链接指向已删除或失效目录时自动返回资源根目录,目录树不再重复请求该失效路径。
  • 新增宿主强制功能策略、失效最近项目清理、目标目录恢复和文件夹上传预览确认。
  • 新增安全的插件 UI Action、上传扫描器与健康检查契约,并提供可运行的授权参考插件和失败时关闭的 clamd INSTREAM 扫描器。
  • 新增 PDO/Redis 原子状态后端,可共享 metadata、配额及请求门禁,并加入多进程 SQLite、Redis、MySQL 与 PostgreSQL 集成测试。
  • 新增受验证的就绪状态、Prometheus、请求关联、机器可读安全审计及逐路由校验的 OpenAPI 3.1 契约。
  • 完成并验证编辑器集成、插件及多节点生产部署的英文、简体中文与繁体中文文档。

0.1.0-beta.14 - 2026-08-26 ​

  • 新增经验证的 filesystem_permissions.directory_mode 与 file_mode 配置,供本机存储和缩略图缓存使用。
  • 原子发布缩略图后统一其权限,避免 tempnam() 工作文件的 0600 权限进入共享部署目录。

0.1.0-beta.13 - 2026-08-25 ​

  • CKEditor 4 快速上传遇到同名文件时使用 CKFinder 风格后缀自动改名,返回实际 URL 与成功提示;只有显式配置并通过独立覆盖权限检查后才替换原文件。

0.1.0-beta.12 - 2026-08-25 ​

  • 新增 uiTools=full,让 picker 保留选择回调的同时显示完整且受 ACL 控制的管理、详情和图片工具。
  • 未启用 Logo 时,把面包屑移到原品牌位置并将桌面搜索框右移;移动端使用紧凑的两行命令栏。
  • 对重命名、裁剪副本、复制/移动目标和回收站自动改名统一执行可移植名称、长度、扩展名锁定及资源扩展名检查,并提供明确提示。
  • 每页数量可输入或选择常用值,记住浏览器偏好,并在前后端限制为 10–500。
  • 默认在命令栏显示紧凑 Logo;ui.header 控制相邻品牌文字,不再新增独立 Header。
  • Picker 保留新建文件夹、上传、拖放及粘贴上传等常用工具。
  • 裁剪副本保留或推断正确图片扩展名,避免二进制图片误触脚本签名,并在编辑器内显示保存错误。
  • 裁剪副本的扩展名在界面和服务器端都不可修改,保存时验证名称、MIME、尺寸和内容安全。
  • 恢复清晰的 Logo 和品牌文字大小,搜索居中、操作靠右,面包屑位于文件列表或网格正上方。
  • 新增完整的英文、简体中文、繁体中文文件管理、图片、CKEditor 4、开发集成和 HTTP API 文档。

0.1.0-beta.11 - 2026-08-24 ​

  • 在共用配置中定义本机 Files 资源,让使用即时原始码的 Symfony 示例可在正式模式运作。

0.1.0-beta.10 - 2026-08-24 ​

  • 切换至加载失败的资源时清除过时的目录项目,并忽略已被取代的非同步列表 response。
  • 复制链接与下载单一文件时使用已配置的公开/CDN 项目 URL;私有资源继续使用通过验证的 API URL。
  • 允许每个资源通过配置的 Symfony 路由与参数样板产生项目 URL,并可可选宿主提供的数据库 context。
  • 扩充使用即时原始码的 Symfony 示例,无须发布中间软件包版本即可直接测试本机与多资源 S3 浏览器。
  • 静止时只显示一道淡色 panel 分隔线;只有 hover、键盘 focus 或拖曳中才显示较宽的双线调整控制。

0.1.0-beta.9 - 2026-08-24 ​

  • 图片缩略图完整限制在固定高度的列表列中。
  • 直向与特别高的缩略图完整限制在固定高度的网格预览格中。
  • 直向详细信息缩略图完整显示,不再被预览 panel 裁切。
  • 无须启用可选的 tag 管理 UI,即可切换名称与 tag 搜索。
  • 合并前端 stylesheet 入口,并加入窄版 manager/picker、键盘、图片比例及无障碍回归测试。
  • 没有已存储偏好时,使用预定的 270px 详细信息 panel 宽度。
  • 将自制 crop overlay 改为 CropperJS 1.6.2,提供对齐的 handle、可靠的角落/边缘缩放及更流畅的选取绘制。
  • 使用未变更的默认副本名称存储裁切结果时,由服务器选择不冲突的名称。
  • 说明不发布版本时的本机前端与 Symfony 整合测试方式。

0.1.0-beta.8 - 2026-08-24 ​

  • 以对角角落 handle 与方向性边缘 handle 改善 crop box 缩放。
  • 锁定长宽比缩放时,保持对角位置固定。
  • 防止 crop box 漂移,并确保缩放后的选取范围留在图片边界内。
  • 加入裁切几何与四舍五入行为的 unit test。

0.1.0-beta.7 - 2026-08-24 ​

  • 以可感知模式的 manager 与 picker 外壳、情境文件操作、精简工具和 picker 确认列,取代默认品牌页首。
  • 加入经验证的宿主与浏览器显示配置,不变更 ACL。
  • 完整保留可为 null 的目录总数与不透明 cursor 分页。
  • 让非本机 adapter 可选择加入安全审计与永久删除,而不调用本机回收站。
  • 加入可选的 sohophp/sofinder-s3 软件包,支持 AWS S3、R2 与 MinIO endpoint 配置、前缀隔离及有界递归操作。

0.1.0-beta.6 - 2026-08-23 ​

  • 加入简体中文项目 README。
  • 加入简体中文 Symfony 整合、维护模式与图片格式指南。
  • 从每份英文来源文件链接至其翻译指南。
  • 保持所有 PHP、HTTP、存储与前端执行期契约不变。

0.1.0-beta.5 - 2026-08-23 ​

  • 加入有界 inline、可选 messenger、外部调度与停用等维护模式,同时保留同步回收站容量安全机制。
  • 使用 non-blocking lock 序列化清理入口,并限制 Web request 清理频率,不需要 daemon 或 cron 服务。
  • 加入 compact、standard、large 与 extra-large 界面密度配置,提供宿主默认值及浏览器本机用户偏好。

0.1.0-beta.4 - 2026-08-23 ​

  • 将图片 pipeline 与 CKEditor 图片选取限制为可嵌入 Web 的 raster 格式:JPEG、PNG、GIF、WebP、AVIF、BMP 与 ICO。
  • 当 Files 资源允许其扩展名时,将 HEIC、HEIF 与 TIFF 视为一般文件;不再解码、预览或编辑。
  • 无须迁移即可保留现有非 Web 文件,同时拒绝向 Winstar 的 Images 资源新上传 HEIC/HEIF/TIFF。
  • 说明 1.0 支持政策、发布流程与 Winstar 维护调度,不变更路由、公开 URL 或 PHP 契约。

0.1.0-beta.3 - 2026-08-23 ​

  • 通过 CI 兼容性矩阵支持 PHP 8.2–8.5 与 Symfony 6.4/7.4。
  • 加入分页存储查询、支持 cursor 的列表结果、存储 capability 宣告与带 tag 的 adapter factory。
  • 将本机路径、完整用量扫描、回收站、上传 session 与 request gate 状态分离至可替换契约。
  • 加入可恢复分段上传 session 状态、过期 session 调度清理及明确的恢复冲突对话框。
  • 将内容传递与主要浏览器 panel 拆分成专注模组,不变更既有 HTTP 路由或 JSON field。
  • 加入中央图片格式 registry,以及每种格式优先使用 GD、fallback 至 Imagick 的 AVIF、HEIC/HEIF、TIFF 与 ICO capability 检测。
  • 使用固定 allowlist coder、解码前 frame/pixel budget、有限资源限制及浏览器安全 PNG 缩略图强化 Imagick。
  • 通过 API 与 console 发布有效图片 capability;防止在 CKEditor 图片模式选取或 QuickUpload 插入 HEIC/HEIF/TIFF。
  • 加入 PHPStan、coverage CI、Range/ETag HTTP 契约检查、component test 与 10,000 个项目的目录回归测试。

所有重要变更都记录于此。项目遵循 Semantic Versioning;预发布版本仍可能调整公开扩充界面。

0.1.0-beta.2 - 2026-08-22 ​

  • 为唯读缩略图提供独立 request limit,避免大型图片目录耗尽更严格的图片编辑 quota。
  • 私下缓存带版本的缩略图 response,并重试暂时性预览失败,不在文件浏览器留下损坏图片控制项。
  • 将 context menu 预览改为独立无障碍对话框,不再调用编辑器的文件选取 callback。
  • 改善预览配置,将 URL 复制移至精简图示与点击复制对话框,并加入持久化语言切换。
  • 为文件详细信息与预览对话框加入一致的 responsive padding 与本地化修改时间。
  • 加入完整繁体中文(zh-tw)UI 文字、依 locale 显示日期及自动检测繁体中文浏览器语言。

0.1.0-beta.1 - 2026-08-22 ​

  • 首次公开 beta,包含不依赖 framework 的核心与 Symfony 7.4 Bundle。
  • 提供本机存储、安全上传、ACL、回收站、公开/proxy 传递、持久化 quota 计算及 CKEditor 4 整合。
  • React 文件浏览器具备 responsive 网格/列表视图、可选工具、tag、文件夹树、上传伫列及 Canvas 图片裁切编辑器。

依据 MIT 许可证发布。