* Correctly return from bytes without parsing
* Huge speedup for wallet sync
* Lint
* Only construct CoinRecord when necessary
* Punt on creation of coin
* Removing warning log
* Flaky test
* Finally fix flaky test
* spent height
* handle generator reorg
* tx cache
* coin cache
* rebuild cache if write fails
* save last few messages new_peak while syncing
* don't use dupe func
* tx reorg test
* lock not needed
* lint
* lock
* modify properly
* this shouldn't hit a disk ever
* use same number
* notify wallet only once, lock when getting a balance
* lock only if unspent coin records is None
* assert spent
* lint
* Add test for prev generator
Co-authored-by: Mariano <sorgente711@gmail.com>
* changed bahviour of wallet and wallet tools for standard solutions
* black formatting wallet_tools
* added a test for hypothetical stolen zero_output coin
* swap to sha256 from sha256tree for message
* fix wallet_tools version, address lint issues
* correctly int_from_bytes
* fix uninstantiated key in dict
* Comment out broken test
* Fix types (used SerializedProgram)
Co-authored-by: Mariano <sorgente711@gmail.com>
* Changed singleton to take puzzlehash as origin.
Updated DID wallet to use this
* fixed hex and sha256tree for singleton puzzle
* require more signature for DID spends
* fix singleton tests
black format did wallet
* fix broken test
fix linting
switch to inline functions
* remove unused defuns from singleton_top_layer
* 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
* lock for all writes
* use async with where convinant
* wrapper
* more
* lint
* update wallet
* rl wallet
* indentation
* fix tests
* bad path merged into main
* wallet lock
* refacoted by mistake
* re-raise
* memory/disk inconsistency
* more inconsitency
* asyncio.cancelled is baseexception in 3.8 and 3.9
* rebase DID off main
* fix indentation and imports
* lint fixes
* fix test_compilation paths for new puzzles
* added _init__.py for did_wallet
* mypy typing fixes
* included did_wallet in setup.py module list
* stored pubkey & puzhash so that recovery_spend can choose not take them
* black missing comma
* added chialisp deserialisation puzzle
* Update clvm-deserialization-in-chialisp. Add test
* added new test_chialisp_deserialisation tests
* fix tests
* Reduce accepted atom size to 1MB during ChiaLisp native deserialization
* add lower_level generator
updates to python_lowerlevel
* add black formatting to lowerlevel
* fix puzzles references
* lowlevel generator improvement
lint fixes
* chialisp.py remove git ditritus
* pass the second arg to the block_program in low level generator
* use slightly more optimised string for lower level generator
* Restore cc.clvm to f79152d1ab
* Adjust compilation sanity checks - remove generator.clvm, add chialisp_deserialisation.clvm
* Update tests for building clvm assembly from python
* Adjust sha256tree commitments for puzzles
* black formatting for lint
* add #noqas to long hexstrings
Co-authored-by: matt <matt@chia.net>
Co-authored-by: Adam Kelly <aqk@aqk.im>
1. The formula for computing iterations is simplified, so that only one division is necessary, and inverting the (1-x) into just x.
2. There are new timestamp rules. A block N must have a greater timestamp than block N-1. Also, a block's timestamp cannot be more than 5 minutes in the future.
3. A List[Tuple[uint16, str]] is added to the handshake. These are the capabilities that the node supports, to add new features to the protocol.
4. The message_id is now before the data in each message.
* Bump clvm versions and replace `((c P A))` with `(a P A)`. Again.
* Modernize some clvm.
* Fix some comments and naming in `cc.clvm`.
* Prohibit `CREATE_ANNOUNCEMENT` in inner puzzle.
* fix cc.clvm
initial commit for innerpuz announcement test
Co-authored-by: matt <matt@chia.net>
* rpc get network settings
* breakpoints
* don't log canceled
* fix test coin store
* cancel task on exit
* use network prefix for prefarm
* rebase and change network type
* network type
* missing config
* add timeout
* Slot catch-up, windows migrate, higher sub_slot_iters in the beginning
* Fix typo in filename
* reverse directory names
* comment flaky test
* Dont migrate addresses for now
* This allows configuring a new testnet only by changing the config file, no code changes required.
* We can theoretically join either testnet1 (beta27) or testnet2 (rc) with this codebase
* There is a new constant: DIFFICULTY_CONSTANT_FACTOR, this number is a constant multiplied by the difficulty. It is set to 2**65 now, to make difficulty smaller (we can start the mainnet with a difficulty of 5 for example).
* If you want to run a new testnet, you can change DIFFICULTY_CONSTANT_FACTOR in the config, and create a new entry for it
* Also, the databases now contain the GENESIS_CHALLENGE in them, so that if you run on two testnets, the DBs will be different
* Don't double load duplicate plots
Sample config:
```
network_overrides: &network_overrides
testnet4:
DIFFICULTY_CONSTANT_FACTOR: 33554432
DIFFICULTY_STARTING: 16777216
GENESIS_CHALLENGE: "6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b" # std_hash(b"1")
GENESIS_PRE_FARM_POOL_PUZZLE_HASH: "23b039a829f3ed14a260355b9fc55d9ccc4539f05bd4bf529fd2630de1751d52"
GENESIS_PRE_FARM_FARMER_PUZZLE_HASH: "23b039a829f3ed14a260355b9fc55d9ccc4539f05bd4bf529fd2630de1751d52"
mainnet:
GENESIS_CHALLENGE: "d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35" # std_hash(b"2")
selected_network: &selected_network "testne4"
```
* 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
* First pass at removing height
* Fix test
* Remove useless files
* Rename sub_block_height to block_height everywhere
* A few more replaces. Don't migrate old addresses. Don't replace addresses
* lru cache for blocks
* cc fixes rebased
* race
* close check full node task
* lint
* more race
Co-authored-by: Yostra <straya@chia.net>