⚠️ After the postponement of Starknet 0.14.3, this update is now required to support Starknet 0.14.3
This updates bring a security fix as well as a bug fix causing the node to crash on rare instances. Additionally, both performance and UX has been improved. Docs have been revamped to make the information they present much clearer.
Added
Bound compilation requests
Compilation tasks performed by Juno have now CPU and Memory limits. #3722
New Juno flags have been updated to allow user to control this new bounds:
--max-concurrent-compilationsdefault updated from fixed8to the total number of CPU cores divided by 2.--max-compilation-cpu-timeadded with a 10s default. Any compilation needing more CPU time than that will be automatically killed.--max-compilation-memoryadded with 4GBs default. Any compilation trying to reserve more memory than that will fail.
Friendlier JSON responses
Malformed JSON requests have a much more human-friendly response. They now indicate which part of the JSON is wrong and what the expected value is. This is achieved with no performance regression. #3702
Before
json: cannot unmarshal number into Go struct field Request.jsonrpc of type string
After
{"jsonrpc": 5, "method": "x", "id": 1}
^
field "jsonrpc" should be string, got number [line 1, column 13]
Changed
- Blockifier version updated to
v0.19.0-rc.2#3733
Fixed
- Juno no longer crashes when the sequencer sends a transaction with a nil
StateDiff. #3740 - An open request for L1 subscription doesn't stop Juno from shutting down immediately. #3708
Full Changelog: v0.16.2...v0.16.3