1. May 23, 2023
    • lanaivina's avatar
      NFTs fractionalization (#12565) · 41dbed0b
      lanaivina authored
      
      
      * Copy Uniques into Nfts
      
      * Connect new pallet
      
      * Update weights
      
      * Nfts: Multiple approvals (#12178)
      
      * multiple approvals
      
      * clear
      
      * tests & clean up
      
      * fix in logic & fmt
      
      * fix benchmarks
      
      * deadline
      
      * test deadline
      
      * current_block + deadline
      
      * update ApprovedTransfer event
      
      * benchmark
      
      * docs
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      
      * fmt fix
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      
      * update tests
      
      * anyone can cancel
      
      * Update frame/nfts/src/tests.rs
      
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      
      * fmt
      
      * fix logic
      
      * unnecessary line
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Update frame/nfts/src/lib.rs
      
      * Update lib.rs
      
      * fmt
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * fmt
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * suggestion
      
      * new line
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Fixes
      
      * cargo fmt
      
      * Fixes
      
      * Fixes
      
      * Fix CI
      
      * Nfts: Fix Auto-Increment (#12223)
      
      * commit
      
      * passing benchmarks
      
      * clean up
      
      * sync
      
      * runtime implementation
      
      * fix
      
      * fmt
      
      * fix benchmark
      
      * cfg
      
      * remove try-increment-id
      
      * remove unused error
      
      * impl Incrementable for unsigned types
      
      * clean up
      
      * fix in tests
      
      * not needed anymore
      
      * Use OptionQuery
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * Rename Origin to RuntimeOrigin
      
      * [Uniques V2] Tips (#12168)
      
      * Allow to add tips when buying an NFT
      
      * Chore
      
      * Rework tips feature
      
      * Add weights + benchmarks
      
      * Convert tuple to struct
      
      * Fix benchmark
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Update frame/nfts/src/benchmarking.rs
      
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * Fix benchmarks
      
      * Revert the bounded_vec![] approach
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * [Uniques V2] Atomic NFTs swap (#12285)
      
      * Atomic NFTs swap
      
      * Fmt
      
      * Fix benchmark
      
      * Rename swap -> atomic_swap
      
      * Update target balance
      
      * Rollback
      
      * Fix
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Make desired item optional
      
      * Apply suggestions
      
      * Update frame/nfts/src/features/atomic_swap.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Rename fields
      
      * Optimisation
      
      * Add a comment
      
      * deadline -> maybe_deadline
      
      * Add docs
      
      * Change comments
      
      * Add price direction field
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Wrap price and direction
      
      * Fix benchmarks
      
      * Use ensure! instead of if {}
      
      * Make duration param mandatory and limit it to MaxDeadlineDuration
      
      * Make the code safer
      
      * Fix clippy
      
      * Chore
      
      * Remove unused vars
      
      * try
      
      * try 2
      
      * try 3
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * [Uniques V2] Feature flags (#12367)
      
      * Basics
      
      * WIP: change the data format
      
      * Refactor
      
      * Remove redundant new() method
      
      * Rename settings
      
      * Enable tests
      
      * Chore
      
      * Change params order
      
      * Delete the config on collection removal
      
      * Chore
      
      * Remove redundant system features
      
      * Rename force_item_status to force_collection_status
      
      * Update node runtime
      
      * Chore
      
      * Remove thaw_collection
      
      * Chore
      
      * Connect collection.is_frozen to config
      
      * Allow to lock the collection in a new way
      
      * Move free_holding into settings
      
      * Connect collection's metadata locker to feature flags
      
      * DRY
      
      * Chore
      
      * Connect pallet level feature flags
      
      * Prepare tests for the new changes
      
      * Implement Item settings
      
      * Allow to lock the metadata or attributes of an item
      
      * Common -> Settings
      
      * Extract settings related code to a separate file
      
      * Move feature flag checks inside the do_* methods
      
      * Split settings.rs into parts
      
      * Extract repeated code into macro
      
      * Extract macros into their own file
      
      * Chore
      
      * Fix traits
      
      * Fix traits
      
      * Test SystemFeatures
      
      * Fix benchmarks
      
      * Add missing benchmark
      
      * Fix node/runtime/lib.rs
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Keep item's config on burn if it's not empty
      
      * Fix the merge artifacts
      
      * Fmt
      
      * Add SystemFeature::NoSwaps check
      
      * Rename SystemFeatures to PalletFeatures
      
      * Rename errors
      
      * Add docs
      
      * Change error message
      
      * Rework pallet features
      
      * Move macros
      
      * Change comments
      
      * Fmt
      
      * Refactor Incrementable
      
      * Use pub(crate) for do_* functions
      
      * Update comments
      
      * Refactor freeze and lock functions
      
      * Rework Collection config and Item confg api
      
      * Chore
      
      * Make clippy happy
      
      * Chore
      
      * Update comment
      
      * RequiredDeposit => DepositRequired
      
      * Address comments
      
      Co-authored-by: command-bot <>
      
      * [Uniques V2] Refactor roles (#12437)
      
      * Basics
      
      * WIP: change the data format
      
      * Refactor
      
      * Remove redundant new() method
      
      * Rename settings
      
      * Enable tests
      
      * Chore
      
      * Change params order
      
      * Delete the config on collection removal
      
      * Chore
      
      * Remove redundant system features
      
      * Rename force_item_status to force_collection_status
      
      * Update node runtime
      
      * Chore
      
      * Remove thaw_collection
      
      * Chore
      
      * Connect collection.is_frozen to config
      
      * Allow to lock the collection in a new way
      
      * Move free_holding into settings
      
      * Connect collection's metadata locker to feature flags
      
      * DRY
      
      * Chore
      
      * Connect pallet level feature flags
      
      * Prepare tests for the new changes
      
      * Implement Item settings
      
      * Allow to lock the metadata or attributes of an item
      
      * Common -> Settings
      
      * Extract settings related code to a separate file
      
      * Move feature flag checks inside the do_* methods
      
      * Split settings.rs into parts
      
      * Extract repeated code into macro
      
      * Extract macros into their own file
      
      * Chore
      
      * Fix traits
      
      * Fix traits
      
      * Test SystemFeatures
      
      * Fix benchmarks
      
      * Add missing benchmark
      
      * Fix node/runtime/lib.rs
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Keep item's config on burn if it's not empty
      
      * Fix the merge artifacts
      
      * Fmt
      
      * Add SystemFeature::NoSwaps check
      
      * Refactor roles structure
      
      * Rename SystemFeatures to PalletFeatures
      
      * Rename errors
      
      * Add docs
      
      * Change error message
      
      * Rework pallet features
      
      * Move macros
      
      * Change comments
      
      * Fmt
      
      * Refactor Incrementable
      
      * Use pub(crate) for do_* functions
      
      * Update comments
      
      * Refactor freeze and lock functions
      
      * Rework Collection config and Item confg api
      
      * Chore
      
      * Make clippy happy
      
      * Chore
      
      * Fix artifacts
      
      * Address comments
      
      * Further refactoring
      
      * Add comments
      
      * Add tests for group_roles_by_account()
      
      * Update frame/nfts/src/impl_nonfungibles.rs
      
      * Add test
      
      * Replace Itertools group_by with a custom implementation
      
      * ItemsNotTransferable => ItemsNonTransferable
      
      * Update frame/nfts/src/features/roles.rs
      
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      
      * Address PR comments
      
      * Add missed comment
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      
      * Fix copy
      
      * Remove storage_prefix
      
      * Remove transactional
      
      * Initial commit SFT pallet.
      
      * Update comment
      
      * [Uniques V2] Minting options (#12483)
      
      * Basics
      
      * WIP: change the data format
      
      * Refactor
      
      * Remove redundant new() method
      
      * Rename settings
      
      * Enable tests
      
      * Chore
      
      * Change params order
      
      * Delete the config on collection removal
      
      * Chore
      
      * Remove redundant system features
      
      * Rename force_item_status to force_collection_status
      
      * Update node runtime
      
      * Chore
      
      * Remove thaw_collection
      
      * Chore
      
      * Connect collection.is_frozen to config
      
      * Allow to lock the collection in a new way
      
      * Move free_holding into settings
      
      * Connect collection's metadata locker to feature flags
      
      * DRY
      
      * Chore
      
      * Connect pallet level feature flags
      
      * Prepare tests for the new changes
      
      * Implement Item settings
      
      * Allow to lock the metadata or attributes of an item
      
      * Common -> Settings
      
      * Extract settings related code to a separate file
      
      * Move feature flag checks inside the do_* methods
      
      * Split settings.rs into parts
      
      * Extract repeated code into macro
      
      * Extract macros into their own file
      
      * Chore
      
      * Fix traits
      
      * Fix traits
      
      * Test SystemFeatures
      
      * Fix benchmarks
      
      * Add missing benchmark
      
      * Fix node/runtime/lib.rs
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Keep item's config on burn if it's not empty
      
      * Fix the merge artifacts
      
      * Fmt
      
      * Add SystemFeature::NoSwaps check
      
      * Rename SystemFeatures to PalletFeatures
      
      * Rename errors
      
      * Add docs
      
      * Change error message
      
      * Change the format of CollectionConfig to store more data
      
      * Move max supply to the CollectionConfig and allow to change it
      
      * Remove ItemConfig from the mint() function and use the one set in mint settings
      
      * Add different mint options
      
      * Allow to change the mint settings
      
      * Add a force_mint() method
      
      * Check mint params
      
      * Some optimisations
      
      * Cover with tests
      
      * Remove merge artifacts
      
      * Chore
      
      * Use the new has_role() method
      
      * Rework item deposits
      
      * More tests
      
      * Refactoring
      
      * Address comments
      
      * Refactor lock_collection()
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Private => Issuer
      
      * Add more tests
      
      * Fix benchmarks
      
      * Add benchmarks for new methods
      
      * [Uniques v2] Refactoring (#12570)
      
      * Move do_set_price() and do_buy_item() to buy_sell.rs
      
      * Move approvals to feature file
      
      * Move metadata to feature files
      
      * Move the rest of methods to feature files
      
      * Remove artifacts
      
      * Split force_collection_status into 2 methods
      
      * Fix benchmarks
      
      * Fix benchmarks
      
      * Update deps
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Rename module to NFT fractionalisation
      
      * Loose coupling for pallet-assets
      
      * cargo fmt
      
      * [Uniques V2] Smart attributes (#12702)
      
      * Basics
      
      * WIP: change the data format
      
      * Refactor
      
      * Remove redundant new() method
      
      * Rename settings
      
      * Enable tests
      
      * Chore
      
      * Change params order
      
      * Delete the config on collection removal
      
      * Chore
      
      * Remove redundant system features
      
      * Rename force_item_status to force_collection_status
      
      * Update node runtime
      
      * Chore
      
      * Remove thaw_collection
      
      * Chore
      
      * Connect collection.is_frozen to config
      
      * Allow to lock the collection in a new way
      
      * Move free_holding into settings
      
      * Connect collection's metadata locker to feature flags
      
      * DRY
      
      * Chore
      
      * Connect pallet level feature flags
      
      * Prepare tests for the new changes
      
      * Implement Item settings
      
      * Allow to lock the metadata or attributes of an item
      
      * Common -> Settings
      
      * Extract settings related code to a separate file
      
      * Move feature flag checks inside the do_* methods
      
      * Split settings.rs into parts
      
      * Extract repeated code into macro
      
      * Extract macros into their own file
      
      * Chore
      
      * Fix traits
      
      * Fix traits
      
      * Test SystemFeatures
      
      * Fix benchmarks
      
      * Add missing benchmark
      
      * Fix node/runtime/lib.rs
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Keep item's config on burn if it's not empty
      
      * Fix the merge artifacts
      
      * Fmt
      
      * Add SystemFeature::NoSwaps check
      
      * Rename SystemFeatures to PalletFeatures
      
      * Rename errors
      
      * Add docs
      
      * Change error message
      
      * Change the format of CollectionConfig to store more data
      
      * Move max supply to the CollectionConfig and allow to change it
      
      * Remove ItemConfig from the mint() function and use the one set in mint settings
      
      * Add different mint options
      
      * Allow to change the mint settings
      
      * Add a force_mint() method
      
      * Check mint params
      
      * Some optimisations
      
      * Cover with tests
      
      * Remove merge artifacts
      
      * Chore
      
      * Use the new has_role() method
      
      * Rework item deposits
      
      * More tests
      
      * Refactoring
      
      * Address comments
      
      * Refactor lock_collection()
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Private => Issuer
      
      * Add more tests
      
      * Fix benchmarks
      
      * Add benchmarks for new methods
      
      * [Uniques v2] Refactoring (#12570)
      
      * Move do_set_price() and do_buy_item() to buy_sell.rs
      
      * Move approvals to feature file
      
      * Move metadata to feature files
      
      * Move the rest of methods to feature files
      
      * Remove artifacts
      
      * Smart attributes
      
      * Split force_collection_status into 2 methods
      
      * Fix benchmarks
      
      * Fix benchmarks
      
      * Update deps
      
      * Fix merge artifact
      
      * Weights + benchmarks + docs
      
      * Change params order
      
      * Chore
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Update docs
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * Add PalletId
      
      * Chore
      
      * Add tests
      
      * More tests
      
      * Add doc
      
      * Update errors snapshots
      
      * Ensure we track the owner_deposit field correctly
      
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * [Uniques V2] Final improvements (#12736)
      
      * Use KeyPrefixIterator instead of Box
      
      * Change create_collection()
      
      * Restrict from claiming NFTs twice
      
      * Update Readme
      
      * Remove dead code
      
      * Refactoring
      
      * Update readme
      
      * Fix clippy
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Update docs
      
      * Typo
      
      * Fix benchmarks
      
      * Add more docs
      
      * Replace uniques with nfts, add minted volume storage
      
      * DepositRequired setting should affect only the attributes within the CollectionOwner namespace
      
      * Add unlock functionality
      
      * [NFTs] Implement missed methods to set the attributes from other pallets (#12919)
      
      * Implement missed methods to set the attributes from other pallets
      
      * Revert snapshots
      
      * Update snapshot
      
      * Update snapshot
      
      * Revert snapshot changes
      
      * Update snapshots
      
      * Yet another snapshot update..
      
      * Asset to NFT id storage mutations
      
      * Minor fixes
      
      * Minor comments
      
      * cargo fmt
      
      * Remove benchmarking, unused clone()
      
      * Update frame/support/src/traits/tokens/nonfungible_v2.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/traits/tokens/nonfungible_v2.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/traits/tokens/nonfungible_v2.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/traits/tokens/nonfungibles_v2.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/traits/tokens/nonfungible_v2.rs
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/support/src/traits/tokens/nonfungibles_v2.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/lib.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Address comments
      
      * [NFTs] Add the new `owner` param to mint() method (#12997)
      
      * Add the new `owner` param to mint() method
      
      * Fmt
      
      * Address comments
      
      * ".git/.scripts/bench-bot.sh" pallet dev pallet_nfts
      
      * Fmt
      
      * Update frame/nfts/src/common_functions.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nfts/src/types.rs
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Add call indexes
      
      * Update snapshots
      
      * Refactor nft fractionalisation pallet (#13008)
      
      * Refactoring
      
      * Make it compile
      
      * Add tests
      
      * Rename
      
      * Rework nfts locking
      
      * Update cargo.lock
      
      * Connect the latest changes to the runtime-kitchensink
      
      * Add benchmarks, fix other issues
      
      * Chore
      
      * Chore 2
      
      * Chore 3
      
      * Add runtime-benchmarks
      
      * Rename
      
      * Set metadata
      
      * Make fields public
      
      * Chore
      
      * Created asset shouldn't be sufficient
      
      * Add documentation
      
      * minor edit to docs
      
      * Minor corrections
      
      Co-authored-by: default avatarlana-shanghai <[email protected]>
      
      * fmt
      
      * Add fee reserved before creating an asset
      
      * Use ReservableCurrency for fee deposit
      
      * Improvements
      
      * Revert fmt changes
      
      * A bit more cleanup
      
      * Consistent naming
      
      * Make it more generic
      
      * Leftover
      
      * Use Vec<u8> instead of String
      
      * Update to the latest + improve the Locker trait
      
      * Refactor NFTs locker
      
      * Replace Vec with BoundedVec, add clearer errors
      
      * cargo fmt
      
      * Add README about unlocking NFTs
      
      * add constant definition
      
      * add fortitude & precision to asset related functions
      
      * fix mock and tests
      
      * transfer ExistentialDeposit to pallet if it's balance is below
      
      * Refactoring
      
      * Simplify the locking mechanism
      
      * Use PalletAttributes enum instead of the LOCKED_NFT_KEY
      
      * Fix benchmark
      
      * Add missing licence details
      
      * Update Cargo.toml
      
      * ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_nft_fractionalization
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      * Update frame/nft-fractionalization/README.md
      
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      
      ---------
      
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      Co-authored-by: default avatarSergej Sakac <[email protected]>
      Co-authored-by: default avatarJegor Sidorenko <[email protected]>
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      Co-authored-by: default avatarMuharem Ismailov <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarjoe petrowski <[email protected]>
      41dbed0b
    • Sergej Sakac's avatar
      BREAKING - Try-runtime: Use proper error types (#13993) · df87bae1
      Sergej Sakac authored
      * Try-state: DispatchResult as return type
      
      * try_state for the rest of the pallets
      
      * pre_upgrade
      
      * post_upgrade
      
      * try_runtime_upgrade
      
      * fixes
      
      * bags-list fix
      
      * fix
      
      * update test
      
      * warning fix
      
      * ...
      
      * final fixes 🤞
      
      
      
      * warning..
      
      * frame-support
      
      * warnings
      
      * Update frame/staking/src/migrations.rs
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      
      * fix
      
      * fix warning
      
      * nit fix
      
      * merge fixes
      
      * small fix
      
      * should be good now
      
      * missed these ones
      
      * introduce TryRuntimeError and TryRuntimeResult
      
      * fixes
      
      * fix
      
      * removed TryRuntimeResult & made some fixes
      
      * fix testsg
      
      * tests passing
      
      * unnecessary imports
      
      * Update frame/assets/src/migration.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      ---------
      
      Co-authored-by: default avatarLiam Aharon <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      df87bae1
  2. May 22, 2023
  3. May 21, 2023
  4. May 20, 2023
    • Vladimir Pouzanov's avatar
      Update the nix build configuration. (#13706) · 4e892439
      Vladimir Pouzanov authored
      * Update the nix build configuration.
      
      Remove the old shell.nix with some legacy versions pinned and replace it with a flake-based shell. It installs rust via rustup instead of fenix to be more generally compatible with the guidelines.
      
      This also adds the rust-toolchain.toml spec with all the components required for wasm, and everything else to make rust-analyzer & clippy happy.
      
      * Also add the top level flake for hacking on the substrate as whole
      
      * Remove the envrc and ignore it instead.
      
      * Remove the top-level configuration
      
      ---------
      
      Co-authored-by: parity-processbot <>
      4e892439
    • Michal Kucharczyk's avatar
      frame: Enable GenesisConfig in no_std (#14108) · 613420a0
      Michal Kucharczyk authored
      * frame: Default for GenesisConfig in no_std
      
      `Default` for `GenesisConfig` will be required for no_std in no native
      runtime world. It must be possible to instantiate default GenesisConfig
      for pallets and runtime.
      
      * ".git/.scripts/commands/fmt/fmt.sh"
      
      * hash69 in no_std reverted
      
      * derive(DefaultNoBound) for GenesisConfig used when possible
      
      * treasury: derive(Default)
      
      * Cargo.lock update
      
      * genesis_config: compiler error improved
      
      When std feature is not enabled for pallet, the GenesisConfig will be
      defined, but serde::{Serialize,Deserialize} traits will not be
      implemented.
      
      The compiler error indicates the reason of latter errors.
      
      This is temporary and serde traits will be enabled with together with
      `serde` support in frame.
      
      ---------
      
      Co-authored-by: command-bot <>
      613420a0
  5. May 19, 2023
  6. May 18, 2023
    • Michal Kucharczyk's avatar
      Added serde feature to sp-consensus-aura (#14166) · 580efaec
      Michal Kucharczyk authored
      This is followup of #13027.
      
      `Aura` need to enable `serde` feature in dependent crates, otherwise
      test-substrate-runtime compilation fails with the following error if
      `serde` is enabled:
      
      ```
        error: cannot find macro `format` in this scope
          -->
      /home/miszka/parity/10-genesis-config/substrate-master/primitives/consensus/aura/src/lib.rs:50:3
           |
        50 |         app_crypto!(ed25519, AURA);
           |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
           |
           = help: consider importing one of these items:
                   scale_info::prelude::format
                   sp_application_crypto::format
           = note: this error originates in the macro
      `$crate::app_crypto_public_common_if_serde` which comes from the
      expansion of the macro `app_crypto` (in Nightly builds, run with -Z
      macro-backtrace for more info)
      ```
      580efaec
  7. May 17, 2023
    • yjh's avatar
      chore: move whitelist test to better place and add missing `Inactive Issuance` (#14130) · 99b05fd9
      yjh authored
      * chore: move whitelist test to better palace and add missing `Inactive Issuance`
      
      * remove duplicated
      
      ---------
      
      Co-authored-by: parity-processbot <>
      99b05fd9
    • Bigna Härdi's avatar
      Add `serde` feature flag to primitives (#13027) · 0e49ed72
      Bigna Härdi authored
      
      
      * add serde_full feature flag
      
      add serde_full to sp_runtime
      
      add space to toml
      
      add serde_full to application-crypto
      
      add serde_full to arithmetic
      
      fix arithmetic
      
      add serde full to beefy
      
      add serde full to consensus
      
      add serde_full to core
      
      add serdefull to finality grandpa
      
      add serde_full to several primitives crates
      
      make rpc no_std compatible
      
      add scale info to runtime
      
      make serializer no_std compatible
      
      add serde full to storage
      
      add full serde to version
      
      add serde full to weights
      
      add all serde_full features
      
      add . to comment
      
      add missing impl-serde
      
      fix no-std build
      
      fix build
      
      add full_crypto to serde_full
      
      serde_full also implements crypto
      
      full_serde does not work with full_crytpo. needs std
      
      no no_std serde impl possible
      
      also for crypto std is necessary
      
      no serde full for application crypto
      
      fix arithmetic
      
      fix tomls
      
      fix some things
      
      impl fmt for Signature
      
      add serialize to Public
      
      add impl_maybe_marker_serde_full
      
      fix sp-application-crypto toml
      
      add serde feature flag
      
      fix clippy
      
      fix toml grandpa
      
      fix grandpa
      
      rename if_std to if_serde
      
      keystore is not no_std compatible
      
      make keystore vrf no_std compatible
      
      fix nopos-elections
      
      fix rpc
      
      fix serializer
      
      fix test-primitives
      
      fix version
      
      add comment
      
      add serde full only import for format string
      
      remove all(serde_full and full_crypot) as serde_full enforces full_crypto
      
      make comment better readable
      
      even better comment
      
      clean up rpc toml
      
      clean up toml
      
      clean up serializer toml
      
      clean up storage toml
      
      fix std build
      
      update .lock
      
      fix sp-version
      
      move sp_std import
      
      test extern crate alloc
      
      replace sp_std with core
      
      add missing core
      
      sp_core: serde feature do not enforce full crypto
      
      application-crypto: serde feature do not enforce full crypto
      
      rename serde_full to serde
      
      add dep:serde and alloc to default feature
      
      add full_crypto and remove unnecessary debu/fmt impls for serde
      
      update comment
      
      remove obolsete change in display AccountId32
      
      remove extra changes
      
      minimize diff
      
      revert keystore changes
      
      remove std from keystore
      
      remove full-crypto feature
      
      fix serde import
      
      fix comment
      
      fix feature = serde
      
      * rename serde_full to serde
      
      * move #[doc(hidden)] back
      
      * remove feature = full crypto require frm MultiSigner
      
      * reorder serde and scale_info import
      
      * fix bs58 missing alloc import in serde feature
      
      * add `from_string` to serde feature and add unimplemented
      
      * remove serde feature from fixed_point display
      
      * Remove serde/alloc
      
      Co-authored-by: default avatarDavide Galassi <[email protected]>
      
      * Update primitives/consensus/babe/Cargo.toml
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Update primitives/arithmetic/src/fixed_point.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * revert `from_string`fixed impl back to std only
      
      * remove duplicate runtime string impl
      
      * use sp_std::alloc
      
      * remove no_std compatible rpc
      
      * remove no_std compatibility from serializer
      
      * rename mpl_maybe_marker_serde to std_or_serde
      
      * update .lock
      
      * add sp-std to executor
      
      * fix sp-std import
      
      * fix sp_std::format import
      
      * use crate import
      
      * add serde feature
      
      * Update primitives/core/src/lib.rs
      
      ---------
      
      Co-authored-by: default avatarDavide Galassi <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      0e49ed72
    • Muharem Ismailov's avatar
      Max class voters for ranked collective vote tally (#13313) · e17680fd
      Muharem Ismailov authored
      * max class voters for vote tally
      
      * fix move
      
      * tests
      
      * rename to GetMaxVoters
      
      * saturating sub
      
      ---------
      
      Co-authored-by: parity-processbot <>
      e17680fd
  8. May 16, 2023
  9. May 15, 2023
  10. May 14, 2023
  11. May 12, 2023
    • yjh's avatar
      chore(storage-monitor): improve `free_space` calculation and cli default value (#14133) · 44f5d8af
      yjh authored
      
      
      * chore(storage-monitor): fix free_space calculation
      
      * add `Result` type
      
      * add docs
      
      * update `polling_period` default value to `6`
      
      * Update client/storage-monitor/src/lib.rs
      
      Co-authored-by: default avatarMichal Kucharczyk <[email protected]>
      
      * Apply suggestions from code review
      
      ---------
      
      Co-authored-by: default avatarMichal Kucharczyk <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      44f5d8af
    • Sam Johnson's avatar
      b408c8b2
    • Arkadiy Paronyan's avatar
      Bump parity-db (#14114) · e2e99454
      Arkadiy Paronyan authored
      e2e99454
    • Anton's avatar
      Upgrade to libp2p 0.51.3 (#13587) · e4b1aa18
      Anton authored
      * client/network: upgrade to libp2p 0.51.0
      
      * make discovery.rs compile
      
      * make peer_info.rs compile
      
      * changes to notifications and request-response proto
      
      * make service.rs compile
      
      * towards making request_responses.rs compile
      
      * make request_responses.rs compile
      
      * make request_responses.rs compile
      
      * fix notifications/behaviour.rs tests
      
      * fix warnings
      
      * remove old code
      
      * allow deprecated code (temporary)
      
      * upgrade to libp2p 0.51.1
      
      * add TODO for behaviour tests
      
      * return empty vec if peer_id is absent
      
      https://github.com/paritytech/substrate/pull/13587#discussion_r1141695167
      
      
      
      fyi: I don't really know what the old behaviour was.
      
      * update comment to reflect new defaults
      
      Closes #13338
      
      * Revert "update comment to reflect new defaults"
      
      This reverts commit 7a981abd69308e9d522ec94905f181439a1b1dba.
      
      * remove config.rs (from wrong merge)
      
      * upgrade to libp2p 0.51.2
      
      * fix formatting
      
      * use handle_pending_outbound_connection in networt_state RPC
      
      * update deps
      
      * use re-exports when we use other libp2p packages
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarDmitry Markin <[email protected]>
      
      * format code
      
      * handle potential errors in network_state RPC
      
      * only update libp2p crate
      
      * update libp2p-core
      
      * fix docs
      
      * use libp2p-identity instead of libp2p
      
      where it's possible. libp2p-identity is much smaller, hence makes sense
      to use it instead of larger libp2p crate.
      
      * Update client/network/src/discovery.rs
      
      Co-authored-by: default avatarAaro Altonen <[email protected]>
      
      * update Cargo.lock
      
      * add comment for per_connection_event_buffer_size
      
      current value is somewhat arbitrary and needs to be tweaked depending on
      memory usage and network worker sleep stats.
      
      * fix link format
      
      * update Cargo.lock
      
      * upgrade to libp2p 0.51.3
      
      * deprecate mplex
      
      * Revert "deprecate mplex"
      
      This reverts commit 9e25820e706e464a0e962a8604861fcb2a7641eb.
      
      * Revert "upgrade to libp2p 0.51.3"
      
      This reverts commit 6544dd4138e2f89517bd7c7281fc78a638ec7040.
      
      * use new libp2p version in `statement` crate
      
      * pin version temporarily
      
      * libp2p 0.51.3
      
      * deprecate mplex
      
      * deprecate legacy noise handshake
      
      * fix build error
      
      * update libp2p-identity
      
      * enable libp2p-identity:ed25519 feature in sc-consensus
      
      * enable ed25519 for peerset as well
      
      ---------
      
      Co-authored-by: default avatarDmitry Markin <[email protected]>
      Co-authored-by: default avatarAaro Altonen <[email protected]>
      Co-authored-by: parity-processbot <>
      e4b1aa18