MetaBrainz.Common.Json 6.0.2

This package has a SemVer 2.0.0 package version: 6.0.2+github.32.1.
dotnet add package MetaBrainz.Common.Json --version 6.0.2                
NuGet\Install-Package MetaBrainz.Common.Json -Version 6.0.2                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MetaBrainz.Common.Json" Version="6.0.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MetaBrainz.Common.Json --version 6.0.2                
#r "nuget: MetaBrainz.Common.Json, 6.0.2"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install MetaBrainz.Common.Json as a Cake Addin
#addin nuget:?package=MetaBrainz.Common.Json&version=6.0.2

// Install MetaBrainz.Common.Json as a Cake Tool
#tool nuget:?package=MetaBrainz.Common.Json&version=6.0.2                

MetaBrainz.Common.Json Build Status NuGet Package Version

JSON-related helper classes, for use by the other MetaBrainz.* packages.

Debugging

The JsonUtils class provides a TraceSource that can be used to configure debug output; its name is MetaBrainz.Common.JsonUtils.

Configuration

In Code

In code, you can enable tracing like follows:

// Use the default switch, turning it on.
JsonUtils.TraceSource.Switch.Level = SourceLevels.All;

// Alternatively, use your own switch so multiple things can be
// enabled/disabled at the same time.
var mySwitch = new TraceSwitch("MyAppDebugSwitch", "All");
JsonUtils.TraceSource.Switch = mySwitch;

// By default, there is a single listener that writes trace events to
// the debug output (typically only seen in an IDE's debugger). You can
// add (and remove) listeners as desired.
var listener = new ConsoleTraceListener {
  Name = "MyAppConsole",
  TraceOutputOptions = TraceOptions.DateTime | TraceOptions.ProcessId,
};
JsonUtils.TraceSource.Listeners.Clear();
JsonUtils.TraceSource.Listeners.Add(listener);
In Configuration

Starting from .NET 7 your application can also be set up to read tracing configuration from the application configuration file. To do so, the application needs to add the following to its startup code:

System.Diagnostics.TraceConfiguration.Register();

(Provided by the System.Configuration.ConfigurationManager package.)

The application config file can then have a system.diagnostics section where sources, switches and listeners can be configured.

<configuration>
  <system.diagnostics>
    <sharedListeners>
      <add name="console" type="System.Diagnostics.ConsoleTraceListener" traceOutputOptions="DateTime,ProcessId" />
    </sharedListeners>
    <sources>
      <source name="MetaBrainz.Common.JsonUtils" switchName="MetaBrainz.Common.JsonUtils">
        <listeners>
          <add name="console" />
          <add name="json-log" type="System.Diagnostics.TextWriterTraceListener" initializeData="json-utils.log" />
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="MetaBrainz.Common.JsonUtils" value="All" />
    </switches>
  </system.diagnostics>
</configuration>

Release Notes

These are available on GitHub.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on MetaBrainz.Common.Json:

Package Downloads
MetaBrainz.MusicBrainz

This package provides classes for accessing the MusicBrainz web services (lookup, search and OAuth2).

MetaBrainz.MusicBrainz.CoverArt

This package provides classes for accessing the CoverArt Archive (CAA), enabling the retrieval of cover art for music releases based on their MusicBrainz ID.

MetaBrainz.ListenBrainz

This package provides classes for accessing the ListenBrainz API (v1).

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on MetaBrainz.Common.Json:

Repository Stars
jamesbrindle/YTMusicUploader
Automatically upload your music library and playlists to YouTube Music .Net Application. Upload songs to YouTube Music and bulk delete music and playlists from YouTube Music. C#.
Version Downloads Last updated
6.0.2 66,695 1/1/2024
6.0.1 178 12/19/2023
6.0.0 112 12/15/2023
5.1.0 86,021 1/27/2022
5.0.0 3,179 11/13/2021
4.0.1 471 11/6/2021
4.0.0 668 12/23/2020
3.0.1 718 5/10/2020
3.0.0 2,567 4/25/2020
2.0.0 242 4/24/2020
1.1.1 245 4/16/2020
1.1.0 214 4/15/2020
1.0.0 410 3/21/2020