You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuweni.apache.org by hu...@apache.org on 2021/05/04 10:07:35 UTC

[incubator-tuweni-website] branch main created (now 27d2c06)

This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git.


      at 27d2c06  Add a bit of information about the tuweni app

This branch includes the following new commits:

     new 67826c7  Merge pull request #2 from apache/dependabot/bundler/nokogiri-1.10.5
     new fb52b90  Update to 1.1.0
     new 1516e90  Fix dead links and remove mentions of jira
     new d71420c  remove dead link
     new 6689244  Move to 1.2.0
     new 7632fb8  Remove old downloads
     new 74cc8d1  Add back extra td
     new 99bc145  Merge pull request #5 from atoulme/add_logo
     new b52dcb6  Fix bug info
     new 4d35d16  add periods
     new d7d5956  make publish work well on dev laptop
     new 4528a3d  Fix mailing list layout
     new 28b5f6a  New release 1.3.0
     new 94dc05b  Add javadocs to website
     new 655fb8a  add tutorials
     new 2cb869c  add newline in footer
     new 9dda94b  Add units tutorial
     new 069d401  Add uints operations
     new b8da6d9  Add unsigned ints classes
     new 95be540  Refactor docs into folders
     new 9817f31  Add gossip docs
     new f9cdf17  cover net lib
     new f72f1ab  Add hobbits-relayer example use
     new 4735742  Add eth-faucet and scraper
     new 27d2c06  Add a bit of information about the tuweni app

The 25 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 08/25: Merge pull request #5 from atoulme/add_logo

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 99bc145ee872b4b284a436031d6d12e963eb9e32
Merge: 74cc8d1 a48b384
Author: Antoine Toulme <at...@users.noreply.github.com>
AuthorDate: Sun Oct 18 21:23:15 2020 -0700

    Merge pull request #5 from atoulme/add_logo
    
    Add logo

 _includes/themes/apache/_navigation.html          |   4 +-
 _includes/themes/apache/default.html              |   4 +
 _includes/themes/apache/logo.html                 |   1 +
 assets/themes/apache/css/style.css                |  15 ++
 assets/themes/apache/fonts/Montserrat-Bold.ttf    | Bin 0 -> 244468 bytes
 assets/themes/apache/fonts/Montserrat-Light.ttf   | Bin 0 -> 242068 bytes
 assets/themes/apache/fonts/Montserrat-Regular.ttf | Bin 0 -> 245708 bytes
 assets/themes/apache/img/logo.png                 | Bin 3127 -> 0 bytes
 assets/themes/apache/img/tuweni.svg               | 313 ++++++++++++++++++++++
 assets/themes/apache/img/tuweni_face.ico          | Bin 0 -> 41662 bytes
 assets/themes/apache/img/tuweni_face.png          | Bin 0 -> 2719 bytes
 assets/themes/apache/img/tuweni_face.svg          | 248 +++++++++++++++++
 index.md                                          |   1 +
 13 files changed, 584 insertions(+), 2 deletions(-)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 21/25: Add gossip docs

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 9817f31c8a7a36826236241d7a203668481890d2
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Jan 3 01:16:01 2021 -0800

    Add gossip docs
---
 tutorials/apps/gossip.md                         | 55 ++++++++++++++++++++++++
 tutorials/apps/index.md                          | 20 +++++++--
 tutorials/networking/getting-started-with-net.md | 22 +++++++++-
 3 files changed, 92 insertions(+), 5 deletions(-)

diff --git a/tutorials/apps/gossip.md b/tutorials/apps/gossip.md
new file mode 100644
index 0000000..9d43e3f
--- /dev/null
+++ b/tutorials/apps/gossip.md
@@ -0,0 +1,55 @@
+---
+layout: tutorial
+title: Gossip
+description: Gossip
+group: nav-right
+previous: index.md
+categories: [applications]
+---
+
+The `gossip` application is an example showing how the Plumtree gossip implementation functions.
+
+`gossip` is distributed as part of the binary distribution of Apache Tuweni, which you can download from this [page](/download)
+
+{%highlight bash%}
+./gossip --help
+Usage: <main class> [-h] [--sending] [--numberOfMessages=<numberOfMessages>]
+                    [--payloadSize=<payloadSize>]
+                    [--sendInterval=<sendInterval>] [-c=<configPath>]
+                    [-l=<port>] [-m=<messageLog>] [-n=<networkInterface>]
+                    [-r=<rpcPort>] [-p[=<peers>...]]...
+      --numberOfMessages=<numberOfMessages>
+                            Number of messages to publish (load testing)
+      --payloadSize=<payloadSize>
+                            Size of the random payload to send to other peers (load
+                              testing)
+      --sending             Whether this peer sends random messages to all other
+                              peers (load testing)
+      --sendInterval=<sendInterval>
+                            Interval to wait in between sending messages in
+                              milliseconds (load testing)
+  -c, --config=<configPath> Configuration file.
+  -h, --help                Prints usage prompt
+  -l, --listen=<port>       Port to listen on
+  -m, --messageLog=<messageLog>
+                            Log file where messages are stored
+  -n, --networkInterface=<networkInterface>
+                            Network interface to bind to
+  -p, --peer[=<peers>...]   Static peers list
+  -r, --rpc=<rpcPort>       RPC port to listen on
+{%endhighlight%}
+
+You can set up a `gossip` app to listen with this command:
+{%highlight bash%}
+./gossip -l 9000 -m /tmp/log
+{%endhighlight%}
+
+In a separate shell, you can send messages to the listener with:
+
+{%highlight bash%}
+./gossip -l 9001 -p 127.0.0.1:9000 --sending --payloadSize=32 --numberOfMessages=10 -p tcp://127.0.0.1:9000 --sendInterval=1000
+{%endhighlight%}
+
+This will send 10 messages, of 32 random bytes each. Open the file `/tmp/log` to see them.
+
+You can create more complex scenarios with multiple gossip listeners, showing the path by which gossip circulates across peers.
diff --git a/tutorials/apps/index.md b/tutorials/apps/index.md
index c2fc50a..d7e93bb 100644
--- a/tutorials/apps/index.md
+++ b/tutorials/apps/index.md
@@ -5,10 +5,22 @@ description: Applications
 group: nav-right
 ---
 
-TODO !
+Apache Tuweni bundles applications, directly available in the binary distribution. You can download the binary distro on this [page](/download).
+
+# gossip
+
+The `gossip` application is an example showing how the Plumtree gossip implementation functions.
+
+[More](/tutorials/apps/gossip)
+
+# hobbits-relayer
+
+[More](/tutorials/apps/hobbits-relayer)
+
+# tuweni
+
+[More](/tutorials/apps/tuweni)
+
 
-gossip
-hobbits-relayer
-eth-client-app
 devp2p
 eth-faucet
\ No newline at end of file
diff --git a/tutorials/networking/getting-started-with-net.md b/tutorials/networking/getting-started-with-net.md
index 9b38c0e..7973870 100644
--- a/tutorials/networking/getting-started-with-net.md
+++ b/tutorials/networking/getting-started-with-net.md
@@ -3,4 +3,24 @@ layout: tutorial
 title: Getting Started With TLS
 description: Getting Started With TLS
 group: nav-right
----
\ No newline at end of file
+---
+
+
+To get started, install the `net` library.
+
+With Maven:
+
+{% highlight xml %}
+<dependency>
+  <groupId>org.apache.tuweni</groupId>
+  <artifactId>net</artifactId>
+  <version>{{site.data.project.latest_release}}</version>
+</dependency>
+{% endhighlight %}
+
+Or using Gradle:
+
+{% highlight groovy %}
+implementation("org.apache.tuweni:net:{{site.data.project.latest_release}}")
+{% endhighlight %}
+

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 12/25: Fix mailing list layout

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 4528a3d2acfa44eb8a37bf4a90574250519675c3
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 22:35:45 2020 -0700

    Fix mailing list layout
---
 community.md | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/community.md b/community.md
index a901548..1087a16 100644
--- a/community.md
+++ b/community.md
@@ -42,12 +42,12 @@ You can:
 
 Get help using {{ site.data.project.short_name }} or contribute to the project on our mailing lists:
 
-{% if site.data.project.user_list %}
-* [{{ site.data.project.user_list }}](mailto:{{ site.data.project.user_list }}) is for usage questions, help, and announcements. [subscribe](mailto:{{ site.data.project.user_list_subscribe }}?subject=send this email to subscribe),     [unsubscribe](mailto:{{ site.data.project.dev_list_unsubscribe }}?subject=send this email to unsubscribe), [archives]({{ site.data.project.user_list_archive_mailarchive }})
-{% endif %}
-* [{{ site.data.project.dev_list }}](mailto:{{ site.data.project.dev_list }}) is for people who want to contribute code to {{ site.data.project.short_name }}. [subscribe](mailto:{{ site.data.project.dev_list_subscribe }}?subject=send this email to subscribe), [unsubscribe](mailto:{{ site.data.project.dev_list_unsubscribe }}?subject=send this email to unsubscribe), [archives]({{ site.data.project.dev_list_archive_mailarchive }})
-* [{{ site.data.project.commits_list }}](mailto:{{ site.data.project.commits_list }}) is for commit messages and patches to {{ site.data.project.short_name }}. [subscribe](mailto:{{ site.data.project.commits_list_subscribe }}?subject=send this email to subscribe), [unsubscribe](mailto:{{ site.data.project.commits_list_unsubscribe }}?subject=send this email to unsubscribe), [archives]({{ site.data.project.commits_list_archive_mailarchive }})
-
+{:.table .table-bordered}
+|List|Usage|Subscribe|Unsubscribe|Archives|
+|---|---|---|---|---|
+|[{{ site.data.project.user_list }}](mailto:{{ site.data.project.user_list }})|usage questions, help, and announcements.|[subscribe](mailto:{{ site.data.project.user_list_subscribe }}?subject=send this email to subscribe)|[unsubscribe](mailto:{{ site.data.project.user_list_unsubscribe }}?subject=send this email to unsubscribe)|[archives]({{ site.data.project.user_list_archive_mailarchive }})|
+|[{{ site.data.project.dev_list }}](mailto:{{ site.data.project.dev_list }})|for people who want to contribute code to {{ site.data.project.short_name }}|[subscribe](mailto:{{ site.data.project.dev_list_subscribe }}?subject=send this email to subscribe)|[unsubscribe](mailto:{{ site.data.project.dev_list_unsubscribe }}?subject=send this email to unsubscribe)|[archives]({{ site.data.project.dev_list_archive_mailarchive }})|
+|[{{ site.data.project.commits_list }}](mailto:{{ site.data.project.commits_list }})|commit messages and patches|[subscribe](mailto:{{ site.data.project.commits_list_subscribe }}?subject=send this email to subscribe)|[unsubscribe](mailto:{{ site.data.project.commits_list_unsubscribe }}?subject=send this email to unsubscribe)|[archives]({{ site.data.project.commits_list_archive_mailarchive }})|
 
 ### Issue tracker
 

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 05/25: Move to 1.2.0

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 66892441ca70a916027f92496744b745334782f9
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 15:24:36 2020 -0700

    Move to 1.2.0
---
 _data/project.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/_data/project.yml b/_data/project.yml
index b873e56..df2ae0d 100644
--- a/_data/project.yml
+++ b/_data/project.yml
@@ -24,7 +24,7 @@ tagline: Jumpstart your next blockchain application
 description: Apache Tuweni is a set of libraries and other tools to aid development of blockchain and other decentralized software written in Java and Kotlin.
 
 download: /download
-latest_release: 1.1.0
+latest_release: 1.2.0
 
 dev_list: dev@tuweni.apache.org
 dev_list_subscribe: dev-subscribe@tuweni.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 25/25: Add a bit of information about the tuweni app

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 27d2c06264735882cc5d03f394ba13d191aed0e8
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Tue Jan 5 23:09:35 2021 -0800

    Add a bit of information about the tuweni app
---
 tutorials/apps/tuweni.md | 56 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 56 insertions(+)

diff --git a/tutorials/apps/tuweni.md b/tutorials/apps/tuweni.md
new file mode 100644
index 0000000..5e6e6ee
--- /dev/null
+++ b/tutorials/apps/tuweni.md
@@ -0,0 +1,56 @@
+---
+layout: tutorial
+title: Tuweni Application
+description: Tuweni Application
+group: nav-right
+previous: index.md
+categories: [applications]
+---
+
+The `tuweni` application is an Ethereum client that can run multiple chains and multiple discovery mechanisms.
+
+`tuweni` can sync multiple chains at once. It also has a web UI.
+
+NOTE: everything at this point is at best a prototype. This may change at any time.
+
+Usage:
+
+{%highlight bash %}
+Apache Tuweni client loading
+Usage: <main class> [-h] [-c=<configPath>] [-w=<web>]
+  -c, --config=<configPath>
+                    Configuration file.
+  -h, --help        Prints usage prompt
+  -w, --web=<web>   Web console host:port
+{%endhighlight%}
+
+Most of the action happens in the configuration file, written with TOML.
+
+Example with one chain:
+
+{%highlight toml %}
+[storage.default]
+path="data"
+genesis="default"
+[genesis.default]
+path=default.json
+{%endhighlight%}
+
+The `default.json` file is your usual genesis configuration file.
+
+Example with two chains:
+
+Example with one chain:
+
+{%highlight toml %}
+[storage.foo]
+path="data"
+genesis="foo"
+[genesis.foo]
+path=default.json
+[storage.bar]
+path="data"
+genesis="bar"
+[genesis.bar]
+path=other.json
+{%endhighlight%}

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 24/25: Add eth-faucet and scraper

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 473574221f694aad97cfafdd021f3c660c99e790
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Tue Jan 5 00:10:05 2021 -0800

    Add eth-faucet and scraper
---
 tutorials/apps/eth-faucet.md | 67 ++++++++++++++++++++++++++++++++++++++++++++
 tutorials/apps/index.md      | 18 ++++++++++--
 tutorials/apps/scraper.md    | 24 ++++++++++++++++
 3 files changed, 107 insertions(+), 2 deletions(-)

diff --git a/tutorials/apps/eth-faucet.md b/tutorials/apps/eth-faucet.md
new file mode 100644
index 0000000..d7eceb6
--- /dev/null
+++ b/tutorials/apps/eth-faucet.md
@@ -0,0 +1,67 @@
+---
+layout: tutorial
+title: Ethereum Faucet
+description: Ethereum Faucet
+group: nav-right
+previous: index.md
+categories: [applications]
+---
+
+The `eth-faucet` application is an Ethereum faucet that runs alongside an Ethereum client. The faucet allows to distribute funds.
+
+The faucet works with a configuration file, `application.yml`. Here is a template of the file:
+
+{%highlight yaml%}
+server:
+  use-forward-headers: true
+  forward-headers-strategy: native
+spring:
+  main:
+    banner-mode: "off"
+  security:
+    oauth2:
+      client:
+        registration:
+          github:
+            clientId: <your github client ID>
+            clientSecret: <your github client secret>
+html:
+  title: Faucet
+  request_message: Welcome to our faucet. You can ask for up to 1 ETH on this faucet.
+
+security:
+  oauth2:
+    client:
+      preEstablishedRedirectUri: <registered github redirect URI>
+      registeredRedirectUri: <registered github redirect URI>
+      useCurrentUri: false
+
+faucet:
+  maxETH: <the maximum amount of eth, in ETH, that you>
+  chainId: <chain id of your network>
+  rpcPort: <Ethereum client RPC port>
+  rpcHost: <Ethereum client RPC host>
+
+wallet:
+  path: wallet.key
+banner: >
+  Apache Tuweni Faucet example.
+
+           `:oyhdhhhhhhyo-`
+         :yds/.        ./sdy:
+       :mh:                :hm:
+     `ym:                    :my`
+     hm`                      `mh
+    +N.                        .N+
+    my :ydh/              /hdy- ym
+    Mo`MMMMM`            .MMMMN oM
+    my /hdh/              +hdh: ym
+    +N.                        .N+
+     hm`              `m:     `mh
+     `ym:    `sssssssssN:    :my`
+       :dh:   ``````````   :hd:
+         :yds/.        ./sdy:
+           `-oyhdhhhhdhyo-`
+{%endhighlight%}
+
+You should register a Github OAuth application to go along and fill the template.
\ No newline at end of file
diff --git a/tutorials/apps/index.md b/tutorials/apps/index.md
index d7e93bb..42b210f 100644
--- a/tutorials/apps/index.md
+++ b/tutorials/apps/index.md
@@ -15,12 +15,26 @@ The `gossip` application is an example showing how the Plumtree gossip implement
 
 # hobbits-relayer
 
+The `hobbits-relayer` application showcases how to use the Hobbits protocol to pass messages between different networks.
+
 [More](/tutorials/apps/hobbits-relayer)
 
 # tuweni
 
 [More](/tutorials/apps/tuweni)
 
+# scraper
+
+The `scraper` application discovers nodes running on discv5, reporting them to stdout as it goes.
+
+[More](/tutorials/apps/scraper)
+
+# v4scraper
+
+TODO
+
+# eth-faucet
+
+The `eth-faucet` application is an Ethereum faucet that runs alongside an Ethereum client. The faucet allows to distribute funds.
 
-devp2p
-eth-faucet
\ No newline at end of file
+[More](/tutorials/apps/eth-faucet)
\ No newline at end of file
diff --git a/tutorials/apps/scraper.md b/tutorials/apps/scraper.md
new file mode 100644
index 0000000..0ada778
--- /dev/null
+++ b/tutorials/apps/scraper.md
@@ -0,0 +1,24 @@
+---
+layout: tutorial
+title: Scraper
+description: Scraper
+group: nav-right
+previous: index.md
+categories: [applications]
+---
+
+Scraper is a discv5 server that constantly looks for new peers.
+
+Whenever it connects to peers, it asks for all their known peers, and keeps going until it has exhausted all peers it could discover, then starts all over again.
+
+Whenever a new peer is detected, its information is printed out to stdout with the following format:
+
+<host address>,<udp port>,<attnets attribute>,<base-64 RLP encoding of the ENR>
+
+The attnets attribute is an ENR attribute used by Ethereum 2.0.
+
+Usage:
+
+{%highlight bash%}
+./scraper -LK4QC3FCb7-JTNRiWAezECk_QUJc9c2IkJA1-EAmqAA5wmdbPWsAeRpnMXKRJqOYG0TE99ycB1nOb9y26mjb_UoHS4Bh2F0dG5ldHOIAAAAAAAAAACEZXRoMpDnp11aAAAAAf__________gmlkgnY0gmlwhDMPYfCJc2VjcDI1NmsxoQOmDQryZJApMwIT-dQAbxjvxLbPzyKn9GFk5dqam4MDTYN0Y3CCIyiDdWRwgiMo
+{%endhighlight%}
\ No newline at end of file

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 20/25: Refactor docs into folders

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 95be540be02ff8a756ac48136d237fb59a72fa91
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Jan 3 00:27:51 2021 -0800

    Refactor docs into folders
---
 index.md                                           |  6 ++++
 tutorials/apps/index.md                            | 14 +++++++++
 tutorials/index.md                                 | 14 ++-------
 tutorials/{ => libraries}/creating-bytes.md        |  0
 tutorials/{ => libraries}/creating-uints.md        |  0
 tutorials/{ => libraries}/extracting-values.md     |  0
 .../{ => libraries}/getting-started-with-bytes.md  |  0
 .../{ => libraries}/getting-started-with-units.md  |  0
 tutorials/{ => libraries}/index.md                 |  6 ++--
 tutorials/{ => libraries}/manipulating-bytes.md    |  0
 tutorials/{ => libraries}/mutable-bytes.md         |  0
 tutorials/{ => libraries}/own-bytes-class.md       |  0
 tutorials/{ => libraries}/own-uints-class.md       |  0
 tutorials/{ => libraries}/uints-operations.md      |  0
 .../networking/getting-started-with-discovery.md   |  6 ++++
 tutorials/networking/getting-started-with-net.md   |  6 ++++
 .../networking/getting-started-with-plumtree.md    |  6 ++++
 tutorials/networking/getting-started-with-rlpx.md  |  6 ++++
 tutorials/networking/index.md                      | 36 ++++++++++++++++++++++
 19 files changed, 86 insertions(+), 14 deletions(-)

diff --git a/index.md b/index.md
index bb39b25..93a9b9c 100644
--- a/index.md
+++ b/index.md
@@ -26,3 +26,9 @@ limitations under the License.
 {% include themes/apache/logo.html %}
 
 Apache Tuweni is a set of libraries and other tools to aid development of blockchain and other decentralized software in Java and other JVM languages. It includes a low-level bytes library, serialization and deserialization codecs (e.g. RLP), various cryptography functions and primitives, and lots of other helpful utilities.
+
+To learn how to use Apache Tuweni for low-level libraries, such as bytes, bigints, RLP encoding and so on, [follow this tutorial](/tutorials/libraries).
+
+To learn more about the networking libraries Apache Tuweni supports, [follow along here](/tutorials/networking).
+
+To start using the applications bundled with Apache Tuweni, [click here](/tutorials/apps).
\ No newline at end of file
diff --git a/tutorials/apps/index.md b/tutorials/apps/index.md
new file mode 100644
index 0000000..c2fc50a
--- /dev/null
+++ b/tutorials/apps/index.md
@@ -0,0 +1,14 @@
+---
+layout: tutorial
+title: Applications
+description: Applications
+group: nav-right
+---
+
+TODO !
+
+gossip
+hobbits-relayer
+eth-client-app
+devp2p
+eth-faucet
\ No newline at end of file
diff --git a/tutorials/index.md b/tutorials/index.md
index 360def7..1e614ad 100644
--- a/tutorials/index.md
+++ b/tutorials/index.md
@@ -5,16 +5,8 @@ description: Tutorials
 group: nav-right
 ---
 
-# All about bytes
+To learn how to use Apache Tuweni for low-level libraries, such as bytes, bigints, RLP encoding and so on, [follow this tutorial](/tutorials/libraries).
 
-In this tutorial, we explain in detail how to use the bytes library of Apache Tuweni.
+To learn more about the networking libraries Apache Tuweni supports, [follow along here](/tutorials/networking).
 
-## [Start tutorial](getting-started-with-bytes)
-
-# Big integers and Ethereum domain objects
-
-Unsigned ints - uints - are interesting domain objects to perform arithmetic operations with blockchains.
-
-We explain in detail how to use the units library of Apache Tuweni.
-
-## [Start tutorial](getting-started-with-units)
\ No newline at end of file
+To start using the applications bundled with Apache Tuweni, [click here](/tutorials/apps).
\ No newline at end of file
diff --git a/tutorials/creating-bytes.md b/tutorials/libraries/creating-bytes.md
similarity index 100%
rename from tutorials/creating-bytes.md
rename to tutorials/libraries/creating-bytes.md
diff --git a/tutorials/creating-uints.md b/tutorials/libraries/creating-uints.md
similarity index 100%
rename from tutorials/creating-uints.md
rename to tutorials/libraries/creating-uints.md
diff --git a/tutorials/extracting-values.md b/tutorials/libraries/extracting-values.md
similarity index 100%
rename from tutorials/extracting-values.md
rename to tutorials/libraries/extracting-values.md
diff --git a/tutorials/getting-started-with-bytes.md b/tutorials/libraries/getting-started-with-bytes.md
similarity index 100%
rename from tutorials/getting-started-with-bytes.md
rename to tutorials/libraries/getting-started-with-bytes.md
diff --git a/tutorials/getting-started-with-units.md b/tutorials/libraries/getting-started-with-units.md
similarity index 100%
rename from tutorials/getting-started-with-units.md
rename to tutorials/libraries/getting-started-with-units.md
diff --git a/tutorials/index.md b/tutorials/libraries/index.md
similarity index 79%
copy from tutorials/index.md
copy to tutorials/libraries/index.md
index 360def7..7a3e9da 100644
--- a/tutorials/index.md
+++ b/tutorials/libraries/index.md
@@ -1,7 +1,7 @@
 ---
 layout: tutorial
-title: Tutorials
-description: Tutorials
+title: Libraries Tutorials
+description: Libraries Tutorials
 group: nav-right
 ---
 
@@ -17,4 +17,4 @@ Unsigned ints - uints - are interesting domain objects to perform arithmetic ope
 
 We explain in detail how to use the units library of Apache Tuweni.
 
-## [Start tutorial](getting-started-with-units)
\ No newline at end of file
+## [Start tutorial](getting-started-with-units)
diff --git a/tutorials/manipulating-bytes.md b/tutorials/libraries/manipulating-bytes.md
similarity index 100%
rename from tutorials/manipulating-bytes.md
rename to tutorials/libraries/manipulating-bytes.md
diff --git a/tutorials/mutable-bytes.md b/tutorials/libraries/mutable-bytes.md
similarity index 100%
rename from tutorials/mutable-bytes.md
rename to tutorials/libraries/mutable-bytes.md
diff --git a/tutorials/own-bytes-class.md b/tutorials/libraries/own-bytes-class.md
similarity index 100%
rename from tutorials/own-bytes-class.md
rename to tutorials/libraries/own-bytes-class.md
diff --git a/tutorials/own-uints-class.md b/tutorials/libraries/own-uints-class.md
similarity index 100%
rename from tutorials/own-uints-class.md
rename to tutorials/libraries/own-uints-class.md
diff --git a/tutorials/uints-operations.md b/tutorials/libraries/uints-operations.md
similarity index 100%
rename from tutorials/uints-operations.md
rename to tutorials/libraries/uints-operations.md
diff --git a/tutorials/networking/getting-started-with-discovery.md b/tutorials/networking/getting-started-with-discovery.md
new file mode 100644
index 0000000..57b1e9a
--- /dev/null
+++ b/tutorials/networking/getting-started-with-discovery.md
@@ -0,0 +1,6 @@
+---
+layout: tutorial
+title: Getting Started With Discovery
+description: Getting Started With Discovery
+group: nav-right
+---
\ No newline at end of file
diff --git a/tutorials/networking/getting-started-with-net.md b/tutorials/networking/getting-started-with-net.md
new file mode 100644
index 0000000..9b38c0e
--- /dev/null
+++ b/tutorials/networking/getting-started-with-net.md
@@ -0,0 +1,6 @@
+---
+layout: tutorial
+title: Getting Started With TLS
+description: Getting Started With TLS
+group: nav-right
+---
\ No newline at end of file
diff --git a/tutorials/networking/getting-started-with-plumtree.md b/tutorials/networking/getting-started-with-plumtree.md
new file mode 100644
index 0000000..95dbcdb
--- /dev/null
+++ b/tutorials/networking/getting-started-with-plumtree.md
@@ -0,0 +1,6 @@
+---
+layout: tutorial
+title: Getting Started With Plumtree
+description: Getting Started With Plumtree
+group: nav-right
+---
\ No newline at end of file
diff --git a/tutorials/networking/getting-started-with-rlpx.md b/tutorials/networking/getting-started-with-rlpx.md
new file mode 100644
index 0000000..b163f39
--- /dev/null
+++ b/tutorials/networking/getting-started-with-rlpx.md
@@ -0,0 +1,6 @@
+---
+layout: tutorial
+title: Getting Started With RLPx
+description: Getting Started With RLPx
+group: nav-right
+---
\ No newline at end of file
diff --git a/tutorials/networking/index.md b/tutorials/networking/index.md
new file mode 100644
index 0000000..b398540
--- /dev/null
+++ b/tutorials/networking/index.md
@@ -0,0 +1,36 @@
+---
+layout: tutorial
+title: Networking
+description: Networking
+group: nav-right
+---
+
+# TLS communications for peer-to-peer applications
+
+In this tutorial, we show how you can configure direct communications with other peers.
+
+## [Start tutorial](getting-started-with-net)
+
+# RLPx networking
+
+Ethereum Devp2p wire protocol relies on RLPx to encrypt messages between peers.
+
+In this tutorial, we show how you can use a RLPx server and create your own subprotocols.
+
+## [Start tutorial](getting-started-with-rlpx)
+
+# Devp2p Discovery
+
+Ethereum relies on discovery mechanisms to find new peers.
+
+Discv4 is used by Ethereum clients, while Discv5 is used by Ethereum2 clients.
+
+## [Start tutorial](getting-started-with-discovery)
+
+# Plumtree
+
+The Plumtree library is an implementation of [Epidemic Broadcast Trees](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.190.3504&rep=rep1&type=pdf).
+
+In this tutorial, we will show you how to create your very own gossip application, and take a look at our example of the `gossip` application.
+
+## [Start tutorial](getting-started-with-plumtree)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 07/25: Add back extra td

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 74cc8d18b481aea539b4e71f84b102ca112ac80a
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 17:44:03 2020 -0700

    Add back extra td
---
 download.md | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/download.md b/download.md
index 405df8b..53dfe14 100644
--- a/download.md
+++ b/download.md
@@ -67,6 +67,9 @@ limitations under the License.
         <tr>
             <td>Release Notes</td>
             <td><a href="https://github.com/apache/incubator-tuweni/releases/tag/v{{ site.data.project.latest_release }}-incubating/">{{ site.data.project.latest_release }}</a></td>
+            <td></td>
+            <td></td>
+            <td></td>
         </tr>
     </tbody>
 </table>

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 17/25: Add units tutorial

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 9dda94b462af1b68c35d7e5e497e8ced82741a58
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sat Jan 2 20:26:22 2021 -0800

    Add units tutorial
---
 tutorials/creating-uints.md             | 10 ++++++++++
 tutorials/getting-started-with-units.md | 35 +++++++++++++++++++++++++++++++++
 tutorials/index.md                      | 12 +++++++++--
 tutorials/mutable-bytes.md              |  1 +
 tutorials/own-bytes-class.md            | 19 ++++++++++++++++++
 5 files changed, 75 insertions(+), 2 deletions(-)

diff --git a/tutorials/creating-uints.md b/tutorials/creating-uints.md
new file mode 100644
index 0000000..49827cc
--- /dev/null
+++ b/tutorials/creating-uints.md
@@ -0,0 +1,10 @@
+---
+layout: tutorial
+title: Creating Uints
+description: Creating Uints
+group: nav-right
+categories: ["units", "bigints"]
+previous: getting-started-with-units.md
+---
+
+TODO
\ No newline at end of file
diff --git a/tutorials/getting-started-with-units.md b/tutorials/getting-started-with-units.md
new file mode 100644
index 0000000..95480b5
--- /dev/null
+++ b/tutorials/getting-started-with-units.md
@@ -0,0 +1,35 @@
+---
+layout: tutorial
+title: Getting Started with Unsigned Integers
+description: Getting Started with Unsigned Integers
+group: nav-right
+categories: ["units", "bigints"]
+previous: index.md
+next: creating-uints.md
+---
+
+Apache Tuweni provides support for manipulating unsigned integers and base Ethereum currencies.
+
+To get started, install the `units` library.
+
+With Maven:
+
+{% highlight xml %}
+<dependency>
+  <groupId>org.apache.tuweni</groupId>
+  <artifactId>units</artifactId>
+  <version>{{site.data.project.latest_release}}</version>
+</dependency>
+{% endhighlight %}
+
+Or using Gradle:
+
+{% highlight groovy %}
+implementation("org.apache.tuweni:units:{{site.data.project.latest_release}}")
+{% endhighlight %}
+
+The [units library](/docs/org.apache.tuweni.units.bigints/index.html) revolves mainly around the [`Uint256`](/docs/org.apache.tuweni.units.bigints/-u-int256/index.html), [`Uint384`](/docs/org.apache.tuweni.units.bigints/-u-int384/index.html)  and [`Uint64`](/docs/org.apache.tuweni.units.bigints/-u-int64/index.html)  interfaces.
+
+This tutorial goes over the main uses of `Uint256` - you can apply the same behaviors over to `Uint384`, `Uint64` or `Uint32`.
+
+It will also touch on `Wei` and `Gas`.
\ No newline at end of file
diff --git a/tutorials/index.md b/tutorials/index.md
index c7ffe1a..360def7 100644
--- a/tutorials/index.md
+++ b/tutorials/index.md
@@ -5,8 +5,16 @@ description: Tutorials
 group: nav-right
 ---
 
-# Getting started with bytes
+# All about bytes
 
 In this tutorial, we explain in detail how to use the bytes library of Apache Tuweni.
 
-## [Start tutorial](getting-started-with-bytes)
\ No newline at end of file
+## [Start tutorial](getting-started-with-bytes)
+
+# Big integers and Ethereum domain objects
+
+Unsigned ints - uints - are interesting domain objects to perform arithmetic operations with blockchains.
+
+We explain in detail how to use the units library of Apache Tuweni.
+
+## [Start tutorial](getting-started-with-units)
\ No newline at end of file
diff --git a/tutorials/mutable-bytes.md b/tutorials/mutable-bytes.md
index 87cc26b..50cad67 100644
--- a/tutorials/mutable-bytes.md
+++ b/tutorials/mutable-bytes.md
@@ -5,6 +5,7 @@ description: Mutable Bytes
 group: nav-right
 categories: ["bytes"]
 previous: manipulating-bytes.md
+next: own-bytes-class.md
 ---
 
 
diff --git a/tutorials/own-bytes-class.md b/tutorials/own-bytes-class.md
new file mode 100644
index 0000000..28387b6
--- /dev/null
+++ b/tutorials/own-bytes-class.md
@@ -0,0 +1,19 @@
+---
+layout: tutorial
+title: Creating your very own Bytes classs
+description: Creating your very own Bytes classs
+group: nav-right
+categories: ["bytes"]
+previous: mutable-bytes.md
+---
+
+You can create your very own implementation of `Bytes` by extending the [`AbstractBytes` class](/docs/org.apache.tuweni.bytes/-abstract-bytes/index.html).
+
+You will need to implement the following functions:
+* [`get(i)`](/docs/org.apache.tuweni.bytes/-bytes/get.html)
+* [`size()`](/docs/org.apache.tuweni.bytes/-bytes/size.html)
+* [`slice(offset, size)`](/docs/org.apache.tuweni.bytes/-bytes/slice.html)
+* [`copy(offset, size)`](/docs/org.apache.tuweni.bytes/-bytes/copy.html)
+* [`mutableCopy(offset, size)`](/docs/org.apache.tuweni.bytes/-bytes/mutable-copy.html)
+
+You can choose to simplify greatly by extending the [`DelegatingBytes` class](/docs/org.apache.tuweni.bytes/-delegating-bytes/index.html) instead.

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 13/25: New release 1.3.0

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 28b5f6af017aeae9b6ce2e1e7a5ca33b966ba5d8
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Fri Nov 27 00:17:39 2020 -0800

    New release 1.3.0
---
 _data/project.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/_data/project.yml b/_data/project.yml
index df2ae0d..ca5fe90 100644
--- a/_data/project.yml
+++ b/_data/project.yml
@@ -24,7 +24,7 @@ tagline: Jumpstart your next blockchain application
 description: Apache Tuweni is a set of libraries and other tools to aid development of blockchain and other decentralized software written in Java and Kotlin.
 
 download: /download
-latest_release: 1.2.0
+latest_release: 1.3.0
 
 dev_list: dev@tuweni.apache.org
 dev_list_subscribe: dev-subscribe@tuweni.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 15/25: add tutorials

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 655fb8a81f70f21904bf6bb953a43215268023a9
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Fri Jan 1 23:47:18 2021 -0800

    add tutorials
---
 _config.yml                              |   1 +
 _includes/themes/apache/_navigation.html |   1 +
 _includes/themes/apache/footer.html      |   2 +-
 _includes/themes/apache/tutorial.html    |  77 +++++++++++++++++
 _layouts/news_item.md                    |   3 +
 _layouts/tutorial.html                   |   5 ++
 publish.sh                               |   5 ++
 tutorials/creating-bytes.md              | 138 +++++++++++++++++++++++++++++++
 tutorials/extracting-values.md           |  48 +++++++++++
 tutorials/getting-started-with-bytes.md  |  33 ++++++++
 tutorials/index.md                       |  12 +++
 tutorials/manipulating-bytes.md          |  67 +++++++++++++++
 tutorials/mutable-bytes.md               |  47 +++++++++++
 13 files changed, 438 insertions(+), 1 deletion(-)

diff --git a/_config.yml b/_config.yml
index 1325a1d..b54cf99 100644
--- a/_config.yml
+++ b/_config.yml
@@ -14,6 +14,7 @@
 # limitations under the License.
 #
 markdown: kramdown
+highlighter: rouge
 permalink: /news/:year/:month/:day/:title/
 excerpt_separator: ""
 
diff --git a/_includes/themes/apache/_navigation.html b/_includes/themes/apache/_navigation.html
index fcc5015..14c2b40 100644
--- a/_includes/themes/apache/_navigation.html
+++ b/_includes/themes/apache/_navigation.html
@@ -30,6 +30,7 @@
                 <li id="docs">
                     <a href="#" data-toggle="dropdown" class="dropdown-toggle">Docs<b class="caret"></b></a>
                     <ul class="dropdown-menu dropdown-left">
+                        <li><a href="/tutorials">Tutorials</a></li>
                         <li><a href="/faq">FAQ</a></li>
                         <li><a href="/docs">Javadoc</a></li>
                     </ul>
diff --git a/_includes/themes/apache/footer.html b/_includes/themes/apache/footer.html
index 4a2d1f6..6d2989e 100644
--- a/_includes/themes/apache/footer.html
+++ b/_includes/themes/apache/footer.html
@@ -18,7 +18,7 @@
                 </div>
                 {% endif %}
                 <div>
-                    Copyright &copy; 2019-2020 <a href="http://www.apache.org">The Apache Software Foundation</a>.
+                    Copyright &copy; 2019-2021 <a href="http://www.apache.org">The Apache Software Foundation</a>.
                     Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version
                     2.0</a>.
                     <br>
diff --git a/_includes/themes/apache/tutorial.html b/_includes/themes/apache/tutorial.html
new file mode 100644
index 0000000..54a086d
--- /dev/null
+++ b/_includes/themes/apache/tutorial.html
@@ -0,0 +1,77 @@
+<div class="page-header">
+  <h1>{{ page.title }} {% if page.tagline %}<small>{{page.tagline}}</small>{% endif %}</h1>
+</div>
+
+<div class="row-fluid post-full">
+  <div class="span12">
+
+  {% unless page.categories == empty %}
+    <ul class="tag_box inline">
+      <li><i class="icon-folder-open"></i></li>
+      {% assign categories_list = page.categories %}
+      {% include JB/categories_list %}
+    </ul>
+  {% endunless %}  
+
+  {% unless page.tags == empty %}
+    <ul class="tag_box inline">
+      <li><i class="icon-tags"></i></li>
+      {% assign tags_list = page.tags %}
+      {% include JB/tags_list %}
+    </ul>
+  {% endunless %}  
+
+    <div class="pagination row col-md-12">
+      <div class="col-md-6">
+      {% if page.previous %}
+        {% for post in site.pages %}
+          {% if post.name == page.previous %}
+            {% assign previous = post %}
+            <a href="{{ BASE_PATH }}{{ previous.url }}" title="{{ previous.title }}">&larr; {{ previous.title }}</a><br/>
+          {% endif %}
+        {% endfor %}
+      {% endif %}
+      </div>
+      <div class="col-md-6" style="text-align: right;">
+      {% if page.next %}
+        {% for post in site.pages %}
+          {% if post.name == page.next %}
+            {% assign next = post %}
+            <a href="{{ BASE_PATH }}{{ next.url }}" title="{{ next.title }}">{{ next.title }} &rarr;</a><br/>
+          {% endif %}
+        {% endfor %}
+      {% endif %}
+      </div>
+    </div>
+    <hr>
+    <div class="date">
+      <span>{{ page.date | date_to_long_string }}</span>
+    </div>
+    <div class="content">
+      {{ content }}
+    </div>
+    <div class="pagination row col-md-12">
+      <div class="col-md-6">
+      {% if page.previous %}
+        {% for post in site.pages %}
+          {% if post.name == page.previous %}
+            {% assign previous = post %}
+            <a href="{{ BASE_PATH }}{{ previous.url }}" title="{{ previous.title }}">&larr; {{ previous.title }}</a><br/>
+          {% endif %}
+        {% endfor %}
+      {% endif %}
+      </div>
+      <div class="col-md-6" style="text-align: right;">
+      {% if page.next %}
+        {% for post in site.pages %}
+          {% if post.name == page.next %}
+            {% assign next = post %}
+            <a href="{{ BASE_PATH }}{{ next.url }}" title="{{ next.title }}">{{ next.title }} &rarr;</a><br/>
+          {% endif %}
+        {% endfor %}
+      {% endif %}
+      </div>
+    </div>
+    {% include JB/comments %}
+  </div>
+</div>
diff --git a/_layouts/news_item.md b/_layouts/news_item.md
new file mode 100644
index 0000000..036c436
--- /dev/null
+++ b/_layouts/news_item.md
@@ -0,0 +1,3 @@
+---
+layout: default
+---
\ No newline at end of file
diff --git a/_layouts/tutorial.html b/_layouts/tutorial.html
new file mode 100644
index 0000000..f89e5a6
--- /dev/null
+++ b/_layouts/tutorial.html
@@ -0,0 +1,5 @@
+---
+layout: default
+---
+{% include JB/setup %}
+{% include themes/apache/tutorial.html %}
diff --git a/publish.sh b/publish.sh
index 5a4418a..c50958c 100755
--- a/publish.sh
+++ b/publish.sh
@@ -86,6 +86,11 @@ cp -R build/docs/tuweni/* ../asf-site-branch/content/docs
 cd ..
 cd asf-site-branch
 
+#
+# Copy favicon to default location
+#
+cp content/assets/themes/apache/img/tuweni_face.ico content/favicon.ico
+
 
 #
 # Commit and push to gitbox
diff --git a/tutorials/creating-bytes.md b/tutorials/creating-bytes.md
new file mode 100644
index 0000000..399a8ec
--- /dev/null
+++ b/tutorials/creating-bytes.md
@@ -0,0 +1,138 @@
+---
+layout: tutorial
+title: Creating Bytes
+description: Creating Bytes
+group: nav-right
+categories: ["bytes"]
+previous: getting-started-with-bytes.md
+next: manipulating-bytes.md
+---
+
+# From a bytes array:
+
+You can create `Bytes` objects by wrapping a native byte array:
+
+{% highlight java %}
+Bytes bytes = Bytes.wrap(new byte[] {1, 2, 3, 4});
+{% endhighlight %}
+
+Note the underlying array is not copied - any change to the byte array will change the Bytes object's behavior.
+
+You can also wrap with an offset and a size to select a portion of the array:
+
+{% highlight java %}
+// wrapping with an offset of 2 and a size of one byte
+Bytes bytes = Bytes.wrap(new byte[] {1, 2, 3, 4}, 2, 1);
+{% endhighlight %}
+
+# From a hex string:
+
+You can create `Bytes` objects from a hexadecimal-encoded string with the [`fromHexString`](/docs/org.apache.tuweni.bytes/-bytes/from-hex-string.html) method:
+
+{% highlight java %}
+Bytes bytes = Bytes.fromHexString("0xdeadbeef");
+{% endhighlight %}
+
+The `"0x"` prefix is optional.
+
+However, this requires an even-sized string. For example, this succeeds:
+
+{% highlight java %}
+Bytes bytes = Bytes.fromHexString("01FF2A");
+{% endhighlight %}
+
+This fails:
+
+{% highlight java %}
+Bytes bytes = Bytes.fromHexString("1FF2A");
+{% endhighlight %}
+
+You can circumvent this with the [`fromHexStringLenient` method](/docs/org.apache.tuweni.bytes/-bytes/from-hex-string-lenient.html):
+
+{% highlight java %}
+Bytes bytes = Bytes.fromHexStringLenient("1FF2A");
+{% endhighlight %}
+
+# From a base64-encoded string:
+
+You can create `Bytes` objects from a base64-encoded string with the [`fromBase64String`](/docs/org.apache.tuweni.bytes/-bytes/from-base64-string.html) method:
+
+{% highlight java %}
+Bytes value = Bytes.fromBase64String("deadbeefISDAbest");
+{% endhighlight %}
+
+# From primitive types
+
+We also have convenience methods to create `Bytes` objects from primitive types.
+
+* [Bytes.of()](/docs/org.apache.tuweni.bytes/-bytes/of.html)
+
+[Bytes.of()](/docs/org.apache.tuweni.bytes/-bytes/of.html) takes a variadic argument of bytes:
+
+{% highlight java %}
+Bytes value = Bytes.of(0x00, 0x01, 0xff, 0x2a);
+{% endhighlight %}
+
+* [Bytes.ofUnsignedInt()](/docs/org.apache.tuweni.bytes/-bytes/of-unsigned-int.html)
+* [Bytes.ofUnsignedLong()](/docs/org.apache.tuweni.bytes/-bytes/of-unsigned-long.html)
+* [Bytes.ofUnsignedShort()](/docs/org.apache.tuweni.bytes/-bytes/of-unsigned-short.html)
+
+{% highlight java %}
+Bytes value = Bytes.ofUnsignedInt(42);
+{% endhighlight %}
+
+# More wrapping
+### Use [`Bytes.wrapByteBuf(buffer)`](/docs/org.apache.tuweni.bytes/-bytes/wrap-byte-buf.html) to wrap a Netty `ByteBuf` object as a `Bytes` object.
+
+{% highlight java %}
+ByteBuf buffer = Unpooled.buffer(42);
+Bytes.wrapByteBuf(buffer);
+{% endhighlight %}
+
+You can apply an offset and size parameter:
+
+{% highlight java %}
+Bytes value = Bytes.wrapByteBuf(buffer, 1, 1);
+{% endhighlight %}
+
+### Use [`Bytes.wrapByteBuffer(buffer)`](/docs/org.apache.tuweni.bytes/-bytes/wrap-byte-buffer.html) to wrap a `ByteBuffer` object as a `Bytes` object.
+
+{% highlight java %}
+Bytes.wrapByteBuffer(buffer);
+{% endhighlight %}
+
+You can apply an offset and size parameter:
+
+{% highlight java %}
+Bytes value = Bytes.wrapByteBuffer(buffer, 1, 1);
+{% endhighlight %}
+
+
+### Use [`Bytes.wrapBuffer(buffer)`](/docs/org.apache.tuweni.bytes/-bytes/wrap-byte-buffer.html) to wrap a Vert.x `Buffer` object as a `Bytes` object.
+
+{% highlight java %}
+Bytes.wrapBuffer(buffer);
+{% endhighlight %}
+
+You can apply an offset and size parameter:
+
+{% highlight java %}
+Bytes value = Bytes.wrapBuffer(buffer, 1, 1);
+{% endhighlight %}
+
+# Random
+
+You can create random bytes objects of a given length with the [Bytes.random() method](/docs/org.apache.tuweni.bytes/-bytes/random.html):
+
+{% highlight java %}
+// create a Bytes object of 20 bytes:
+Bytes.random(20);
+{% endhighlight %}
+
+Create a Bytes object with our own Random implementation:
+
+{% highlight java %}
+Random random = new SecureRandom();
+...
+Bytes.random(20, random);
+{% endhighlight %}
diff --git a/tutorials/extracting-values.md b/tutorials/extracting-values.md
new file mode 100644
index 0000000..f7126f9
--- /dev/null
+++ b/tutorials/extracting-values.md
@@ -0,0 +1,48 @@
+---
+layout: tutorial
+title: Extracting values
+description: Extracting values
+group: nav-right
+categories: ["bytes"]
+previous: manipulating-bytes.md
+next: mutable-bytes.md
+---
+
+You can extract values from a bytes object into native Java objects such as ints and longs, bytes, byte arrays and so on.
+
+Note all the methods here take an optional `ByteOrder` argument, defaulting to big endian by default.
+
+# toInt() and toLong()
+
+The [method `toInt()`](docs/org.apache.tuweni.bytes/-bytes/to-int.html) and the [method `toLong()`](/docs/org.apache.tuweni.bytes/-bytes/to-long.html) respectively translate the bytes values into an int or a long, requiring respectively the value to be at most 4 or 8 bytes long.
+
+# get(i)
+
+The [`get(i)` method](/docs/org.apache.tuweni.bytes/-bytes/get.html) provides the byte at index `i`.
+
+# getInt(i) and getLong(i)
+
+The [method `getInt()`](docs/org.apache.tuweni.bytes/-bytes/get-int.html) and the [method `getLong()`](/docs/org.apache.tuweni.bytes/-bytes/get-long.html) respectively return the next 4 or 8 bytes into an int or a long.
+
+# toArray() and toArrayUnsafe()
+
+The [method `toArray`](/docs/org.apache.tuweni.bytes/-bytes/to-array.html) copies the bytes of the object into a new bytes array.
+
+The [method `toArrayUnsafe`](/docs/org.apache.tuweni.bytes/-bytes/to-array-unsafe.html) makes available the underlying byte array of the object - modifying it changes the Bytes object. Note this is more performant as it doesn't allocate new memory.
+
+# To BigIntegers
+
+The [method `toUnsignedBigInteger`](/docs/org.apache.tuweni.bytes/-bytes/to-unsigned-big-integer.html) creates a new unsigned BigInteger object with the contents of the Bytes object.
+You can also use the method [`toBigInteger`](/docs/org.apache.tuweni.bytes/-bytes/to-big-integer.html) to represent Bytes as a signed integer, using the two's-complement representation.
+
+# Transforming Bytes into strings
+
+There is a sleuth of options to turn bytes into strings, and they all have different use cases.
+
+* The [method `toHexString`](/docs/org.apache.tuweni.bytes/-bytes/to-hex-string.html) provides the value represented as hexadecimal, starting with "0x".
+* The [method `toUnprefixedHexString`](/docs/org.apache.tuweni.bytes/-bytes/to-unprefixed-hex-string.html) provides the value represented as hexadecimal, no "0x" prefix though.
+* The [method `toShortHexString`](/docs/org.apache.tuweni.bytes/-bytes/to-short-hex-string.html) provides the value represented as a minimal hexadecimal string (without any leading zero).
+* The [method `toQuantityHexString`](/docs/org.apache.tuweni.bytes/-bytes/to-quantity-hex-string.html) provides the value represented as a minimal hexadecimal string (without any leading zero, except if it's valued zero or empty, in which case it returns 0x0).
+* The [method `toEllipsisHexString`](/docs/org.apache.tuweni.bytes/-bytes/to-ellipsis-hex-string.html) provides the first 3 bytes and last 3 bytes represented as hexadecimal strings, joined with an ellipsis (`...`).
+
+By default, `toString()` calls `toHexString()`.
\ No newline at end of file
diff --git a/tutorials/getting-started-with-bytes.md b/tutorials/getting-started-with-bytes.md
new file mode 100644
index 0000000..9e50969
--- /dev/null
+++ b/tutorials/getting-started-with-bytes.md
@@ -0,0 +1,33 @@
+---
+layout: tutorial
+title: Getting Started with Bytes
+description: Getting Started with Bytes
+group: nav-right
+categories: ["bytes"]
+previous: index.md
+next: creating-bytes.md
+---
+Apache Tuweni provides support for manipulating bytes.
+
+To get started, install the `bytes` library.
+
+With Maven:
+
+{% highlight xml %}
+<dependency>
+  <groupId>org.apache.tuweni</groupId>
+  <artifactId>bytes</artifactId>
+  <version>{{site.data.project.latest_release}}</version>
+</dependency>
+{% endhighlight %}
+
+Or using Gradle:
+
+{% highlight groovy %}
+implementation("org.apache.tuweni:bytes:{{site.data.project.latest_release}}")
+{% endhighlight %}
+
+The [bytes library](/docs/org.apache.tuweni.bytes/index.html) revolves mainly around the [`Bytes`](/docs/org.apache.tuweni.bytes/-bytes/index.html) interface.
+
+This tutorial goes over the main uses of `Bytes`, from creating them to manipulating them.
+
diff --git a/tutorials/index.md b/tutorials/index.md
new file mode 100644
index 0000000..c7ffe1a
--- /dev/null
+++ b/tutorials/index.md
@@ -0,0 +1,12 @@
+---
+layout: tutorial
+title: Tutorials
+description: Tutorials
+group: nav-right
+---
+
+# Getting started with bytes
+
+In this tutorial, we explain in detail how to use the bytes library of Apache Tuweni.
+
+## [Start tutorial](getting-started-with-bytes)
\ No newline at end of file
diff --git a/tutorials/manipulating-bytes.md b/tutorials/manipulating-bytes.md
new file mode 100644
index 0000000..7a1b8a3
--- /dev/null
+++ b/tutorials/manipulating-bytes.md
@@ -0,0 +1,67 @@
+---
+layout: tutorial
+title: Manipulating Bytes
+description: Manipulating Bytes
+group: nav-right
+categories: ["bytes"]
+previous: creating-bytes.md
+next: extracting-values.md
+---
+
+# Concatenating and wrapping
+
+You can [concatenate](/docs/org.apache.tuweni.bytes/-bytes/concatenate.html) or [wrap](/docs/org.apache.tuweni.bytes/-bytes/wrap.html) bytes objects.
+
+When concatenating, the underlying objects are copied into a new bytes object.
+
+When wrapping, you are creating a *view* made of the underlying bytes objects. If their values change, the wrapped view changes as well.
+
+Of course, wrapping is preferrable to avoid copying bytes in memory.
+
+# Copying and slicing
+
+In the same spirit as above, you can [copy](/docs/org.apache.tuweni.bytes/-bytes/copy.html) or [slice](/docs/org.apache.tuweni.bytes/-bytes/slice.html) bytes objects. When you slice a bytes object, you create a view of the original bytes object, and the slice will change if the underlying bytes object changes. If you copy instead, you create a new copy of the bytes.
+
+{%highlight java%}
+// slice from the second byte:
+bytes.slice(2);
+// slice from the second byte to the fifth byte:
+bytes.slice(2, 5);
+{%endhighlight%}
+
+# Shifting bytes
+
+You can shift [right](/docs/org.apache.tuweni.bytes/-bytes/shift-right.html) and [left](/docs/org.apache.tuweni.bytes/-bytes/shift-left.html) the bits of a bytes object by a given distance.
+
+This is equivalent to the `<<<` or `>>>` operators in Java.
+
+# xor, or, and
+
+You can apply boolean operations to Bytes objects.
+
+* [xor](/docs/org.apache.tuweni.bytes/-bytes/xor.html)
+* [or](/docs/org.apache.tuweni.bytes/-bytes/or.html)
+* [and](/docs/org.apache.tuweni.bytes/-bytes/and.html)
+
+Those methods take as argument the value to compare this value with, and return a new Bytes object that is the result of the boolean operation.
+
+If the argument and the value are different lengths, then the shorter will be zero-padded to the left.
+
+{%highlight java%}
+Bytes value = Bytes.fromHexString("0x01000001").xor(Bytes.fromHexString("0x01000000"));
+assertEquals(Bytes.fromHexString("0x00000001"), value);
+{%endhighlight%}
+
+# not
+
+The [`not` method](https://tuweni.apache.org/docs/org.apache.tuweni.bytes/-bytes/not.html) returns a bit-wise NOT of the bytes.
+
+{%highlight java%}
+Bytes value = Bytes.fromHexString("0x01000001").not();
+assertEquals(Bytes.fromHexString("0xfefffffe"), value);
+{%endhighlight%}
+
+# commonPrefix
+
+The [`commonPrefix` method](https://tuweni.apache.org/docs/org.apache.tuweni.bytes/-bytes/common-prefix.html) returns the common bytes both the value and the argument start with.
+
diff --git a/tutorials/mutable-bytes.md b/tutorials/mutable-bytes.md
new file mode 100644
index 0000000..87cc26b
--- /dev/null
+++ b/tutorials/mutable-bytes.md
@@ -0,0 +1,47 @@
+---
+layout: tutorial
+title: Mutable Bytes
+description: Mutable Bytes
+group: nav-right
+categories: ["bytes"]
+previous: manipulating-bytes.md
+---
+
+
+By default, bytes objects are not mutable. You can use [`MutableBytes` objects](/docs/org.apache.tuweni.bytes/-mutable-bytes/index.html) instead.
+
+# Creating MutableBytes objects
+
+The methods described in the [tutorial "Creating Bytes"](/tutorials/creating-bytes) all work in the same way for `MutableBytes`.
+
+You can call the [method `mutableCopy()`](/docs/org.apache.tuweni.bytes/-mutable-bytes/mutable-copy.html) on any Bytes object to get a copy of the Bytes object as mutable.
+
+Finally, you can create fresh objects with the [`create()` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/create.html).
+
+# Fill, Clear
+
+Fill a MutableBytes with the same byte the [fill method](/docs/org.apache.tuweni.bytes/-mutable-bytes/fill.html):
+
+{%highlight java%}
+MutableBytes bytes = MutableBytes.create(2);
+bytes.fill((byte) 34);
+assertEquals(Bytes.fromHexString("0x2222"), bytes);
+{%endhighlight%}
+
+You can clear the contents with the [`clear` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/clear.html):
+
+{%highlight java%}
+MutableBytes bytes = MutableBytes.fromHexString("0xdeadbeef");
+bytes.clear();
+{%endhighlight%}
+
+# Setting values
+
+You can set values with different arguments:
+
+* The [`set(int i, byte b)` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/set.html) sets the value of a byte at index `i`.
+* The [`setInt(int i, int value)` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/set-int.html) sets the value of the next four bytes at index `i`.
+* The [`setLong(int i, long value)` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/set-long.html) sets the value of the next eight bytes at index `i`.
+* The [`set(int offset, Bytes bytes)` method](/docs/org.apache.tuweni.bytes/-mutable-bytes/set.html) sets the value of the next bytes at index `i`.
+
+

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 23/25: Add hobbits-relayer example use

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit f72f1ab408a5270ed47370077d8333896163f928
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Mon Jan 4 23:41:15 2021 -0800

    Add hobbits-relayer example use
---
 tutorials/apps/hobbits-relayer.md | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/tutorials/apps/hobbits-relayer.md b/tutorials/apps/hobbits-relayer.md
new file mode 100644
index 0000000..5a1a908
--- /dev/null
+++ b/tutorials/apps/hobbits-relayer.md
@@ -0,0 +1,37 @@
+---
+layout: tutorial
+title: Hobbits Relayer
+description: Hobbits Relayer
+group: nav-right
+previous: index.md
+categories: [applications]
+---
+
+The `hobbits-relayer` application showcases how to use the Hobbits protocol to pass messages between different networks.
+
+{%highlight bash%}
+hobbits-relayer --help
+Usage: <main class> [-h] [-b=<bind>] [-t=<to>]
+  -b, --bind=<bind>   Endpoint to bind to
+  -h, --help          Prints usage prompt
+  -t, --to=<to>       Endpoint to relay to
+{%endhighlight%}
+
+Example use:
+
+Relay messages over TCP from port 21000 to 22000:
+{%highlight bash%}
+hobbits-relayer -b tcp://localhost:21000 -t tcp://localhost:22000
+{%endhighlight%}
+
+Relay messages over UDP from port 2222 to 4444:
+{%highlight bash%}
+hobbits-relayer -b udp://localhost:2222 -t udp://localhost:4444
+{%endhighlight%}
+
+Relay messages from a Web Socket port 2222 to a TCP server on 4444:
+{%highlight bash%}
+hobbits-relayer -b ws://localhost:2222 -t tcp://localhost:4444
+{%endhighlight%}
+
+

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 02/25: Update to 1.1.0

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit fb52b9001b1a9981595c23d09c45485543a6bf16
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Fri Jul 10 17:37:48 2020 -0700

    Update to 1.1.0
---
 _data/project.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/_data/project.yml b/_data/project.yml
index 7fc4928..5acaca3 100644
--- a/_data/project.yml
+++ b/_data/project.yml
@@ -24,7 +24,7 @@ tagline: Jumpstart your next blockchain application
 description: Apache Tuweni is a set of libraries and other tools to aid development of blockchain and other decentralized software written in Java and Kotlin.
 
 download: /download
-latest_release: 1.0.0
+latest_release: 1.1.0
 
 dev_list: dev@tuweni.incubator.apache.org
 dev_list_subscribe: dev-subscribe@tuweni.incubator.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 01/25: Merge pull request #2 from apache/dependabot/bundler/nokogiri-1.10.5

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 67826c70f78666881c8ade21e1bff77be9ee24a6
Merge: cb00124 7c9e2d2
Author: Antoine Toulme <at...@users.noreply.github.com>
AuthorDate: Sat May 2 15:46:56 2020 -0700

    Merge pull request #2 from apache/dependabot/bundler/nokogiri-1.10.5
    
    Bump nokogiri from 1.10.2 to 1.10.5

 Gemfile.lock | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 19/25: Add unsigned ints classes

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit b8da6d974247e76fa63e100ee46cce8de45a0d64
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sat Jan 2 23:28:08 2021 -0800

    Add unsigned ints classes
---
 tutorials/own-uints-class.md  | 23 +++++++++++++++++++++++
 tutorials/uints-operations.md |  1 +
 2 files changed, 24 insertions(+)

diff --git a/tutorials/own-uints-class.md b/tutorials/own-uints-class.md
new file mode 100644
index 0000000..12e0279
--- /dev/null
+++ b/tutorials/own-uints-class.md
@@ -0,0 +1,23 @@
+---
+layout: tutorial
+title: Creating your own unsigned integer class
+description: Creating your own unsigned integer class
+group: nav-right
+categories: ["units", "bigints"]
+previous: uint-operations.md
+---
+
+You can create your own domain class based off the `Uints`. A good example is the [`Wei class`](/docs/org.apache.tuweni.units.ethereum/-wei/index.html).
+
+You will need to provide the super constructor the constructor of your class.
+
+{%highlight java%}
+public final class Wei extends BaseUInt256Value<Wei> {
+...
+  private Wei(UInt256 bytes) {
+    super(bytes, Wei::new);
+  }
+...
+}
+{%endhighlight%}
+
diff --git a/tutorials/uints-operations.md b/tutorials/uints-operations.md
index 4180c6a..7498124 100644
--- a/tutorials/uints-operations.md
+++ b/tutorials/uints-operations.md
@@ -5,6 +5,7 @@ description: Unsigned Integers operations
 group: nav-right
 categories: ["units", "bigints"]
 previous: creating-uints.md
+next: own-uints-class.md
 ---
 
 `Uints` are immutable, so all operations create a new object as the result of the operation.

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 22/25: cover net lib

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit f9cdf175711a53e17f53b6fa03aa8714ac99514f
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Jan 3 01:37:48 2021 -0800

    cover net lib
---
 tutorials/networking/getting-started-with-net.md | 68 ++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/tutorials/networking/getting-started-with-net.md b/tutorials/networking/getting-started-with-net.md
index 7973870..77b8f1d 100644
--- a/tutorials/networking/getting-started-with-net.md
+++ b/tutorials/networking/getting-started-with-net.md
@@ -24,3 +24,71 @@ Or using Gradle:
 implementation("org.apache.tuweni:net:{{site.data.project.latest_release}}")
 {% endhighlight %}
 
+If you haven't already, you will also need to add Bouncy Castle to your dependencies, and add the Bouncy Castle Security Provider to Java.
+
+{% highlight java %}
+Security.addProvider(new BouncyCastleProvider());
+{% endhighlight %}
+
+# Permissions
+
+Since we're engaging in peer-to-peer applications, we will define different scenarios for trust.
+
+First off, we will engage in two-way certificate authentication. The server will provide its certificate to the client and the client will also need to provide its identity.
+
+All those settings are taken after the [Constellation private enclave network options](https://github.com/consensys/constellation).
+
+## CA
+By default, Java uses Certificate Authorities on the machine to authenticate a trusted certificate.
+
+## Recording
+We can also choose to record the fingerprints of incoming connections while authorizing all of them.
+
+## Trust On First Use (TOFU)
+In this setting, incoming connections are recorded, and their certificates are collected, but only the first certificate assigned to a connection is allowed.
+
+This is a good way to mitigate MITM attacks.
+
+## Whitelist
+
+Only explicit hosts and certificate combinations are allowed.
+
+# TrustManagerFactories
+
+[`TrustManagerFactory` implementations](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/javax/net/ssl/TrustManagerFactory.html) provide trust with JDK and most Java-based servers.
+
+The [`TrustManagerFactories` API](/docs/org.apache.tuweni.net.tls/-trust-manager-factories/index.html) creates `TrustManagerFactory` objects for client and server communications.
+
+As an example, the following method creates a `TrustManagerFactory` that records incoming connections into a `knownServersFile`, but only the ones that don't have a signed CA certificate.
+
+{%highlight java%}
+TrustManagerFactories.recordServerFingerprints(knownServersFile, false);
+{%endhighlight%}
+
+# VertxTrustOptions
+
+The [`VertxTrustOptions` API](/docs/org.apache.tuweni.net.tls/-vertx-trust-options/index.html) is a quick drop-in API to configure Vert.x servers and clients for communications.
+
+In the example below, we set a server to require client authentication and trust clients on first access (TOFU).
+{%highlight java%}
+HttpServerOptions options = new HttpServerOptions();
+options.setSsl(true)
+       .setClientAuth(ClientAuth.REQUIRED)
+       .setPemKeyCertOptions(serverCert.keyCertOptions())
+       .setTrustOptions(VertxTrustOptions.trustClientOnFirstAccess(knownClientsFile))
+       .setIdleTimeout(1500)
+       .setReuseAddress(true)
+       .setReusePort(true);
+httpServer = vertx.createHttpServer(options);
+{%endhighlight%}
+
+In this example, we set a HTTP client to communicate with servers that are whitelisted only (and not even trust CA-signed certificates):
+{%highlight java%}
+HttpClientOptions options = new HttpClientOptions();
+options.setSsl(true)
+       .setTrustOptions(VertxTrustOptions.whitelistServers(knownServersFile, false))
+       .setConnectTimeout(1500)
+       .setReuseAddress(true)
+       .setReusePort(true);
+client = vertx.createHttpClient(options);
+{%endhighlight%}

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 04/25: remove dead link

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit d71420cb3ed3c37b24b590a0f6e4ab1c53b230be
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Thu Oct 1 01:41:13 2020 -0700

    remove dead link
---
 community.md | 2 --
 1 file changed, 2 deletions(-)

diff --git a/community.md b/community.md
index cd02713..31ad962 100644
--- a/community.md
+++ b/community.md
@@ -38,8 +38,6 @@ You can:
 * Report bugs and submit patches.
 * Contribute code, javadocs, documentation.
 
-Visit the [Contributing] page for more information.
-
 ### Mailing list
 
 Get help using {{ site.data.project.short_name }} or contribute to the project on our mailing lists:

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 11/25: make publish work well on dev laptop

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit d7d5956f1427df91bf1f854a614a4cd780d7e326
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 22:19:44 2020 -0700

    make publish work well on dev laptop
---
 publish.sh | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/publish.sh b/publish.sh
index 39d4626..246f335 100755
--- a/publish.sh
+++ b/publish.sh
@@ -22,6 +22,10 @@
 # git clone https://github.com/apache/incubator-tuweni-website.git master-branch
 # asf-site-branch (pushing):
 # git clone https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git asf-site-branch
+TEMPDIR="$(mktemp  -d -t tuweni-site-XXXXXXX)"
+cd $TEMPDIR
+git clone https://github.com/apache/incubator-tuweni-website.git master-branch
+git clone https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git asf-site-branch
 
 #
 # Testing:
@@ -92,6 +96,7 @@ if [ $? -ne 0 ]; then
     echo "Push failed."
     exit 3
 fi
+rm -Rf $TEMPDIR
 echo "Done."
 
 

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 18/25: Add uints operations

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 069d401f1ae6950f06c89f737e6609f6a80f4c1e
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sat Jan 2 23:19:14 2021 -0800

    Add uints operations
---
 tutorials/creating-uints.md   | 36 ++++++++++++++++++++++++-
 tutorials/uints-operations.md | 61 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 96 insertions(+), 1 deletion(-)

diff --git a/tutorials/creating-uints.md b/tutorials/creating-uints.md
index 49827cc..4e00855 100644
--- a/tutorials/creating-uints.md
+++ b/tutorials/creating-uints.md
@@ -5,6 +5,40 @@ description: Creating Uints
 group: nav-right
 categories: ["units", "bigints"]
 previous: getting-started-with-units.md
+next: uints-operations.md
 ---
 
-TODO
\ No newline at end of file
+NOTE: We are going to use the [`UInt256` class](/docs/org.apache.tuweni.units.bigints/-u-int256/index.html) for all examples, but the same behaviors are possible with the [`UInt384`](/docs/org.apache.tuweni.units.bigints/-u-int384/index.html), [`UInt64`](/docs/org.apache.tuweni.units.bigints/-u-int64/index.html), [`UInt32`](/docs/org.apache.tuweni.units.bigints/-u-int32/index.html) classes.
+
+We refer to those classes as `UInt`.
+
+# Creating Uints
+
+## `valueOf`
+
+You can initialize a `UInt` with the [static method `valueOf`](/docs/org.apache.tuweni.units.bigints/-u-int256/value-of.html), with an integer, a long, or a BigInteger object. This only accepts positive values.
+
+{%highlight java%}
+// from an int
+UInt256 value = UInt256.valueOf(42);
+// from a long
+UInt256 value = UInt256.valueOf(42L);
+// from a BigInteger
+UInt256 value = UInt256.valueOf(BigInteger.ONE);
+{%endhighlight%}
+
+## `fromBytes`
+
+You can initialize a `UInt` from a `Bytes` object, using the [`fromBytes` method](/docs/org.apache.tuweni.units.bigints/-u-int256/from-bytes.html).
+
+{%highlight java%}
+UInt256 value = UInt256.fromBytes(Bytes.wrap(new byte[] {0x01, 0x02, 0x03}));
+{%endhighlight%}
+
+## `fromHexString`
+
+You can initialize a `UInt` from a string representing a hexadecimal encoding of bytes, with an optional prefix of `0x`.
+
+{%highlight java%}
+UInt256 value = UInt256.fromHexString("0xdeadbeef");
+{%endhighlight%}
diff --git a/tutorials/uints-operations.md b/tutorials/uints-operations.md
new file mode 100644
index 0000000..4180c6a
--- /dev/null
+++ b/tutorials/uints-operations.md
@@ -0,0 +1,61 @@
+---
+layout: tutorial
+title: Unsigned Integers operations
+description: Unsigned Integers operations
+group: nav-right
+categories: ["units", "bigints"]
+previous: creating-uints.md
+---
+
+`Uints` are immutable, so all operations create a new object as the result of the operation.
+
+# Arithmetic operations
+
+## Adding and subtracting
+
+* [`add(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/add.html)
+* [`substract(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/subtract.html)
+
+Since these are bound integers, they will overflow and underflow if the operation returns a value outside the boundaries - for a `Uint256`, 0 to 2^256.
+
+For this reason, the API also contains `exact` methods that throw exceptions if the operations overflows or underflows.
+
+* [`addExact(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/add-exact.html)
+* [`subtractExact(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/subtract-exact.html)
+
+## Multiplying and dividing
+
+* [`multiply(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/multiply.html)
+* [`divide(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/divide.html)
+
+Additionally, the [method `divideCeil(other)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/divide-ceil.html) divides integers but returns the ceiling of the rounding.
+
+{%highlight java%}
+UInt256 result = UInt256.valueOf(12L).divide(UInt256.valueOf(5L)); // returns 2
+UInt256 resultCeiling = UInt256.valueOf(12L).divideCeil(UInt256.valueOf(5L)); // returns 3
+{%endhighlight%}
+
+## Modulus
+
+You can use the [method `mod(divisor)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/mod.html) to get the modulus of the value by the divisor.
+
+The [method `mod0`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/mod0.html) is more forgiving - if you divide by zero, it will return zero instead of throwing an exception.
+
+## Power
+
+The [method `pow(exponent)`](/docs/org.apache.tuweni.units.bigints/-u-int256-value/pow.html) returns a value that is `value^exponent mod 2^256.
+
+# Boolean operations
+
+You can use the following methods to perform boolean operations:
+
+* [`not()`: bit-wise NOT of this value.](/docs/org.apache.tuweni.units.bigints/-u-int256/not.html)
+* [`and(other)`: bit-wise AND of this value and the supplied value.](/docs/org.apache.tuweni.units.bigints/-u-int256/and.html)
+* [`or(other)`: bit-wise OR of this value and the supplied value.](/docs/org.apache.tuweni.units.bigints/-u-int256/or.html)
+* [`xor(other)`: bit-wise XOR of this value and the supplied value.](/docs/org.apache.tuweni.units.bigints/-u-int256/xor.html)
+
+# Shifting bytes
+
+You can shift [right](/docs/org.apache.tuweni.units.bigints/-u-int256/shift-right.html) and [left](/docs/org.apache.tuweni.units.bigints/-u-int256/shift-left.html) the bits of the underlying bytes object by a given distance.
+
+This is equivalent to the `<<<` or `>>>` operators in Java.
\ No newline at end of file

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 06/25: Remove old downloads

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 7632fb80ca29562065b448d871d16edfe7379fef
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 15:32:32 2020 -0700

    Remove old downloads
---
 download.md | 31 ++-----------------------------
 1 file changed, 2 insertions(+), 29 deletions(-)

diff --git a/download.md b/download.md
index 575fb9e..405df8b 100644
--- a/download.md
+++ b/download.md
@@ -65,36 +65,9 @@ limitations under the License.
             <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-src-{{site.data.project.latest_release}}-incubating.zip.asc">ASC</a></td>
         </tr>
         <tr>
-            <td>{{ site.data.project.name }} {{site.data.project.latest_release}} (Gossip application tgz)</td>
-            <td><a href="https://www.apache.org/dyn/closer.lua/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.tgz">tgz</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.tgz.sha512">SHA-512</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.tgz.asc">ASC</a></td>
-        </tr>
-        <tr>
-            <td>{{ site.data.project.name }} {{site.data.project.latest_release}} (Gossip application zip)</td>
-            <td><a href="https://www.apache.org/dyn/closer.lua/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.zip">zip</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.zip.sha512">SHA-512</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-gossip-{{site.data.project.latest_release}}-incubating.zip.asc">ASC</a></td>
-        </tr>
-        <tr>
-            <td>{{ site.data.project.name }} {{site.data.project.latest_release}} (Relayer application tgz)</td>
-            <td><a href="https://www.apache.org/dyn/closer.lua/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.tgz">tgz</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.tgz.sha512">SHA-512</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.tgz.asc">ASC</a></td>
-        </tr>
-        <tr>
-            <td>{{ site.data.project.name }} {{site.data.project.latest_release}} (Relayer application zip)</td>
-            <td><a href="https://www.apache.org/dyn/closer.lua/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.zip">zip</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.zip.sha512">SHA-512</a></td>
-            <td><a href="https://downloads.apache.org/{{site.data.project.incubator_slash_name}}/{{site.data.project.latest_release}}-incubating/{{site.data.project.unix_name}}-relayer-{{site.data.project.latest_release}}-incubating.zip.asc">ASC</a></td>
-        </tr>
-        <!--tr>
             <td>Release Notes</td>
-            <td><a href="/releases/spark/{{ site.data.project.latest_release }}/release-notes">{{ site.data.project.latest_release }}</a></td>
-            <td></td>
-            <td></td>
-            <td></td>
-        </tr-->
+            <td><a href="https://github.com/apache/incubator-tuweni/releases/tag/v{{ site.data.project.latest_release }}-incubating/">{{ site.data.project.latest_release }}</a></td>
+        </tr>
     </tbody>
 </table>
 

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 10/25: add periods

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 4d35d16a80978fc97527f4616425e4bc7b145355
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 22:19:22 2020 -0700

    add periods
---
 community.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/community.md b/community.md
index 7ea85c3..a901548 100644
--- a/community.md
+++ b/community.md
@@ -87,8 +87,8 @@ We use <a href="https://github.com/apache/incubator-tuweni/issues">Github for bu
 
 ### Source Code
 
-The project sources are accessible via the [source code repository]({{ site.data.project.source_repository }}) which is also mirrored at [Apache]({{ site.data.project.source_repository_mirror }})
+The project sources are accessible via the [source code repository]({{ site.data.project.source_repository }}) which is also mirrored at [Apache]({{ site.data.project.source_repository_mirror }}).
 
 ### Website Source Code
 
-The project website sources are accessible via the [website source code repository]({{ site.data.project.website_repository }}) which is also mirrored at [Apache]({{ site.data.project.website_repository_mirror }})
+The project website sources are accessible via the [website source code repository]({{ site.data.project.website_repository }}) which is also mirrored at [Apache]({{ site.data.project.website_repository_mirror }}).

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 16/25: add newline in footer

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 2cb869c6c6069a5b976dddcfa13fdfd78af186ce
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sat Jan 2 08:42:38 2021 -0800

    add newline in footer
---
 _includes/themes/apache/footer.html | 1 +
 1 file changed, 1 insertion(+)

diff --git a/_includes/themes/apache/footer.html b/_includes/themes/apache/footer.html
index 6d2989e..c58508f 100644
--- a/_includes/themes/apache/footer.html
+++ b/_includes/themes/apache/footer.html
@@ -19,6 +19,7 @@
                 {% endif %}
                 <div>
                     Copyright &copy; 2019-2021 <a href="http://www.apache.org">The Apache Software Foundation</a>.
+                    <br>
                     Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version
                     2.0</a>.
                     <br>

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 14/25: Add javadocs to website

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 94dc05bed4d0dedce679d32b684e5118f176d015
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Thu Dec 31 15:12:51 2020 -0800

    Add javadocs to website
---
 .gitignore                               |  1 +
 _includes/themes/apache/_navigation.html |  1 +
 publish.sh                               | 15 +++++++++++++++
 3 files changed, 17 insertions(+)

diff --git a/.gitignore b/.gitignore
index f083a5c..5e7a819 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
 .sass-cache
 target
 .bundle
+.DS_Store
diff --git a/_includes/themes/apache/_navigation.html b/_includes/themes/apache/_navigation.html
index 3c6e8fb..fcc5015 100644
--- a/_includes/themes/apache/_navigation.html
+++ b/_includes/themes/apache/_navigation.html
@@ -31,6 +31,7 @@
                     <a href="#" data-toggle="dropdown" class="dropdown-toggle">Docs<b class="caret"></b></a>
                     <ul class="dropdown-menu dropdown-left">
                         <li><a href="/faq">FAQ</a></li>
+                        <li><a href="/docs">Javadoc</a></li>
                     </ul>
                 </li>
                 <li><a href="{{ site.data.project.source_repository }}">GitHub</a></li>
diff --git a/publish.sh b/publish.sh
index 246f335..5a4418a 100755
--- a/publish.sh
+++ b/publish.sh
@@ -26,6 +26,7 @@ TEMPDIR="$(mktemp  -d -t tuweni-site-XXXXXXX)"
 cd $TEMPDIR
 git clone https://github.com/apache/incubator-tuweni-website.git master-branch
 git clone https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git asf-site-branch
+git clone https://github.com/apache/incubator-tuweni.git code
 
 #
 # Testing:
@@ -71,6 +72,20 @@ git fetch origin asf-site
 git pull origin asf-site
 
 cp -R ../master-branch/target/* content
+cd ..
+
+#
+# Generate javadocs
+#
+cd code
+gradle setup
+./gradlew dokka
+mkdir -p ../asf-site-branch/content/docs
+cp build/docs/style.css ../asf-site-branch/content/style.css
+cp -R build/docs/tuweni/* ../asf-site-branch/content/docs
+cd ..
+cd asf-site-branch
+
 
 #
 # Commit and push to gitbox

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 09/25: Fix bug info

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit b52dcb6bb0e5b464b96ecb38ce15fde845b120e0
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Sun Oct 18 22:10:10 2020 -0700

    Fix bug info
---
 _includes/themes/apache/default.html |  3 +-
 _includes/themes/apache/footer.html  |  2 +-
 community.md                         | 55 +++++++++++++++++++++---------------
 3 files changed, 36 insertions(+), 24 deletions(-)

diff --git a/_includes/themes/apache/default.html b/_includes/themes/apache/default.html
index d923cfe..3e51f5e 100644
--- a/_includes/themes/apache/default.html
+++ b/_includes/themes/apache/default.html
@@ -30,6 +30,7 @@
     <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
     <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
   -->
+  <script src="{{ ASSET_PATH }}/jquery/jquery-2.1.1.min.js"></script>
 
   </head>
 
@@ -47,7 +48,7 @@
     </div>
 
     {% include JB/analytics %}
-    <script src="{{ ASSET_PATH }}/jquery/jquery-2.1.1.min.js"></script>
+    
 
     <script src="{{ ASSET_PATH }}/bootstrap/js/bootstrap.min.js"></script>
 
diff --git a/_includes/themes/apache/footer.html b/_includes/themes/apache/footer.html
index debd3f5..4a2d1f6 100644
--- a/_includes/themes/apache/footer.html
+++ b/_includes/themes/apache/footer.html
@@ -18,7 +18,7 @@
                 </div>
                 {% endif %}
                 <div>
-                    Copyright &copy; 2019 <a href="http://www.apache.org">The Apache Software Foundation</a>.
+                    Copyright &copy; 2019-2020 <a href="http://www.apache.org">The Apache Software Foundation</a>.
                     Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version
                     2.0</a>.
                     <br>
diff --git a/community.md b/community.md
index 31ad962..7ea85c3 100644
--- a/community.md
+++ b/community.md
@@ -51,33 +51,44 @@ Get help using {{ site.data.project.short_name }} or contribute to the project o
 
 ### Issue tracker
 
-
-
-#### Bug Reports
-
-Found bug? Enter an issue in the [Issue Tracker](https://github.com/apache/incubator-tuweni/issues).
-
-Before submitting an issue, please:
-
-* Verify that the bug does in fact exist.
-* Search the issue tracker to verify there is no existing issue reporting the bug you've found.
-* Consider tracking down the bug yourself in the Wink's source and submitting a patch along with your bug report. This is a great time saver for the Wink developers and helps ensure the bug will be fixed quickly.
-
-
-
-#### Feature Requests
-
-Enhancement requests for new features are also welcome. The more concrete and rationale the request is, the greater the chance it will incorporated into future releases.
-
-
-  [https://github.com/apache/incubator-tuweni/issues](https://github.com/apache/incubator-tuweni/issues)
-
+We use <a href="https://github.com/apache/incubator-tuweni/issues">Github for bug reports and feature requests</a>, with <span id="open">(loading)</span> issues.
+
+<div>
+  <table class="table table-bordered table-hover">
+    <thead>
+      <tr>
+      <th  style="min-width:50px">
+        #
+      </th>
+      <th>
+        Title
+      </th>
+      </tr>
+    </thead>
+    <tbody id="github-issues">
+    </tbody>
+  </table>
+</div>
+
+<script>
+    var urlToGetAllOpenBugs = "https://api.github.com/repos/apache/incubator-tuweni/issues?state=open";
+
+    $(document).ready(function () {
+        $.getJSON(urlToGetAllOpenBugs, function (allIssues) {
+            $("span#open").text(allIssues.length);
+            $.each(allIssues, function (i, issue) {
+
+                $("tbody#github-issues")
+                    .append("<tr><td><a href=\"" + issue.html_url + "\"><strong>#" + issue.number + "</strong></a></td><td><a href=\"" + issue.html_url + "\">" + issue.title + "</a></td></tr>");
+            });
+        });
+    });
+</script>
 
 ### Source Code
 
 The project sources are accessible via the [source code repository]({{ site.data.project.source_repository }}) which is also mirrored at [Apache]({{ site.data.project.source_repository_mirror }})
 
-
 ### Website Source Code
 
 The project website sources are accessible via the [website source code repository]({{ site.data.project.website_repository }}) which is also mirrored at [Apache]({{ site.data.project.website_repository_mirror }})

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org


[incubator-tuweni-website] 03/25: Fix dead links and remove mentions of jira

Posted by hu...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

humbedooh pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-tuweni-website.git

commit 1516e90284d560f32f22612b6b1da8b3465186da
Author: Antoine Toulme <an...@lunar-ocean.com>
AuthorDate: Wed Sep 30 22:27:07 2020 -0700

    Fix dead links and remove mentions of jira
---
 _data/project.yml | 24 ++++++++++++------------
 community.md      |  4 ++--
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/_data/project.yml b/_data/project.yml
index 5acaca3..b873e56 100644
--- a/_data/project.yml
+++ b/_data/project.yml
@@ -26,25 +26,25 @@ description: Apache Tuweni is a set of libraries and other tools to aid developm
 download: /download
 latest_release: 1.1.0
 
-dev_list: dev@tuweni.incubator.apache.org
-dev_list_subscribe: dev-subscribe@tuweni.incubator.apache.org
-dev_list_unsubscribe: dev-unsubscribe@tuweni.incubator.apache.org
+dev_list: dev@tuweni.apache.org
+dev_list_subscribe: dev-subscribe@tuweni.apache.org
+dev_list_unsubscribe: dev-unsubscribe@tuweni.apache.org
 dev_list_archive: http://mail-archives.apache.org/mod_mbox/tuweni-dev/
-dev_list_archive_mailarchive: https://www.mail-archive.com/dev@tuweni.incubator.apache.org/
+dev_list_archive_mailarchive: https://www.mail-archive.com/dev@tuweni.apache.org/
 dev_list_archive_markmail:
 
-user_list: users@tuweni.incubator.apache.org
-user_list_subscribe: users-subscribe@tuweni.incubator.apache.org
-user_list_unsubscribe: users-unsubscribe@tuweni.incubator.apache.org
+user_list: users@tuweni.apache.org
+user_list_subscribe: users-subscribe@tuweni.apache.org
+user_list_unsubscribe: users-unsubscribe@tuweni.apache.org
 user_list_archive: http://mail-archives.apache.org/mod_mbox/tuweni-users/
-user_list_archive_mailarchive: https://www.mail-archive.com/users@tuweni.incubator.apache.org/
+user_list_archive_mailarchive: https://www.mail-archive.com/users@tuweni.apache.org/
 user_list_archive_markmail:
 
-commits_list: commits@tuweni.incubator.apache.org
-commits_list_subscribe: commits-subscribe@tuweni.incubator.apache.org
-commits_list_unsubscribe: commits-unsubscribe@tuweni.incubator.apache.org
+commits_list: commits@tuweni.apache.org
+commits_list_subscribe: commits-subscribe@tuweni.apache.org
+commits_list_unsubscribe: commits-unsubscribe@tuweni.apache.org
 commits_list_archive: http://mail-archives.apache.org/mod_mbox/tuweni-commits/
-commits_list_archive_mailarchive: https://www.mail-archive.com/commits@tuweni.incubator.apache.org/
+commits_list_archive_mailarchive: https://www.mail-archive.com/commits@tuweni.apache.org/
 commits_list_archive_markmail:
 
 jira: TUWENI
diff --git a/community.md b/community.md
index 47bf6c1..cd02713 100644
--- a/community.md
+++ b/community.md
@@ -57,7 +57,7 @@ Get help using {{ site.data.project.short_name }} or contribute to the project o
 
 #### Bug Reports
 
-Found bug? Enter an issue in the [Issue Tracker](https://issues.apache.org/jira/browse/{{ site.data.project.jira }}).
+Found bug? Enter an issue in the [Issue Tracker](https://github.com/apache/incubator-tuweni/issues).
 
 Before submitting an issue, please:
 
@@ -72,7 +72,7 @@ Before submitting an issue, please:
 Enhancement requests for new features are also welcome. The more concrete and rationale the request is, the greater the chance it will incorporated into future releases.
 
 
-  [https://issues.apache.org/jira/browse/{{ site.data.project.jira }}](https://issues.apache.org/jira/browse/{{ site.data.project.jira }})
+  [https://github.com/apache/incubator-tuweni/issues](https://github.com/apache/incubator-tuweni/issues)
 
 
 ### Source Code

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tuweni.apache.org
For additional commands, e-mail: commits-help@tuweni.apache.org