AICon议程上新60%,阿里国际、360智脑、科大讯飞、蔚来汽车分享大模型探索与实践 了解详情
写点什么

让人五味杂陈的 Mozilla 插件机制变化

  • 2015-08-30
  • 本文字数:1720 字

    阅读完需:约 6 分钟

Mozilla 宣布,Firefox 插件开发将迎来重要的变革。

在博文 Firefox 插件开发的未来中,Mozilla 产品经理 Kev Needham 说,插件生态圈“在过去的这些年里获得了长足的有机的增长”,但 Firefox 需做出根本性的变革以“实现其现代化”。

其中一项大的变化就是 WebExtensions API。Needham 称,Mozilla 希望插件开发能够更多地借鉴 Web 开发,“在标准定义的行为集下,同样的代码应当能够运行在多个不同的浏览器上”。

为此,Needham 说,WebExtensions 使得人们在多个浏览器上开发扩展程序变得更容易了,他说:

为 Chrome、Opera、甚至可能在将来还包括 Microsoft Edge 等浏览器遍写的扩展代码能在略作修改之后,以 WebExtension 的形式运行在 Firefox 上。采用这种现代的且以 JavaScript 为中心的 API 有许多的优势,包括默认支持多进程浏览器以及降低了来自不良插件和恶意软件所带来的风险。

WebExtensions 运行起来与其他的 Firefox 插件相似,它将先由 Mozilla 进行认证,然后通过 addons.mozilla.org (AMO) 或者开发者的网页发布出去。使用该 API,扩展开发者只需做少许修改以适配每个平台,并进行重打包,就能获得运行在 Firefox 和 Chrome 上的同样功能的扩展程序。

此次新变化还包括,要求插件在部署安装之前必须通过 Mozilla 的审核和认证。早在四月份的时候,Mozilla 的安全负责人 Daniel Veditz 发表了一篇文章,扩展程序需要签名认证的理由,回应了许多来自开发社区的反馈意见,此前Mozilla 的声明在开发社区中引发了大量的讨论。Veditz 提到,成千上万的用户的互联网浏览器体验受到了来自“那些用户并没有选择的第三方插件”的影响,并且“获利的是第三方,不是用户”。

Veditz 还说,那些最不受欢迎的插件“在一定程度上都是与广告相关的”,这些插件会“破坏浏览器的安全基础”且违反了“ Mozilla 的基本准则:保护个人在网络上的安全与隐私是一项原则立场,不容放弃。”

尽管在 Firefox 42 之前,签名认证将不会强制执行,但 Firefox 40 的用户现在已经能够查看安装的扩展程序是否经过了验证。

开发社区对 Mozilla 的声明反应不一。在 Needham 文章的评论区,用户 DMcCunney 说,他们对声明怀有“深切的复杂情感”,留言里说

我能理解 Mozilla 出于安全担忧提出了签名认证要求,但安全问题究竟有多严重?现在有多少经证实的用户报告他们受到了恶意扩展程序的侵袭?我去查了,但并未看到有这样的情况,当然也可能是我没找对地方吧。难道这个解决方案是针对一个实际上并不存在的问题而设置的吗?如果有证据能表明这确实是一个问题,请给出线索指示。

我现在最大的担忧是,迟早,我将不能运行未认证过的扩展程序。

在 Reddit 上展开的关于开发Firefox 插件的未来的讨论中,用户 iamncla 表示对声明感到很开心,“我有相当多的Chrome 扩展程序,它们都有巨大的用户基数(300K+ 用户),但却没法把它们也添加到Firefox 上,因为Firefox 和Chrome 用的扩展程序的API 不一样。新的变化对想拥有一份Firefox 版本的插件的开发者或者用户来说,简直是太棒了。”

其他人的留言就没有这么委婉了。插件 downthemall 的开发者 Nils Maier ,在博文后留言评论道,

我在考虑暂时放弃插件开发,主要原因是,围墙花园式的签名认证方法又来了,这种做法是我过去一直强烈反对的,并且现在仍然强烈反对它……

但对基于 XUL 的以 XPCOM 访问的插件感到“不以为然”可真是让人忍无可忍了。如果真这样了,我肯定会撤走。因为接下来我根本就不能开发大部分我的插件,这些插件不适配或者不能适配“WebExtensions”API。基于 XUL 的插件所拥有的灵活性本是 Firefox 插件生态圈的一大卖点,因此它也是最后剩下的能表明 Firefox 自身尚未完全偏执化的卖点之一

Needham 宽慰那些对新变化感到担忧的开发者们,说 Mozilla 重申了它对插件开发社区的“承诺”,将继续与开发者们一道“在插件移植、新 API 的设计以及创造出让 Firefox 变得更棒的创新性的新插件上”保持协作。

Needham 还谈到,在接下来的几周到几个月时间里,Mozilla 将持续放出额外的资源,用于更深入地阐述这些新的变化,同时也将通过 Mozilla 开发网, IRC (in #extdev) 和扩展程序开发组提供支持。

查看英文原文: Mixed Feelings Greet Mozilla’s Add-ons Overhaul

2015-08-30 19:023662
用户头像

发布了 30 篇内容, 共 84646 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

react源码解析11.生命周期调用顺序

buchila11

React

阿里云田涛涛解读未来自动化运维新思路:CloudOps

阿里云弹性计算

CloudOps 云上运维

欢迎举报Perforce Helix Core盗版行为

龙智—DevSecOps解决方案

盗版软件 perforce盗版 打击盗版

Game On Serverless:SAE 助力广州小迈提升微服务研发效能

阿里巴巴云原生

阿里云 Serverless 云原生 SAE 合作

React进阶(五):导航守卫

No Silver Bullet

React 路由 12月日更

lock-free在召回引擎中的实现

高性能架构探索

架构 分布式 微服务 签约计划第二季

一文带你熟知ForkJoin

华为云开发者联盟

jdk 并发编程 并发 forkjoin 多线程并发

面试官:useLayoutEffect和useEffect的区别

全栈潇晨

React

Scrapy Spider中间件,你学会了吗?本篇博客有一案例

梦想橡皮擦

12月日更

面试官:react中的setState是同步的还是异步的

全栈潇晨

React

吃透负载均衡

高性能架构探索

负载均衡 架构 分布式 微服务 签约计划第二季

亿级流量实验平台设计与实现

高性能架构探索

架构 分布式 微服务 签约计划第二季 实验平台

给弟弟的信第13封|一个北京姑娘的艰辛生活

大菠萝

28天写作

智能运维之时间序列预测中的经典时序模型

云智慧AIOps社区

机器学习 算法 智能运维 云智慧 指标预测

react源码解析12.状态更新流程

buchila11

React

netty系列之:小白福利!手把手教你做一个简单的代理服务器

程序那些事

Java Netty 代理 程序那些事 12月日更

C++ 开发笔记

行者孙

内容合集 签约计划第二季

JerryScript:物联网开发者的得力工具

华为云开发者联盟

物联网 LiteOS JerryScript 引擎 物联网应用

彻底搞通服务发现的原理和实现

高性能架构探索

架构 分布式 微服务 服务发现 签约计划第二季

Flyway让数据库版本管理更简单

恒生LIGHT云社区

数据库 sql SqlServer

技术实力过硬,旺链科技斩获“年度区块链技术突破奖”!

旺链科技

区块链 区块链技术 产业区块链

面试官:如何实现 List 集合去重?

王磊

java面试

带波浪效果的CollapsingToolbarLayout + RecycleView

阿策小和尚

28天写作 Android 小菜鸟 12月日更

前端架构师修炼指南精选

杨成功

前端 架构师 内容合集 签约计划第二季

实用机器学习笔记十四:多层感知机

打工人!

人工智能 机器学习 算法 学习笔记 12月日更

深入理解Flutter相机插件【Flutter专题22】

坚果

flutter 28天写作 签约计划第二季 12月日更

有了代码变更分解提交工具SmartCommit,再也不担心复合提交了

华为云开发者联盟

代码 复合提交 SmartCommit 代码提交 代码提交原子性

Linux中国对话龙蜥社区4位理事:龙蜥操作系统捐赠的背后,是谁在推动?

OpenAnolis小助手

Linux 国产操作系统 龙蜥社区

用户文章转载:一图看懂 | 我用这张图,看懂了 P4 Reconcile

龙智—DevSecOps解决方案

perforce 一图看懂 P4 Reconcile

【LeetCode】寻找旋转排序数组中的最小值Java题解

Albert

算法 LeetCode 12月日更

流量控制-从原理到实现

高性能架构探索

架构 分布式 微服务 签约计划第二季

让人五味杂陈的Mozilla插件机制变化_JavaScript_James Chesters_InfoQ精选文章