# TODOs This is a list of potential (or planned) TODO items for "Learning Bitcoin from the Command Line". Many are drawn from issues found at the previous locale of this repo. ## 1. Integrate with Bitcoin-Standup Replace our current scripts with Bitcoin Standup (which was based on those scripts) 1. Fix Verification errors in Bitcoin Standup Scripts **6/10** * Fix IPADDR error in Bitcoin Standup Scripts **6/10** 2. Upgrade Bitcoin Standup Scripts to Debian 10 **6/16** 3. Upgrade Bitcoin Standup Scripts to Bitcoin 0.20 **6/16** 4. Ensure Bitcoin Standup covers everything else in previous scripts **6/16** 5. Rewrite the StackScript chapter **6/16** 6. Rewrite the "by-hand" chapter to match Bitcoin Standup **7/27** * Write New Appendix 1 **7/27** * Revise All Chapter Ordering for Cut ยง2.1 **7/27** 7. Reintroduce aliases after setup **6/19** 8. Figure out what to do about the old `btcblock` on testnet, where there seems to be no CLI way to determine blockheight. **No Known Solution on Testnet** ## 2. Upgrade to 0.20 9. Walk through chapters 1-6, making sure all commands work with Bitcoin Core 0.20 (and changing them if not). Redo the output of all examples. **6/19**, **6/23**, **6/30** * Edit Chapter 0 **6/19** * Edit Chapter 1 **6/19** * Re-edit Chapter 2 **6/19** * Edit & Check Chapter 3 **6/19** * Edit & Check Chapter 4 **6/23** * Double-check fee calculator in 4.2I with a more complex example **6/19** * Integrate older Curl Interlude **6/19** * Edit & Check Chapter 5 **6/23** * Edit & Check Chapter 6 **6/30** * Update for change in importaddress **7/7** ## 3. Add BTCDEB Support 10. Update Scripting & Integrate `btcdeb` * Edit & Integrate Chapter 9 **7/15** * Fix P2PKH Example **7/15** * Write P2WPKH Chapter **7/15** * Edit & Integrate Chapter 10 **7/15, 7/21** * Write P2WSH Chapter **7/21** * Edit & Integrate Chapter 11 **7/21** * Edit & Integrate Chapter 12 **7/21** * Edit & Integrate Chapter 13 **7/21** * Turn off verbose info on btcdeb? * Get sigs working right on btcdeb? ## 4. Add New Concepts Add and document the following new concepts: 11. Add SegWit Transactions. The majority of Bitcoin transactions now use this signing methodology, so it needs to be fully explained and incorporated, alongside its newer bech32 addresses. **6/23** * Add definitions of Segwit and bech32 addresses to 3.3 **6/23** * Do we still have to use "bitcoin-cli getnewaddress "" legacy" on CLI? If not, run back through chapters that use legacy in their examples, starting in 3.3 **Gonna leave it for now. A future version might shift to P2SH-SegWit as default.** * Integrate discussions of SegWit into early parts of chapter 4. **6/23** * Write chapter 4.6 **6/23** 12. Add PSBT. Partially Signed Bitcoin Transactions are a powerful new interchange format that should be fully included in our discussions of multi-sigs and escrows (which instead fell back on older methodologies in v1.0). **7/2**, **7/7**, **7/10** * Research PSBTs **7/2** * Update Outlines **7/2** * Write 7.1: Creating a PSBT **7/7** * Create Illustrations for 7.1 **7/7** * Write 7.2: Using a PSBT **7/7**, **7/10** * Multisigs **7/7** * Redo with correct math **7/10** * Fund Pooling **7/10** * CoinJoins **7/10** 13. Add Wallet Updates. **6/30**, **7/2**, **7/7** * Bitcoin Descriptors **6/30** * Show what a SegWit descriptor looks like **7/2** * Show what a multi-sig descriptor looks like **7/2** * Revise based on comments **7/7** * Key Ordering (sortedmulti) **7/2** **Partially Supported in 0.20** 14. Consider HWI. **7/14** * Write 7.3: Using HWI **7/14** * Edit All of Chapter 6-8 **7/14** 15. Consider splitting up Chapter 6 (definitely if we get an HWI chapter) * Break apart Chapter 6 **7/2** * Rewrite all section links in early chapters (1-5, 6, 8) **7/7** * Update Script Chapters **7/15** * Update Tor Chapter **7/22** * Update Programming Chapters ## 5. Finish Later Chapters 16. Edit & Integrate Tor Chapter. **7/22** 17. Edit & Integrate all "C" work **8/5** - **8/26** * Edit & Update Chapter 15 **8/5** * Write the Libwally section **8/5** - **8/26** * 16.1: Intro **8/5** * 16.2: BIP39 **8/11** * 16.3: BIP32 **8/11** * 16.4: PSBTs **8/12** * 16.5: Scripts **8/12** * 16.6: Other Functions **8/18** * 16.7: Integration **8/25**, **8/26** 18. Edit & Integrate all "Other Languages" work * Edit 17.1: Go **9/1** * Edit 17.2: Java **9/2** * Edit 17.3: NodeJS **9/2** * Edit 17.4: Python **9/8** * Edit 17.5: Rust * Write 17.6: Swift * Setup Swift Environment * Look at Wallets * Create Transaction * Edit All of 17 * Finalize Naming of Src * Full Edit of 17.15-17.6 19. Edit & Integrate Appendices work **7/27**, **8/4** * Edit & Integrate A2: Compiling **7/27** * Edit & Integrate A3: RegTest **8/4** 20. Edit & Integrate Lightning Chapters 21. Write or request Lightning/C chapter ## 6. Finalize Book 22. Take out warnings for all old chapters 23. Add new first chapter, indicating places to start for people of different levels * Know CL? Have a node? Need to read the new stuff? Skip Lightning? * Decide where to place current first chapter in relation to that (before? after? glossary?) 24. Move an coding appendices (e.g., JQ interlude) to src code directory 25. Re-edit everything