QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

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:032388
用户头像

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

关注

评论

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

vue2.x中keep-alive源码解析以及LRU缓存策略使用

不叫猫先生

缓存 Vue LRU keep-alive实现原理 三周年连更

IT组织架构之反思

agnostic

IT组织

Nautilus Chain 测试网第二阶段,推出忠诚度计划及广泛空投

西柚子

云服务管理技术

阿泽🧸

三周年连更 云服务管理

【Python实战】Python中parsel两种获取数据方式

BROKEN

三周年连更

文心一言 VS chatgpt (13)-- 算法导论3.1 8题 3.2 1题

福大大架构师每日一题

福大大 ChatGPT 文心一言

【程序猿未来之路】作为互联网技术人的“我们”该如何破局 | 社区征文

洛神灬殇

4月日更 AIGC 三周年征文 三周年连更 生存指南

Nautilus Chain 测试网第二阶段,推出忠诚度计划及广泛空投

股市老人

通过ChatGPT快速学习英语

石云升

AI ChatGPT 三周年连更

再来一篇,Go+Vue前后端分离设计实践

闫同学

三周年连更

云环境下的新型IT运维体系

穿过生命散发芬芳

运维体系 三周年连更

Go 为什么不支持可重入锁?

乌龟哥哥

三周年连更

在 Python 中如何使用 format 函数?

海拥(haiyong.site)

三周年连更

Windows下 IDE工具常见编译错误FAQ下

鸿蒙之旅

OpenHarmony 三周年连更

算法题每日一练:无重复字符的最长子串

知心宝贝

数据结构 算法 前端 后端 三周年连更

什么是 RUM JavaScript

汪子熙

JavaScript 前端开发 三周年连更

为什么 Go for-range 的 value 值地址每次都一样?

AlwaysBeta

Go 面试

挑战 30 天学完 Python:Day16 时间datetime

MegaQi

挑战30天学完Python 三周年连更

为什么老有人想让我们“程序员”失业? | 社区征文

se7en

三周年征文

Matlab实现周期卷积

袁袁袁袁满

三周年征文

OpenGL入门二:绘制三角形

轻口味

opengl 图形图像 三周年连更

五款提高程序员生产效率的ChatGPT神器,你一定不要错过!

cwang

Code Review Git Commit ChatGPT GPT-4 Prompt

Mac 电脑解决无法使用uiautomator viewer的问题

IT蜗壳-Tango

三周年连更

Qz学算法-数据结构篇(顺序存储二叉树、线索化+遍历)

浅辄

数据结构 三周年连更

一文了解Spring Framework 5 新 Web 框架:Spring WebFlux

Java架构历程

三周年连更

KubeShark: Kubernetes的Wireshark

俞凡

Kubernetes 云原生

设计一个即时群聊天系统软件(采用华为云ECS服务器作为云服务端 )

DS小龙哥

三周年连更

这 30 个工具和服务可以更好地监控和管理 Linux 服务器,很全面!

wljslmz

三周年连更

推荐一款基于Vue3的移动H5模板,加速你的移动应用开发

cwang

前端 vant Vue 3 Web H5

2023-04-30:用go语言重写ffmpeg的resampling_audio.c示例,它实现了音频重采样的功能。

福大大架构师每日一题

Go 音视频 ffmpeg 流媒体 福大大

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