Skip to content

Commit

Permalink
Barcelona Release
Browse files Browse the repository at this point in the history
Added
- On Solana, the accounts that were passed into the transactions are listed in
  the `tx.accounts` builtin. There is also a builtin struct `AccountInfo`
- A new common subexpression elimination pass was added, thanks to
  [LucasSte](#550)
- A graphviz dot file can be generated from the ast, using `--emit ast-dot`
- Many improvements to the solidity parser, and the parser has been spun out
  in it's own create `solang-parser`.

Changed
- Solang now uses LLVM 13.0, based on the [Solana LLVM tree](https://github.com/solana-labs/llvm-project/)
- The ast datastructure has been simplified.
- Many bugfixes across the entire tree.

Signed-off-by: Sean Young <sean@mess.org>
  • Loading branch information
seanyoung committed Mar 1, 2022
1 parent aa59875 commit 7fe9b50
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 22 deletions.
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,21 @@
All notable changes to [Solang](https://github.com/hyperledger-labs/solang/)
will be documented here.

## [Unreleased]
## [0.1.10]

### Added
- On Solana, the accounts that were passed into the transactions are listed in
the `tx.accounts` builtin. There is also a builtin struct `AccountInfo`
- A new common subexpression elimination pass was added, thanks to
[LucasSte](https://github.com/hyperledger-labs/solang/pull/550)
- A graphviz dot file can be generated from the ast, using `--emit ast-dot`
- Many improvements to the solidity parser, and the parser has been spun out
in it's own create `solang-parser`.

### Changed
- Solang now uses LLVM 13.0, based on the [Solana LLVM tree](https://github.com/solana-labs/llvm-project/)
- The ast datastructure has been simplified.
- Many bugfixes across the entire tree.

## [0.1.9]

Expand Down
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "solang"
version = "0.1.9"
version = "0.1.10"
authors = ["Sean Young <sean@mess.org>"]
homepage = "https://github.com/hyperledger-labs/solang"
documentation = "https://solang.readthedocs.io/"
Expand Down
3 changes: 2 additions & 1 deletion RELEASE_CHECKLIST.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Release Checklist

- Update the version in `Cargo.toml`, the binary links in `docs/installing.rst`, and `CHANGELOG.md`
- Update the version in `Cargo.toml`, `solang-parser/Cargo.toml`, the binary
links in `docs/installing.rst`, and `CHANGELOG.md`
- Copy the contents of the CHANGELOG for this release into commit message
- Ensure the cargo publish is happy `cargo publish --dry-run`
- Try the release github actions by pushing a tag to your solang fork
Expand Down
32 changes: 14 additions & 18 deletions docs/installing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,23 @@ The Solang compiler is a single binary. It can be installed in different ways.
Download release binaries
-------------------------

For Linux x86-64, there is a binary available in the github releases:
There are binaries available on github releases:

`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.9/solang-linux>`_
- `Linux x86-64 <https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/solang-linux-x86-64>`_
- `Linux arm64 <https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/solang-linux-arm64>`_
- `Windows x64 <https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/solang.exe>`_
- `MacOS intel <https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/solang-mac-intel>`_
- `MacOS arm <https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/solang-mac-arm>`_

For Windows x64, there is a binary available:

`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.9/solang.exe>`_

For MacOS, there is an arm and intel binary available.
Remember to remove the quarantine attribute using ``xattr -d com.apple.quarantine solang-mac-arm`` in the terminal.

`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.9/solang-mac-arm>`_

`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.9/solang-mac-intel>`_
On MacOS, remember to remove the quarantine attribute using ``xattr -d com.apple.quarantine solang-mac-arm``
in the terminal.

Using ghcr.io/hyperledger-labs/solang containers
------------------------------------------------

New images are automatically made available on
`solang containers <https://github.com/hyperledger-labs/solang/pkgs/container/solang>`_.
There is a release `v0.1.9` tag and a `latest` tag:
There is a release `v0.1.10` tag and a `latest` tag:

.. code-block:: bash
Expand Down Expand Up @@ -68,15 +64,15 @@ These patches make it possible to generate code for Solana, and fixes some
concurrency issues in the lld linker.

You can either download the pre-built libraries from
`github <https://github.com/hyperledger-labs/solang/releases/tag/v0.1.9>`_
`github <https://github.com/hyperledger-labs/solang/releases/tag/v0.1.10>`_
or build your own from source. After that, you need to add the `bin` directory to your
path, so that the build system of Solang can find the correct version of llvm to use.

Installing LLVM on Linux
________________________

A pre-built version of llvm, specifically configured for Solang, is available at
`<https://github.com/hyperledger-labs/solang/releases/download/llvm13.0-1/llvm13.0-linux-x86-64.tar.xz>`_.
`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/llvm13.0-linux-x86-64.tar.xz>`_.
After downloading, untar the file in a terminal and add it to your path.

.. code-block:: bash
Expand All @@ -88,7 +84,7 @@ Installing LLVM on Windows
__________________________

A pre-built version of llvm, specifically configured for Solang, is available at
`<https://github.com/hyperledger-labs/solang/releases/download/llvm13.0-1/llvm13.0-win.zip>`_.
`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/llvm13.0-win.zip>`_.

After unzipping the file, add the bin directory to your path.

Expand All @@ -100,8 +96,8 @@ Installing LLVM on Mac
______________________

A pre-built version of llvm for intel macs, is available at
`<https://github.com/hyperledger-labs/solang/releases/download/llvm13.0-1/llvm13.0-mac-intel.tar.xz>`_ and for arm macs there is
`<https://github.com/hyperledger-labs/solang/releases/download/llvm13.0-1/llvm13.0-mac-arm.tar.xz>`_. After downloading,
`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/llvm13.0-mac-intel.tar.xz>`_ and for arm macs there is
`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.10/llvm13.0-mac-arm.tar.xz>`_. After downloading,
untar the file in a terminal and add it to your path like so:

.. code-block:: bash
Expand Down
2 changes: 1 addition & 1 deletion solang-parser/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "solang-parser"
version = "0.1.2"
version = "0.1.10"
authors = ["Sean Young <sean@mess.org>"]
homepage = "https://github.com/hyperledger-labs/solang"
documentation = "https://solang.readthedocs.io/"
Expand Down

0 comments on commit 7fe9b50

Please sign in to comment.