写点什么

姗姗来迟的 Ember.js 1.6 版本

  • 2014-07-24
  • 本文字数:1282 字

    阅读完需:约 4 分钟

Ember.js 团队于近日发布了其 JavaScript 框架的 1.6 版本,由于增加了 AMD 加载器而导致了此次的发布延误。

官方声明中,Ember 核心团队成员Robert Jackson 描述了Ember.js 1.6 版本以后的构建如何通过 es6-module-transpiler 转换为 AMD 模块。据 Jackson 说,增加了小型 AMD 加载器来加载转换后的模块,影响了原来移动客户端的启动速度。他说:

在 1.6.0 将要发布时(5 月底)该影响引起了我们的注意,我们决定推迟发布,一直到我们修复该问题。

现在回想起来这个决定非常不明智。此修复花费了比预想更长的时间,同时人们也只能继续使用 1.5.1 版本。我们很多用户,要么没有受到影响,要么并不在意此问题,但他们为了获得本该包括在 1.6 版本中的其他修复,被迫使用 beta/canary(金丝雀)通道上的版本。

用户 Xtian 在评论声明时说:“我不大明白声明的开始几段:启动性能问题已经解决了呢?还是依然存在?”

Jackson回复内容为“还没有修复,但我们会尽快修复,并把它反向移植到1.7 beta 分支中”。

又一Ember.js 团队核心成员Stefan Penner详细描述了该问题

该修复会成为 Brian Donovan 所主导项目 square/es6-module-transpiler 下的新 bundle 格式。该修复删除了整个 AMD 加载器,同时产生更小的整体构建。这样该 bug 中的阻塞问题也会得到改善,并且删除了 ember-core 中的不当循环。

此外,启动问题貌似不会影响桌面浏览器,但是在 Android 浏览器中会消耗大量时间。

虽然此次发布有所延迟,但是 Ember 社区并没有在意,因为 1.6 版本带来的新功能以及 1.7 版本承诺的功能着实令人振奋。

在最新发布的功能中,最显著的变化有更新了 Ember.computed.empty,改善了缓存查找吞吐量,对测试友好的承诺,以及大量的 bug 修复。Jackson 特别指出,更新后的 Ember.computed.empty 会自动识别数组,不需要用户显式指定 array.[] 作为依赖键。

为了描述 Ember 的对测试友好的承诺特性,Jackson 说道:

使用 1.5.1 版本,测试时你必须在 Ember.run 循环中封装任何承诺解析,和 / 或拒绝调用,但是正常操作时相同的代码却不需要封装在循环中。在 1.6 中,在做承诺测试时,你再不需要将承诺封装在循环中。

在 1.6 版本的发布声明中,还包含了 1.7 版本的 beta 版本,该版本包含了对查询参数的支持,并且在 1.7 中默认开启。社区用户非常欢迎此功能,NetNames 的软件工程师 Adrian Meredith评论说

我将应用更新并使用了最新的查询参数,能够正常运行!(需要进行必要的更新)。看起来比我使用一个月前的 canary 通道上的版本要好得多。好样的!

Ember 1.7 的其他改进包括:

  • ember-routing-consistent-resources 功能。
  • uuid 可以跨项目使用。
  • Ember.uuid 作为内部函数使用,代替以前作为 Ember 的属性的做法。

Ember.js 基于 MIT 协议发布。InfoQ 读者可以通过 GitHub 项目向 Ember.js 贡献自己的力量。1.7 版本有望如期发布。

查看英文原文: Delayed Ember.js 1.6 released


感谢曹知渊对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-24 21:542627
用户头像

发布了 28 篇内容, 共 11.8 次阅读, 收获喜欢 0 次。

关注

评论

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

模块四课后作业 - 设计千万级学生管理系统的考试试卷存储方案

闲人Eric

架构实战营

华为云桌面,让企业随时随地开启云上办公

爱尚科技

内网穿透你真的了解吗?

C++后台开发

网络安全 NAT Linux服务器开发 内网 网络穿透

多年缓慢成长,近3年野蛮狂飙,谁是这个赛道的王者?

ToB行业头条

【从零开始学爬虫】采集全国高校导师数据

前嗅大数据

数据采集 爬虫教程 爬虫入门

新茶饮 200+ 门店优化库存成本,需要几个数据分析师?

Kyligence

数据分析 指标中台

版本控制 | SVN,Git与Helix Core,谁的数据管理基础设施更安全?

龙智—DevSecOps解决方案

git svn 版本控制 版本控制系统

小程序游戏的3大分发平台

FinFish

小程序 小游戏 小游戏运营

SpringMVC还是Spring WebFlux?谁是下一代的Java程序员技术栈?

程序员小毕

Java spring 程序员 后端 springmvc

小游戏开发投放平台及分成政策盘点

Onegun

小游戏 小游戏开发

架构实战营第 10 期 - 模块三作业:外包学生管理系统详细架构设计文档

kaizen

「架构实战营」

研讨会回顾 | 自动化测试“领导者”SmartBear解析软件质量与测试现状调研

龙智—DevSecOps解决方案

软件测试 自动化测试 测试自动化

AI 训练加速原理解析与工程实践分享

百度Geek说

人工智能 机器学习 12 月 PK 榜

【观察】融云百幄:为政企数智办公按下“快进键”

融云 RongCloud

融云 数智化 政企 百幄

当云原生网关遇上图数据库,NebulaGraph 的 APISIX 最佳实践

NebulaGraph

图数据库 API网关

融云任杰:激活组织生命力 让听见炮火的人做决策 | TGO专访

融云 RongCloud

专访 程序员‘

5分钟搞懂Jenkins分布式架构

俞凡

架构 DevOps cicd 最佳实践

基于Seata探寻分布式事务的实现方案

京东科技开发者

大数据 分布式事务 微服务架构 关系型数据库 seata

语音生成领域模型又填一名猛将

felix

深度学习 语音合成 TTS

华为云桌面解决方案,打造安全高效办公新体验

科技怪授

云桌面

【经验】硬件工程师与PCB槽孔斗智斗勇的故事

华秋PCB

工具 PCB PCB设计 槽孔

PHP转Go之后,我又开始研究机器学习和自动驾驶了。

王中阳Go

自动驾驶 Apollo

32篇年度最佳AI论文;Python编译器Codon开源;ChatGPT的前世今生

OneFlow

人工智能 深度学习 大模型

MySQL分库分表,可能真的要退出历史舞台了!

Java永远的神

MySQL 程序员 后端 架构师 分布分表

Docker daemon configuration overview(Docker 守护进程配置概览)

独钓寒江

华为云桌面,助力企业数字化转型

爱尚科技

软件测试面试真题 | 什么是 Redis ? Redis缓存应用场景有哪些?

测试人

redis 软件测试 自动化测试 测试开发

使用无代码构建客户门户

间隔

外包学生管理系统架构文档

白杨

天翼云斩获2022全球分布式云大会两项大奖

天翼云开发者社区

案例丨多元业态管理服务厂商如何走通数字化转型之路

优秀

数字化转型 数字化管理

姗姗来迟的Ember.js 1.6版本_JavaScript_James Chesters_InfoQ精选文章