Browse Source

[core+console] Raise deprecation level for 2.13: (#2213)

- warningSince 2.11 -> errorSince 2.13
 - errorSince 2.12 -> hiddenSince 2.13
 - some experimental APIs removed
Him188 3 years ago
parent
commit
2d393ee0b0
20 changed files with 155 additions and 181 deletions
  1. 2 2
      mirai-console/backend/mirai-console/src/data/java/JAutoSavePluginConfig.kt
  2. 2 2
      mirai-console/backend/mirai-console/src/data/java/JAutoSavePluginData.kt
  3. 6 2
      mirai-console/backend/mirai-console/src/extension/Extension.kt
  4. 11 6
      mirai-console/backend/mirai-console/src/extension/ExtensionPoint.kt
  5. 33 19
      mirai-console/backend/mirai-console/src/extension/PluginComponentStorage.kt
  6. 10 4
      mirai-console/backend/mirai-console/src/extensions/CommandCallInterceptorProvider.kt
  7. 10 4
      mirai-console/backend/mirai-console/src/extensions/CommandCallParserProvider.kt
  8. 10 4
      mirai-console/backend/mirai-console/src/extensions/CommandCallResolverProvider.kt
  9. 4 4
      mirai-console/backend/mirai-console/src/extensions/PermissionServiceProvider.kt
  10. 4 4
      mirai-console/backend/mirai-console/src/extensions/PluginLoaderProvider.kt
  11. 8 7
      mirai-console/backend/mirai-console/src/extensions/SingletonExtensionSelector.kt
  12. 3 4
      mirai-console/backend/mirai-console/src/internal/extension/SingletonExtensionSelectorImpl.kt
  13. 0 49
      mirai-console/backend/mirai-console/src/util/CoroutineScopeUtils.kt
  14. 16 18
      mirai-core-api/compatibility-validation/android/api/android.api
  15. 16 18
      mirai-core-api/compatibility-validation/jvm/api/jvm.api
  16. 0 14
      mirai-core-api/src/commonMain/kotlin/event/Event.kt
  17. 4 4
      mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.nextEvent.kt
  18. 4 4
      mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.nextEventAsync.kt
  19. 8 8
      mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.syncFromEvent.kt
  20. 4 4
      mirai-core-api/src/jvmBaseMain/kotlin/utils/RemoteFile.kt

+ 2 - 2
mirai-console/backend/mirai-console/src/data/java/JAutoSavePluginConfig.kt

@@ -41,8 +41,8 @@ import net.mamoe.mirai.utils.DeprecatedSinceMirai
 @Deprecated(
 @Deprecated(
     "请使用 JavaAutoSavePluginConfig",
     "请使用 JavaAutoSavePluginConfig",
     replaceWith = ReplaceWith("JavaAutoSavePluginConfig", "net.mamoe.mirai.console.data.java.JavaAutoSavePluginConfig"),
     replaceWith = ReplaceWith("JavaAutoSavePluginConfig", "net.mamoe.mirai.console.data.java.JavaAutoSavePluginConfig"),
-    level = DeprecationLevel.WARNING
+    level = DeprecationLevel.ERROR
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.11")
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
 public abstract class JAutoSavePluginConfig public constructor(saveName: String) : AutoSavePluginConfig(saveName),
 public abstract class JAutoSavePluginConfig public constructor(saveName: String) : AutoSavePluginConfig(saveName),
     PluginConfig
     PluginConfig

+ 2 - 2
mirai-console/backend/mirai-console/src/data/java/JAutoSavePluginData.kt

@@ -73,9 +73,9 @@ import kotlin.reflect.full.createType
 @Deprecated(
 @Deprecated(
     "请使用 JavaAutoSavePluginData",
     "请使用 JavaAutoSavePluginData",
     replaceWith = ReplaceWith("JavaAutoSavePluginData", "net.mamoe.mirai.console.data.java.JavaAutoSavePluginData"),
     replaceWith = ReplaceWith("JavaAutoSavePluginData", "net.mamoe.mirai.console.data.java.JavaAutoSavePluginData"),
-    level = DeprecationLevel.WARNING
+    level = DeprecationLevel.ERROR
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.11")
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
 public abstract class JAutoSavePluginData public constructor(saveName: String) : AutoSavePluginData(saveName),
 public abstract class JAutoSavePluginData public constructor(saveName: String) : AutoSavePluginData(saveName),
     PluginConfig {
     PluginConfig {
 
 

+ 6 - 2
mirai-console/backend/mirai-console/src/extension/Extension.kt

@@ -63,8 +63,12 @@ public interface FunctionExtension : Extension
  *
  *
  * @see PermissionServiceProvider
  * @see PermissionServiceProvider
  */
  */
-@Deprecated("Please use InstanceExtension instead.", replaceWith = ReplaceWith("InstanceExtension"))
-@DeprecatedSinceMirai(warningSince = "2.11")
+@Deprecated(
+    "Please use InstanceExtension instead.",
+    replaceWith = ReplaceWith("InstanceExtension"),
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
 public interface SingletonExtension<T> : Extension {
 public interface SingletonExtension<T> : Extension {
     public val instance: T
     public val instance: T
 }
 }

+ 11 - 6
mirai-console/backend/mirai-console/src/extension/ExtensionPoint.kt

@@ -38,9 +38,13 @@ public abstract class AbstractExtensionPoint<T : Extension>(
 /**
 /**
  * 表示一个 [SingletonExtension] 的 [ExtensionPoint]
  * 表示一个 [SingletonExtension] 的 [ExtensionPoint]
  */
  */
-@Suppress("DEPRECATION")
-@Deprecated("Please use InstanceExtensionPoint instead.", replaceWith = ReplaceWith("InstanceExtensionPoint"))
-@DeprecatedSinceMirai(warningSince = "2.11")
+@Suppress("DEPRECATION_ERROR")
+@Deprecated(
+    "Please use InstanceExtensionPoint instead.",
+    replaceWith = ReplaceWith("InstanceExtensionPoint"),
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
 public interface SingletonExtensionPoint<T : SingletonExtension<*>> : ExtensionPoint<T>
 public interface SingletonExtensionPoint<T : SingletonExtension<*>> : ExtensionPoint<T>
 
 
 /**
 /**
@@ -68,10 +72,11 @@ public constructor(
     replaceWith = ReplaceWith(
     replaceWith = ReplaceWith(
         "AbstractInstanceExtension",
         "AbstractInstanceExtension",
         "net.mamoe.mirai.console.extension.AbstractInstanceExtensionPoint"
         "net.mamoe.mirai.console.extension.AbstractInstanceExtensionPoint"
-    )
+    ),
+    level = DeprecationLevel.ERROR
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.11")
-@Suppress("DEPRECATION")
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
+@Suppress("DEPRECATION", "DEPRECATION_ERROR")
 public abstract class AbstractSingletonExtensionPoint<E : SingletonExtension<T>, T>
 public abstract class AbstractSingletonExtensionPoint<E : SingletonExtension<T>, T>
 /**
 /**
  * @since 2.10
  * @since 2.10

+ 33 - 19
mirai-console/backend/mirai-console/src/extension/PluginComponentStorage.kt

@@ -58,16 +58,15 @@ public class PluginComponentStorage(
     ///////////////////////////////////////////////////////////////////////////
     ///////////////////////////////////////////////////////////////////////////
 
 
     /** 注册一个 [SingletonExtensionSelector] */
     /** 注册一个 [SingletonExtensionSelector] */
-    @Suppress("DeprecatedCallableAddReplaceWith", "DEPRECATION")
+    @Suppress("DeprecatedCallableAddReplaceWith", "DEPRECATION_ERROR")
     @Deprecated(
     @Deprecated(
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
-        level = DeprecationLevel.WARNING
+        level = DeprecationLevel.ERROR
     )
     )
-    @DeprecatedSinceMirai(warningSince = "2.11")
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
     public fun contributeSingletonExtensionSelector(lazyInstance: () -> SingletonExtensionSelector): Unit =
     public fun contributeSingletonExtensionSelector(lazyInstance: () -> SingletonExtensionSelector): Unit =
         contribute(SingletonExtensionSelector, plugin, lazyInstance)
         contribute(SingletonExtensionSelector, plugin, lazyInstance)
 
 
-    @Suppress("SpellCheckingInspection") // alterer
     /** 注册一个 [BotConfigurationAlterer] */
     /** 注册一个 [BotConfigurationAlterer] */
     public fun contributeBotConfigurationAlterer(instance: BotConfigurationAlterer): Unit =
     public fun contributeBotConfigurationAlterer(instance: BotConfigurationAlterer): Unit =
         contribute(BotConfigurationAlterer, plugin, lazyInstance = { instance })
         contribute(BotConfigurationAlterer, plugin, lazyInstance = { instance })
@@ -84,9 +83,12 @@ public class PluginComponentStorage(
     ///////////////////////////////////////////////////////////////////////////
     ///////////////////////////////////////////////////////////////////////////
 
 
     /** 注册一个 [PermissionServiceProvider] */
     /** 注册一个 [PermissionServiceProvider] */
-    @Suppress("DEPRECATION", "DeprecatedCallableAddReplaceWith")
-    @Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributePermissionService(provider).")
-    @DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+    @Suppress("DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
+    @Deprecated(
+        "Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributePermissionService(provider).",
+        level = DeprecationLevel.ERROR
+    )
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
     @OverloadResolutionByLambdaReturnType
     @OverloadResolutionByLambdaReturnType
     public fun contributePermissionService(lazyInstance: () -> PermissionService<*>): Unit =
     public fun contributePermissionService(lazyInstance: () -> PermissionService<*>): Unit =
         contribute(PermissionServiceProvider, plugin, PermissionServiceProviderImplLazy(lazyInstance))
         contribute(PermissionServiceProvider, plugin, PermissionServiceProviderImplLazy(lazyInstance))
@@ -100,9 +102,12 @@ public class PluginComponentStorage(
     /////////////////////////////////////
     /////////////////////////////////////
 
 
     /** 注册一个 [PluginLoaderProvider] */
     /** 注册一个 [PluginLoaderProvider] */
-    @Suppress("DEPRECATION", "DeprecatedCallableAddReplaceWith")
-    @Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributePluginLoader(provider).")
-    @DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+    @Suppress("DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
+    @Deprecated(
+        "Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributePluginLoader(provider).",
+        level = DeprecationLevel.ERROR
+    )
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
     @OverloadResolutionByLambdaReturnType
     @OverloadResolutionByLambdaReturnType
     public fun contributePluginLoader(lazyInstance: () -> PluginLoader<*, *>): Unit =
     public fun contributePluginLoader(lazyInstance: () -> PluginLoader<*, *>): Unit =
         contribute(PluginLoaderProvider, plugin, PluginLoaderProviderImplLazy(lazyInstance))
         contribute(PluginLoaderProvider, plugin, PluginLoaderProviderImplLazy(lazyInstance))
@@ -116,9 +121,12 @@ public class PluginComponentStorage(
     /////////////////////////////////////
     /////////////////////////////////////
 
 
     /** 注册一个 [CommandCallParserProvider] */
     /** 注册一个 [CommandCallParserProvider] */
-    @Suppress("DEPRECATION", "DeprecatedCallableAddReplaceWith")
-    @Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallParser(provider).")
-    @DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+    @Suppress("DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
+    @Deprecated(
+        "Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallParser(provider).",
+        level = DeprecationLevel.ERROR
+    )
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
     @ExperimentalCommandDescriptors
     @ExperimentalCommandDescriptors
     @OverloadResolutionByLambdaReturnType
     @OverloadResolutionByLambdaReturnType
     public fun contributeCommandCallParser(lazyInstance: () -> CommandCallParser): Unit =
     public fun contributeCommandCallParser(lazyInstance: () -> CommandCallParser): Unit =
@@ -134,9 +142,12 @@ public class PluginComponentStorage(
     /////////////////////////////////////
     /////////////////////////////////////
 
 
 
 
-    @Suppress("DEPRECATION", "DeprecatedCallableAddReplaceWith")
-    @Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallResolver(provider).")
-    @DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+    @Suppress("DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
+    @Deprecated(
+        "Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallResolver(provider).",
+        level = DeprecationLevel.ERROR
+    )
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
     @ExperimentalCommandDescriptors
     @ExperimentalCommandDescriptors
     @OverloadResolutionByLambdaReturnType
     @OverloadResolutionByLambdaReturnType
     public fun contributeCommandCallResolver(lazyInstance: () -> CommandCallResolver): Unit =
     public fun contributeCommandCallResolver(lazyInstance: () -> CommandCallResolver): Unit =
@@ -152,9 +163,12 @@ public class PluginComponentStorage(
     /////////////////////////////////////
     /////////////////////////////////////
 
 
     /** 注册一个 [CommandCallInterceptorProvider] */
     /** 注册一个 [CommandCallInterceptorProvider] */
-    @Suppress("DEPRECATION", "DeprecatedCallableAddReplaceWith")
-    @Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallInterceptor(provider).")
-    @DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+    @Suppress("DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
+    @Deprecated(
+        "Deprecated for removal. Please implement your own CommandCallResolverProvider, and use contributeCommandCallInterceptor(provider).",
+        level = DeprecationLevel.ERROR
+    )
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
     @ExperimentalCommandDescriptors
     @ExperimentalCommandDescriptors
     @OverloadResolutionByLambdaReturnType
     @OverloadResolutionByLambdaReturnType
     public fun contributeCommandCallInterceptor(lazyInstance: () -> CommandCallInterceptor): Unit =
     public fun contributeCommandCallInterceptor(lazyInstance: () -> CommandCallInterceptor): Unit =

+ 10 - 4
mirai-console/backend/mirai-console/src/extensions/CommandCallInterceptorProvider.kt

@@ -24,14 +24,20 @@ public interface CommandCallInterceptorProvider : InstanceExtension<CommandCallI
         )
         )
 }
 }
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallInterceptorProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallInterceptorProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallInterceptorProviderImpl(override val instance: CommandCallInterceptor) :
 public class CommandCallInterceptorProviderImpl(override val instance: CommandCallInterceptor) :
     CommandCallInterceptorProvider
     CommandCallInterceptorProvider
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallInterceptorProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallInterceptorProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallInterceptorProviderImplLazy(initializer: () -> CommandCallInterceptor) :
 public class CommandCallInterceptorProviderImplLazy(initializer: () -> CommandCallInterceptor) :
     CommandCallInterceptorProvider {
     CommandCallInterceptorProvider {

+ 10 - 4
mirai-console/backend/mirai-console/src/extensions/CommandCallParserProvider.kt

@@ -25,13 +25,19 @@ public interface CommandCallParserProvider : InstanceExtension<CommandCallParser
         AbstractInstanceExtensionPoint<CommandCallParserProvider, CommandCallParser>(CommandCallParserProvider::class)
         AbstractInstanceExtensionPoint<CommandCallParserProvider, CommandCallParser>(CommandCallParserProvider::class)
 }
 }
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallParserProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallParserProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallParserProviderImpl(override val instance: CommandCallParser) : CommandCallParserProvider
 public class CommandCallParserProviderImpl(override val instance: CommandCallParser) : CommandCallParserProvider
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallParserProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallParserProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallParserProviderImplLazy(initializer: () -> CommandCallParser) : CommandCallParserProvider {
 public class CommandCallParserProviderImplLazy(initializer: () -> CommandCallParser) : CommandCallParserProvider {
     override val instance: CommandCallParser by lazy(initializer)
     override val instance: CommandCallParser by lazy(initializer)

+ 10 - 4
mirai-console/backend/mirai-console/src/extensions/CommandCallResolverProvider.kt

@@ -23,13 +23,19 @@ public interface CommandCallResolverProvider : InstanceExtension<CommandCallReso
         AbstractInstanceExtensionPoint<CommandCallResolverProvider, CommandCallResolver>(CommandCallResolverProvider::class)
         AbstractInstanceExtensionPoint<CommandCallResolverProvider, CommandCallResolver>(CommandCallResolverProvider::class)
 }
 }
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallResolverProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallResolverProviderImpl(override val instance: CommandCallResolver) : CommandCallResolverProvider
 public class CommandCallResolverProviderImpl(override val instance: CommandCallResolver) : CommandCallResolverProvider
 
 
-@Deprecated("Deprecated for removal. Please implement your own CommandCallResolverProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for removal.
+@Deprecated(
+    "Deprecated for removal. Please implement your own CommandCallResolverProvider.",
+    level = DeprecationLevel.ERROR
+)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for removal.
 @ExperimentalCommandDescriptors
 @ExperimentalCommandDescriptors
 public class CommandCallResolverProviderImplLazy(initializer: () -> CommandCallResolver) : CommandCallResolverProvider {
 public class CommandCallResolverProviderImplLazy(initializer: () -> CommandCallResolver) : CommandCallResolverProvider {
     override val instance: CommandCallResolver by lazy(initializer)
     override val instance: CommandCallResolver by lazy(initializer)

+ 4 - 4
mirai-console/backend/mirai-console/src/extensions/PermissionServiceProvider.kt

@@ -29,15 +29,15 @@ public interface PermissionServiceProvider : InstanceExtension<PermissionService
 /**
 /**
  * @see PermissionServiceProvider
  * @see PermissionServiceProvider
  */
  */
-@Deprecated("Please implement your own PermissionServiceProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for hidden.
+@Deprecated("Please implement your own PermissionServiceProvider.", level = DeprecationLevel.ERROR)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for hidden.
 public class PermissionServiceProviderImpl(override val instance: PermissionService<*>) : PermissionServiceProvider
 public class PermissionServiceProviderImpl(override val instance: PermissionService<*>) : PermissionServiceProvider
 
 
 /**
 /**
  * @see PermissionServiceProvider
  * @see PermissionServiceProvider
  */
  */
-@Deprecated("Please implement your own PermissionServiceProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for hidden.
+@Deprecated("Please implement your own PermissionServiceProvider.", level = DeprecationLevel.ERROR)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for hidden.
 public class PermissionServiceProviderImplLazy(initializer: () -> PermissionService<*>) : PermissionServiceProvider {
 public class PermissionServiceProviderImplLazy(initializer: () -> PermissionService<*>) : PermissionServiceProvider {
     override val instance: PermissionService<*> by lazy(initializer)
     override val instance: PermissionService<*> by lazy(initializer)
 }
 }

+ 4 - 4
mirai-console/backend/mirai-console/src/extensions/PluginLoaderProvider.kt

@@ -31,12 +31,12 @@ public interface PluginLoaderProvider : InstanceExtension<PluginLoader<*, *>> {
     public companion object ExtensionPoint : AbstractExtensionPoint<PluginLoaderProvider>(PluginLoaderProvider::class)
     public companion object ExtensionPoint : AbstractExtensionPoint<PluginLoaderProvider>(PluginLoaderProvider::class)
 }
 }
 
 
-@Deprecated("Please implement your own PluginLoaderProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for hidden.
+@Deprecated("Please implement your own PluginLoaderProvider.", level = DeprecationLevel.ERROR)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for hidden.
 public class PluginLoaderProviderImpl(override val instance: PluginLoader<*, *>) : PluginLoaderProvider
 public class PluginLoaderProviderImpl(override val instance: PluginLoader<*, *>) : PluginLoaderProvider
 
 
-@Deprecated("Please implement your own PluginLoaderProvider.")
-@DeprecatedSinceMirai(warningSince = "2.11") // for hidden.
+@Deprecated("Please implement your own PluginLoaderProvider.", level = DeprecationLevel.ERROR)
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13") // for hidden.
 public class PluginLoaderProviderImplLazy(initializer: () -> PluginLoader<*, *>) : PluginLoaderProvider {
 public class PluginLoaderProviderImplLazy(initializer: () -> PluginLoader<*, *>) : PluginLoaderProvider {
     override val instance: PluginLoader<*, *> by lazy(initializer)
     override val instance: PluginLoader<*, *> by lazy(initializer)
 }
 }

+ 8 - 7
mirai-console/backend/mirai-console/src/extensions/SingletonExtensionSelector.kt

@@ -7,7 +7,7 @@
  * https://github.com/mamoe/mirai/blob/dev/LICENSE
  * https://github.com/mamoe/mirai/blob/dev/LICENSE
  */
  */
 
 
-@file:Suppress("DEPRECATION")
+@file:Suppress("DEPRECATION_ERROR")
 
 
 package net.mamoe.mirai.console.extensions
 package net.mamoe.mirai.console.extensions
 
 
@@ -28,18 +28,19 @@ import kotlin.reflect.KClass
  */
  */
 @Deprecated(
 @Deprecated(
     "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
     "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
-    level = DeprecationLevel.WARNING
+    level = DeprecationLevel.ERROR
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.11")
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
+@Suppress("DEPRECATION_ERROR")
 public interface SingletonExtensionSelector : FunctionExtension {
 public interface SingletonExtensionSelector : FunctionExtension {
     /**
     /**
      * 表示一个插件注册的 [Extension]
      * 表示一个插件注册的 [Extension]
      */
      */
     @Deprecated(
     @Deprecated(
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
-        level = DeprecationLevel.WARNING
+        level = DeprecationLevel.ERROR
     )
     )
-    @DeprecatedSinceMirai(warningSince = "2.11")
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
     public data class Registry<T : Extension>(
     public data class Registry<T : Extension>(
         val plugin: Plugin?,
         val plugin: Plugin?,
         val extension: T,
         val extension: T,
@@ -55,9 +56,9 @@ public interface SingletonExtensionSelector : FunctionExtension {
 
 
     @Deprecated(
     @Deprecated(
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
         "Order of extensions is now determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
-        level = DeprecationLevel.WARNING
+        level = DeprecationLevel.ERROR
     )
     )
-    @DeprecatedSinceMirai(warningSince = "2.11")
+    @DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
     public companion object ExtensionPoint :
     public companion object ExtensionPoint :
         AbstractExtensionPoint<SingletonExtensionSelector>(SingletonExtensionSelector::class) {
         AbstractExtensionPoint<SingletonExtensionSelector>(SingletonExtensionSelector::class) {
 
 

+ 3 - 4
mirai-console/backend/mirai-console/src/internal/extension/SingletonExtensionSelectorImpl.kt

@@ -7,7 +7,7 @@
  * https://github.com/mamoe/mirai/blob/dev/LICENSE
  * https://github.com/mamoe/mirai/blob/dev/LICENSE
  */
  */
 
 
-@file:Suppress("DEPRECATION")
+@file:Suppress("DEPRECATION_ERROR")
 
 
 package net.mamoe.mirai.console.internal.extension
 package net.mamoe.mirai.console.internal.extension
 
 
@@ -24,12 +24,11 @@ import net.mamoe.mirai.utils.DeprecatedSinceMirai
 import net.mamoe.mirai.utils.info
 import net.mamoe.mirai.utils.info
 import kotlin.reflect.KClass
 import kotlin.reflect.KClass
 
 
-@Suppress("DEPRECATION")
 @Deprecated(
 @Deprecated(
     "Order of extensions is not determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
     "Order of extensions is not determined by its priority property since 2.11. SingletonExtensionSelector is not needed anymore. ",
-    level = DeprecationLevel.WARNING
+    level = DeprecationLevel.ERROR
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.11")
+@DeprecatedSinceMirai(warningSince = "2.11", errorSince = "2.13")
 internal object SingletonExtensionSelectorImpl : SingletonExtensionSelector {
 internal object SingletonExtensionSelectorImpl : SingletonExtensionSelector {
 
 
     internal val config: SaveData = SaveData()
     internal val config: SaveData = SaveData()

+ 0 - 49
mirai-console/backend/mirai-console/src/util/CoroutineScopeUtils.kt

@@ -13,47 +13,10 @@ import kotlinx.atomicfu.atomic
 import kotlinx.atomicfu.loop
 import kotlinx.atomicfu.loop
 import kotlinx.coroutines.*
 import kotlinx.coroutines.*
 import net.mamoe.mirai.console.internal.util.runIgnoreException
 import net.mamoe.mirai.console.internal.util.runIgnoreException
-import net.mamoe.mirai.utils.DeprecatedSinceMirai
 import net.mamoe.mirai.utils.currentTimeMillis
 import net.mamoe.mirai.utils.currentTimeMillis
 import kotlin.coroutines.CoroutineContext
 import kotlin.coroutines.CoroutineContext
 import kotlin.coroutines.EmptyCoroutineContext
 import kotlin.coroutines.EmptyCoroutineContext
 
 
-@Suppress("DEPRECATION", "DEPRECATION_ERROR", "DeprecatedCallableAddReplaceWith")
-@Deprecated("No longer supported, deprecated for removal.", level = DeprecationLevel.ERROR)
-@DeprecatedSinceMirai(warningSince = "2.10.0-RC", errorSince = "2.12")
-@ConsoleExperimentalApi
-public object CoroutineScopeUtils {
-    @Deprecated("No longer supported, deprecated for removal.", level = DeprecationLevel.ERROR)
-    @DeprecatedSinceMirai(warningSince = "2.10.0-RC", errorSince = "2.12")
-    @JvmStatic
-    @ConsoleExperimentalApi
-    public fun CoroutineContext.overrideWithSupervisorJob(name: String? = null): CoroutineContext =
-        this + NamedSupervisorJob(name ?: "<unnamed>", this[Job])
-
-    @Deprecated("No longer supported, deprecated for removal.", level = DeprecationLevel.ERROR)
-    @DeprecatedSinceMirai(warningSince = "2.10.0-RC", errorSince = "2.12")
-    @JvmStatic
-    @ConsoleExperimentalApi
-    public fun CoroutineScope.childScope(
-        name: String? = null,
-        context: CoroutineContext = EmptyCoroutineContext
-    ): CoroutineScope =
-        CoroutineScope(this.childScopeContext(name, context))
-
-    @Deprecated("No longer supported, deprecated for removal.", level = DeprecationLevel.ERROR)
-    @DeprecatedSinceMirai(warningSince = "2.10.0-RC", errorSince = "2.12")
-    @JvmStatic
-    @ConsoleExperimentalApi
-    public fun CoroutineScope.childScopeContext(
-        name: String? = null,
-        context: CoroutineContext = EmptyCoroutineContext
-    ): CoroutineContext =
-        this.coroutineContext.overrideWithSupervisorJob(name) + context.let {
-            if (name != null) it + CoroutineName(name)
-            else it
-        }
-}
-
 /**
 /**
  * Runs `action` every `intervalMillis` since each time [setChanged] is called, ignoring subsequent calls during the interval.
  * Runs `action` every `intervalMillis` since each time [setChanged] is called, ignoring subsequent calls during the interval.
  */
  */
@@ -99,15 +62,3 @@ internal fun CoroutineScope.launchTimedTask(
     coroutineContext: CoroutineContext = EmptyCoroutineContext,
     coroutineContext: CoroutineContext = EmptyCoroutineContext,
     action: suspend CoroutineScope.() -> Unit,
     action: suspend CoroutineScope.() -> Unit,
 ) = TimedTask(this, coroutineContext, intervalMillis, action)
 ) = TimedTask(this, coroutineContext, intervalMillis, action)
-
-@Deprecated("No longer supported, deprecated for removal.", level = DeprecationLevel.ERROR)
-@DeprecatedSinceMirai(warningSince = "2.10.0-RC", errorSince = "2.12")
-@ConsoleExperimentalApi
-public class NamedSupervisorJob @JvmOverloads constructor(
-    private val name: String,
-    parent: Job? = null
-) : CompletableJob by SupervisorJob(parent) {
-    override fun toString(): String {
-        return "NamedSupervisorJob($name)"
-    }
-}

+ 16 - 18
mirai-core-api/compatibility-validation/android/api/android.api

@@ -1817,8 +1817,6 @@ public abstract interface annotation class net/mamoe/mirai/event/EventHandler :
 public final class net/mamoe/mirai/event/EventKt {
 public final class net/mamoe/mirai/event/EventKt {
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;)Lnet/mamoe/mirai/event/Event;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;)Lnet/mamoe/mirai/event/Event;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static final fun getEventDisabled ()Z
-	public static final fun setEventDisabled (Z)V
 }
 }
 
 
 public final class net/mamoe/mirai/event/EventPriority : java/lang/Enum {
 public final class net/mamoe/mirai/event/EventPriority : java/lang/Enum {
@@ -6312,14 +6310,14 @@ public abstract interface class net/mamoe/mirai/utils/RemoteFile {
 	public static synthetic fun resolveById$suspendImpl (Lnet/mamoe/mirai/utils/RemoteFile;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static synthetic fun resolveById$suspendImpl (Lnet/mamoe/mirai/utils/RemoteFile;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun resolveSibling (Ljava/lang/String;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Ljava/lang/String;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Lnet/mamoe/mirai/utils/RemoteFile;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Lnet/mamoe/mirai/utils/RemoteFile;)Lnet/mamoe/mirai/utils/RemoteFile;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public fun toMessage ()Lnet/mamoe/mirai/message/data/FileMessage;
 	public fun toMessage ()Lnet/mamoe/mirai/message/data/FileMessage;
 	public abstract fun toMessage (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun toMessage (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun toString ()Ljava/lang/String;
 	public abstract fun toString ()Ljava/lang/String;
@@ -6350,14 +6348,14 @@ public abstract interface class net/mamoe/mirai/utils/RemoteFile {
 
 
 public final class net/mamoe/mirai/utils/RemoteFile$Companion {
 public final class net/mamoe/mirai/utils/RemoteFile$Companion {
 	public static final field ROOT_PATH Ljava/lang/String;
 	public static final field ROOT_PATH Ljava/lang/String;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;

+ 16 - 18
mirai-core-api/compatibility-validation/jvm/api/jvm.api

@@ -1817,8 +1817,6 @@ public abstract interface annotation class net/mamoe/mirai/event/EventHandler :
 public final class net/mamoe/mirai/event/EventKt {
 public final class net/mamoe/mirai/event/EventKt {
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;)Lnet/mamoe/mirai/event/Event;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;)Lnet/mamoe/mirai/event/Event;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static final fun broadcast (Lnet/mamoe/mirai/event/Event;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static final fun getEventDisabled ()Z
-	public static final fun setEventDisabled (Z)V
 }
 }
 
 
 public final class net/mamoe/mirai/event/EventPriority : java/lang/Enum {
 public final class net/mamoe/mirai/event/EventPriority : java/lang/Enum {
@@ -6312,14 +6310,14 @@ public abstract interface class net/mamoe/mirai/utils/RemoteFile {
 	public static synthetic fun resolveById$suspendImpl (Lnet/mamoe/mirai/utils/RemoteFile;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static synthetic fun resolveById$suspendImpl (Lnet/mamoe/mirai/utils/RemoteFile;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun resolveSibling (Ljava/lang/String;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Ljava/lang/String;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Lnet/mamoe/mirai/utils/RemoteFile;)Lnet/mamoe/mirai/utils/RemoteFile;
 	public abstract fun resolveSibling (Lnet/mamoe/mirai/utils/RemoteFile;)Lnet/mamoe/mirai/utils/RemoteFile;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public static fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public static synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public fun toMessage ()Lnet/mamoe/mirai/message/data/FileMessage;
 	public fun toMessage ()Lnet/mamoe/mirai/message/data/FileMessage;
 	public abstract fun toMessage (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun toMessage (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public abstract fun toString ()Ljava/lang/String;
 	public abstract fun toString ()Ljava/lang/String;
@@ -6350,14 +6348,14 @@ public abstract interface class net/mamoe/mirai/utils/RemoteFile {
 
 
 public final class net/mamoe/mirai/utils/RemoteFile$Companion {
 public final class net/mamoe/mirai/utils/RemoteFile$Companion {
 	public static final field ROOT_PATH Ljava/lang/String;
 	public static final field ROOT_PATH Ljava/lang/String;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
-	public final fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;)Lnet/mamoe/mirai/message/MessageReceipt;
+	public final synthetic fun sendFile (Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Ljava/io/File;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;
 	public static synthetic fun sendFile$default (Lnet/mamoe/mirai/utils/RemoteFile$Companion;Lnet/mamoe/mirai/contact/FileSupported;Ljava/lang/String;Lnet/mamoe/mirai/utils/ExternalResource;Lnet/mamoe/mirai/utils/RemoteFile$ProgressionCallback;ILjava/lang/Object;)Lnet/mamoe/mirai/message/MessageReceipt;

+ 0 - 14
mirai-core-api/src/commonMain/kotlin/event/Event.kt

@@ -15,8 +15,6 @@ import kotlinx.coroutines.sync.Mutex
 import me.him188.kotlin.jvm.blocking.bridge.JvmBlockingBridge
 import me.him188.kotlin.jvm.blocking.bridge.JvmBlockingBridge
 import net.mamoe.mirai.IMirai
 import net.mamoe.mirai.IMirai
 import net.mamoe.mirai.Mirai
 import net.mamoe.mirai.Mirai
-import net.mamoe.mirai.utils.DeprecatedSinceMirai
-import net.mamoe.mirai.utils.MiraiExperimentalApi
 import net.mamoe.mirai.utils.MiraiInternalApi
 import net.mamoe.mirai.utils.MiraiInternalApi
 import kotlin.jvm.JvmField
 import kotlin.jvm.JvmField
 import kotlin.jvm.Volatile
 import kotlin.jvm.Volatile
@@ -160,18 +158,6 @@ public suspend fun <E : Event> E.broadcast(): E {
     return this
     return this
 }
 }
 
 
-/**
- * 设置为 `true` 以关闭事件.
- * 所有的 `subscribe` 都能正常添加到监听器列表, 但所有的广播都会直接返回.
- */
-@MiraiExperimentalApi
-@Deprecated(
-    "Deprecated without replacement. If you really need this, please file an issue.",
-    level = DeprecationLevel.ERROR
-)
-@DeprecatedSinceMirai(errorSince = "2.12")
-public var EventDisabled: Boolean = false
-
 /**
 /**
  * 可控制是否需要广播这个事件
  * 可控制是否需要广播这个事件
  */
  */

+ 4 - 4
mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.nextEvent.kt

@@ -37,7 +37,7 @@ import kotlin.reflect.KClass
  * @throws TimeoutCancellationException 在超时后抛出.
  * @throws TimeoutCancellationException 在超时后抛出.
  */
  */
 @JvmSynthetic
 @JvmSynthetic
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @Deprecated(
 @Deprecated(
     "Use GlobalEventChannel.nextEvent",
     "Use GlobalEventChannel.nextEvent",
     ReplaceWith(
     ReplaceWith(
@@ -45,7 +45,7 @@ import kotlin.reflect.KClass
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.GlobalEventChannel",
         "kotlinx.coroutines.withTimeout",
         "kotlinx.coroutines.withTimeout",
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
 public suspend inline fun <reified E : Event> nextEvent(
 public suspend inline fun <reified E : Event> nextEvent(
     timeoutMillis: Long = -1,
     timeoutMillis: Long = -1,
@@ -74,7 +74,7 @@ public suspend inline fun <reified E : Event> nextEvent(
  * @return 事件实例, 在超时后返回 `null`
  * @return 事件实例, 在超时后返回 `null`
  */
  */
 @JvmSynthetic
 @JvmSynthetic
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @Deprecated(
 @Deprecated(
     "Use GlobalEventChannel.nextEvent",
     "Use GlobalEventChannel.nextEvent",
     ReplaceWith(
     ReplaceWith(
@@ -84,7 +84,7 @@ public suspend inline fun <reified E : Event> nextEvent(
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.nextEvent"
         "net.mamoe.mirai.event.nextEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
 public suspend inline fun <reified E : Event> nextEventOrNull(
 public suspend inline fun <reified E : Event> nextEventOrNull(
     timeoutMillis: Long,
     timeoutMillis: Long,

+ 4 - 4
mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.nextEventAsync.kt

@@ -52,9 +52,9 @@ import kotlin.coroutines.EmptyCoroutineContext
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.nextEvent"
         "net.mamoe.mirai.event.nextEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @MiraiExperimentalApi
 @MiraiExperimentalApi
 public inline fun <reified E : Event> CoroutineScope.nextEventAsync(
 public inline fun <reified E : Event> CoroutineScope.nextEventAsync(
     timeoutMillis: Long = -1,
     timeoutMillis: Long = -1,
@@ -106,9 +106,9 @@ public inline fun <reified E : Event> CoroutineScope.nextEventAsync(
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.nextEvent"
         "net.mamoe.mirai.event.nextEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @JvmSynthetic
 @JvmSynthetic
 public inline fun <reified E : Event> CoroutineScope.nextEventOrNullAsync(
 public inline fun <reified E : Event> CoroutineScope.nextEventOrNullAsync(
     timeoutMillis: Long,
     timeoutMillis: Long,

+ 8 - 8
mirai-core-api/src/jvmBaseMain/kotlin/event/deprecated.syncFromEvent.kt

@@ -33,7 +33,7 @@ import kotlin.reflect.KClass
  * @throws TimeoutCancellationException 在超时后抛出.
  * @throws TimeoutCancellationException 在超时后抛出.
  * @throws Throwable 当 [mapper] 抛出任何异常时, 本函数会抛出该异常
  * @throws Throwable 当 [mapper] 抛出任何异常时, 本函数会抛出该异常
  */
  */
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @Deprecated(
 @Deprecated(
     "Use GlobalEventChannel.syncFromEvent",
     "Use GlobalEventChannel.syncFromEvent",
     ReplaceWith(
     ReplaceWith(
@@ -42,7 +42,7 @@ import kotlin.reflect.KClass
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.GlobalEventChannel",
         "net.mamoe.mirai.event.syncFromEvent"
         "net.mamoe.mirai.event.syncFromEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
 @JvmSynthetic
 @JvmSynthetic
 public suspend inline fun <reified E : Event, R : Any> syncFromEvent(
 public suspend inline fun <reified E : Event, R : Any> syncFromEvent(
@@ -79,11 +79,11 @@ public suspend inline fun <reified E : Event, R : Any> syncFromEvent(
  * @throws Throwable 当 [mapper] 抛出任何异常时, 本函数会抛出该异常
  * @throws Throwable 当 [mapper] 抛出任何异常时, 本函数会抛出该异常
  */
  */
 @JvmSynthetic
 @JvmSynthetic
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @Deprecated(
 @Deprecated(
     "Use GlobalEventChannel.syncFromEvent",
     "Use GlobalEventChannel.syncFromEvent",
     ReplaceWith("withTimeoutOrNull(timeoutMillis) { GlobalEventChannel.syncFromEvent<E, R>(priority) { event -> with(event) { mapper(event) } }"),
     ReplaceWith("withTimeoutOrNull(timeoutMillis) { GlobalEventChannel.syncFromEvent<E, R>(priority) { event -> with(event) { mapper(event) } }"),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
 public suspend inline fun <reified E : Event, R : Any> syncFromEventOrNull(
 public suspend inline fun <reified E : Event, R : Any> syncFromEventOrNull(
     timeoutMillis: Long,
     timeoutMillis: Long,
@@ -125,10 +125,10 @@ public suspend inline fun <reified E : Event, R : Any> syncFromEventOrNull(
         "net.mamoe.mirai.event.globalEventChannel",
         "net.mamoe.mirai.event.globalEventChannel",
         "net.mamoe.mirai.event.syncFromEvent"
         "net.mamoe.mirai.event.syncFromEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
 @JvmSynthetic
 @JvmSynthetic
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @Suppress("DeferredIsResult")
 @Suppress("DeferredIsResult")
 public inline fun <reified E : Event, R : Any> CoroutineScope.asyncFromEventOrNull(
 public inline fun <reified E : Event, R : Any> CoroutineScope.asyncFromEventOrNull(
     timeoutMillis: Long,
     timeoutMillis: Long,
@@ -177,9 +177,9 @@ public inline fun <reified E : Event, R : Any> CoroutineScope.asyncFromEventOrNu
         "net.mamoe.mirai.event.globalEventChannel",
         "net.mamoe.mirai.event.globalEventChannel",
         "net.mamoe.mirai.event.syncFromEvent"
         "net.mamoe.mirai.event.syncFromEvent"
     ),
     ),
-    level = DeprecationLevel.ERROR
+    level = DeprecationLevel.HIDDEN
 )
 )
-@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12")
+@DeprecatedSinceMirai(warningSince = "2.10", errorSince = "2.12", hiddenSince = "2.13")
 @JvmSynthetic
 @JvmSynthetic
 @Suppress("DeferredIsResult")
 @Suppress("DeferredIsResult")
 public inline fun <reified E : Event, R : Any> CoroutineScope.asyncFromEvent(
 public inline fun <reified E : Event, R : Any> CoroutineScope.asyncFromEvent(

+ 4 - 4
mirai-core-api/src/jvmBaseMain/kotlin/utils/RemoteFile.kt

@@ -636,9 +636,9 @@ public interface RemoteFile {
         @Deprecated(
         @Deprecated(
             "Deprecated. Please use AbsoluteFolder.uploadNewFile or RemoteFiles.uploadNewFile",
             "Deprecated. Please use AbsoluteFolder.uploadNewFile or RemoteFiles.uploadNewFile",
             ReplaceWith("this.files.uploadNewFile(path, resource, callback)"),
             ReplaceWith("this.files.uploadNewFile(path, resource, callback)"),
-            level = DeprecationLevel.ERROR
+            level = DeprecationLevel.HIDDEN
         ) // deprecated since 2.8.0-RC
         ) // deprecated since 2.8.0-RC
-        @DeprecatedSinceMirai(warningSince = "2.8", errorSince = "2.12")
+        @DeprecatedSinceMirai(warningSince = "2.8", errorSince = "2.12", hiddenSince = "2.13")
         @Suppress("_FUNCTION_WITH_DEFAULT_ARGUMENTS")
         @Suppress("_FUNCTION_WITH_DEFAULT_ARGUMENTS")
         public suspend fun <C : FileSupported> C.sendFile(
         public suspend fun <C : FileSupported> C.sendFile(
             path: String,
             path: String,
@@ -657,9 +657,9 @@ public interface RemoteFile {
         @Deprecated(
         @Deprecated(
             "Deprecated. Please use AbsoluteFolder.uploadNewFile or RemoteFiles.uploadNewFile",
             "Deprecated. Please use AbsoluteFolder.uploadNewFile or RemoteFiles.uploadNewFile",
             ReplaceWith("file.toExternalResource().use { this.files.uploadNewFile(path, it, callback) }"),
             ReplaceWith("file.toExternalResource().use { this.files.uploadNewFile(path, it, callback) }"),
-            level = DeprecationLevel.ERROR
+            level = DeprecationLevel.HIDDEN
         ) // deprecated since 2.8.0-RC
         ) // deprecated since 2.8.0-RC
-        @DeprecatedSinceMirai(warningSince = "2.8", errorSince = "2.12")
+        @DeprecatedSinceMirai(warningSince = "2.8", errorSince = "2.12", hiddenSince = "2.13")
         public suspend fun <C : FileSupported> C.sendFile(
         public suspend fun <C : FileSupported> C.sendFile(
             path: String,
             path: String,
             file: File,
             file: File,