Architect.Identities 2.0.0-preview-20230113.1

This is a prerelease version of Architect.Identities.
There is a newer version of this package available.
See the version list below for details.
The owner has unlisted this package. This could mean that the package is deprecated, has security vulnerabilities or shouldn't be used anymore.
dotnet add package Architect.Identities --version 2.0.0-preview-20230113.1
NuGet\Install-Package Architect.Identities -Version 2.0.0-preview-20230113.1
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="Architect.Identities" Version="2.0.0-preview-20230113.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Architect.Identities --version 2.0.0-preview-20230113.1
#r "nuget: Architect.Identities, 2.0.0-preview-20230113.1"
#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 Architect.Identities as a Cake Addin
#addin nuget:?package=Architect.Identities&version=2.0.0-preview-20230113.1&prerelease

// Install Architect.Identities as a Cake Tool
#tool nuget:?package=Architect.Identities&version=2.0.0-preview-20230113.1&prerelease

Reliable unique ID generation and management for distributed applications.

Auto-increment IDs reveal sensitive information. UUIDs (also known as GUIDs) are inefficient as primary keys in a database. Having two different IDs is cumbersome and counterintuitive. We can do better.

- For a 93-bit UUID replacement that is efficient as a primary key, use the DistributedId.
- To expose IDs externally in a sensitive environment where zero metadata must be leaked, transform them with PublicIdentities.

https://github.com/TheArchitectDev/Architect.Identities

Release notes:

2.0.0:
- BREAKING: Removed Fluid. Ambient scopes with startup configuration are considered undesirable.
- BREAKING: Removed ApplicationInstanceId. Ambient scopes with startup configuration are considered undesirable.
- BREAKING: Removed ambient access to IPublicIdentityConverter. Ambient scopes with startup configuration are considered undesirable.
- BREAKING: IdEncoder has been reworked into BinaryIdEncoder, AphanumericIdEncoder, and HexadecimalIdEncoder.
- BREAKING: ID decoding methods now throw if the input is too long. This is specially relevant for strings (such as query parameters) where 0123456789123456 and 0123456789123456aaaa should not produce the same ID.
- BREAKING: IPublicIdentityConverter now throws on big-endian architectures, instead of risking silent portability issues between architectures.
- BREAKING: Now using AmbientContexts 2.0.0.
- Semi-breaking: DistributedIds are now always 28 digits, to avoid a change from 27 to 28 digits in the future. Newly generated IDs will be significantly greater than before. Avoid downgrading after upgrading.
- DistributedIds can now burst-generate ~128,000 IDs at once before the ~128 IDs per millisecond throttling kicks in. This makes it much less likely for throttling to be encountered.
- DistributedId now stays incremental even under clock adjustments of up to 1 second. (Note that the UTC clock remains unaffected by DST.)
- Hexadecimal ID encodings are now supported.
- IPublicIdentityConverter now comes with a TestPublicIdentityConverter implementation for unit tests.
- Added UnsupportedOSPlatform("browser") to PublicIdentities, due to continuing lack of AES support.

1.0.2:
- Now using AmbientContexts 1.1.1, which fixes extremely rare bugs and improves performance.

1.0.1:
- Now using AmbientContexts 1.1.0, for a performance improvement.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  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 was computed.  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. 
.NET Core netcoreapp3.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Architect.Identities:

Package Downloads
Architect.Identities.Azure

Release notes: 1.0.2: - Now using AmbientContexts 1.1.1, which fixes extremely rare bugs and improves performance. 1.0.1: - Now using AmbientContexts 1.1.0, for a performance improvement. Description: Azure-based implementations for the Architect.Identities package. This package allows Azure blob storage to be used as the synchronization mechanism for assigning unique IDs to each application instance. services.AddIdGenerator(generator => generator.UseAzureBlobStorageContainer(new BlobContainerClient("ConnectionString", "ContainerName")));

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.1.0 1,561 1/21/2024
2.0.0 20,688 3/23/2023
1.0.2 42,009 1/1/2022
1.0.1 4,789 9/12/2021
1.0.0 13,215 12/31/2020