Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion HdrHistogram.Benchmarking/HdrHistogram.Benchmarking.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>net8.0</TargetFrameworks>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion HdrHistogram.Examples/HdrHistogram.Examples.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks>net8.0</TargetFrameworks>
<TargetFrameworks>net10.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion HdrHistogram.UnitTests/HdrHistogram.UnitTests.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>net8.0</TargetFrameworks>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
</PropertyGroup>

<ItemGroup>
Expand Down
12 changes: 10 additions & 2 deletions HdrHistogram/HdrHistogram.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>net8.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>net10.0;net9.0;net8.0;netstandard2.0</TargetFrameworks>
<Description>HdrHistogram supports low latency recording and analyzing of sampled data value counts across a configurable integer value range with configurable value precision within the range.</Description>
<Authors>Gil Tene, Lee Campbell</Authors>
<PackageReleaseNotes>Net 8.0 release</PackageReleaseNotes>
Expand All @@ -24,7 +24,15 @@
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0|AnyCPU'">
<DocumentationFile>bin\Release\net8.0\HdrHistogram.xml</DocumentationFile>
</PropertyGroup>


<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net9.0|AnyCPU'">
<DocumentationFile>bin\Release\net9.0\HdrHistogram.xml</DocumentationFile>
</PropertyGroup>

<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net10.0|AnyCPU'">
<DocumentationFile>bin\Release\net10.0\HdrHistogram.xml</DocumentationFile>
</PropertyGroup>

<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|netstandard2.0|AnyCPU'">
<DocumentationFile>bin\Release\netstandard2.0\HdrHistogram.xml</DocumentationFile>
<DefineConstants>RELEASE;NETSTANDARD2_0</DefineConstants>
Expand Down
2 changes: 1 addition & 1 deletion HdrHistogram/HistogramLogReader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public sealed class HistogramLogReader : IDisposable, IHistogramLogV1Reader
private static readonly Regex BaseTimeMatcher = new Regex(@"#\[BaseTime: (?<seconds>\d*\.\d{1,3}) ", RegexOptions.Compiled);
//Content lines - format = startTimestamp, intervalLength, maxTime, histogramPayload
private static readonly Regex UntaggedLogLineMatcher = new Regex(@"(?<startTime>\d*\.\d*),(?<interval>\d*\.\d*),(?<max>\d*\.\d*),(?<payload>.*)", RegexOptions.Compiled);
private static readonly Regex TaggedLogLineMatcher = new Regex(@"((?<tag>Tag=.+),)?(?<startTime>\d*\.\d*),(?<interval>\d*\.\d*),(?<max>\d*\.\d*),(?<payload>.*)", RegexOptions.Compiled);
private static readonly Regex TaggedLogLineMatcher = new Regex(@"((?<tag>Tag=[^,]+),)?(?<startTime>\d*\.\d*),(?<interval>\d*\.\d*),(?<max>\d*\.\d*),(?<payload>.*)", RegexOptions.Compiled);
private readonly TextReader _log;
private double _startTimeInSeconds;

Expand Down
5 changes: 4 additions & 1 deletion autonomous/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,11 @@
# HdrHistogram.NET Agent Container
# .NET SDK + Claude Code + gh CLI + firewall
# =============================================================================
FROM mcr.microsoft.com/dotnet/sdk:9.0-bookworm-slim
FROM mcr.microsoft.com/dotnet/sdk:10.0-bookworm-slim
RUN dotnet_version=8.0 \
&& curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin \
--runtime dotnet --channel $dotnet_version --install-dir /usr/share/dotnet \
&& dotnet_version=9.0 \
&& curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin \
--runtime dotnet --channel $dotnet_version --install-dir /usr/share/dotnet

Expand Down
18 changes: 11 additions & 7 deletions spec/tech-standards/build-system.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,28 @@ HdrHistogram.sln
### Main Library (HdrHistogram.csproj)

```xml
<TargetFrameworks>net8.0;netstandard2.0</TargetFrameworks>
<TargetFrameworks>net10.0;net9.0;net8.0;netstandard2.0</TargetFrameworks>
```

| Target | Description |
|--------|-------------|
| `net8.0` | Modern .NET (primary target) |
| `net10.0` | Modern .NET (current LTS target) |
| `net9.0` | Modern .NET (STS target) |
| `net8.0` | Modern .NET (LTS target) |
| `netstandard2.0` | Broad compatibility (.NET Framework 4.6.1+, .NET Core 2.0+) |

### Test Project

```xml
<TargetFramework>net8.0</TargetFramework>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
```

### Benchmarking Project

Targets the current LTS runtime only (developer tool, not a shipped library):
Targets all supported modern runtimes (developer tool, not a shipped library):

```xml
<TargetFrameworks>net8.0</TargetFrameworks>
<TargetFrameworks>net10.0;net9.0;net8.0</TargetFrameworks>
```

## Dependencies
Expand Down Expand Up @@ -224,7 +226,9 @@ dotnet run -c Release -- -f *Recording*
### Benchmark Configuration

BenchmarkDotNet is used with these targets:
- `net8.0` (current LTS runtime)
- `net10.0` (current LTS runtime)
- `net9.0` (STS runtime)
- `net8.0` (LTS runtime)
- Windows diagnostics support
- Memory allocation tracking

Expand All @@ -251,7 +255,7 @@ HdrHistogram/bin/{Configuration}/{TargetFramework}/

### Prerequisites

- .NET 8.0 SDK (or later)
- .NET 10.0 SDK (or later)
- Visual Studio 2022 (optional, for IDE development)
- Git

Expand Down
Loading