Skip to content

v1.0.0-beta.2

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Nov 08:52
ca4a1db

Important

This is a prerelease. It is meant to be tried, and its public API can still change before the stable release. A plain dotnet add package YeelightClient keeps installing the latest stable version.

A prerelease for trying out, like 1.0.0-beta.1, with one change: the library now targets .NET 10 only. Everything in 1.0.0-beta.1 (below) is in this version too. Its
public API can still change before 1.0.0, so report what you find in an issue. A prerelease is not installed by a plain
dotnet add package YeelightClient: use dotnet add package YeelightClient --version 1.0.0-beta.2 (or --prerelease for the newest prerelease).

Changed

  • The library targets net10.0 only, the current LTS release of .NET (supported until November 2028). net8.0 is gone: .NET 8 reaches the end of its support on
    10 November 2026, and a new library has no reason to carry it. An application that targets .NET 8 or .NET 9 cannot use this version; it can stay on 1.0.0-beta.1
    (net8.0 and net10.0). An application on .NET 11 or a later version uses it as it is.
  • The package asks for Microsoft.Extensions.Logging.Abstractions 10.0.0, and no longer for 8.0.0. NuGet restores the lowest version that is asked for, so an application
    that asks for nothing else now gets the logging abstractions that match its runtime, and not the 8.x line, which is out of support from November 2026.
  • The connection to a light uses an IPv4 socket when the light is given by its address. A light is an IPv4 device (the client already only believed, searched and
    listened on IPv4), and the socket that .NET makes by default takes both IPv4 and IPv6 and connects to an IPv4 address through its IPv6 side: on a computer with software that
    watches IPv6 that takes about ten times as long (25 ms against 2 ms for a connection to the same computer on one, and more with several at once).

Install

dotnet add package YeelightClient --version 1.0.0-beta.2

YeelightClient 1.0.0-beta.2 on NuGet | Documentation | CHANGELOG

Assets

File What it is
YeelightClient.1.0.0-beta.2.nupkg The package: the exact file that was pushed to nuget.org and to GitHub Packages.
YeelightClient.TestApp-1.0.0-beta.2-win-x64.zip The Yeelight Client test app. Unzip it and start YeelightClient.TestApp.exe. It is self-contained (nothing else has to be installed), built for Windows 10 version 1809 and later, x64. It is not code signed, so Windows may warn that the publisher is unknown; compare the checksum below.
YeelightClient.1.0.0-beta.2.intoto.jsonl The build provenance attestation of the files above and of the library in the package (a Sigstore bundle). With it the files can be checked without asking GitHub for the attestation, see Verify.

SHA-256:

1a43f8488372974215aa91d611cff8e3fceeade8a8ec7a9275cabbfa05dbc860  YeelightClient.1.0.0-beta.2.nupkg
47a40d76a12a1e0e416ebb9d3d57e377d5a9d9b15d6d5c82e4dc481ddcab6620  YeelightClient.TestApp-1.0.0-beta.2-win-x64.zip
95357af463fdd10f4ba4126c50d80410b1290bcd8d26b9efca73b93970503301  YeelightClient.1.0.0-beta.2.intoto.jsonl

Verify

The files above, and the library inside the package, have a signed build provenance attestation: GitHub states that the publish.yml workflow of this repository made them, from the commit of this release, on a GitHub-hosted runner. Check one with the GitHub CLI:

gh attestation verify YeelightClient.1.0.0-beta.2.nupkg --repo tinodo/yeelightclient --signer-workflow tinodo/yeelightclient/.github/workflows/publish.yml --source-ref refs/tags/v1.0.0-beta.2

The attestation is also a file of this release, YeelightClient.1.0.0-beta.2.intoto.jsonl. With it the command does not ask GitHub for the attestation (it still fetches the keys that check the signature):

gh attestation verify YeelightClient.1.0.0-beta.2.nupkg --bundle YeelightClient.1.0.0-beta.2.intoto.jsonl --repo tinodo/yeelightclient --signer-workflow tinodo/yeelightclient/.github/workflows/publish.yml --source-ref refs/tags/v1.0.0-beta.2

nuget.org signs the package that it serves, so the .nupkg from nuget.org is not byte for byte the file above. To check the library that you use, run the same command on the DLL in your NuGet cache: ~/.nuget/packages/yeelightclient/1.0.0-beta.2/lib/net10.0/YeelightClient.dll.

Found a problem? Please report it in an issue.