Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add monthly update for October #105

Merged
merged 1 commit into from
Oct 27, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions docs/monthly-update/2022/10.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
---
title: October '22
slug: /monthly-update/2022/10
---

## Polkadot Blockchain Academy: Jan/Feb '23 🎓

<iframe width="560" height="315" src="https://www.youtube.com/embed/ODg6EPfekf0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

In July we spent some time in Cambridge on a secret mission.
At the time we teased this in our monthly update and said we'd
give more details soon. Well, the cat (or rather squid?) is out
of the bag!

We were holding lectures on WebAssembly smart contracts as part
of the Polkadot Blockchain Academy! This was the first, intentionally
low-key, run of a Polkadot education program with an academic
focus. This first run was low-key to smooth out the edges and verify
if our idea of a curriculum worked out in the real world.
It did and there will be many more academies! Starting with the next
one, which is happening in January and February 2023 in Buenos Aires.

We will also be giving lectures there again! You can find more
details on [http://dot.li/academy](http://dot.li/academy).

## Astar ported Uniswap v2 to ink! 💱

Astar has published a showcase Dapp built with ink!:
a Uniswap-V2 DEX. This is amazing and we can't wait to
see where this is going!

They are working on a UI for the DEX as well. You can find
the repository here:
[`AstarNetwork/wasm-showcase-dapps`](https://github.com/AstarNetwork/wasm-showcase-dapps).

## Release Updates 🆕

We've published a release of ink! [`v3.4`](https://github.com/paritytech/ink/releases/tag/v3.4.0)
this month.

For ink! `v4.0` and `cargo-contract` `v2.0` we decided to shift our
target release date a bit, to January 2023. There are a number of
reasons why we decided to do this:

* We have made a number of breaking changes and want to wait until popular
user interfaces (like [`polkadot-js`](https://polkadot.js.org/apps/) or
[`contracts-ui`](https://contracts-ui.substrate.io/)) support those.
* We want to have a release candidate out for at least some weeks to give
everyone the chance to already upgrade tooling and provide feedback.
* We have an audit going on and would ideally like to incorporate more
of the results.

A breaking change that has formed in the last weeks is that we
will have to remove [`ink_env::random`](https://docs.rs/ink_env/3.3.1/ink_env/fn.random.html).
This function allowed contract developers getting random entropy.
There is unfortunately no way how this can be done safely enough
with built-in Substrate primitives on-chain currently. We're
following the recommendation of our auditors to remove it.

The alternative right now is to provide random entropy off-chain to
the contract, to use a random entropy oracle, or to have a chain-extension
that does this, in case the chain has a possibility to do so.

We hope to bring this function back in a future release of ink!, the
best hope right now is that it could come back with [Sassafras](https://wiki.polkadot.network/docs/learn-consensus#badass-babe-sassafras), a block production
protocol for future versions of Polkadot.

## Conference Season 📢

Many from our team have been on the road in the last weeks.
You might have met us at DappCon, DevCon, or EuroRust.

There's more to come and a number of us will be at [sub0 in
Lisbon at the end of November '22](https://sub0.polkadot.network/).
We have two events scheduled there, a talk and a fireside chat.
Come by and talk to us if you're there!

## Blog Post on `wasm-opt-rs` 🙌

[Brian Anderson](https://github.com/brson) wrote a blog post on [his
Web3 Foundation grant](https://github.com/w3f/Grants-Program/pull/1070)
to get rid of `wasm-opt` as an external dependency for `cargo-contract`.

This was a contribution that we looked forward to a lot.
External dependencies cause so much user friction. For once, it's
another step in the installation, which is not always straight forward
and different for each operating system.
There's other issues too, we don't have control over which
version of the dependency is installed on the local system and
have to throw errors for the user, causing more user friction.

All of this is just solved now by having [`wasm-opt`](https://crates.io/crates/wasm-opt)
be a direct dependency of `cargo-contract`.

The blog post is an interesting read, you can find it on
Brian's blog [here](https://brson.github.io/2022/10/26/creating-wasm-opt-rust-bindings-with-cxx).

## Solang Solidity compiler incubated into Hyperledger Foundation 🎉

ink! contracts are executed by Substrate's [`pallet-contracts`](/how-it-works);
besides ink! there are two other languages that you can use to
write smart contracts for this pallet: [ask!](https://github.com/ask-lang/ask)
(Assembly Script) and Solidity via [the Solang compiler](https://github.com/hyperledger-labs/solang).

Solang supports different blockchains as compiler targets, one
of them being `pallet-contracts`. Our colleague [@xermicus](https://github.com/xermicus)
is working full-time on this Substrate backend in Solang.

The project has now been incubated into the Hyperledger Foundation,
hosted by the Linux Foundation. This is a big recognition for
the project!

In ink!, supporting a symbiotic interaction with Solidity contracts
is an important part of the puzzle for us and we're looking forward
to the next stages of Solang.

More details can be found [in the announcement blog post](https://www.hyperledger.org/blog/2022/09/12/meet-hyperledger-solang-a-portable-solidity-compiler).
1 change: 1 addition & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ module.exports = {
],
'Monthly Update': [
'monthly-update/overview',
'monthly-update/2022/10',
'monthly-update/2022/09',
'monthly-update/2022/08',
'monthly-update/2022/07',
Expand Down
1 change: 1 addition & 0 deletions versioned_sidebars/version-4.0.0-alpha.1-sidebars.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
],
"Monthly Update": [
"monthly-update/overview",
"monthly-update/2022/10",
"monthly-update/2022/09",
"monthly-update/2022/08",
"monthly-update/2022/07",
Expand Down