2022 02 15 update 1.9.0 release notes (#4099)

* Update release notes to 4e6c68155e

* Add some descriptions to modules

* Add high level description, fix versions

* Fix typo
This commit is contained in:
Chris Stewart 2022-02-15 09:31:27 -06:00 committed by GitHub
parent 2bce49b519
commit 075b90c930
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,13 +1,19 @@
# 1.9.0
This release is backwards incompatible with previous releases of bitcoin-s.
You will not be able to build a DLC with prior releases of bitcoin-s. This was due to a bug
in how we computed `contractId` in a DLC. See #4012 for more information.
See the individual module sections for more information on lower level updates to the codebase.
## Running Bitcoin-S
If you want to run the standalone server binary, after verifying gpg signatures, you
can `unzip bitcoin-s-server-1.8.0.zip` and then run it with `./bin/bitcoin-s-server` to start the node. You will need to
can `unzip bitcoin-s-server-1.9.0.zip` and then run it with `./bin/bitcoin-s-server` to start the node. You will need to
configure the node properly first, you can find example
configurations [here](https://bitcoin-s.org/docs/config/configuration#example-configuration-file).
You can then unzip the `bitcoin-s-cli-1.8.0.zip` folder and start using the `bitcoin-s-cli` like this:
You can then unzip the `bitcoin-s-cli-1.9.0.zip` folder and start using the `bitcoin-s-cli` like this:
```bashrc
./bin/bitcoin-s-cli --help
@ -35,8 +41,8 @@ Example:
UPDATE ME!!!!!!!
```
$ sha256sum bitcoin-s-server-1.8.0.tgz
aa1084edb5fcd3d1dbcafe0d0fba787abf4cd455bbe38809bd9a65a49c0cd0eb bitcoin-s-server-1.8.0.tgz
$ sha256sum bitcoin-s-server-1.9.0.zip
aa1084edb5fcd3d1dbcafe0d0fba787abf4cd455bbe38809bd9a65a49c0cd0eb bitcoin-s-server-1.9.0.zip
$ gpg --verify SHA256SUMS.asc
gpg: Signature made Thu 24 Sep 2020 12:49:39 PM CDT
gpg: using RSA key 339A49229576050819083EB3F99724872F822910
@ -64,8 +70,13 @@ were required to open a DLC with your peer.
See individual module sections for updates on per module basis.
## app commons
Bug fixes and improve the API for `AppConfig`
4e6c68155e Sort outcomes in `decodeoffer` response (#4094)
142612f034 Make newConfigOfType use Vector[Config] (#4039)
2066447cdc Add isEndpoint to numeric contract descriptor serialization (#4033)
@ -78,6 +89,15 @@ a7af8cac4c Patch bug where `zipdatadir` doesn't work if the directory was not cr
## App server
The major features shipped this release is support for websockets.
You can now be notified of websocket events from the wallet, dlc wallet, and chain.
These are used on the [wallet-server-ui](https://github.com/bitcoin-s/bitcoin-s-ts/tree/master/wallet-server-ui) to notify when events happen
This module will be renamed to `Wallet Server` in future releases as that
is a more accurate name for this module.
There are various PRs that broke API compatability from `1.8` -> `1.9`. See [the list](https://github.com/bitcoin-s/bitcoin-s/pulls?q=is%3Apr+label%3Aapi-breaking+is%3Aclosed+milestone%3A1.9)
08941206fc Bump timeout to 60 seconds (#4021)
d2f53db82e Change BTC RPC log level (#4010)
@ -134,12 +154,19 @@ a40ef1ab21 Break existing api to get new address to remove the requirement for n
## bitcoind rpc
Implements rudimentary support for bitcoin core v22. This release does not implement all RPCs on v22.
5366428fb2 Implement `BitcoindRpcClient.epochSecondToBlockHeight` (#4068)
c0c54acc24 Make non-final bitcoind RPC error message more descriptive (#3915)
a6898defe2 Support for Bitcoin Core v22 (#3834)
## Build
Ergonomic improvements for runnign test suites, make the installer names more readable
for non technical users.
52dcf51e82 Automatically download binaries if they are used in test suite (#4005)
e24efd65ae 2022 01 12 docker ws (#3976)
@ -152,14 +179,20 @@ cd3006c020 Verify binary download hashes (#3849)
## chain
Adds a callback so that we can be notified when a header is processed by the chain module.
7ee1f0f406 Implement batching of database calls for our chain callback (#4003)
d06b064b6b 2021 12 28 blockprocessed callback (#3946)
## clightning rpc
! NEW !
This is a new module in the 1.9 release. It adds support for a clightning RPC.
cb704da927 Add clightning sendcustommsg (#3883)
7933c90741 Update c-lightning to v0.10.2 (#3857)
cd5451adaa Add clightning listtransactions func (#3797)
01a7c7c838 Make clightning tests execute async (#3768)
@ -168,6 +201,18 @@ cd5451adaa Add clightning listtransactions func (#3797)
## Core
This release merges support for general payout curves in the `core` module for the DLC specification.
See #3854 for more information
This release also merges support for disjoint union contracts in the DLC specification.
This release fixes a bug in our `contractId` computation.
This breaks backward compatibility in older releases of bitcoin-s.
13c46e0af8 Move expensive script checks to last inside of P2PKWithTimeoutScriptPubKey (#4087)
e2b9c458e4 Change `DLCUtil.buildOracleSignatures` (#4061)
7a6f0430d6 2022 02 03 issue 4032 (#4042)
71711ca582 Add invariant to make sure spendingTxId is different than the txid (#4019)
@ -216,6 +261,21 @@ f4a2ec8554 Make AesEncryptedData a network element / factory (#3952)
## Db commons
A major theme this release is enabling our APIs to use [database actions in Slick](https://scala-slick.org/doc/3.3.3/dbio.html).
This allows us to build database transactions to avoid corrupting data.
We also fixed some bugs in our database implementations around storing very large scriptpubkeys.
4d85b7a3d7 Support for big SPKs (#4084)
3d674c37f3 Create upsertAllAction (#4073)
2166faf61d Make findByPrimaryKeysAction public (#4079)
3991789129 Don't call findByPrimaryKeys if ids is empty (#4074)
48189d5c1d Make `CRUD.run` and `CRUD.runVec` transactional (#4059)
0079489a15 Create DbMapper for DoubleSha256Digest (#3995)
6c2bb0d111 Rename database username and password variables (#3930)
@ -230,12 +290,19 @@ f71d3567ed 2021 11 23 crud action (#3851)
## DLC node
The major change this release is implementing a connection timeout for dlc node.
If we cannot connect to a peer within 45 seconds, we throw a timeout exception.
55ecc1ae8f Implement connection timeout (#4081)
019c9b2644 Fix log message failure in DLCDataHandler (#3845)
41cb26a3bb Make DLC node's external IP configurable (#3838)
## DLC Oracle
Improvements to the database handling code so that announcement/attestation creation is transactional.
49d4d7f179 2022 02 06 issue 4049 (#4056)
7f344ad3ff 2022 02 06 announcement creation logging (#4055)
@ -246,6 +313,22 @@ c3d1b2ee12 Give DLCOracle to filter events by pending/completed (#3953)
## DLC wallet
This release of dlc wallet fixes bugs for accepting offers multiple times.
We also add a new column in `global_dlc_data` for `serialization_version` for when we
break binary level serialization in the DLC protocol spec. This will be done in the 2.0
release of bitcoin-s.
Finally there is a ton of improvements to database handling code.
6cfbf67812 Prevent DB state corruption while accepting the same offer multiple times (#4067)
bce58ba33d Validate announcement signatures on create/accept offer (#4071)
9de4b0272a 2022 01 31 issue 4030 (#4066)
f253b5055e 2022 02 08 dlc accept refactor (#4064)
5aeecdb893 Reworking/refactoring acceptDLCOffer (#4048)
590cd9c72e 2022 02 06 remoteclaimed refactor (#4054)
@ -265,7 +348,8 @@ ee0d62c5b8 2022 01 14 `DLCDataManagement` refactor (#3982)
d71208cf0f Support Eclair v0.6.2 (#3765)
## Esplora
! new !
This release adds a new module so you can use esplora on as a chain data source.
03abb7537b Add basic esplora client (#4018)
@ -277,6 +361,12 @@ bf8b165fe9 Implement recovery for when we cannot receive a fee rate from a FeeRa
## gui
Small bug fixes. We are moving to having a web interface for bitcoin-s.
This can be found here:
https://github.com/bitcoin-s/bitcoin-s-ts/tree/master/wallet-server-ui
546e030dde [GUI] Fix 'First and last points must be endpoints' exception (#4029)
2aa6f168eb Implement rpc password in GUI (#3986)
@ -289,6 +379,10 @@ bf8b165fe9 Implement recovery for when we cannot receive a fee rate from a FeeRa
## Lnd rpc
Upgrades lnd to 0.14.2, implements more lnd rpc functionality.
44373f8449 Add functions for LND subscription (#4062)
afc6a32c62 Update lnd to v0.14.2 (#4040)
3ba8fb6dd4 Allow creating invoices with description hash (#3966)
@ -301,15 +395,20 @@ f54ed98c74 Add subscribe invoices function to lnd (#3860)
079fa62073 Lnd v0.14.0 (#3835)
## node
Fixes various bugs around broadcasting witness transactions. Also fixes bugs to make sure
we fetch the entire witness transaction (witnesses included). Previously we wouldn't get the witness
which leads to problems when calculating DLC outcome state.
This release also adds the ability to store peers we see on the p2p network in teh database. Eventually
we will be able to connect to random peers we see on the p2p network rather than just connecting
to the node configured in `bitcoin-s.node.peers`
98c5d816ac 2022 01 25 issue 4014 (#4015)
dbfd58da86 Add log txids inside of inventories in big endian rather than little endian (#4013)
7ee1f0f406 Implement batching of database calls for our chain callback (#4003)
a58ef1cd02 Storing peers in database (#3773)
90e01d7fc6 Fix broadcasting witness vs legacy txs (#3841)
@ -323,11 +422,20 @@ fc09f41db2 Request witness versions of transactions from nodes (#3829)
## Oracle server
## secp256k1jni
Updates to the underlying libsecp256k1 to give better performance.
9c9a0a618f Update secp256k1-zkp (#3856)
## wallet
Improves database handling code in the wallet so we use database transactions more often.
This release included various bug fixes and performance.
dc47c070a2 Fix SpendingInfoDAO.findOutputsReceived() bug (#4090)
eeabe5cd77 2022 02 11 clearutxoandaddresses for account transactional (#4077)
883b01006d Fetch blockHeight earlier in TransactionProcessing.processBlock() (#4025)
8d04ca1cd3 2022 01 30 optimize processblock (#4024)
@ -361,10 +469,15 @@ ba88fb1a03 2021 11 12 fix multiple tag issue (#3822)
b3d61bc793 Add deleting address tags to to clearAllUtxosAndAddresses() (#3817)
31e8324522 Make sure exception is caught by Future inside of UtxoHandling.unmarkUTXOsAsReserved() (#3816)
## testkit
## tor
Upgrades tor to 0.4.6.9
1708add6ec Make Tor connect error message more human readable (#4078)
2dcbe73504 Update Tor version to 0.4.6.9 (#3993)
169222a306 Add default proxy params (#3863)
@ -373,6 +486,24 @@ e02c9bba12 Overridable Tor config (#3780)
## Website
95d9bf44a5 Add 1.9.0 of the website (#4096)
e8ee5d7339 Bump website dependencies (#4095)
3931897e7f 2022 02 13 issue 3405 (#4089)
07fcfd0568 2022 02 12 update mdoc fix downloadlink (#4086)
e5707d5002 Fix broken website examples (#4085)
526ed37a28 Cleanup docs that use $ (#4083)
4ea87c741f 2022 02 12 cleanup example config (#4082)
35dccd88d6 Add new section to README for running bitcoin-s, add link to the web frontend (#4069)
99418c798a 2022 02 07 release note draft (#4060)
## Dependencies
6001da3d59 Add documetnation for setting and getting an oracle name (#3782)