FileOnQ / Imaging.Heif

A C#/.NET wrapper around libheif for decoding and processing high efficiency image formats (heif, heic).
GNU Lesser General Public License v3.0
15 stars 4 forks source link

Prevent publishing dev builds to NuGet #94

Closed SkyeHoefling closed 2 years ago

SkyeHoefling commented 2 years ago

Fixes: #93

Description

Prevents dev builds from being published to the public NuGet

Merge Checklist

github-actions[bot] commented 2 years ago

Benchmark Comparison - .NET Framework 4.8

Benchmarking comparison between this Pull Request and the comitted values at benchmarks/results

thumbnail

 No differences found between the benchmark results with threshold 10%.

primary

 summary:
better: 3, geomean: 1.178
total diff: 3

No Slower results for the provided threshold = 10% and noise filter = 0.3ns.

| Faster                                                             | base/diff | Base Median (ns) | Diff Median (ns) | Modality|
| ------------------------------------------------------------------ | ---------:| ----------------:| ----------------:| -------- |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_Write    |      1.26 |    2982269900.00 |    2368822300.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToSpan   |      1.15 |    2829898300.00 |    2451281000.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToStream |      1.13 |    2766976750.00 |    2457414250.00 | bimodal |

No file given

Benchmark Results - .NET Framework 4.8

thumbnail

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5), VM=Hyper-V Intel Xeon CPU E5-2673 v4 2.30GHz, 1 CPU, 2 logical and 2 physical cores [Host] : .NET Framework 4.8 (4.8.4470.0), X64 RyuJIT Job-GHSIOX : .NET Framework 4.8 (4.8.4470.0), X64 RyuJIT Runtime=.NET Framework 4.8 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |------------------- |---------:|---------:|---------:|------------------------:|-------------------:|----------:| | Thumbnail_Write | 59.65 ms | 1.046 ms | 0.874 ms | 5,123,635 B | - | 74,504 B | | Thumbnail_ToArray | 59.60 ms | 0.825 ms | 0.810 ms | 5,123,563 B | - | 74,504 B | | Thumbnail_ToSpan | 59.11 ms | 0.835 ms | 0.652 ms | 5,123,563 B | - | - | | Thumbnail_ToStream | 57.57 ms | 0.748 ms | 0.700 ms | 5,123,563 B | - | 140,816 B |

primary

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5), VM=Hyper-V Intel Xeon CPU E5-2673 v4 2.30GHz, 1 CPU, 2 logical and 2 physical cores [Host] : .NET Framework 4.8 (4.8.4470.0), X64 RyuJIT Job-GHSIOX : .NET Framework 4.8 (4.8.4470.0), X64 RyuJIT Runtime=.NET Framework 4.8 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |---------------------- |--------:|---------:|---------:|------------------------:|-------------------:|------------:| | PrimaryImage_Write | 2.360 s | 0.0355 s | 0.0332 s | 222,028,958 B | - | 1,951,112 B | | PrimaryImage_ToArray | 2.473 s | 0.0485 s | 0.0836 s | 222,028,694 B | - | 1,951,112 B | | PrimaryImage_ToSpan | 2.452 s | 0.0480 s | 0.0937 s | 222,028,486 B | - | - | | PrimaryImage_ToStream | 2.452 s | 0.0486 s | 0.0912 s | 222,028,662 B | - | 3,894,032 B |

Benchmark Comparison - .NET 5

Benchmarking comparison between this Pull Request and the comitted values at benchmarks/results

thumbnail

 summary:
better: 4, geomean: 1.225
total diff: 4

No Slower results for the provided threshold = 10% and noise filter = 0.3ns.

| Faster                                                       | base/diff | Base Median (ns) | Diff Median (ns) | Modality|
| ------------------------------------------------------------ | ---------:| ----------------:| ----------------:| --------:|
| FileOnQ.Imaging.Heif.Benchmarks.Thumbnail.Thumbnail_ToArray  |      1.24 |      58728450.00 |      47510500.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.Thumbnail.Thumbnail_Write    |      1.23 |      59536600.00 |      48523050.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.Thumbnail.Thumbnail_ToStream |      1.22 |      58199200.00 |      47656400.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.Thumbnail.Thumbnail_ToSpan   |      1.22 |      57887100.00 |      47589900.00 |         |

No file given

primary

 summary:
better: 4, geomean: 1.211
total diff: 4

No Slower results for the provided threshold = 10% and noise filter = 0.3ns.

| Faster                                                             | base/diff | Base Median (ns) | Diff Median (ns) | Modality|
| ------------------------------------------------------------------ | ---------:| ----------------:| ----------------:| --------:|
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToSpan   |      1.22 |    2976810300.00 |    2447030800.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToStream |      1.21 |    2982379850.00 |    2457426300.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_Write    |      1.21 |    2905592400.00 |    2404032500.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToArray  |      1.21 |    2920373000.00 |    2420462550.00 |         |

No file given

Benchmark Results - .NET 5

thumbnail

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5) Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 2 logical and 2 physical cores .NET SDK=6.0.101 [Host] : .NET 5.0.8 (5.0.821.31504), X64 RyuJIT Job-CTWUIX : .NET 5.0.8 (5.0.821.31504), X64 RyuJIT Runtime=.NET 5.0 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |------------------- |---------:|---------:|---------:|------------------------:|-------------------:|----------:| | Thumbnail_Write | 48.48 ms | 0.459 ms | 0.407 ms | 5,124,409 B | - | 288 B | | Thumbnail_ToArray | 47.58 ms | 0.316 ms | 0.280 ms | 5,123,853 B | - | 66,408 B | | Thumbnail_ToSpan | 47.74 ms | 0.481 ms | 0.450 ms | 5,123,853 B | - | 120 B | | Thumbnail_ToStream | 47.74 ms | 0.350 ms | 0.328 ms | 5,123,869 B | - | 66,472 B |

primary

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5) Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 2 logical and 2 physical cores .NET SDK=6.0.101 [Host] : .NET 5.0.8 (5.0.821.31504), X64 RyuJIT Job-BRHHXJ : .NET 5.0.8 (5.0.821.31504), X64 RyuJIT Runtime=.NET 5.0 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |---------------------- |--------:|---------:|---------:|------------------------:|-------------------:|------------:| | PrimaryImage_Write | 2.406 s | 0.0074 s | 0.0065 s | 222,029,876 B | - | 256 B | | PrimaryImage_ToArray | 2.420 s | 0.0054 s | 0.0048 s | 222,028,888 B | - | 1,943,008 B | | PrimaryImage_ToSpan | 2.446 s | 0.0041 s | 0.0036 s | 222,028,712 B | 48 B | 88 B | | PrimaryImage_ToStream | 2.460 s | 0.0073 s | 0.0068 s | 222,028,728 B | - | 1,943,072 B |

Benchmark Comparison - .NET 6

Benchmarking comparison between this Pull Request and the comitted values at benchmarks/results

thumbnail

 No differences found between the benchmark results with threshold 10%.

primary

 summary:
better: 4, geomean: 1.196
total diff: 4

No Slower results for the provided threshold = 10% and noise filter = 0.3ns.

| Faster                                                             | base/diff | Base Median (ns) | Diff Median (ns) | Modality|
| ------------------------------------------------------------------ | ---------:| ----------------:| ----------------:| --------:|
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToSpan   |      1.22 |    2975119200.00 |    2433542100.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToArray  |      1.20 |    2893204600.00 |    2415620800.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_Write    |      1.20 |    2872608900.00 |    2401502500.00 |         |
| FileOnQ.Imaging.Heif.Benchmarks.PrimaryImage.PrimaryImage_ToStream |      1.17 |    2979033400.00 |    2554150200.00 |         |

No file given

Benchmark Results - .NET 6

thumbnail

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5) Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 2 logical and 2 physical cores .NET SDK=6.0.101 [Host] : .NET 6.0.1 (6.0.121.56705), X64 RyuJIT Job-WLUBDM : .NET 6.0.1 (6.0.121.56705), X64 RyuJIT Runtime=.NET 6.0 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |------------------- |---------:|---------:|---------:|------------------------:|-------------------:|----------:| | Thumbnail_Write | 48.07 ms | 0.480 ms | 0.449 ms | 5,124,441 B | 32 B | 832 B | | Thumbnail_ToArray | 47.53 ms | 0.397 ms | 0.371 ms | 5,123,853 B | - | 66,888 B | | Thumbnail_ToSpan | 47.42 ms | 0.462 ms | 0.432 ms | 5,123,853 B | - | 600 B | | Thumbnail_ToStream | 47.34 ms | 0.460 ms | 0.430 ms | 5,123,869 B | - | 66,952 B |

primary

``` ini BenchmarkDotNet=v0.13.1, OS=Windows 10.0.17763.2458 (1809/October2018Update/Redstone5) Intel Xeon Platinum 8272CL CPU 2.60GHz, 1 CPU, 2 logical and 2 physical cores .NET SDK=6.0.101 [Host] : .NET 6.0.1 (6.0.121.56705), X64 RyuJIT Job-LLDUYZ : .NET 6.0.1 (6.0.121.56705), X64 RyuJIT Runtime=.NET 6.0 InvocationCount=1 LaunchCount=1 UnrollFactor=1 ``` | Method | Mean | Error | StdDev | Allocated native memory | Native memory leak | Allocated | |---------------------- |--------:|---------:|---------:|------------------------:|-------------------:|------------:| | PrimaryImage_Write | 2.401 s | 0.0060 s | 0.0056 s | 222,029,636 B | - | 848 B | | PrimaryImage_ToArray | 2.415 s | 0.0038 s | 0.0032 s | 222,028,952 B | - | 1,943,536 B | | PrimaryImage_ToSpan | 2.434 s | 0.0055 s | 0.0051 s | 222,028,440 B | - | 616 B | | PrimaryImage_ToStream | 2.566 s | 0.0291 s | 0.0272 s | 222,028,312 B | - | 1,943,600 B |

SkyeHoefling commented 2 years ago

@mitchelsellers any reasons why we shouldn't merge this?

mitchelsellers commented 2 years ago

@ahoefling i think we are good.