chewett / cache-n-crunch
使用 uglifyjs 对 JavaScript 资产进行管理的资产管理器和 PHP 缓存系统
v0.5.3
2019-02-23 14:35 UTC
Requires
- chewett/php-uglifycss: 0.0.*
- chewett/php-uglifyjs: 2.*
Requires (Dev)
- components/jquery: ^2.2
- pdepend/pdepend: 2.2.1
- phploc/phploc: 2.1.4
- phpmd/phpmd: 2.3.2
- phpunit/phpunit: 5.2.*
- sebastian/phpcpd: 2.0.2
- squizlabs/php_codesniffer: 2.3.4
- theseer/phpdox: 0.8.1.1
- twbs/bootstrap: ^3.3
README
请注意:这是一个自定义缓存框架,旨在同时用于玩 uglify js 和 uglify css,并且用于不适合标准缓存系统的自定义网站。在生产环境中,您可能希望使用其他缓存框架,例如 assetic。
版本 0.1 是一个概念验证,以测试它是否工作。由于它确实看起来可以工作,因此我打算重新设计它以实现多个潜在目标
- 能够指定要压缩和加载的文件
- 对于每个压缩文件集,将生成一个文件。如果您压缩 A、B 和 A+B,它们将作为 3 个单独的压缩文件存在
- 压缩 A 和 B 的输出将不会用于 A 和 B,它们将是完全独立的
- 如果组合压缩文件在文件系统中不可用,将抛出异常
- 在调试模式下,将加载原始文件而不是压缩文件
- 在调试模式下,每次加载原始文件时都会对其进行压缩
- 这些压缩文件将作为新版本保存,并允许通过调用特定的压缩方法轻松部署
- 当手动压缩文件时,它将检查这些新的缓存文件,如果存在则使用它们以加快缓存部署速度
- 有一些方法可以知道哪些压缩文件有新版本可以部署
- 将支持 CSS 文件以合并为单个文件
- 将需要将 uglify css 转移到类似于 uglify js 的方式
- 可能添加一些类似的接口等?
- 可能允许插入任何类型的压缩软件?
- 将之前压缩的文件列表及其当前文件存储在“合适”的地方
- 允许用户使用上述存储更改来重新压缩所有内容
- 在文件已从文件系统中删除后,允许将压缩标记为“过时”
- 有一些方法可以查看这些吗?
- 对压缩文件有一些基本的版本控制
当前问题
可能的实现
- JSON 存储以存储有关文件的所有数据
- 然后将其导出到基本 PHP 数组文件,用作主要缓存
- JSON 文件存储所有详细信息,如新文件等
- 每次修改缓存时,JSON 文件都写入一个 PHP 文件,该文件用作引导程序
待办事项
- 删除所有注释,但允许在文件顶部配置自定义注释
- 允许获取所有先前压缩文件及其构成路径的详细信息
- 允许通过标识符(使用构成部分的详细信息)进行压缩
- 允许检查标识符以找到尚未更新的内容(构成文件中的更改)
- 注释所有代码
- 注释所有测试
- 编写更多测试
- 创建一个示例实现仓库?
- 在导入 JSON 文件和包含 PHP 文件时运行速度测试?(仅使用包含 PHP 文件,因为我假设它将更快,可能并非如此?)
使用方法
目前没有可用的文档
安装
目前没有可用的文档
测试
目前没有可用的文档
许可
此项目受 MIT 许可证的许可。有关更多信息,请参阅 LICENSE 文件。