* util: Set log levels per handler / Fix the log level in beta mode
Prior to this PR the log level from the beta config (`DEBUG`) wasn't
used. So the beta mode still was depending on the config level of the
service being `DEBUG`.
This PR refactors the logging setup a bit to make it even possible to
set a specific log level for each handler which is what we need to make
the `beta.log` level independent from the normal `debug.log` level.
* Add the error to the log
* Compare to `DEBUG`
* Log the handler also
* more explicit and complete handling of api decorator data
* fix
* .message_class
* actually, those are different types...
* tweak
* simplify
* learn that functools.wraps copies random attributes
* add a transactional reader as `DBWrapper2.reader()`
* contextlib.AbstractAsyncContextManager
* try a minimal test
* rework test to allow the read to finish so the write can finish the commit after that
* pylint disable
* WAL!!!
* more tests
* if TYPE_CHECKING for typing variable assignments
* future
* cover some more test cases
* configure isort to add the future annotations import
* apply the new isort setting
* remove type ignores for new mypy (#13539)
https://pypi.org/project/mypy/0.981/
* another
* Log the number of cache entries and the time it took to parse them
* Log `started` and `done` as `INFO` and `batch_processed` as `DEBUG`
* Log the plot found message with `DEBUG` level
* Some additional debug logs in `new_signage_point_harvester`
* mint from did
* fix did puzzle announcements
* clean up params and test
* mypy
* add RPC endpoint
* use rpc client for test
* test create spends in loop
* transfer to target
* fix lineage proof for transfers
* isolate block timing issue in test
* DID lineage proof
* test transfer to targets
* add exclude list to select_coins RPC
* coin json
* move tests to did wallet
* fix typing royalties
* cleanup tests
* DID_HRP to AddressType
* clvm compilation
* improve checks in rpc api
* move mint_from_did to nft wallet
* reduce number of blocks in tests
* forgot to remove mint function from did_wallet.py
* mypy
* validate NFT metadata and edition numbers in test
* fix puzzle announcements, refactor and comments
* make tests work with new RPC server settings
* create puzzle assertions for eve and transfer spends
* rename vars for mint numbering
* rename more edition -> mint variables
* remove DID owner from eve spend
* make coin announcement from did spend
* make transfer from eve spend
* corrections for address options in RPC
* simplify intermediate launchers
* announcments for xch xpend
* re-order announcements for xch spend
* test with fewer blocks
* skip off chain metadata test with IPFS
* add bulk mint puzzle and methods to nft wallet
* add rpc endpoints
* add tests
* don't skip off chain metadata test
* fix default case for xch_coin_list
* Add bladebit for pre-release mac builds. Update pyinstaller to include bladebit if the file exists
* Make plotter inclusion conditional based on if they are present for the build or not
* temp: always get pre-release bladebit plotter for testing
* Only include bladebit on pre-release
* Refactor away from post init for UPnP
* refactor UPnP to not be reusable
* update upnp in datalayer too
* add if_needed parameter to UPnP.shutdown()
* simpler
* be more lenient about startup failures, like before
* too many ways for UPnP to fail right now, revert to a smaller refactor approach instead of fixing them all up
Includes:
* Fixes for console errors as well as a bunch of code cleanup
* Nacho NFTs (dev-only feature)
* Graph fixes
* CAT tooltip positioning fix in Manage Tokens drawer
* Bumped Electron to 20.1.3
* Fixed incorrect display of assets when viewing offer created by self
* Fixed viewing NFTs with malformed offchain-metadata
* Renamed "Data Layer" to "DataLayer"
* Initial support for plotting with Bladebit 2
* Added Bladebit 2 support for --no-t1-direct and --no-t2-direct
* NFT changes to support other media types (video/audio/other)
* NFT minter is shown in the offer viewer
* Making source code cleaner
* Cleaned up `install_plotter.py`
* Now `$CHIA_ROOT/plotters/bladebit` is searched first then bundled bladebit
* Fixed a lint error
* WIP: Implement bladebit update/checkout feature
* Enable to specify git branch/tag/commit on bladebit installation
* Modify arguments display order
* Added `chia plotters version` command
* Fixed lint errors
* Fixed lint error 2
* Implemented `chia plotters bladebit2` and handling for its options
* Fixed typo
* Fixed a lint error
* Added comment
* Added missing plotter arguments
* Fixed LGTM warning
* Fixed wrong typing
* Fixed a lint error
* Fixed an issue where `None` was evaluated as an empty string
* Support bladebit2 plotting from web request
* Updated response of `get_plotters` API for upcoming `bladebit2`
* Fixed bladebit2 argument handling
* Modified progress dict
* Added --no-cpu-affinity option to bladebit1
* Fixed a minor error
* Fixed an error where `chia plotters version` failed
* Fixed an issue where building bladebit2 failed
* Fixed an issue where bladebit2 stopped working if `--cache` option was set
* Updated branch for bladebit2
* Fixed an issue where plotting with madmax/bladebit failed for Python < 3.8 on Windows
* Now `chia plotters install madmax|bladebit2` should work on RedHat like OSes
* Fixed a wrong yum package name
* Added yum packages required for Bladebit2
* Changed the way to update bladebit
* Implemented option handling for madmax as well as bladebit
* Fixed a lint error
* Fixed a minor issue
* Fixed LGTM warning
* Applied changes for bladebit 2.0.0-alpha-2
* Fixed a lint error
* Trying to fix windows pre-commit error
* Fixed isort error