Skip to content

Commit a540037

Browse files
committed
installing-solidity.rst: Update information about prerelases
1 parent e632b91 commit a540037

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

docs/installing-solidity.rst

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,12 @@ addition, patch-level releases with major release 0 (i.e. 0.x.y) will not
1414
contain breaking changes. That means code that compiles with version 0.x.y
1515
can be expected to compile with 0.x.z where z > y.
1616

17-
In addition to releases, we provide **nightly development builds** to make
18-
it easy for developers to try out upcoming features and
19-
provide early feedback. Note, however, that while the nightly builds are usually
20-
very stable, they contain bleeding-edge code from the development branch and are
21-
not guaranteed to be always working. Despite our best efforts, they might
22-
contain undocumented and/or broken changes that will not become a part of an
23-
actual release. They are not meant for production use.
17+
In addition to releases, we provide **prereleases** and **nightly development builds** to make it
18+
easy for developers to try out upcoming features and provide early feedback.
19+
Note that such builds contain bleeding-edge code from the development branch and are not guaranteed
20+
to be of the same quality as full releases.
21+
Despite our best efforts, they might contain undocumented and/or broken changes that will not
22+
become a part of an actual release. They are not meant for production use.
2423

2524
When deploying contracts, you should use the latest released version of Solidity. This
2625
is because breaking changes, as well as new features and bug fixes are introduced regularly.
@@ -544,7 +543,7 @@ The Version String in Detail
544543
The Solidity version string contains four parts:
545544

546545
- the version number
547-
- pre-release tag, usually set to ``develop.YYYY.MM.DD`` or ``nightly.YYYY.MM.DD``
546+
- pre-release tag, usually set to ``develop.YYYY.MM.DD``, ``pre.N`` or ``nightly.YYYY.MM.DD``
548547
- commit in the format of ``commit.GITHASH``
549548
- platform, which has an arbitrary number of items, containing details about the platform and compiler
550549

@@ -553,24 +552,26 @@ If there are local modifications, the commit will be postfixed with ``.mod``.
553552
These parts are combined as required by SemVer, where the Solidity pre-release tag equals to the SemVer pre-release
554553
and the Solidity commit and platform combined make up the SemVer build metadata.
555554

556-
A release example: ``0.4.8+commit.60cc1668.Emscripten.clang``.
555+
Examples:
557556

558-
A pre-release example: ``0.4.9-nightly.2017.1.17+commit.6ecb4aa3.Emscripten.clang``
557+
- release: ``0.4.8+commit.60cc1668.Emscripten.clang``
558+
- pre-release: ``0.4.9-pre.3+commit.fb60450bc.Emscripten.clang``
559+
- nightly build: ``0.4.9-nightly.2017.1.17+commit.6ecb4aa3.Emscripten.clang``
559560

560561
Important Information About Versioning
561562
======================================
562563

563564
After a release is made, the patch version level is bumped, because we assume that only
564565
patch level changes follow. When changes are merged, the version should be bumped according
565566
to SemVer and the severity of the change. Finally, a release is always made with the version
566-
of the current nightly build, but without the ``prerelease`` specifier.
567+
of the current build, but without the ``prerelease`` specifier.
567568

568569
Example:
569570

570571
1. The 0.4.0 release is made.
571-
2. The nightly build has a version of 0.4.1 from now on.
572+
2. Nightly builds and preerelases have a version of 0.4.1 from now on.
572573
3. Non-breaking changes are introduced --> no change in version.
573574
4. A breaking change is introduced --> version is bumped to 0.5.0.
574575
5. The 0.5.0 release is made.
575576

576-
This behavior works well with the :ref:`version pragma <version_pragma>`.
577+
This behavior works well with the :ref:`version pragma <version_pragma>`.

0 commit comments

Comments
 (0)