Repository navigation
v1.0.0-beta.2
Pre-releaseImportant
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.0only, the current LTS release of .NET (supported until November 2028).net8.0is 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.0andnet10.0). An application on .NET 11 or a later version uses it as it is. - The package asks for
Microsoft.Extensions.Logging.Abstractions10.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.2YeelightClient 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.2The 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.2nuget.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.