Commit Graph

58 Commits

Author SHA1 Message Date
Arvid Norberg
0368544c84
validate more aspects of conditions earlier (#6654)
* validate more aspects of conditions earlier, in the process clvm execution is offloaded to

* more tests

* use as_int() in SExp rather than int_from_bytes()

* put condition parser tests in its own test class

* capitalize module-scope variable

* abbreviate enum names in parse_condition_args

* use a more realistic cost per byte in test_rom

* merge parse_coin_id and parse_hash, since they are identical
2021-06-23 09:49:23 -07:00
Arvid Norberg
42fde9a8d4
move chia.util.block_tools and chia.util.wallet_tools into tests (#6799)
* move chia.util.block_tools and chia.util.wallet_tools into tests

* only depend on block_tools when we actually run the wallet in test mode
2021-06-16 11:12:26 -07:00
Arvid Norberg
ca3c8ce407
validate integers in StructStream constructors (#4298)
* validate integers in StructStream constructors

* don't step back sub slots beyond zero

* fix off-by-one in blocks-to-remove

* handle find_fork_point_in_chain() returning -1 in wallet

* fix handling of not finding a shared ancestor in wallet reorg

* terminate clean_block_record() when we reach height 0

* harden int/uint validation in constructor. add comment about int512
2021-06-08 10:45:56 -07:00
Nikolaj Kuntner
0b3124821f
bytes formatting simplify (#6021)
* init

* Add dash in README

* add more test cases

* whitespace around ==

* explicit return

* add another large test case
2021-05-26 11:11:44 -07:00
Ruslan Skorb
9e21716965
Add format_bytes(bytes:) function to convert bytes to human readable string. (#5449) 2021-05-24 22:14:29 -07:00
Mariano Sorgente
621c13c249
Improve safety of coin store (#2984)
* Improve safety of coin store

* Add test for exception

* Fix issue with fork_point_with_peak
2021-04-28 15:27:56 -04:00
arvidn
6b4d060758 pass through max cost all the way down to where we execute the CLVM code 2021-04-17 10:34:13 -07:00
Mariano Sorgente
a2ca057b49
Ms.aggsig me challenge (#1843)
* Start aggsig me

* Pass in genesis challenge

* Update DID, and remove useless functions from coinbase.py

* Unused imports

* Revert GUI

* Use a different constant so forks of chia can easily change it
2021-04-14 14:03:14 +09:00
Richard Kiss
7506f64c35 Rename to ConditionWithArgs. 2021-04-08 11:35:50 -07:00
Richard Kiss
569ca16f50 Use sed to change imports from src to chia. 2021-04-04 21:41:39 -07:00
Richard Kiss
8a3e00548a Rename src to chia. 2021-04-04 21:41:39 -07:00
dustinface
6a1862fbc8
src|test: Improve time estimate in cmds.farm_funcs.summary() (#1528)
* util|test: Add misc.py with format_minutes as first method

Format `minutes` into a string with the format:

`unit` and `sub-unit`

where `unit` and `sub-unit` can be:
- years (`unit` only)
- months
- weeks
- days
- hours
- minutes

* cmds: Use `format_minutes` in farm_funcs.summary
2021-03-27 00:18:19 -07:00
Adam Kelly
f59acccf51 Add github workflow tool 2021-03-25 12:05:54 -07:00
Gene Hoffman
b5ce8c9e66
Isort take 3 (#1213)
* isort in a black friendly way

* isort but debug superlinter later
2021-03-09 18:27:27 -08:00
Mariano Sorgente
d33d16591d
blspy to 0.9, replace infinity, update clvm, puzzle hash (#1146)
* blspy to 0.9

* replace infinity with default constructor

* infinity

* Update clvm, puzzle hash

* Fix tests with new blspy

* prefarm in config instead of constants

Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
Co-authored-by: Bill Blanke <wjb2002@flex.com>
2021-03-04 00:54:03 -08:00
Yostra
d0383d989c
Daemon alerts (#1132)
* daemon alerts fetch, simple server, validation

* launch services, alert server, wait on gen

* config

* not ready alert creation signing

* get status daemon rpc

* gene's key

* lgtm

* config

* prefix

* rebase artifacts
2021-03-03 14:19:26 -08:00
Richard Kiss
3a2413cf3b Add tests for many puzzles, and fix some bugs found. 2021-02-28 16:54:26 -08:00
Richard Kiss
d11d96fa9e Add puzzle_reveal to CoinSolution. 2021-02-21 19:08:18 -08:00
Mariano Sorgente
5cc3407b65
Support for plots with pool address (#920)
* Updated gui with sub block changes

* Move some files, validate fees in mempool

* Support for plots with pool address

* Fix test and new blocks

* chia-blockchain-gui good commit

* changelof

* Fix edge cases with unfinished blocks

* Update gui

* Add test fixtures
2021-02-16 01:15:24 -08:00
Mariano Sorgente
eed61d0dbf Prevalidate transactions 2021-01-19 10:53:04 -08:00
Yostra
0572cccb43 split tests 2021-01-12 17:02:22 -05:00
Mariano Sorgente
1e716b5e56 Flake8 tests 2021-01-12 17:00:53 -05:00
Mariano Sorgente
4b1d3b42a0 Apply black formatting with line length 120 (not applied to wallet) 2021-01-12 17:00:53 -05:00
Mariano Sorgente
ea3ae083a2 Comment out tests 2021-01-12 17:00:53 -05:00
Mariano Sorgente
0bd541fcd3 Start getting tests to pass 2021-01-12 17:00:53 -05:00
Richard Kiss
71ed6e6c75 Use Program.to instead of Program. 2021-01-12 17:00:49 -05:00
Richard Kiss
431ab0bf70 Use Program instead of src.util.clvm. 2020-10-01 11:07:12 -07:00
Mariano Sorgente
774307dce1 Changes for bls 0.2.3 (#354)
* Start of changes for bls 0.2.3
* Make remaining changes for new blspy
* Add migration for 1.0b9
Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
2020-08-18 10:59:45 -07:00
Mariano Sorgente
550642c789 Minor repairs and fix BIP39 and add tests (#310)
* Logging of plot num, num proofs found, and fix rpc edge case
* Revert add -> append, and python black
* Fix list/set issue
* Correct BIP39 spec and test vectors
* Fix create mnemonic UI
2020-07-16 13:05:43 -07:00
Richard Kiss
a263cc1c8c Use clvm via src.util.clvm to better control what API is accessed. 2020-07-16 13:05:43 -07:00
Mariano Sorgente
194e0c24ea New blspy, key formats, and new plot format (#309)
* Bump blspy-ietf
* wip lots of errors
* Respond to bram feedback, use eip 2334 for keys
* Fix most tests, use latest blspy
* Improve simulation test constants
* Fixed issue with plotting and reading plots
* Fix simulation test
* Override puzzle hash if we don't have key, for safety. Bump protocol version
* Fix superlint issue
* Switch to 1.0 proof of space format
* Temporary genesis block
* Update chiabip158, chiavdf versions

Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
Co-authored-by: Alex Wice <alex@chia.net>
2020-07-16 13:05:43 -07:00
Yostra
a1a2242ee5 benchmark 2020-07-16 13:05:43 -07:00
Gene Hoffman
2e25ca131c Fix flake8 - clean up tests and add to flake8 - lint src upload to pypi 2020-07-16 13:05:43 -07:00
Mariano Sorgente
2fc6f89603 Keychain with pbkdf2 and passphrase support 2020-07-16 13:05:43 -07:00
Mariano Sorgente
a1b4392bb1 Tests passing 2020-07-16 13:05:43 -07:00
Mariano Sorgente
0dea6db7cd Remove raw keychain keys, update block tools with new protocol 2020-07-16 13:05:43 -07:00
Mariano Sorgente
fdee2f2d5c Replace plots.yaml with in-file keys 2020-07-16 13:05:43 -07:00
Mariano Sorgente
9c748cfec4 Try to speed up with new BlockTools 2020-07-16 13:05:43 -07:00
Mariano Sorgente
b0356d5810 Use setup_nodes constants everywhere 2020-07-16 13:05:43 -07:00
Yostra
b964d86a5f Electron react (#226)
* clean react
* add material ui
* add word list
* mnemonic v0
* jeepney backup
* keychain usage
* wallet api
* mnemonic ui
* mnemonics redux state
* handle exceptions correctly
* dashboard
* wallets
* get puzzle hash
* tx history
* sidebar
* start stop wallet node
* use existing mnemonics
* status info
* create cc wallet
* theme should be outside of switch
* create offer
* dbus alternative for linux
* key migration
* don't autocomplete, don't reset simulator db
* reset mnemonics
* Refactor keychain, and key migration
* Implement UI for changing keys
* Removing keys and mnemonic button
* Start making farmer and harvester RPCs
* start rpx for simulator
* Harvester and farmer websocket, and basic UI
* Plot display and deletion
* launch daemon on start
* State changes from full node, harvester, farmer, and full node ui improvements
* split balances in react
* pending change balance
* plotter
* dev config
* maintain connection / retry
* Remove electron-ui, and style fixes
* Better farmer and full node control
* Remove electron ui references
* Uncomment out starting the dameon
* Remove timelord tab, and change full node style
* Clean up new wallet login
* Refactor RPCs
* Now that the GH runner uses python 3.7.7 - use for windows installer
* add balance split to coloured coin wallet
* spendable balance fix
* Import private key from UI fix
* mac build/installer

Co-authored-by: Mariano Sorgente <sorgente711@gmail.com>
Co-authored-by: Lipa Long <lipa@chia.net>
Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
2020-06-01 08:56:59 -07:00
Mariano Sorgente
920043c1d4
Tweak block validation, rename some files, and concentrate error codes 2020-03-31 02:27:22 +09:00
Gene Hoffman
08c5b9fb37 Merge branch 'integration' of https://github.com/Chia-Network/chia-blockchain into integration 2020-03-25 20:38:36 -07:00
Mariano Sorgente
09b332628e Fix lint 2020-03-25 20:38:35 -07:00
Mariano Sorgente
b1a0245c7e Merge branch 'integration' of github.com:Chia-Network/chia-blockchain into integration 2020-03-25 20:37:04 -07:00
Mariano Sorgente
81f41f7764
Fix puzzle store bug, no recursive JSON, big ints as strings in JSON 2020-03-25 17:15:31 +09:00
Yostra
53385608de benchmark chia cost unit, other cost stuff 2020-03-24 23:09:31 -07:00
Mariano Sorgente
b1778095d6
New difficulty change and min_iters change, and light header verification 2020-03-18 17:17:59 +09:00
Mariano Sorgente
aa4f0d9795
Fix bugs with wallet node 2020-03-09 15:05:24 +09:00
Mariano Sorgente
bda8f0e75e
Allow bytes in streamable 2020-02-06 10:12:33 -05:00
Mariano Sorgente
49e4629935
Sqlite, RPC server, and other changes (#68)
* Switches to sqlite and remove all mongo stuff
* Starts RPC server on port 8555
* UI is in new process, communicates to node through rpc
* JSON serialization for streamables
* Harvester periodically prints its plot names and sizes
* Process names are set to chia_full node, chia_harvester, etc
* CONTRIBUTING.md, and remove docs from git (put in wiki)
* Adds the SmallHeaderBlock type, it's header block without the PoT and PoSpace
* Fix harvester bug (allows two harvesters in the same machine)
2020-01-13 22:19:53 +09:00