diff --git a/substrate/frame/bounties/src/tests.rs b/substrate/frame/bounties/src/tests.rs
index 355483ddac94d690392ede3c6b05bc842649c229..a6fb89bb8601228cdd6427b6f20bc89887775781 100644
--- a/substrate/frame/bounties/src/tests.rs
+++ b/substrate/frame/bounties/src/tests.rs
@@ -228,7 +228,10 @@ fn minting_works() {
 #[test]
 fn spend_proposal_takes_min_deposit() {
 	new_test_ext().execute_with(|| {
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3)
+		});
 		assert_eq!(Balances::free_balance(0), 99);
 		assert_eq!(Balances::reserved_balance(0), 1);
 	});
@@ -237,7 +240,10 @@ fn spend_proposal_takes_min_deposit() {
 #[test]
 fn spend_proposal_takes_proportional_deposit() {
 	new_test_ext().execute_with(|| {
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
 		assert_eq!(Balances::free_balance(0), 95);
 		assert_eq!(Balances::reserved_balance(0), 5);
 	});
@@ -247,7 +253,10 @@ fn spend_proposal_takes_proportional_deposit() {
 fn spend_proposal_fails_when_proposer_poor() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::propose_spend(RuntimeOrigin::signed(2), 100, 3),
+			{
+				#[allow(deprecated)]
+				Treasury::propose_spend(RuntimeOrigin::signed(2), 100, 3)
+			},
 			TreasuryError::InsufficientProposersBalance,
 		);
 	});
@@ -258,8 +267,14 @@ fn accepted_spend_proposal_ignored_outside_spend_period() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(1);
 		assert_eq!(Balances::free_balance(3), 0);
@@ -285,8 +300,14 @@ fn rejected_spend_proposal_ignored_on_spend_period() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Balances::free_balance(3), 0);
@@ -299,10 +320,19 @@ fn reject_already_rejected_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 		assert_noop!(
-			Treasury::reject_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+			},
 			TreasuryError::InvalidIndex
 		);
 	});
@@ -312,7 +342,10 @@ fn reject_already_rejected_spend_proposal_fails() {
 fn reject_non_existent_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::reject_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+			},
 			pallet_treasury::Error::<Test>::InvalidIndex
 		);
 	});
@@ -322,7 +355,10 @@ fn reject_non_existent_spend_proposal_fails() {
 fn accept_non_existent_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::approve_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			},
 			TreasuryError::InvalidIndex
 		);
 	});
@@ -333,10 +369,19 @@ fn accept_already_rejected_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 		assert_noop!(
-			Treasury::approve_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			},
 			TreasuryError::InvalidIndex
 		);
 	});
@@ -348,8 +393,14 @@ fn accepted_spend_proposal_enacted_on_spend_period() {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 		assert_eq!(Treasury::pot(), 100);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Balances::free_balance(3), 100);
@@ -363,8 +414,14 @@ fn pot_underflow_should_not_diminish() {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 		assert_eq!(Treasury::pot(), 100);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 150, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 150, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 100); // Pot hasn't changed
@@ -385,14 +442,26 @@ fn treasury_account_doesnt_get_deleted() {
 		assert_eq!(Treasury::pot(), 100);
 		let treasury_balance = Balances::free_balance(&Treasury::account_id());
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), treasury_balance, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), treasury_balance, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 100); // Pot hasn't changed
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), Treasury::pot(), 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 1));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), Treasury::pot(), 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 1)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(4);
 		assert_eq!(Treasury::pot(), 0); // Pot is emptied
@@ -415,10 +484,22 @@ fn inexistent_account_works() {
 		assert_eq!(Balances::free_balance(Treasury::account_id()), 0); // Account does not exist
 		assert_eq!(Treasury::pot(), 0); // Pot is empty
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 99, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 1));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 99, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 1)
+		});
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 0); // Pot hasn't changed
 		assert_eq!(Balances::free_balance(3), 0); // Balance of `3` hasn't changed
diff --git a/substrate/frame/treasury/src/benchmarking.rs b/substrate/frame/treasury/src/benchmarking.rs
index 449549d6c53b79ef2904b415b56df6f9e3ef5489..b8a53e06f2092bd4742d8ca1f7f7ab4a2bab5891 100644
--- a/substrate/frame/treasury/src/benchmarking.rs
+++ b/substrate/frame/treasury/src/benchmarking.rs
@@ -47,8 +47,10 @@ fn setup_proposal<T: Config<I>, I: 'static>(
 fn create_approved_proposals<T: Config<I>, I: 'static>(n: u32) -> Result<(), &'static str> {
 	for i in 0..n {
 		let (caller, value, lookup) = setup_proposal::<T, I>(i);
+		#[allow(deprecated)]
 		Treasury::<T, I>::propose_spend(RawOrigin::Signed(caller).into(), value, lookup)?;
 		let proposal_id = <ProposalCount<T, I>>::get() - 1;
+		#[allow(deprecated)]
 		Treasury::<T, I>::approve_proposal(RawOrigin::Root.into(), proposal_id)?;
 	}
 	ensure!(<Approvals<T, I>>::get().len() == n as usize, "Not all approved");
@@ -93,6 +95,7 @@ benchmarks_instance_pallet! {
 
 	reject_proposal {
 		let (caller, value, beneficiary_lookup) = setup_proposal::<T, _>(SEED);
+		#[allow(deprecated)]
 		Treasury::<T, _>::propose_spend(
 			RawOrigin::Signed(caller).into(),
 			value,
@@ -107,6 +110,7 @@ benchmarks_instance_pallet! {
 		let p in 0 .. T::MaxApprovals::get() - 1;
 		create_approved_proposals::<T, _>(p)?;
 		let (caller, value, beneficiary_lookup) = setup_proposal::<T, _>(SEED);
+		#[allow(deprecated)]
 		Treasury::<T, _>::propose_spend(
 			RawOrigin::Signed(caller).into(),
 			value,
@@ -119,12 +123,14 @@ benchmarks_instance_pallet! {
 
 	remove_approval {
 		let (caller, value, beneficiary_lookup) = setup_proposal::<T, _>(SEED);
+		#[allow(deprecated)]
 		Treasury::<T, _>::propose_spend(
 			RawOrigin::Signed(caller).into(),
 			value,
 			beneficiary_lookup
 		)?;
 		let proposal_id = Treasury::<T, _>::proposal_count() - 1;
+		#[allow(deprecated)]
 		Treasury::<T, I>::approve_proposal(RawOrigin::Root.into(), proposal_id)?;
 		let reject_origin =
 			T::RejectOrigin::try_successful_origin().map_err(|_| BenchmarkError::Weightless)?;
diff --git a/substrate/frame/treasury/src/lib.rs b/substrate/frame/treasury/src/lib.rs
index 49be4d91a456802d8b129cc508f240c0ced73bf4..730fae2a4e92c9b673541d25e5fca6c759ad2c91 100644
--- a/substrate/frame/treasury/src/lib.rs
+++ b/substrate/frame/treasury/src/lib.rs
@@ -336,6 +336,10 @@ pub mod pallet {
 		/// - O(1)
 		#[pallet::call_index(0)]
 		#[pallet::weight(T::WeightInfo::propose_spend())]
+		#[allow(deprecated)]
+		#[deprecated(
+			note = "`propose_spend` will be removed in February 2024. Use `spend` instead."
+		)]
 		pub fn propose_spend(
 			origin: OriginFor<T>,
 			#[pallet::compact] value: BalanceOf<T, I>,
@@ -364,6 +368,10 @@ pub mod pallet {
 		/// - O(1)
 		#[pallet::call_index(1)]
 		#[pallet::weight((T::WeightInfo::reject_proposal(), DispatchClass::Operational))]
+		#[allow(deprecated)]
+		#[deprecated(
+			note = "`reject_proposal` will be removed in February 2024. Use `spend` instead."
+		)]
 		pub fn reject_proposal(
 			origin: OriginFor<T>,
 			#[pallet::compact] proposal_id: ProposalIndex,
@@ -392,6 +400,10 @@ pub mod pallet {
 		///  - O(1).
 		#[pallet::call_index(2)]
 		#[pallet::weight((T::WeightInfo::approve_proposal(T::MaxApprovals::get()), DispatchClass::Operational))]
+		#[allow(deprecated)]
+		#[deprecated(
+			note = "`approve_proposal` will be removed in February 2024. Use `spend` instead."
+		)]
 		pub fn approve_proposal(
 			origin: OriginFor<T>,
 			#[pallet::compact] proposal_id: ProposalIndex,
diff --git a/substrate/frame/treasury/src/tests.rs b/substrate/frame/treasury/src/tests.rs
index 79497d55867d68c48574a521d733cebdd799657a..ba45d5f6ff16fb6cd40043d29e96050136ae955e 100644
--- a/substrate/frame/treasury/src/tests.rs
+++ b/substrate/frame/treasury/src/tests.rs
@@ -216,7 +216,10 @@ fn minting_works() {
 #[test]
 fn spend_proposal_takes_min_deposit() {
 	new_test_ext().execute_with(|| {
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3)
+		});
 		assert_eq!(Balances::free_balance(0), 99);
 		assert_eq!(Balances::reserved_balance(0), 1);
 	});
@@ -225,7 +228,10 @@ fn spend_proposal_takes_min_deposit() {
 #[test]
 fn spend_proposal_takes_proportional_deposit() {
 	new_test_ext().execute_with(|| {
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
 		assert_eq!(Balances::free_balance(0), 95);
 		assert_eq!(Balances::reserved_balance(0), 5);
 	});
@@ -235,7 +241,10 @@ fn spend_proposal_takes_proportional_deposit() {
 fn spend_proposal_fails_when_proposer_poor() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::propose_spend(RuntimeOrigin::signed(2), 100, 3),
+			{
+				#[allow(deprecated)]
+				Treasury::propose_spend(RuntimeOrigin::signed(2), 100, 3)
+			},
 			Error::<Test, _>::InsufficientProposersBalance,
 		);
 	});
@@ -246,8 +255,14 @@ fn accepted_spend_proposal_ignored_outside_spend_period() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(1);
 		assert_eq!(Balances::free_balance(3), 0);
@@ -273,8 +288,14 @@ fn rejected_spend_proposal_ignored_on_spend_period() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Balances::free_balance(3), 0);
@@ -287,10 +308,19 @@ fn reject_already_rejected_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 		assert_noop!(
-			Treasury::reject_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+			},
 			Error::<Test, _>::InvalidIndex
 		);
 	});
@@ -300,7 +330,10 @@ fn reject_already_rejected_spend_proposal_fails() {
 fn reject_non_existent_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::reject_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+			},
 			Error::<Test, _>::InvalidIndex
 		);
 	});
@@ -310,7 +343,10 @@ fn reject_non_existent_spend_proposal_fails() {
 fn accept_non_existent_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		assert_noop!(
-			Treasury::approve_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			},
 			Error::<Test, _>::InvalidIndex
 		);
 	});
@@ -321,10 +357,19 @@ fn accept_already_rejected_spend_proposal_fails() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::reject_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::reject_proposal(RuntimeOrigin::root(), 0)
+		});
 		assert_noop!(
-			Treasury::approve_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			},
 			Error::<Test, _>::InvalidIndex
 		);
 	});
@@ -336,8 +381,14 @@ fn accepted_spend_proposal_enacted_on_spend_period() {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 		assert_eq!(Treasury::pot(), 100);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Balances::free_balance(3), 100);
@@ -351,8 +402,14 @@ fn pot_underflow_should_not_diminish() {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 		assert_eq!(Treasury::pot(), 100);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 150, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 150, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 100); // Pot hasn't changed
@@ -373,14 +430,26 @@ fn treasury_account_doesnt_get_deleted() {
 		assert_eq!(Treasury::pot(), 100);
 		let treasury_balance = Balances::free_balance(&Treasury::account_id());
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), treasury_balance, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), treasury_balance, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 100); // Pot hasn't changed
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), Treasury::pot(), 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 1));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), Treasury::pot(), 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 1)
+		});
 
 		<Treasury as OnInitialize<u64>>::on_initialize(4);
 		assert_eq!(Treasury::pot(), 0); // Pot is emptied
@@ -403,10 +472,22 @@ fn inexistent_account_works() {
 		assert_eq!(Balances::free_balance(Treasury::account_id()), 0); // Account does not exist
 		assert_eq!(Treasury::pot(), 0); // Pot is empty
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 99, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 1));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 99, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 1, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 1)
+		});
 		<Treasury as OnInitialize<u64>>::on_initialize(2);
 		assert_eq!(Treasury::pot(), 0); // Pot hasn't changed
 		assert_eq!(Balances::free_balance(3), 0); // Balance of `3` hasn't changed
@@ -448,14 +529,26 @@ fn max_approvals_limited() {
 		Balances::make_free_balance_be(&0, u64::MAX);
 
 		for _ in 0..<Test as Config>::MaxApprovals::get() {
-			assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-			assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+			assert_ok!({
+				#[allow(deprecated)]
+				Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+			});
+			assert_ok!({
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			});
 		}
 
 		// One too many will fail
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
 		assert_noop!(
-			Treasury::approve_proposal(RuntimeOrigin::root(), 0),
+			{
+				#[allow(deprecated)]
+				Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+			},
 			Error::<Test, _>::TooManyApprovals
 		);
 	});
@@ -466,8 +559,14 @@ fn remove_already_removed_approval_fails() {
 	new_test_ext().execute_with(|| {
 		Balances::make_free_balance_be(&Treasury::account_id(), 101);
 
-		assert_ok!(Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3));
-		assert_ok!(Treasury::approve_proposal(RuntimeOrigin::root(), 0));
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::propose_spend(RuntimeOrigin::signed(0), 100, 3)
+		});
+		assert_ok!({
+			#[allow(deprecated)]
+			Treasury::approve_proposal(RuntimeOrigin::root(), 0)
+		});
 		assert_eq!(Treasury::approvals(), vec![0]);
 		assert_ok!(Treasury::remove_approval(RuntimeOrigin::root(), 0));
 		assert_eq!(Treasury::approvals(), vec![]);