* Add proper parsing of bitcoin.conf, remove datadir
Somewhat recently a new config format was introduced
in Bitcoin Core. Options can now be specified under
section headers ([regtest], [main], [test]), as
well as with network prefixes (regtest.rpcport,
main.prune) and the traditional format. In this commit
we introduce a new type BitcoindConfig that parses
this format. We also make the necessary changes in
the bitcoind/Eclair RPC clients to accomodate this new
type.
We also remove the datadir field from
BitcoindAuthCredentials. This is not strictly necessary
to connect to a bitcoind, so this is a bad separation
of concerns. The datadir field is instead moved into
the BitcoindInstance.
Finally we go over some places in tests and test
utils and assert that we are operating in the
user temporary directory. This is a safety measure
so that other developers/users won't do the same
mistake I did while working on this and accidentally
blow up their $HOME/.bitcoin directory.
* Add BitcoindRpcClient.fromDatadir
* Address code review from Chris
* Docs: Introduce new Docusaurus-based website
This commit is the result of running
npx docusaurus-init, and nothing more.
Further changes will happen on top of
this, to make it easier to review changes
and update to newer versions of Docusaurus
in the future.
* WIP: Add Bitcoin-S website
Change the default Docusaurus template to a custom website. Goes
off of existing documentation, and moves it into the new docs and
website directories. Deletes some unused files, such as
BUILD_README.md
* Initial mdoc support
* Add Scaladoc to website
* Add SVG assets
* Change colors, flesh out pages, correct Scaladoc links
* Rename doc project to scripts, move security doc to website
* Add copy buttons to website code snippets
* Add doc and tasks for publishing website
* Refactor how paths get copied after generating Scaladocs
* Add Get Started button
* Replace bitcoin-s logo with white text
* Add Montserrat font for headers
* flesh out user showcase and landing page
* Change Scaladoc URL to bitcoins package
* Convert CurrencyUnit and LnCurrencyUnit Scalacheck to Scalatest
* Add Int and Long syntax to LnCurrencyUnit, MilliSatoshis and CurrencyUnit
* Tweak toString methods
* Implement nbits compression encoding for the difficulty threshold in a block header
* Create BlockHeader.TargetDifficultyHelper to pass around meta info about the difficulty, implement rest of test cases in arith_uint256_tests.cpp related to pow difficulty
* Address torkel's code review
* Add BIP44 and BIP32 path support
Make paths from strings, indexes/coins/chains,
BIP32 children types.
Derive xprivs and xpubs from paths.
* Address code review on BIP44 from Chris
* Rename children -> path, bip32child -> bip32node
* update README with bip44 name changes
* Reduce number of requests we send to eclair in testkits, add commandName param to parseResult in EclairRpcClient
* Factor our EclairRpcClient error message
* Make jvm opts more sane, refactor error message code again
* Add error message on EclairRpcTestUtil.sendPayments, scalafmt