Skip to content

Releases: unitycontainer/unity

5.7.2.479

03 Mar 00:22
Compare
Choose a tag to compare
Compliance with CLS-Compliant Code spec

5.7.0.476

01 Mar 00:21
Compare
Choose a tag to compare

Performance Optimization

This release is all about optimizing performance. These are the latest benchmarks:

BenchmarkDotNet=v0.10.12, OS=Windows 7 SP1 (6.1.7601.0)
Intel Xeon CPU E3-1240 V2 3.40GHz, 1 CPU, 8 logical cores and 4 physical cores
Frequency=3312851 Hz, Resolution=301.8548 ns, Timer=TSC
  [Host]     : .NET Framework 4.6.1 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.6.1076.0
  Job-CLJHLJ : .NET Framework 4.6.1 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.6.1076.0

UnrollFactor=1  
Method Version Mean Error StdDev
ChildContainer 4.0.1 606.6 ns 8.0293 ns 7.5106 ns
ChildContainer 5.6.1 250.5 ns 2.6140 ns 2.4451 ns
ChildContainer 5.7.1 131.0 ns 1.0502 ns 0.9310 ns
Object 4.0.1 1,263.6 ns 18.4935 ns 16.3940 ns
Object 5.6.1 794.7 ns 5.4100 ns 5.0605 ns
Object 5.7.1 165.4 ns 3.3337 ns 3.7054 ns
Unregistered 4.0.1 1,258.5 ns 8.0816 ns 7.5595 ns
Unregistered 5.6.1 818.7 ns 12.8366 ns 11.3793 ns
Unregistered 5.7.1 175.6 ns 1.9537 ns 1.8275 ns
Transient 4.0.1 1,264.0 ns 3.9698 ns 3.5192 ns
Transient 5.6.1 616.6 ns 11.9444 ns 13.7551 ns
Transient 5.7.1 178.0 ns 1.2784 ns 1.1958 ns
MappedService 4.0.1 1,361.7 ns 6.2127 ns 5.1879 ns
MappedService 5.6.1 1,004.2 ns 9.6214 ns 8.9998 ns
MappedService 5.7.1 177.9 ns 2.3800 ns 2.1098 ns
ReResolve 4.0.1 1,261.5 ns 12.7684 ns 11.9436 ns
ReResolve 5.6.1 1,061.6 ns 5.1320 ns 4.5494 ns
ReResolve 5.7.1 171.5 ns 0.8011 ns 0.6689 ns
Singleton 4.0.1 740.4 ns 3.6187 ns 3.3849 ns
Singleton 5.6.1 321.3 ns 1.7380 ns 1.6257 ns
Singleton 5.7.1 129.3 ns 1.6182 ns 1.4345 ns

5.6.1.462

22 Feb 23:41
Compare
Choose a tag to compare

This release includes minor optimizations

5.6.0.453

13 Feb 21:31
Compare
Choose a tag to compare

v5.6.0 introduces significant rework of v5.x (v4.x) engine.

  • Storage
  • Registration process and how individual registrations are stored
  • Introduces preprocessing during registration stage
  • Strategies

Benchmarks

BenchmarkDotNet=v0.10.12, OS=Windows 10 Redstone 3 [1709, Fall Creators Update] (10.0.16299.192)
Intel Core i7-6700K CPU 4.00GHz (Skylake), 1 CPU, 8 logical cores and 4 physical cores
Frequency=3914063 Hz, Resolution=255.4890 ns, Timer=TSC
  [Host]     : .NET Framework 4.6 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.2600.0
  DefaultJob : .NET Framework 4.6 (CLR 4.0.30319.42000), 64bit RyuJIT-v4.7.2600.0

Method Container Mean Error StdDev
Transient 5.6.0 539.1 ns 1.082 ns 0.9596 ns
Transient 5.5.8 885.6 ns 1.696 ns 1.5861 ns
Transient 4.0.1 914.5 ns 3.226 ns 3.0180 ns
typeof(object) 5.6.0 538.9 ns 1.547 ns 1.371 ns
typeof(object) 5.5.8 893.3 ns 4.676 ns 4.374 ns
typeof(object) 4.0.1 920.4 ns 8.112 ns 7.588 ns
Singleton 5.6.0 551.4 ns 8.130 ns 7.207 ns
Singleton 5.5.8 924.4 ns 7.126 ns 6.317 ns
Singleton 4.0.1 917.4 ns 6.567 ns 6.143 ns

5.5.8.450

09 Feb 01:23
Compare
Choose a tag to compare
  • Minor speed optimizations

5.5.6.448

23 Jan 23:26
Compare
Choose a tag to compare
Removed unused packages

5.5.5.427

11 Jan 00:30
Compare
Choose a tag to compare

Maintenance release

Added minor optimizations to enable integration with Microsoft.Extensions.DependencyInjection.2.*

5.5.4.424

03 Jan 22:06
Compare
Choose a tag to compare

Added support for Net Standard 1.0 in CommonServiceLocator and Unity.ServiceLocator

5.5.3.421

03 Jan 04:53
Compare
Choose a tag to compare

Maintenance Release

Fixed #183 ArgumentNullException during instance registreation

5.5.2.419

30 Dec 06:50
Compare
Choose a tag to compare

Maintenance release

During production run it was determined that HierarchicalLifetimeManager could be corrupted and environment could became unstable. To fix the issue Dictionary<> in HierarchicalLifetimeManager implementation was replaced with ConcurrentDictionary<>.