Smdn.Net.SmartMeter.Extensions.Munin version 2.2.0
·
28 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Released package
Release notes
The full release notes are available at gist.
Change log
Change log in this release:
- 2025-11-27 update assembly version
- 2025-11-27 add target framework net10.0
- 2025-07-08 remove redundant properties that have the same as default values
API changes
API changes in this release:
diff --git a/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net10.0.apilist.cs b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net10.0.apilist.cs
new file mode 100644
index 0000000..810f689
--- /dev/null
+++ b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net10.0.apilist.cs
@@ -0,0 +1,216 @@
+// Smdn.Net.SmartMeter.Extensions.Munin.dll (Smdn.Net.SmartMeter.Extensions.Munin-2.2.0)
+// Name: Smdn.Net.SmartMeter.Extensions.Munin
+// AssemblyVersion: 2.2.0.0
+// InformationalVersion: 2.2.0+291dc030d4c0805f26c6d95ef97ee47c2d34e54d
+// TargetFramework: .NETCoreApp,Version=v10.0
+// Configuration: Release
+// Referenced assemblies:
+// Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+// Microsoft.Extensions.Hosting.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+// Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
+// Smdn.Net.EchonetLite, Version=2.1.0.0, Culture=neutral
+// Smdn.Net.EchonetLite.RouteB, Version=2.1.0.0, Culture=neutral
+// Smdn.Net.EchonetLite.RouteB.Primitives, Version=2.1.0.0, Culture=neutral
+// Smdn.Net.MuninNode, Version=2.5.0.0, Culture=neutral
+// Smdn.Net.MuninNode.Hosting, Version=3.1.0.0, Culture=neutral
+// Smdn.Net.SmartMeter, Version=2.1.0.0, Culture=neutral
+// System.Collections, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Collections.Concurrent, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.ComponentModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Linq, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Net.Primitives, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Runtime, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+// System.Threading, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+#nullable enable annotations
+
+using System;
+using System.Collections.Generic;
+using System.Diagnostics.CodeAnalysis;
+using System.Net;
+using System.Threading;
+using System.Threading.Tasks;
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.Extensions.Hosting;
+using Microsoft.Extensions.Logging;
+using Smdn.Net.EchonetLite.RouteB;
+using Smdn.Net.EchonetLite.RouteB.DependencyInjection;
+using Smdn.Net.MuninNode;
+using Smdn.Net.MuninNode.DependencyInjection;
+using Smdn.Net.MuninNode.Hosting;
+using Smdn.Net.MuninNode.Transport;
+using Smdn.Net.MuninPlugin;
+using Smdn.Net.SmartMeter;
+using Smdn.Net.SmartMeter.MuninNode;
+using Smdn.Net.SmartMeter.MuninNode.Hosting;
+using Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd;
+using Smdn.Net.SmartMeter.MuninPlugin;
+
+namespace Smdn.Net.MuninNode.DependencyInjection {
+ public static class IMuninServiceBuilderExtensions {
+ public static SmartMeterMuninNodeBuilder AddSmartMeterMuninNode(this IMuninServiceBuilder builder, Action<MuninNodeOptions> configureMuninNodeOptions, Action<IRouteBServiceBuilder<string>> configureRouteBServices) {}
+ }
+}
+
+namespace Smdn.Net.SmartMeter.MuninNode {
+ public sealed class SmartMeterMuninNode : LocalNode {
+ public event EventHandler<Exception>? UnhandledAggregationException { add; remove; }
+
+ public override string HostName { get; }
+ public override IPluginProvider PluginProvider { get; }
+
+ protected override void Dispose(bool disposing) {}
+ protected override async ValueTask DisposeAsyncCore() {}
+ protected override EndPoint GetLocalEndPointToBind() {}
+ protected override ValueTask StartedAsync(CancellationToken cancellationToken) {}
+ protected override async ValueTask StartingAsync(CancellationToken cancellationToken) {}
+ protected override async ValueTask StoppedAsync(CancellationToken cancellationToken) {}
+ }
+
+ public sealed class SmartMeterMuninNodeBuilder : MuninNodeBuilder {
+ protected override IMuninNode Build(IPluginProvider pluginProvider, IMuninNodeListenerFactory? listenerFactory, IServiceProvider serviceProvider) {}
+ }
+
+ public static class SmartMeterMuninNodeBuilderExtensions {
+ public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
+ }
+}
+
+namespace Smdn.Net.SmartMeter.MuninNode.Hosting {
+ public class AggregationHaltedException : InvalidOperationException {
+ public AggregationHaltedException() {}
+ public AggregationHaltedException(string message) {}
+ public AggregationHaltedException(string message, Exception? innerException) {}
+ }
+
+ public static class IServiceCollectionExtensions {
+ public static IServiceCollection AddHostedSmartMeterMuninNodeService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
+ public static IServiceCollection AddHostedSmartMeterMuninNodeService<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)] TSmartMeterMuninNodeService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeService : SmartMeterMuninNodeService {}
+ }
+
+ public class SmartMeterMuninNodeService : MuninNodeBackgroundService {
+ public SmartMeterMuninNodeService(SmartMeterMuninNode smartMeterMuninNode, ILogger<SmartMeterMuninNodeService>? logger = null) {}
+
+ protected bool HasAggregationHalted { get; }
+
+ public override void Dispose() {}
+ protected override async Task ExecuteAsync(CancellationToken stoppingToken) {}
+ protected virtual void OnAggregationHalted(Exception exception) {}
+ protected bool TryGetAggregationFaultedException([NotNullWhen(true)] out Exception? unhandledAggregationException) {}
+ }
+}
+
+namespace Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd {
+ public static class IServiceCollectionExtensions {
+ public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
+ public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)] TSmartMeterMuninNodeSystemdService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeSystemdService : SmartMeterMuninNodeSystemdService {}
+ }
+
+ public class SmartMeterMuninNodeSystemdService : SmartMeterMuninNodeService {
+ protected const int EX_TEMPFAIL = 75;
+ protected const int EX_UNAVAILABLE = 69;
+
+ public SmartMeterMuninNodeSystemdService(SmartMeterMuninNode smartMeterMuninNode, IHostApplicationLifetime applicationLifetime, ILogger<SmartMeterMuninNodeSystemdService>? logger = null) {}
+
+ public int? ExitCode { get; }
+
+ protected virtual bool DetermineExitCodeForUnhandledException(Exception exception, out int exitCode, [NotNullWhen(true)] out string? logMessage) {}
+ protected override void OnAggregationHalted(Exception exception) {}
+ public override async Task StartAsync(CancellationToken cancellationToken) {}
+ public override async Task StopAsync(CancellationToken cancellationToken) {}
+ }
+}
+
+namespace Smdn.Net.SmartMeter.MuninPlugin {
+ public sealed class CumulativeElectricEnergyAtEvery30MinPlugin : PeriodicCumulativeElectricEnergyPlugin {
+ public const string DefaultPluginName = "cumulative_electric_energy";
+
+ public override TimeSpan DurationOfMeasurementPeriod { get; }
+ public override DateTime StartOfMeasurementPeriod { get; }
+
+ protected override bool TryGetBaselineValue(bool normalOrReverseDirection, out MeasurementValue<ElectricEnergyValue> @value) {}
+ }
+
+ public sealed class DailyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
+ public const string DefaultPluginName = "cumulative_electric_energy_daily";
+
+ public override TimeSpan DurationOfMeasurementPeriod { get; }
+ public override DateTime StartOfMeasurementPeriod { get; }
+ }
+
+ public sealed class InstantaneousCurrentPlugin :
+ InstantaneousCurrentAggregation,
+ IPlugin,
+ IPluginDataSource
+ {
+ public const string DefaultPluginName = "instantaneous_current";
+
+ public IPluginDataSource DataSource { get; }
+ public IReadOnlyCollection<IPluginField> Fields { get; }
+ public IPluginGraphAttributes GraphAttributes { get; }
+ public string Name { get; }
+ public INodeSessionCallback? SessionCallback { get; }
+
+ protected override void OnLatestValueUpdated() {}
+ }
+
+ public sealed class InstantaneousElectricPowerPlugin :
+ InstantaneousElectricPowerAggregation,
+ IPlugin,
+ IPluginDataSource
+ {
+ public const string DefaultPluginName = "instantaneous_electric_power";
+
+ public IPluginDataSource DataSource { get; }
+ public IReadOnlyCollection<IPluginField> Fields { get; }
+ public IPluginGraphAttributes GraphAttributes { get; }
+ public string Name { get; }
+ public INodeSessionCallback? SessionCallback { get; }
+
+ protected override void OnLatestValueUpdated() {}
+ }
+
+ public sealed class MonthlyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
+ public const string DefaultPluginName = "cumulative_electric_energy_monthly";
+
+ public override TimeSpan DurationOfMeasurementPeriod { get; }
+ public override DateTime StartOfMeasurementPeriod { get; }
+ }
+
+ public abstract class PeriodicCumulativeElectricEnergyPlugin :
+ PeriodicCumulativeElectricEnergyAggregation,
+ IPlugin,
+ IPluginDataSource
+ {
+ public IPluginDataSource DataSource { get; }
+ public IReadOnlyCollection<IPluginField> Fields { get; }
+ public IPluginGraphAttributes GraphAttributes { get; }
+ public string Name { get; }
+ public INodeSessionCallback? SessionCallback { get; }
+
+ protected override void OnNormalDirectionValueChanged() {}
+ protected override void OnReverseDirectionValueChanged() {}
+ }
+
+ public sealed class WeeklyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
+ public const string DefaultPluginName = "cumulative_electric_energy_weekly";
+
+ public override TimeSpan DurationOfMeasurementPeriod { get; }
+ public DayOfWeek FirstDayOfWeek { get; }
+ public override DateTime StartOfMeasurementPeriod { get; }
+ }
+}
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.7.0.0.
+// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.5.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net8.0.apilist.cs b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net8.0.apilist.cs
index 233a87a..9b79337 100644
--- a/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net8.0.apilist.cs
+++ b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-net8.0.apilist.cs
@@ -1,216 +1,216 @@
-// Smdn.Net.SmartMeter.Extensions.Munin.dll (Smdn.Net.SmartMeter.Extensions.Munin-2.1.0)
+// Smdn.Net.SmartMeter.Extensions.Munin.dll (Smdn.Net.SmartMeter.Extensions.Munin-2.2.0)
// Name: Smdn.Net.SmartMeter.Extensions.Munin
-// AssemblyVersion: 2.1.0.0
-// InformationalVersion: 2.1.0+d6881059bda1389c20c3dc8eacfd375f4dd752fe
+// AssemblyVersion: 2.2.0.0
+// InformationalVersion: 2.2.0+291dc030d4c0805f26c6d95ef97ee47c2d34e54d
// TargetFramework: .NETCoreApp,Version=v8.0
// Configuration: Release
// Referenced assemblies:
// Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Microsoft.Extensions.Hosting.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Smdn.Net.EchonetLite, Version=2.1.0.0, Culture=neutral
// Smdn.Net.EchonetLite.RouteB, Version=2.1.0.0, Culture=neutral
// Smdn.Net.EchonetLite.RouteB.Primitives, Version=2.1.0.0, Culture=neutral
// Smdn.Net.MuninNode, Version=2.5.0.0, Culture=neutral
// Smdn.Net.MuninNode.Hosting, Version=3.1.0.0, Culture=neutral
// Smdn.Net.SmartMeter, Version=2.1.0.0, Culture=neutral
// System.Collections, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.ComponentModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Linq, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Net.Primitives, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Runtime, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// System.Threading, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
#nullable enable annotations
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Smdn.Net.EchonetLite.RouteB;
using Smdn.Net.EchonetLite.RouteB.DependencyInjection;
using Smdn.Net.MuninNode;
using Smdn.Net.MuninNode.DependencyInjection;
using Smdn.Net.MuninNode.Hosting;
using Smdn.Net.MuninNode.Transport;
using Smdn.Net.MuninPlugin;
using Smdn.Net.SmartMeter;
using Smdn.Net.SmartMeter.MuninNode;
using Smdn.Net.SmartMeter.MuninNode.Hosting;
using Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd;
using Smdn.Net.SmartMeter.MuninPlugin;
namespace Smdn.Net.MuninNode.DependencyInjection {
public static class IMuninServiceBuilderExtensions {
public static SmartMeterMuninNodeBuilder AddSmartMeterMuninNode(this IMuninServiceBuilder builder, Action<MuninNodeOptions> configureMuninNodeOptions, Action<IRouteBServiceBuilder<string>> configureRouteBServices) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode {
public sealed class SmartMeterMuninNode : LocalNode {
public event EventHandler<Exception>? UnhandledAggregationException { add; remove; }
public override string HostName { get; }
public override IPluginProvider PluginProvider { get; }
protected override void Dispose(bool disposing) {}
protected override async ValueTask DisposeAsyncCore() {}
protected override EndPoint GetLocalEndPointToBind() {}
protected override ValueTask StartedAsync(CancellationToken cancellationToken) {}
protected override async ValueTask StartingAsync(CancellationToken cancellationToken) {}
protected override async ValueTask StoppedAsync(CancellationToken cancellationToken) {}
}
public sealed class SmartMeterMuninNodeBuilder : MuninNodeBuilder {
protected override IMuninNode Build(IPluginProvider pluginProvider, IMuninNodeListenerFactory? listenerFactory, IServiceProvider serviceProvider) {}
}
public static class SmartMeterMuninNodeBuilderExtensions {
public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode.Hosting {
public class AggregationHaltedException : InvalidOperationException {
public AggregationHaltedException() {}
public AggregationHaltedException(string message) {}
public AggregationHaltedException(string message, Exception? innerException) {}
}
public static class IServiceCollectionExtensions {
public static IServiceCollection AddHostedSmartMeterMuninNodeService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
public static IServiceCollection AddHostedSmartMeterMuninNodeService<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)] TSmartMeterMuninNodeService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeService : SmartMeterMuninNodeService {}
}
public class SmartMeterMuninNodeService : MuninNodeBackgroundService {
public SmartMeterMuninNodeService(SmartMeterMuninNode smartMeterMuninNode, ILogger<SmartMeterMuninNodeService>? logger = null) {}
protected bool HasAggregationHalted { get; }
public override void Dispose() {}
protected override async Task ExecuteAsync(CancellationToken stoppingToken) {}
protected virtual void OnAggregationHalted(Exception exception) {}
protected bool TryGetAggregationFaultedException([NotNullWhen(true)] out Exception? unhandledAggregationException) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd {
public static class IServiceCollectionExtensions {
public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)] TSmartMeterMuninNodeSystemdService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeSystemdService : SmartMeterMuninNodeSystemdService {}
}
public class SmartMeterMuninNodeSystemdService : SmartMeterMuninNodeService {
protected const int EX_TEMPFAIL = 75;
protected const int EX_UNAVAILABLE = 69;
public SmartMeterMuninNodeSystemdService(SmartMeterMuninNode smartMeterMuninNode, IHostApplicationLifetime applicationLifetime, ILogger<SmartMeterMuninNodeSystemdService>? logger = null) {}
public int? ExitCode { get; }
protected virtual bool DetermineExitCodeForUnhandledException(Exception exception, out int exitCode, [NotNullWhen(true)] out string? logMessage) {}
protected override void OnAggregationHalted(Exception exception) {}
public override async Task StartAsync(CancellationToken cancellationToken) {}
public override async Task StopAsync(CancellationToken cancellationToken) {}
}
}
namespace Smdn.Net.SmartMeter.MuninPlugin {
public sealed class CumulativeElectricEnergyAtEvery30MinPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
protected override bool TryGetBaselineValue(bool normalOrReverseDirection, out MeasurementValue<ElectricEnergyValue> @value) {}
}
public sealed class DailyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_daily";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
public sealed class InstantaneousCurrentPlugin :
InstantaneousCurrentAggregation,
IPlugin,
IPluginDataSource
{
public const string DefaultPluginName = "instantaneous_current";
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnLatestValueUpdated() {}
}
public sealed class InstantaneousElectricPowerPlugin :
InstantaneousElectricPowerAggregation,
IPlugin,
IPluginDataSource
{
public const string DefaultPluginName = "instantaneous_electric_power";
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnLatestValueUpdated() {}
}
public sealed class MonthlyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_monthly";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
public abstract class PeriodicCumulativeElectricEnergyPlugin :
PeriodicCumulativeElectricEnergyAggregation,
IPlugin,
IPluginDataSource
{
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnNormalDirectionValueChanged() {}
protected override void OnReverseDirectionValueChanged() {}
}
public sealed class WeeklyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_weekly";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public DayOfWeek FirstDayOfWeek { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.6.0.0.
-// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.4.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.7.0.0.
+// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.5.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
diff --git a/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-netstandard2.1.apilist.cs b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-netstandard2.1.apilist.cs
index 5ad4170..5ac883d 100644
--- a/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-netstandard2.1.apilist.cs
+++ b/doc/api-list/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin-netstandard2.1.apilist.cs
@@ -1,210 +1,210 @@
-// Smdn.Net.SmartMeter.Extensions.Munin.dll (Smdn.Net.SmartMeter.Extensions.Munin-2.1.0)
+// Smdn.Net.SmartMeter.Extensions.Munin.dll (Smdn.Net.SmartMeter.Extensions.Munin-2.2.0)
// Name: Smdn.Net.SmartMeter.Extensions.Munin
-// AssemblyVersion: 2.1.0.0
-// InformationalVersion: 2.1.0+d6881059bda1389c20c3dc8eacfd375f4dd752fe
+// AssemblyVersion: 2.2.0.0
+// InformationalVersion: 2.2.0+291dc030d4c0805f26c6d95ef97ee47c2d34e54d
// TargetFramework: .NETStandard,Version=v2.1
// Configuration: Release
// Referenced assemblies:
// Microsoft.Extensions.DependencyInjection.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Microsoft.Extensions.Hosting.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Microsoft.Extensions.Logging.Abstractions, Version=8.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60
// Smdn.Net.EchonetLite, Version=2.1.0.0, Culture=neutral
// Smdn.Net.EchonetLite.RouteB, Version=2.1.0.0, Culture=neutral
// Smdn.Net.EchonetLite.RouteB.Primitives, Version=2.1.0.0, Culture=neutral
// Smdn.Net.MuninNode, Version=2.5.0.0, Culture=neutral
// Smdn.Net.MuninNode.Hosting, Version=3.1.0.0, Culture=neutral
// Smdn.Net.SmartMeter, Version=2.1.0.0, Culture=neutral
// netstandard, Version=2.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51
#nullable enable annotations
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Net;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using Smdn.Net.EchonetLite.RouteB;
using Smdn.Net.EchonetLite.RouteB.DependencyInjection;
using Smdn.Net.MuninNode;
using Smdn.Net.MuninNode.DependencyInjection;
using Smdn.Net.MuninNode.Hosting;
using Smdn.Net.MuninNode.Transport;
using Smdn.Net.MuninPlugin;
using Smdn.Net.SmartMeter;
using Smdn.Net.SmartMeter.MuninNode;
using Smdn.Net.SmartMeter.MuninNode.Hosting;
using Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd;
using Smdn.Net.SmartMeter.MuninPlugin;
namespace Smdn.Net.MuninNode.DependencyInjection {
public static class IMuninServiceBuilderExtensions {
public static SmartMeterMuninNodeBuilder AddSmartMeterMuninNode(this IMuninServiceBuilder builder, Action<MuninNodeOptions> configureMuninNodeOptions, Action<IRouteBServiceBuilder<string>> configureRouteBServices) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode {
public sealed class SmartMeterMuninNode : LocalNode {
public event EventHandler<Exception>? UnhandledAggregationException { add; remove; }
public override string HostName { get; }
public override IPluginProvider PluginProvider { get; }
protected override void Dispose(bool disposing) {}
protected override async ValueTask DisposeAsyncCore() {}
protected override EndPoint GetLocalEndPointToBind() {}
protected override ValueTask StartedAsync(CancellationToken cancellationToken) {}
protected override async ValueTask StartingAsync(CancellationToken cancellationToken) {}
protected override async ValueTask StoppedAsync(CancellationToken cancellationToken) {}
}
public sealed class SmartMeterMuninNodeBuilder : MuninNodeBuilder {
protected override IMuninNode Build(IPluginProvider pluginProvider, IMuninNodeListenerFactory? listenerFactory, IServiceProvider serviceProvider) {}
}
public static class SmartMeterMuninNodeBuilderExtensions {
public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddCumulativeElectricEnergyAtEvery30MinPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddDailyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousCurrentPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddInstantaneousElectricPowerPlugin(this SmartMeterMuninNodeBuilder builder, string name, TimeSpan aggregationInterval, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddMonthlyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
public static SmartMeterMuninNodeBuilder AddWeeklyCumulativeElectricEnergyPlugin(this SmartMeterMuninNodeBuilder builder, string name, DayOfWeek firstDayOfWeek = DayOfWeek.Sunday, bool enableNormalDirection = true, bool enableReverseDirection = false, Action<PluginGraphAttributesBuilder>? configureGraphAttributes = null) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode.Hosting {
public class AggregationHaltedException : InvalidOperationException {
public AggregationHaltedException() {}
public AggregationHaltedException(string message) {}
public AggregationHaltedException(string message, Exception? innerException) {}
}
public static class IServiceCollectionExtensions {
public static IServiceCollection AddHostedSmartMeterMuninNodeService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
public static IServiceCollection AddHostedSmartMeterMuninNodeService<TSmartMeterMuninNodeService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeService : SmartMeterMuninNodeService {}
}
public class SmartMeterMuninNodeService : MuninNodeBackgroundService {
public SmartMeterMuninNodeService(SmartMeterMuninNode smartMeterMuninNode, ILogger<SmartMeterMuninNodeService>? logger = null) {}
protected bool HasAggregationHalted { get; }
public override void Dispose() {}
protected override async Task ExecuteAsync(CancellationToken stoppingToken) {}
protected virtual void OnAggregationHalted(Exception exception) {}
protected bool TryGetAggregationFaultedException([NotNullWhen(true)] out Exception? unhandledAggregationException) {}
}
}
namespace Smdn.Net.SmartMeter.MuninNode.Hosting.Systemd {
public static class IServiceCollectionExtensions {
public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) {}
public static IServiceCollection AddHostedSmartMeterMuninNodeSystemdService<TSmartMeterMuninNodeSystemdService>(this IServiceCollection services, Action<IRouteBServiceBuilder<string>> configureRouteBServices, Action<MuninNodeOptions> configureMuninNodeOptions, Action<SmartMeterMuninNodeBuilder> configureSmartMeterMuninNode) where TSmartMeterMuninNodeSystemdService : SmartMeterMuninNodeSystemdService {}
}
public class SmartMeterMuninNodeSystemdService : SmartMeterMuninNodeService {
protected const int EX_TEMPFAIL = 75;
protected const int EX_UNAVAILABLE = 69;
public SmartMeterMuninNodeSystemdService(SmartMeterMuninNode smartMeterMuninNode, IHostApplicationLifetime applicationLifetime, ILogger<SmartMeterMuninNodeSystemdService>? logger = null) {}
public int? ExitCode { get; }
protected virtual bool DetermineExitCodeForUnhandledException(Exception exception, out int exitCode, [NotNullWhen(true)] out string? logMessage) {}
protected override void OnAggregationHalted(Exception exception) {}
public override async Task StartAsync(CancellationToken cancellationToken) {}
public override async Task StopAsync(CancellationToken cancellationToken) {}
}
}
namespace Smdn.Net.SmartMeter.MuninPlugin {
public sealed class CumulativeElectricEnergyAtEvery30MinPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
protected override bool TryGetBaselineValue(bool normalOrReverseDirection, out MeasurementValue<ElectricEnergyValue> @value) {}
}
public sealed class DailyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_daily";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
public sealed class InstantaneousCurrentPlugin :
InstantaneousCurrentAggregation,
IPlugin,
IPluginDataSource
{
public const string DefaultPluginName = "instantaneous_current";
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnLatestValueUpdated() {}
}
public sealed class InstantaneousElectricPowerPlugin :
InstantaneousElectricPowerAggregation,
IPlugin,
IPluginDataSource
{
public const string DefaultPluginName = "instantaneous_electric_power";
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnLatestValueUpdated() {}
}
public sealed class MonthlyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_monthly";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
public abstract class PeriodicCumulativeElectricEnergyPlugin :
PeriodicCumulativeElectricEnergyAggregation,
IPlugin,
IPluginDataSource
{
public IPluginDataSource DataSource { get; }
public IReadOnlyCollection<IPluginField> Fields { get; }
public IPluginGraphAttributes GraphAttributes { get; }
public string Name { get; }
public INodeSessionCallback? SessionCallback { get; }
protected override void OnNormalDirectionValueChanged() {}
protected override void OnReverseDirectionValueChanged() {}
}
public sealed class WeeklyCumulativeElectricEnergyPlugin : PeriodicCumulativeElectricEnergyPlugin {
public const string DefaultPluginName = "cumulative_electric_energy_weekly";
public override TimeSpan DurationOfMeasurementPeriod { get; }
public DayOfWeek FirstDayOfWeek { get; }
public override DateTime StartOfMeasurementPeriod { get; }
}
}
-// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.6.0.0.
-// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.4.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)
+// API list generated by Smdn.Reflection.ReverseGenerating.ListApi.MSBuild.Tasks v1.7.0.0.
+// Smdn.Reflection.ReverseGenerating.ListApi.Core v1.5.0.0 (https://github.com/smdn/Smdn.Reflection.ReverseGenerating)Full changes
Full changes in this release:
diff --git a/src/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin.csproj b/src/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin.csproj
index c0052c2..4bb1456 100644
--- a/src/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin.csproj
+++ b/src/Smdn.Net.SmartMeter.Extensions.Munin/Smdn.Net.SmartMeter.Extensions.Munin.csproj
@@ -4,13 +4,10 @@ SPDX-License-Identifier: MIT
-->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
- <TargetFrameworks>netstandard2.1;net8.0</TargetFrameworks>
- <VersionPrefix>2.1.0</VersionPrefix>
+ <TargetFrameworks>netstandard2.1;net8.0;net10.0</TargetFrameworks>
+ <VersionPrefix>2.2.0</VersionPrefix>
<VersionSuffix></VersionSuffix>
<PackageValidationBaselineVersion>2.0.0</PackageValidationBaselineVersion>
- <Nullable>enable</Nullable>
- <RootNamespace/> <!-- empty the root namespace so that the namespace is determined only by the directory name, for code style rule IDE0130 -->
- <GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>CS1591;$(NoWarn)</NoWarn> <!-- CS1591: Missing XML comment for publicly visible type or member 'Type_or_Member' -->
</PropertyGroup>
Notes
What's Changed
Dependencies
- Bump smdn/Smdn.Fundamentals/.github/workflows/test.yml@workflows/test/v1.4.1 from 1.4.1 to 1.4.2 by @dependabot[bot] in #18
- Bump smdn/Smdn.Fundamentals/.github/workflows/generate-release-target.yml@workflows/release-target/v1.10.2 from 1.10.2 to 1.10.3 by @dependabot[bot] in #19
- Bump smdn/Smdn.Fundamentals/.github/workflows/publish-release-target.yml@workflows/release-target/v1.10.2 from 1.10.2 to 1.10.3 by @dependabot[bot] in #20
- Bump actions/checkout from 4.2.2 to 5.0.0 by @dependabot[bot] in #22
- Bump github/codeql-action from 3 to 4 by @dependabot[bot] in #23
- Bump actions/checkout from 5.0.0 to 5.0.1 in the github-actions-workflows group by @dependabot[bot] in #24
New Contributors
- @dependabot[bot] made their first contribution in #18
Full Changelog: releases/Smdn.Net.SmartMeter.Extensions.Munin-2.1.0...releases/Smdn.Net.SmartMeter.Extensions.Munin-2.2.0