写点什么

Rails 3 首个 Beta 版发布

  • 2010-02-22
  • 本文字数:1073 字

    阅读完需:约 4 分钟

自上个版本的 Ruby on Rails 发布不到一年,在超过 4000 次提交之后, Rails 3.0 的 beta 版已经发布

版本号从 2.3 升至 3.0 绝对当之无愧,因为 Rails 3 并不仅仅是一些小修小改,它还将 Rails 2.3 和先前的竞争者 Merb 合并起来,将各自的优点合二为一:

Merb 团队加入后带来的都是些很棒的主意,包括关注到框架中晦涩难懂的部分,更快更轻量级的内部实现,以及一些“美味可口”的 API。

除了众多内部实现的清理以外,Rails 3 当然也增添了新的特性。以下摘自发布说明

  • 引入全新的 Router,强调 RESTful 的声明(详见 Yehuda Katz 的介绍
  • 全新的 Action Mailer API,效仿自 Action Controller(详见 Mikel Lindsaar 的介绍
  • 全新的 Active Record 链式查询语言,基于关系代数构建(详见新 API
  • 使用 Unobtrusive JavaScript 助手与 Prototype 或 jQuery 以及其他 JS 框架进行集成(内联 JS 的终结)
  • 使用 Bundler 进行显式的依赖管理

安全则是另一个受到重点关注的领域,正如 Yehuda Katz 在接受 SD Times 采访时说道

我们详细研究了已知现存的安全缺陷,这主要基于 Twitter 上的讨论,以及别人抱怨说:“你们的安全工具现在就是个体力活”。[为了避免跨站脚本缺陷 …] 我们仔细检查了整个 Rails 的内部实现,将所有的 form 标签标记为 safe,这解决了绝大部分的问题,用户就轻省得多了。[…] 现在偶然出现一个 XSS 攻击已经不太可能了。

要了解更多关于 Rails 3.0 的信息,请阅读发布说明,里面详细地介绍了每个变化。Yehuda 还写了篇过去一年的回顾,高屋建瓴地(相比较发布说明而言)对变化进行了总结和概括。 Jeremy McAnally 在博客上开始编写系列文章“将技术和代码迁移到 Rails 3”。系列的第一部分对Rails 经历的变化进行了概要性的介绍,第二部分名为“通往升级之路”。 RubyInside 收集了 36 条 Rails 3.0 相关的链接

Rails 3.0 能够在 Ruby 1.8.7、Ruby 1.9.2 和 JRuby 上工作,但目前还不能运行在 IronRuby 上。因为目前的 IronRuby 主干(将要发布的 1.0 版本)仅支持 1.8.6,而 Rails 则需要部分 1.8.7 的特性。在 IronRuby 1.0 以后,项目将会切换到对 1.9 的支持上,这样 IronRuby 就能够支持 Rails 3。目前在 IronRuby-core 邮件列表中,尚有人讨论是否在IronRuby 1.0 上增加1.8.7 的特性,来使得Rails 3 可以正常运行。

想要了解是否可以尝试将自己的应用升级到3.0,可以去看看新 RailsPlugins.org 维护的一个插件目录,其中包含了插件对于 Rails 3.0 的兼容情况。

最终版的发布日期尚未宣布。你对 Rails 3 有什么想法?你已经为升级做好准备了吗?

查看英文原文: First Rails 3 Beta Released

2010-02-22 08:032355
用户头像

发布了 80 篇内容, 共 20.1 次阅读, 收获喜欢 5 次。

关注

评论

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

react源码解析4.源码目录结构和调试

全栈潇晨

React Hooks react源码

情指勤一体化指挥调度平台搭建,情报研判分析系统搭建

“扯皮”终结者,区块链帮农民工计薪水

CECBC

Hello Python! 第一天学 Pyhton 语言

在即

6月日更

Redis数据结构

邱学喆

数据库 redis 跳跃表

【Flutter 专题】114 图解自定义 ACEProgressPainter 对比进度图

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

在Spring Bean实例过程中,如何使用反射和递归处理的Bean属性填充?

小傅哥

Java spring 小傅哥 反射调用 属性填充

中断Hwi:提高鸿蒙轻内核系统实时性及执行效率的秘密武器

华为云开发者联盟

鸿蒙 硬件 中断 鸿蒙轻内核 中断信号

致恰达耶夫,致鸿蒙

脑极体

面试系列-3 限流场景实践

李阿柯

php lua redis 面试 限流算法

k8s 插件管理工具之krew使用

雪雷

6月日更

手把手教你在IDEA中配置Maven

打工人!

Java maven 6月日更

你们公司的数据库出过问题么?

escray

学习 极客时间 朱赟的技术管理课 6月日更

React Hooks - 如何安全地使用state

蛋先生DX

大前端 React React Hooks JavaScrip 6月日更

实现多级缓存架构设计方案

xcbeyond

缓存 缓存架构 6月日更

BZZ算力挖矿系统开发功能丨BZZ算力挖矿源码设计

系统开发咨询1357O98O718

详解Camtasia的注释功能

淋雨

视频剪辑 Camtasia 录屏

HarmonyOS 2正式发布 硬件生态品牌HarmonyOS Connect一同亮相

科技汇

面试系列-2 redis列表场景分析实践

李阿柯

php 面试 redis cluster

Spring Boot FatJar类加载机制简要分析

luojiahu

Spring Boot 类加载 ClassLoader FatJar

关于第四次财富狂潮的思考,区块链如猛虎出笼?

CECBC

【Vue2.x 源码学习】第二篇 - Vue的初始化流程

Brave

源码 vue2 6月日更

直击Huawei Mate 40产线背后的华为云IoT智能制造

华为云开发者联盟

IoT 数字化转型 数字孪生 华为云IoT

分治(详解残缺棋盘 —— Java代码实现)

若尘

算法 分治 java代码 6月日更

Dubbo SPI

青年IT男

dubbo

微博评论的高性能高可用计算架构设计

唐高为

一文了解预训练语言模型!

博文视点Broadview

ARTS- 日常打卡5

pjw

深圳首辆数字人民币主题观光巴士亮相

CECBC

GrowingIO 前端团队对于 GraphQL 的实践总结

GrowingIO技术专栏

大前端 graphql

有点难的 webpack 知识点:Dependency Graph 深度解析

范文杰

webpack 6月日更

Rails 3首个Beta版发布_Java_Mirko Stocker_InfoQ精选文章