1
- % Release Channels
1
+ % リリースチャネル
2
+ <!-- % Release Channels -->
2
3
3
- The Rust project uses a concept called ‘release channels’ to manage releases.
4
- It’s important to understand this process to choose which version of Rust
5
- your project should use.
4
+ <!-- The Rust project uses a concept called ‘release channels’ to manage releases. -->
5
+ <!-- It’s important to understand this process to choose which version of Rust -->
6
+ <!-- your project should use. -->
7
+ Rustプロジェクトではリリースを管理するために「リリースチャネル」という考え方を採用しています。どのバージョンのRustを使用するか決めるためには、この考え方を理解することが重要になります。
6
8
7
- # Overview
9
+ <!-- # Overview -->
10
+ # 概要
8
11
9
- There are three channels for Rust releases:
12
+ <!-- There are three channels for Rust releases: -->
13
+ Rustのリリースには以下の3つのチャネルがあります。
10
14
11
15
* Nightly
12
16
* Beta
13
17
* Stable
14
18
15
- New nightly releases are created once a day. Every six weeks, the latest
16
- nightly release is promoted to ‘Beta’. At that point, it will only receive
17
- patches to fix serious errors. Six weeks later, the beta is promoted to
18
- ‘Stable’, and becomes the next release of ` 1.x ` .
19
-
20
- This process happens in parallel. So every six weeks, on the same day,
21
- nightly goes to beta, beta goes to stable. When ` 1.x ` is released, at
22
- the same time, ` 1.(x + 1)-beta ` is released, and the nightly becomes the
23
- first version of ` 1.(x + 2)-nightly ` .
24
-
25
- # Choosing a version
26
-
27
- Generally speaking, unless you have a specific reason, you should be using the
28
- stable release channel. These releases are intended for a general audience.
29
-
30
- However, depending on your interest in Rust, you may choose to use nightly
31
- instead. The basic tradeoff is this: in the nightly channel, you can use
32
- unstable, new Rust features. However, unstable features are subject to change,
33
- and so any new nightly release may break your code. If you use the stable
34
- release, you cannot use experimental features, but the next release of Rust
35
- will not cause significant issues through breaking changes.
36
-
37
- # Helping the ecosystem through CI
38
-
39
- What about beta? We encourage all Rust users who use the stable release channel
40
- to also test against the beta channel in their continuous integration systems.
41
- This will help alert the team in case there’s an accidental regression.
42
-
43
- Additionally, testing against nightly can catch regressions even sooner, and so
44
- if you don’t mind a third build, we’d appreciate testing against all channels.
45
-
46
- As an example, many Rust programmers use [ Travis] ( https://travis-ci.org/ ) to
47
- test their crates, which is free for open source projects. Travis [ supports
48
- Rust directly] [ travis ] , and you can use a ` .travis.yml ` file like this to
49
- test on all channels:
19
+ <!-- New nightly releases are created once a day. Every six weeks, the latest -->
20
+ <!-- nightly release is promoted to ‘Beta’. At that point, it will only receive -->
21
+ <!-- patches to fix serious errors. Six weeks later, the beta is promoted to -->
22
+ <!-- ‘Stable’, and becomes the next release of `1.x`. -->
23
+ 新しいnightlyリリースは毎日作られます。6週間ごとに、最新のnightlyリリースが「Beta」に格上げされます。これ以降は深刻なエラーを修正するパッチのみが受け付けられます。さらに6週間後、betaは「Stable」に格上げされ、次の「1.x」リリースになります。
24
+
25
+ <!-- This process happens in parallel. So every six weeks, on the same day, -->
26
+ <!-- nightly goes to beta, beta goes to stable. When `1.x` is released, at -->
27
+ <!-- the same time, `1.(x + 1)-beta` is released, and the nightly becomes the -->
28
+ <!-- first version of `1.(x + 2)-nightly`. -->
29
+ このプロセスは並行して行われます。つまり6週間毎の同じ日に、nightlyはbetaに、betaはstableになります。「1.x」がリリースされると同時に「1.(x + 1)-beta」がリリースされ、nightlyは「1.(x + 2)-nightly」の最初のバージョンになる、ということです。
30
+
31
+ <!-- # Choosing a version -->
32
+ # バージョンを選ぶ
33
+
34
+ <!-- Generally speaking, unless you have a specific reason, you should be using the -->
35
+ <!-- stable release channel. These releases are intended for a general audience. -->
36
+ 一般的に言って、特別な理由がなければstableリリースチャネルを使うべきです。このリリースは一般のユーザ向けになっています。
37
+
38
+ <!-- However, depending on your interest in Rust, you may choose to use nightly -->
39
+ <!-- instead. The basic tradeoff is this: in the nightly channel, you can use -->
40
+ <!-- unstable, new Rust features. However, unstable features are subject to change, -->
41
+ <!-- and so any new nightly release may break your code. If you use the stable -->
42
+ <!-- release, you cannot use experimental features, but the next release of Rust -->
43
+ <!-- will not cause significant issues through breaking changes. -->
44
+ しかしRustに特に関心のある方は、代わりにnightlyを選んでも構いません。基本的な交換条件は次の通りです。nightlyチャネルを選ぶと不安定で新しいフィーチャを使うことができます。しかし、不安定なフィーチャは変更されやすく、新しいnightlyリリースでソースコードが動かなくなってしまうかもしれません。stableリリースを使えば、実験的なフィーチャを使うことはできませんが、Rustのバージョンが上がっても破壊的な変更によるトラブルは起きないでしょう。
45
+
46
+ <!-- # Helping the ecosystem through CI -->
47
+ # CIのためのエコシステム
48
+
49
+ <!-- What about beta? We encourage all Rust users who use the stable release channel -->
50
+ <!-- to also test against the beta channel in their continuous integration systems. -->
51
+ <!-- This will help alert the team in case there’s an accidental regression. -->
52
+ betaとはどういうチャネルでしょうか?stableリリースチャネルを使う全てのユーザは、継続的インテグレーションシステムを使ってbetaリリースに対してもテストすることを推奨しています。こうすることで、突発的なリグレッションに備えることができます。
53
+
54
+ <!-- Additionally, testing against nightly can catch regressions even sooner, and so -->
55
+ <!-- if you don’t mind a third build, we’d appreciate testing against all channels. -->
56
+ さらに、nightlyに対してもテストすることでより早くリグレッションを捉えることができます。この第3のビルドについて関心がない方がいるかもしれませんが、我々は全てのチャネルに対してテストすることを高く評価しています。
57
+
58
+ <!-- As an example, many Rust programmers use [Travis](https://travis-ci.org/) to -->
59
+ <!-- test their crates, which is free for open source projects. Travis [supports -->
60
+ <!-- Rust directly][travis], and you can use a `.travis.yml` file like this to -->
61
+ <!-- test on all channels: -->
62
+ 例えば、多くのRustプログラマが [ Travis] ( https://travis-ci.org/ ) をクレートのテストに使っています。(このサービスはオープンソースプロジェクトについては無料で使えます) Travisは [ Rustを直接サポート] [ travis ] しており、「` .travis.yml ` 」に以下のように書くことですべてのチャネルに対するテストを行うことができます。
50
63
51
64
``` yaml
52
65
language : rust
@@ -62,7 +75,8 @@ matrix:
62
75
63
76
[travis]: http://docs.travis-ci.com/user/languages/rust/
64
77
65
- With this configuration, Travis will test all three channels, but if something
66
- breaks on nightly, it won’t fail your build. A similar configuration is
67
- recommended for any CI system, check the documentation of the one you’re
68
- using for more details.
78
+ <!-- With this configuration, Travis will test all three channels, but if something -->
79
+ <!-- breaks on nightly, it won’t fail your build. A similar configuration is -->
80
+ <!-- recommended for any CI system, check the documentation of the one you’re -->
81
+ <!-- using for more details. -->
82
+ この設定で、Travisは3つ全てのチャネルに対してテストを行いますが、nightlyで何かおかしくなったとしてもビルドが失敗にはなりません。他のCIシステムでも同様の設定をお勧めします。詳細はお使いのシステムのドキュメントを参照してください。
0 commit comments