超全uBlock Origin发布周期指南:从开发到稳定版的完整时间线
你是否曾困惑于uBlock Origin(uBO)的更新频率?为何有时功能会突然变化?本文将彻底解析uBO的开发、测试与发布全流程,让你掌握版本迭代规律,提前了解新功能上线时间。
版本号背后的秘密:uBO版本命名规则
uBO采用主版本.次版本.修订号三段式版本命名,每个数字都有特定含义:
- 主版本(X.0.0):重大架构变更,如Manifest V3支持
- 次版本(0.X.0):功能性更新,如新增过滤规则语法
- 修订号(0.0.X):问题修复,如Fix regex-matching in
JSONPath
查看完整历史版本变更可访问CHANGELOG.md,最近的1.67.0版本就包含了Improve href-sanitizer scriptlet等重要更新。
开发周期全景:从代码提交到用户手中
uBO的开发遵循严格的周期管理,确保每个版本既稳定又包含实用功能:
1. 日常开发阶段(持续进行)
开发者通过GitHub提交代码,所有变更会实时反映在源码中。关键开发文件包括:
- 过滤规则解析:src/js/static-filtering-parser.js
- 差量更新系统:src/js/diff-updater.js
- 任务调度系统:src/js/tasks.js
2. 测试版本发布(每2-4周)
当积累一定功能后,会发布测试版本供高级用户测试。测试版本通过以下渠道发布:
- GitHub Actions自动构建
- 开发者直接分享测试链接
3. 稳定版推送(每4-8周)
经过充分测试后,稳定版会同步推送到各浏览器应用商店:
- Chrome Web Store:通过tools/make-chromium.sh构建
- Firefox Add-ons:使用tools/make-firefox.sh打包
- Edge Add-ons:通过Makefile中的
publish-edge任务发布
时间线可视化:典型版本的生命周期
timeline
title uBO 1.65.0-1.67.0版本周期
section 开发阶段
功能开发 : 2023-10-01, 45d
内部测试 : 2023-11-15, 14d
section 发布阶段
测试版发布 : 2023-11-29, 7d
稳定版审核 : 2023-12-06, 5d
全量推送 : 2023-12-11, 3d
注:实际周期会因功能复杂度和发现问题数量有所调整
不同渠道的发布时间差
uBO在各平台的发布时间存在细微差异,主要受应用商店审核速度影响:
| 平台 | 审核时间 | 发布延迟 |
|---|---|---|
| Chrome | 1-3天 | 最快 |
| Firefox | 3-5天 | 中等 |
| Edge | 5-7天 | 较慢 |
| Safari | 7-14天 | 最慢 |
开发者通过Makefile中的publish-chromium、publish-firefox等任务自动化发布流程,确保各平台版本同步。
如何参与开发与测试
普通用户也能参与uBO的开发过程:
提交问题报告
发现bug可通过CONTRIBUTING.md指引,在专用issue tracker提交详细报告。
参与翻译
通过Crowdin平台为uBO添加新语言或改进现有翻译,翻译文件位于src/_locales/目录。
测试预览功能
高级用户可直接从源码构建扩展:
# 构建Chromium版本
make chromium
# 构建Firefox版本
make firefox
版本规划揭秘:未来功能早知道
uBO的开发计划透明公开,可通过以下方式了解未来方向:
- GitHub Projects:查看开发者的任务看板
- Issues标签:带有
future标签的议题 - Manifest文件:platform/mv3/manifest.json暗示对Manifest V3的持续优化
即将到来的功能可能包括更智能的广告检测算法和性能优化,这些都需要经过完整的开发周期才能发布。
实用技巧:掌控你的uBO更新
如何切换更新渠道
- 稳定版:浏览器应用商店默认版本
- 测试版:访问uBO官网获取测试链接
- 开发版:从源码构建,具体步骤见Makefile
版本回退方法
若新版本出现兼容性问题,可通过以下方式回退:
- Chrome:在扩展管理页面启用"开发者模式"后安装历史版本
- Firefox:使用Extension Downgrader扩展
总结与展望
uBO的发布周期平衡了创新与稳定,通过严格的开发流程和测试机制,确保用户始终能获得高效、可靠的广告过滤体验。随着Web技术的发展,uBO团队会持续优化发布流程,如platform/mv3/make-rulesets.js所示,正在加强对Manifest V3的支持。
关注README.md获取最新项目动态,订阅项目通知,第一时间了解新版本发布信息。
点赞收藏本文,下次uBO更新时你就是最懂版本变化的高级用户!
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0191
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0117
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08