diff --git a/src/Umbraco.Core/PublishedCache/IDatabaseCacheRebuilder.cs b/src/Umbraco.Core/PublishedCache/IDatabaseCacheRebuilder.cs
index ce46f1152c..cea7cc1fde 100644
--- a/src/Umbraco.Core/PublishedCache/IDatabaseCacheRebuilder.cs
+++ b/src/Umbraco.Core/PublishedCache/IDatabaseCacheRebuilder.cs
@@ -19,21 +19,13 @@ public interface IDatabaseCacheRebuilder
///
Task IsRebuildingAsync() => Task.FromResult(IsRebuilding());
- ///
- /// Rebuilds the database cache.
- ///
- [Obsolete("Use the overload with the useBackgroundThread parameter. Scheduled for removal in Umbraco 17.")]
- void Rebuild();
-
///
/// Rebuilds the database cache, optionally using a background thread.
///
/// Flag indicating whether to use a background thread for the operation and immediately return to the caller.
[Obsolete("Use RebuildAsync instead. Scheduled for removal in Umbraco 18.")]
void Rebuild(bool useBackgroundThread)
-#pragma warning disable CS0618 // Type or member is obsolete
- => Rebuild();
-#pragma warning restore CS0618 // Type or member is obsolete
+ => RebuildAsync(useBackgroundThread);
///
/// Rebuilds the database cache, optionally using a background thread.
diff --git a/src/Umbraco.Core/Services/ICacheInstructionService.cs b/src/Umbraco.Core/Services/ICacheInstructionService.cs
index 94ccea42b4..eb13863324 100644
--- a/src/Umbraco.Core/Services/ICacheInstructionService.cs
+++ b/src/Umbraco.Core/Services/ICacheInstructionService.cs
@@ -45,31 +45,5 @@ public interface ICacheInstructionService
CacheRefresherCollection cacheRefreshers,
CancellationToken cancellationToken,
string localIdentity,
- int lastId) =>
- ProcessInstructions(
- cacheRefreshers,
- ServerRole.Unknown,
- cancellationToken,
- localIdentity,
- lastPruned: DateTime.UtcNow,
- lastId);
-
- ///
- /// Processes pending database cache instructions.
- ///
- /// Cache refreshers.
- /// Server role.
- /// Cancellation token.
- /// Local identity of the executing AppDomain.
- /// Date of last prune operation.
- /// Id of the latest processed instruction.
- /// The processing result.
- [Obsolete("Use the non-obsolete overload. Scheduled for removal in V17.")]
- ProcessInstructionsResult ProcessInstructions(
- CacheRefresherCollection cacheRefreshers,
- ServerRole serverRole,
- CancellationToken cancellationToken,
- string localIdentity,
- DateTime lastPruned,
int lastId);
}
diff --git a/src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.CoreServices.cs b/src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.CoreServices.cs
index 6b48a5a13c..31212f6e1e 100644
--- a/src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.CoreServices.cs
+++ b/src/Umbraco.Infrastructure/DependencyInjection/UmbracoBuilder.CoreServices.cs
@@ -234,9 +234,6 @@ public static partial class UmbracoBuilderExtensions
// We can simplify this registration once the obsolete IBackgroundTaskQueue is removed.
builder.Services.AddSingleton();
builder.Services.AddSingleton(s => s.GetRequiredService());
-#pragma warning disable CS0618 // Type or member is obsolete
- builder.Services.AddSingleton(s => s.GetRequiredService());
-#pragma warning restore CS0618 // Type or member is obsolete
builder.Services.AddTransient();
diff --git a/src/Umbraco.Infrastructure/HostedServices/BackgroundTaskQueue.cs b/src/Umbraco.Infrastructure/HostedServices/BackgroundTaskQueue.cs
index 55b28f984e..d99cb404be 100644
--- a/src/Umbraco.Infrastructure/HostedServices/BackgroundTaskQueue.cs
+++ b/src/Umbraco.Infrastructure/HostedServices/BackgroundTaskQueue.cs
@@ -1,4 +1,5 @@
using System.Collections.Concurrent;
+using Umbraco.Cms.Core.HostedServices;
namespace Umbraco.Cms.Infrastructure.HostedServices;
@@ -8,9 +9,7 @@ namespace Umbraco.Cms.Infrastructure.HostedServices;
///
/// Borrowed from https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-5.0
///
-#pragma warning disable CS0618 // Type or member is obsolete
public class BackgroundTaskQueue : IBackgroundTaskQueue
-#pragma warning restore CS0618 // Type or member is obsolete
{
private readonly SemaphoreSlim _signal = new(0);
diff --git a/src/Umbraco.Infrastructure/HostedServices/IBackgroundTaskQueue.cs b/src/Umbraco.Infrastructure/HostedServices/IBackgroundTaskQueue.cs
deleted file mode 100644
index 8e4a6f6a23..0000000000
--- a/src/Umbraco.Infrastructure/HostedServices/IBackgroundTaskQueue.cs
+++ /dev/null
@@ -1,21 +0,0 @@
-namespace Umbraco.Cms.Infrastructure.HostedServices;
-
-///
-/// A Background Task Queue, to enqueue tasks for executing in the background.
-///
-///
-/// Borrowed from https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-5.0
-///
-[Obsolete("This has been relocated into Umbraco.Cms.Core. This definition in Umbraco.Cms.Infrastructure is scheduled for removal in Umbraco 17.")]
-public interface IBackgroundTaskQueue : Core.HostedServices.IBackgroundTaskQueue
-{
- ///
- /// Enqueue a work item to be executed in the background.
- ///
- void QueueBackgroundWorkItem(Func workItem);
-
- ///
- /// Dequeue the first item on the queue.
- ///
- Task?> DequeueAsync(CancellationToken cancellationToken);
-}
diff --git a/src/Umbraco.Infrastructure/HostedServices/QueuedHostedService.cs b/src/Umbraco.Infrastructure/HostedServices/QueuedHostedService.cs
index 038691cc99..935cb3a80b 100644
--- a/src/Umbraco.Infrastructure/HostedServices/QueuedHostedService.cs
+++ b/src/Umbraco.Infrastructure/HostedServices/QueuedHostedService.cs
@@ -1,5 +1,6 @@
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
+using Umbraco.Cms.Core.HostedServices;
namespace Umbraco.Cms.Infrastructure.HostedServices;
diff --git a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs
index 8d1f8fecf4..4d78681f19 100644
--- a/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs
+++ b/src/Umbraco.Infrastructure/Logging/Serilog/SerilogLogger.cs
@@ -19,33 +19,8 @@ public class SerilogLogger : IDisposable
public ILogger SerilogLog { get; }
- [Obsolete("Scheduled for removal in Umbraco 17.")]
- public static SerilogLogger CreateWithDefaultConfiguration(
- IHostingEnvironment hostingEnvironment,
- ILoggingConfiguration loggingConfiguration,
- IConfiguration configuration) =>
- CreateWithDefaultConfiguration(hostingEnvironment, loggingConfiguration, configuration, out _);
-
public void Dispose() => (SerilogLog as IDisposable)?.Dispose();
- ///
- /// Creates a logger with some pre-defined configuration and remainder from config file
- ///
- /// Used by UmbracoApplicationBase to get its logger.
- [Obsolete("Scheduled for removal in Umbraco 17.")]
- public static SerilogLogger CreateWithDefaultConfiguration(
- IHostingEnvironment hostingEnvironment,
- ILoggingConfiguration loggingConfiguration,
- IConfiguration configuration,
- out UmbracoFileConfiguration umbracoFileConfig)
- {
- LoggerConfiguration? serilogConfig = new LoggerConfiguration()
- .MinimalConfiguration(hostingEnvironment, loggingConfiguration, configuration, out umbracoFileConfig)
- .ReadFrom.Configuration(configuration);
-
- return new SerilogLogger(serilogConfig);
- }
-
public bool IsEnabled(Type reporting, LogLevel level)
=> LoggerFor(reporting).IsEnabled(MapLevel(level));
diff --git a/src/Umbraco.Infrastructure/Mail/EmailSender.cs b/src/Umbraco.Infrastructure/Mail/EmailSender.cs
index feb00735f2..618323bcd1 100644
--- a/src/Umbraco.Infrastructure/Mail/EmailSender.cs
+++ b/src/Umbraco.Infrastructure/Mail/EmailSender.cs
@@ -2,13 +2,11 @@
// See LICENSE for more details.
using MailKit.Net.Smtp;
-using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using MimeKit;
using MimeKit.IO;
using Umbraco.Cms.Core.Configuration.Models;
-using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Events;
using Umbraco.Cms.Core.Mail;
using Umbraco.Cms.Core.Models.Email;
@@ -30,32 +28,6 @@ public class EmailSender : IEmailSender
private GlobalSettings _globalSettings;
private readonly IEmailSenderClient _emailSenderClient;
- [Obsolete("Please use the non-obsolete constructor. Will be removed in V17.")]
- public EmailSender(
- ILogger logger,
- IOptionsMonitor globalSettings,
- IEventAggregator eventAggregator)
- : this(logger, globalSettings, eventAggregator,null, null)
- {
- }
-
- [Obsolete("Please use the non-obsolete constructor. Will be removed in V17.")]
- public EmailSender(
- ILogger logger,
- IOptionsMonitor globalSettings,
- IEventAggregator eventAggregator,
- INotificationHandler? handler1,
- INotificationAsyncHandler? handler2)
- {
- _logger = logger;
- _eventAggregator = eventAggregator;
- _globalSettings = globalSettings.CurrentValue;
- _notificationHandlerRegistered = handler1 is not null || handler2 is not null;
- _emailSenderClient = StaticServiceProvider.Instance.GetRequiredService();
- globalSettings.OnChange(x => _globalSettings = x);
- }
-
- [ActivatorUtilitiesConstructor]
public EmailSender(
ILogger logger,
IOptionsMonitor globalSettings,
diff --git a/src/Umbraco.Infrastructure/Migrations/IMigrationPlanExecutor.cs b/src/Umbraco.Infrastructure/Migrations/IMigrationPlanExecutor.cs
index 70350f5e93..d8d0e24081 100644
--- a/src/Umbraco.Infrastructure/Migrations/IMigrationPlanExecutor.cs
+++ b/src/Umbraco.Infrastructure/Migrations/IMigrationPlanExecutor.cs
@@ -1,13 +1,9 @@
using Umbraco.Cms.Infrastructure.Migrations;
-using Umbraco.Extensions;
namespace Umbraco.Cms.Core.Migrations;
public interface IMigrationPlanExecutor
{
- [Obsolete("Use ExecutePlan instead. Scheduled for removal in Umbraco 17.")]
- string Execute(MigrationPlan plan, string fromState);
-
///
/// Executes the migration plan.
///
@@ -19,13 +15,7 @@ public interface IMigrationPlanExecutor
/// A plan can complete partially, the changes of each completed migration will be saved.
///
[Obsolete("Use ExecutePlanAsync instead. Scheduled for removal in Umbraco 18.")]
- ExecutedMigrationPlan ExecutePlan(MigrationPlan plan, string fromState)
- {
- var state = Execute(plan, fromState);
-
- // We have no real way of knowing whether it was successfull or not here, assume true.
- return new ExecutedMigrationPlan(plan, fromState, state, true, plan.Transitions.Select(x => x.Value).WhereNotNull().ToList());
- }
+ ExecutedMigrationPlan ExecutePlan(MigrationPlan plan, string fromState);
///
/// Executes the migration plan asynchronously.
diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs b/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs
index 2bfc31231f..b675740936 100644
--- a/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs
+++ b/src/Umbraco.Infrastructure/Migrations/MigrationBase.cs
@@ -1,7 +1,7 @@
namespace Umbraco.Cms.Infrastructure.Migrations;
///
-[Obsolete("Use AsyncMigrationBase instead. Scheduled for removal in Umbraco 17.")]
+[Obsolete("Use AsyncMigrationBase instead. Scheduled for removal in Umbraco 18.")]
public abstract class MigrationBase : AsyncMigrationBase
{
///
diff --git a/src/Umbraco.Infrastructure/Migrations/MigrationPlanExecutor.cs b/src/Umbraco.Infrastructure/Migrations/MigrationPlanExecutor.cs
index 878d0e4d3b..8ac9fa3e74 100644
--- a/src/Umbraco.Infrastructure/Migrations/MigrationPlanExecutor.cs
+++ b/src/Umbraco.Infrastructure/Migrations/MigrationPlanExecutor.cs
@@ -1,15 +1,11 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using OpenIddict.Abstractions;
-using Org.BouncyCastle.Utilities;
using Umbraco.Cms.Core;
using Umbraco.Cms.Core.Cache;
-using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Migrations;
-using Umbraco.Cms.Core.Models.Membership;
using Umbraco.Cms.Core.PublishedCache;
using Umbraco.Cms.Core.Scoping;
-using Umbraco.Cms.Core.Security;
using Umbraco.Cms.Core.Services;
using Umbraco.Cms.Infrastructure.Persistence;
using Umbraco.Cms.Infrastructure.Scoping;
@@ -79,34 +75,6 @@ public class MigrationPlanExecutor : IMigrationPlanExecutor
_logger = _loggerFactory.CreateLogger();
}
- [Obsolete("Use the non obsoleted constructor instead. Scheduled for removal in v17")]
- public MigrationPlanExecutor(
- ICoreScopeProvider scopeProvider,
- IScopeAccessor scopeAccessor,
- ILoggerFactory loggerFactory,
- IMigrationBuilder migrationBuilder,
- IUmbracoDatabaseFactory databaseFactory,
- IDatabaseCacheRebuilder databaseCacheRebuilder,
- DistributedCache distributedCache,
- IKeyValueService keyValueService,
- IServiceScopeFactory serviceScopeFactory)
- : this(
- scopeProvider,
- scopeAccessor,
- loggerFactory,
- migrationBuilder,
- databaseFactory,
- databaseCacheRebuilder,
- distributedCache,
- keyValueService,
- serviceScopeFactory,
- StaticServiceProvider.Instance.GetRequiredService())
- {
- }
-
- [Obsolete("Use ExecutePlan instead. Scheduled for removal in Umbraco 17.")]
- public string Execute(MigrationPlan plan, string fromState) => ExecutePlan(plan, fromState).FinalState;
-
///
[Obsolete("Use ExecutePlanAsync instead. Scheduled for removal in Umbraco 18.")]
public ExecutedMigrationPlan ExecutePlan(MigrationPlan plan, string fromState) => ExecutePlanAsync(plan, fromState).GetAwaiter().GetResult();
diff --git a/src/Umbraco.Infrastructure/Migrations/PostMigrations/CacheRebuilder.cs b/src/Umbraco.Infrastructure/Migrations/PostMigrations/CacheRebuilder.cs
deleted file mode 100644
index 76ce8af339..0000000000
--- a/src/Umbraco.Infrastructure/Migrations/PostMigrations/CacheRebuilder.cs
+++ /dev/null
@@ -1,33 +0,0 @@
-using Umbraco.Cms.Core.Cache;
-using Umbraco.Cms.Core.PublishedCache;
-using Umbraco.Extensions;
-
-namespace Umbraco.Cms.Infrastructure.Migrations.PostMigrations;
-
-///
-/// Implements in Umbraco.Web (rebuilding).
-///
-[Obsolete("This is no longer used. Scheduled for removal in Umbraco 17.")]
-public class CacheRebuilder : ICacheRebuilder
-{
- private readonly DistributedCache _distributedCache;
- private readonly IDatabaseCacheRebuilder _databaseCacheRebuilder;
-
- ///
- /// Initializes a new instance of the class.
- ///
- public CacheRebuilder(
- DistributedCache distributedCache,
- IDatabaseCacheRebuilder databaseCacheRebuilder)
- {
- _distributedCache = distributedCache;
- _databaseCacheRebuilder = databaseCacheRebuilder;
- }
-
- ///
- public void Rebuild()
- {
- _databaseCacheRebuilder.Rebuild(false);
- _distributedCache.RefreshAllPublishedSnapshot();
- }
-}
diff --git a/src/Umbraco.Infrastructure/Migrations/PostMigrations/ICacheRebuilder.cs b/src/Umbraco.Infrastructure/Migrations/PostMigrations/ICacheRebuilder.cs
deleted file mode 100644
index 5e53a11a53..0000000000
--- a/src/Umbraco.Infrastructure/Migrations/PostMigrations/ICacheRebuilder.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-namespace Umbraco.Cms.Infrastructure.Migrations.PostMigrations;
-
-///
-/// Rebuilds the published snapshot.
-///
-///
-///
-/// This interface exists because the entire published snapshot lives in Umbraco.Web
-/// but we may want to trigger rebuilds from Umbraco.Core. These two assemblies should
-/// be refactored, really.
-///
-///
-[Obsolete("This is no longer used. Scheduled for removal in Umbraco 17.")]
-public interface ICacheRebuilder
-{
- ///
- /// Rebuilds.
- ///
- void Rebuild();
-}
diff --git a/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextBuilder.cs b/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextBuilder.cs
index f46e0d66ff..67c263818c 100644
--- a/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextBuilder.cs
+++ b/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextBuilder.cs
@@ -47,13 +47,6 @@ public class TextBuilder : Builder
{
}
- ///
- /// Outputs an "auto-generated" header to a string builder.
- ///
- /// The string builder.
- [Obsolete("Please use the overload taking all parameters. Scheduled for removal in Umbraco 17.")]
- public static void WriteHeader(StringBuilder sb) => WriteHeader(sb, true);
-
///
/// Outputs an "auto-generated" header to a string builder.
///
diff --git a/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextHeaderWriter.cs b/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextHeaderWriter.cs
index 9ab59516d7..d5e8de20c6 100644
--- a/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextHeaderWriter.cs
+++ b/src/Umbraco.Infrastructure/ModelsBuilder/Building/TextHeaderWriter.cs
@@ -4,13 +4,6 @@ namespace Umbraco.Cms.Infrastructure.ModelsBuilder.Building;
internal static class TextHeaderWriter
{
- ///
- /// Outputs an "auto-generated" header to a string builder.
- ///
- /// The string builder.
- [Obsolete("Please use the overload taking all parameters. Scheduled for removal in Umbraco 17.")]
- public static void WriteHeader(StringBuilder sb) => WriteHeader(sb, true);
-
///
/// Outputs an "auto-generated" header to a string builder.
///
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/BlockValuePropertyValueEditorBase.cs b/src/Umbraco.Infrastructure/PropertyEditors/BlockValuePropertyValueEditorBase.cs
index 18578d495f..8128643d9a 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/BlockValuePropertyValueEditorBase.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/BlockValuePropertyValueEditorBase.cs
@@ -129,9 +129,6 @@ public abstract class BlockValuePropertyValueEditorBase : DataV
return result;
}
- [Obsolete("This method is no longer used within Umbraco. Please use the overload taking all parameters. Scheduled for removal in Umbraco 17.")]
- protected void MapBlockValueFromEditor(TValue blockValue) => MapBlockValueFromEditor(blockValue, null, Guid.Empty);
-
protected void MapBlockValueFromEditor(TValue? editedBlockValue, TValue? currentBlockValue, Guid contentKey)
{
MapBlockItemDataFromEditor(
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs
index 4a2c18b3b5..164bc6fd85 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/EmailAddressPropertyEditor.cs
@@ -1,8 +1,6 @@
// Copyright (c) Umbraco.
// See LICENSE for more details.
-using Microsoft.Extensions.DependencyInjection;
-using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Models;
using Umbraco.Cms.Core.PropertyEditors.Validators;
using Umbraco.Cms.Core.Services;
@@ -19,17 +17,6 @@ public class EmailAddressPropertyEditor : DataEditor
{
private readonly ILocalizedTextService _localizedTextService;
- ///
- /// Initializes a new instance of the class.
- ///
- [Obsolete("Please use the constructor taking all parameters. Scheduled for removal in Umbraco 17.")]
- public EmailAddressPropertyEditor(IDataValueEditorFactory dataValueEditorFactory)
- : this(
- dataValueEditorFactory,
- StaticServiceProvider.Instance.GetRequiredService())
- {
- }
-
///
/// Initializes a new instance of the class.
///
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs
index 32df946ed5..6dd536f32f 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/FileUploadPropertyEditor.cs
@@ -2,31 +2,18 @@
// See LICENSE for more details.
using System.Diagnostics.CodeAnalysis;
-using Microsoft.Extensions.Options;
-using Umbraco.Cms.Core.Configuration.Models;
-using Umbraco.Cms.Core.Events;
using Umbraco.Cms.Core.IO;
-using Umbraco.Cms.Core.Media;
using Umbraco.Cms.Core.Models;
-using Umbraco.Cms.Core.Notifications;
-using Umbraco.Cms.Core.Services;
namespace Umbraco.Cms.Core.PropertyEditors;
-// TODO (V17):
-// - Remove the implementation of INotificationHandler as these have all been refactored out into sepate notification handler classes.
-// - Remove the unused parameters from the constructor.
-
///
/// Defines the file upload property editor.
///
[DataEditor(
Constants.PropertyEditors.Aliases.UploadField,
ValueEditorIsReusable = true)]
-public class FileUploadPropertyEditor : DataEditor, IMediaUrlGenerator,
- INotificationHandler, INotificationHandler,
- INotificationHandler, INotificationHandler,
- INotificationHandler
+public class FileUploadPropertyEditor : DataEditor, IMediaUrlGenerator
{
private readonly IIOHelper _ioHelper;
@@ -35,10 +22,6 @@ public class FileUploadPropertyEditor : DataEditor, IMediaUrlGenerator,
///
public FileUploadPropertyEditor(
IDataValueEditorFactory dataValueEditorFactory,
- MediaFileManager mediaFileManager,
- IOptionsMonitor contentSettings,
- UploadAutoFillProperties uploadAutoFillProperties,
- IContentService contentService,
IIOHelper ioHelper)
: base(dataValueEditorFactory)
{
@@ -71,44 +54,4 @@ public class FileUploadPropertyEditor : DataEditor, IMediaUrlGenerator,
/// The corresponding property value editor.
protected override IDataValueEditor CreateValueEditor()
=> DataValueEditorFactory.Create(Attribute!);
-
- #region Obsolete notification handler notifications
-
- ///
- [Obsolete("This handler is no longer registered. Logic has been migrated to FileUploadContentCopiedNotificationHandler. Scheduled for removal in Umbraco 17.")]
- public void Handle(ContentCopiedNotification notification)
- {
- // This handler is no longer registered. Logic has been migrated to FileUploadContentCopiedNotificationHandler.
- }
-
- ///
- [Obsolete("This handler is no longer registered. Logic has been migrated to FileUploadMediaSavingNotificationHandler. Scheduled for removal in Umbraco 17.")]
- public void Handle(MediaSavingNotification notification)
- {
- // This handler is no longer registered. Logic has been migrated to FileUploadMediaSavingNotificationHandler.
- }
-
- ///
- [Obsolete("This handler is no longer registered. Logic has been migrated to FileUploadContentDeletedNotificationHandler. Scheduled for removal in Umbraco 17.")]
- public void Handle(ContentDeletedNotification notification)
- {
- // This handler is no longer registered. Logic has been migrated to FileUploadContentDeletedNotificationHandler.
- }
-
-
- ///
- [Obsolete("This handler is no longer registered. Logic has been migrated to FileUploadMediaDeletedNotificationHandler. Scheduled for removal in Umbraco 17.")]
- public void Handle(MediaDeletedNotification notification)
- {
- // This handler is no longer registered. Logic has been migrated to FileUploadMediaDeletedNotificationHandler.
- }
-
- ///
- [Obsolete("This handler is no longer registered. Logic has been migrated to FileUploadMemberDeletedNotificationHandler. Scheduled for removal in Umbraco 17.")]
- public void Handle(MemberDeletedNotification notification)
- {
- // This handler is no longer registered. Logic has been migrated to FileUploadMemberDeletedNotificationHandler.
- }
-
- #endregion
}
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs b/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs
index 75c9b045d8..44ab679e56 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/MultiNodeTreePickerPropertyEditor.cs
@@ -85,29 +85,6 @@ public class MultiNodeTreePickerPropertyEditor : DataEditor
new ContentTypeValidator(localizedTextService, coreScopeProvider, contentService, mediaService, memberService)));
}
- ///
- /// Initializes a new instance of the class.
- ///
- [Obsolete("Please use the constructor taking all parameters. Scheduled for removal in Umbraco 17.")]
- public MultiNodeTreePickerPropertyValueEditor(
- IShortStringHelper shortStringHelper,
- IJsonSerializer jsonSerializer,
- IIOHelper ioHelper,
- DataEditorAttribute attribute)
- : this(
- shortStringHelper,
- jsonSerializer,
- ioHelper,
- attribute,
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService())
- {
- }
-
///
public IEnumerable GetReferences(object? value)
{
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs
index 216fe3fdd2..eb0117b1d1 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/RichTextEditorPastedImages.cs
@@ -3,14 +3,9 @@
using HtmlAgilityPack;
using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.Logging;
-using Microsoft.Extensions.Options;
using Umbraco.Cms.Core.Cache;
-using Umbraco.Cms.Core.Configuration.Models;
using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Exceptions;
-using Umbraco.Cms.Core.Hosting;
-using Umbraco.Cms.Core.IO;
using Umbraco.Cms.Core.Media;
using Umbraco.Cms.Core.Models;
using Umbraco.Cms.Core.Models.Membership;
@@ -18,7 +13,6 @@ using Umbraco.Cms.Core.Models.PublishedContent;
using Umbraco.Cms.Core.Models.TemporaryFile;
using Umbraco.Cms.Core.Routing;
using Umbraco.Cms.Core.Services;
-using Umbraco.Cms.Core.Strings;
using Umbraco.Cms.Core.Web;
using Umbraco.Cms.Infrastructure.Scoping;
using Umbraco.Extensions;
@@ -38,48 +32,6 @@ public sealed class RichTextEditorPastedImages
private readonly AppCaches _appCaches;
private readonly IUserService _userService;
- [Obsolete("Please use the non-obsolete constructor. Will be removed in V17.")]
- public RichTextEditorPastedImages(
- IUmbracoContextAccessor umbracoContextAccessor,
- ILogger logger,
- IHostingEnvironment hostingEnvironment,
- IMediaService mediaService,
- IContentTypeBaseServiceProvider contentTypeBaseServiceProvider,
- MediaFileManager mediaFileManager,
- MediaUrlGeneratorCollection mediaUrlGenerators,
- IShortStringHelper shortStringHelper,
- IPublishedUrlProvider publishedUrlProvider,
- ITemporaryFileService temporaryFileService,
- IScopeProvider scopeProvider,
- IMediaImportService mediaImportService,
- IImageUrlGenerator imageUrlGenerator,
- IOptions contentSettings,
- IEntityService entityService,
- AppCaches appCaches)
- : this(umbracoContextAccessor, publishedUrlProvider, temporaryFileService, scopeProvider, mediaImportService, imageUrlGenerator, entityService, appCaches)
- {
- }
-
- [Obsolete("Please use the non-obsolete constructor. Will be removed in V17.")]
- public RichTextEditorPastedImages(
- IUmbracoContextAccessor umbracoContextAccessor,
- IPublishedUrlProvider publishedUrlProvider,
- ITemporaryFileService temporaryFileService,
- IScopeProvider scopeProvider,
- IMediaImportService mediaImportService,
- IImageUrlGenerator imageUrlGenerator)
- : this(
- umbracoContextAccessor,
- publishedUrlProvider,
- temporaryFileService,
- scopeProvider,
- mediaImportService,
- imageUrlGenerator,
- StaticServiceProvider.Instance.GetRequiredService(),
- StaticServiceProvider.Instance.GetRequiredService())
- {
- }
-
public RichTextEditorPastedImages(
IUmbracoContextAccessor umbracoContextAccessor,
IPublishedUrlProvider publishedUrlProvider,
diff --git a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockEditorVarianceHandler.cs b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockEditorVarianceHandler.cs
index 096221e6df..e1272e475b 100644
--- a/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockEditorVarianceHandler.cs
+++ b/src/Umbraco.Infrastructure/PropertyEditors/ValueConverters/BlockEditorVarianceHandler.cs
@@ -17,18 +17,6 @@ public sealed class BlockEditorVarianceHandler
_contentTypeService = contentTypeService;
}
- [Obsolete("Please use the method that allows alignment for a collection of values. Scheduled for removal in V17.")]
- public async Task AlignPropertyVarianceAsync(BlockPropertyValue blockPropertyValue, IPropertyType propertyType, string? culture)
- {
- culture ??= await _languageService.GetDefaultIsoCodeAsync();
- if (propertyType.VariesByCulture() != VariesByCulture(blockPropertyValue))
- {
- blockPropertyValue.Culture = propertyType.VariesByCulture()
- ? culture
- : null;
- }
- }
-
///
/// Aligns a collection of block property values for variance changes.
///
diff --git a/src/Umbraco.Infrastructure/Routing/RedirectTracker.cs b/src/Umbraco.Infrastructure/Routing/RedirectTracker.cs
index 7cbf91ae8d..18a4d45e67 100644
--- a/src/Umbraco.Infrastructure/Routing/RedirectTracker.cs
+++ b/src/Umbraco.Infrastructure/Routing/RedirectTracker.cs
@@ -1,8 +1,6 @@
using System.Diagnostics.CodeAnalysis;
-using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Umbraco.Cms.Core;
-using Umbraco.Cms.Core.DependencyInjection;
using Umbraco.Cms.Core.Models;
using Umbraco.Cms.Core.Models.PublishedContent;
using Umbraco.Cms.Core.PublishedCache;
@@ -41,47 +39,6 @@ namespace Umbraco.Cms.Infrastructure.Routing
_publishedContentStatusFilteringService = publishedContentStatusFilteringService;
}
- [Obsolete("Use the non-obsolete constructor. Scheduled for removal in V17.")]
- public RedirectTracker(
- IVariationContextAccessor variationContextAccessor,
- ILocalizationService localizationService,
- IRedirectUrlService redirectUrlService,
- IPublishedContentCache contentCache,
- IDocumentNavigationQueryService navigationQueryService,
- ILogger logger,
- IPublishedUrlProvider publishedUrlProvider,
- IPublishedContentStatusFilteringService publishedContentStatusFilteringService)
- : this(
- localizationService,
- redirectUrlService,
- contentCache,
- navigationQueryService,
- logger,
- publishedUrlProvider,
- publishedContentStatusFilteringService)
- {
- }
-
- [Obsolete("Use the non-obsolete constructor. Scheduled for removal in V17.")]
- public RedirectTracker(
- IVariationContextAccessor variationContextAccessor,
- ILocalizationService localizationService,
- IRedirectUrlService redirectUrlService,
- IPublishedContentCache contentCache,
- IDocumentNavigationQueryService navigationQueryService,
- ILogger logger,
- IPublishedUrlProvider publishedUrlProvider)
- : this(
- localizationService,
- redirectUrlService,
- contentCache,
- navigationQueryService,
- logger,
- publishedUrlProvider,
- StaticServiceProvider.Instance.GetRequiredService())
- {
- }
-
///
public void StoreOldRoute(IContent entity, Dictionary<(int ContentId, string Culture), (Guid ContentKey, string OldRoute)> oldRoutes)
{
diff --git a/src/Umbraco.Infrastructure/Security/IBackOfficeApplicationManager.cs b/src/Umbraco.Infrastructure/Security/IBackOfficeApplicationManager.cs
index 57b7bc06bf..da8b228f33 100644
--- a/src/Umbraco.Infrastructure/Security/IBackOfficeApplicationManager.cs
+++ b/src/Umbraco.Infrastructure/Security/IBackOfficeApplicationManager.cs
@@ -2,9 +2,6 @@
public interface IBackOfficeApplicationManager
{
- [Obsolete("Please use the overload that allows for multiple back-office hosts. Will be removed in V17.")]
- Task EnsureBackOfficeApplicationAsync(Uri backOfficeUrl, CancellationToken cancellationToken = default);
-
Task EnsureBackOfficeApplicationAsync(IEnumerable backOfficeHosts, CancellationToken cancellationToken = default)
=> Task.CompletedTask;
diff --git a/src/Umbraco.Infrastructure/Services/CacheInstructionService.cs b/src/Umbraco.Infrastructure/Services/CacheInstructionService.cs
index dc697c9a69..29499e3bcb 100644
--- a/src/Umbraco.Infrastructure/Services/CacheInstructionService.cs
+++ b/src/Umbraco.Infrastructure/Services/CacheInstructionService.cs
@@ -135,17 +135,6 @@ namespace Umbraco.Cms
}
}
- ///
- [Obsolete("Use the non-obsolete overload. Scheduled for removal in V17.")]
- public ProcessInstructionsResult ProcessInstructions(
- CacheRefresherCollection cacheRefreshers,
- ServerRole serverRole,
- CancellationToken cancellationToken,
- string localIdentity,
- DateTime lastPruned,
- int lastId) =>
- ProcessInstructions(cacheRefreshers, cancellationToken, localIdentity, lastId);
-
private CacheInstruction CreateCacheInstruction(IEnumerable instructions, string localIdentity)
=> new(
0,
diff --git a/src/Umbraco.PublishedCache.HybridCache/DatabaseCacheRebuilder.cs b/src/Umbraco.PublishedCache.HybridCache/DatabaseCacheRebuilder.cs
index 5b1512ef50..160fdd44f2 100644
--- a/src/Umbraco.PublishedCache.HybridCache/DatabaseCacheRebuilder.cs
+++ b/src/Umbraco.PublishedCache.HybridCache/DatabaseCacheRebuilder.cs
@@ -56,10 +56,6 @@ internal sealed class DatabaseCacheRebuilder : IDatabaseCacheRebuilder
public async Task IsRebuildingAsync()
=> (await _longRunningOperationService.GetByTypeAsync(RebuildOperationName, 0, 0)).Total != 0;
- ///
- [Obsolete("Use the overload with the useBackgroundThread parameter. Scheduled for removal in Umbraco 17.")]
- public void Rebuild() => Rebuild(false);
-
///
[Obsolete("Use RebuildAsync instead. Scheduled for removal in Umbraco 18.")]
public void Rebuild(bool useBackgroundThread) =>
diff --git a/tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/EntityXmlSerializerTests.cs b/tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/EntityXmlSerializerTests.cs
index 3661f8abaa..8e6f601f29 100644
--- a/tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/EntityXmlSerializerTests.cs
+++ b/tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/EntityXmlSerializerTests.cs
@@ -164,10 +164,6 @@ internal sealed class EntityXmlSerializerTests : UmbracoIntegrationTest
var ignored = new FileUploadPropertyEditor(
DataValueEditorFactory,
- mediaFileManager,
- Mock.Of>(x => x.CurrentValue == contentSettings),
- Services.GetRequiredService(),
- ContentService,
IOHelper);
var media = MediaBuilder.CreateMediaImage(mediaType, -1);