ASCOM.Tools 3.0.0

dotnet add package ASCOM.Tools --version 3.0.0
                    
NuGet\Install-Package ASCOM.Tools -Version 3.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ASCOM.Tools" Version="3.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ASCOM.Tools" Version="3.0.0" />
                    
Directory.Packages.props
<PackageReference Include="ASCOM.Tools" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ASCOM.Tools --version 3.0.0
                    
#r "nuget: ASCOM.Tools, 3.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ASCOM.Tools@3.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ASCOM.Tools&version=3.0.0
                    
Install as a Cake Addin
#tool nuget:?package=ASCOM.Tools&version=3.0.0
                    
Install as a Cake Tool

ASCOM.Tools

Library of components to support development of ASCOM clients, drivers and Alpaca devices.

Version History

The version history only contains entries when a change is made.

Release 3.0.0

  • ADDED - Support for .NET 8.0, 9.0 and 10.0 target frameworks. It will no longer be necessary for applications that use these frameworks to rely on the .NET Standard 2.0 component.

Release 2.0.0

  • Moved astrometry functions to new ASCOM.AstrometryTools package to reduced size and complexity of the ASCOM.Tools package.
  • The ASCOM global default log file location can now be customised to a value other than Documents\ASCOM (Documents/ascom on Unix based OS) by setting the ASCOM_LOGPATH variable.

Release 1.0.108

  • Added a NOVAS3.1 component to Utilities.
  • Added MoonPhase, MoonIllumination and EventTimes astrometry functions to Utilities.
  • Added an Almanac generator to Utilities. This writes a whole year almanac for a particular event to an ILogger instance. Supported events are:
    • Rise and set times for the planets, sun and moon
    • Start and end times for Civil, Nautical and Astronomical twilight

Release 1.0.107

  • Added missing linux-arm32 native SOFA library.

Logging

Given the change to non shared libraries should TraceLogger require a mutex?

Utilities

  • ConsoleLogger is an ILogger implementation that logs out to the console, using color coding messages
  • Logger is a static class which contains an ILogger. ASCOM Standard logs out here, but a developer can switch the logging provider. This allows the platform to use the same logger as the developed software. All methods are safe, they should never be able to throw.
  • TraceLogger is a cross platform implementation of the ASCOM Platform's TraceLogger that exposes ILogger. This is the default logger for ASCOM Standard
  • XMLProfile is a IProfile implementation that stores settings in an xml file. By default this is stored in $HOME/.config/stuff on Linux and User/.ASCOM/stuff on Windows. You can see the full paths and how they are created in the class. The reason Windows uses .ASCOM instead of .config is that .config is created by third party software on Windows and could be removed by that software. The locations need to be approved and this needs to be tested on MacOS (coming soon).
  • Sofa is a cross platform release of the ASCOM Platform's SOFA component.
  • Utilities contains a variety of astronomy oriented helper functions to complement the general purpose routines that are available in standard .NET namespaces.
  • Novas is a cross platform release of the ASCOM Platform's NOVAS3.1 component.
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on ASCOM.Tools:

Package Downloads
ASCOM.Com.Components

Library of components for accessing ASCOM COM based drivers on Windows platforms and for reading ASCOM Profile information.

ASCOM.AstrometryTools

Library of Astrometry components mirroring those in the ASCOM Platform.

ASCOM.Alpaca.Razor

Package Description

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on ASCOM.Tools:

Repository Stars
isbeorn/nina
N.I.N.A. (Nighttime Imaging 'N' Astronomy) - Advanced astrophotography sequencing software for Windows, supporting full automation of imaging sessions.
ASCOMInitiative/ASCOMPlatform
The ASCOM Platform implements the ASCOM interface standards and provides development and runtime components to ease driver and application development.
Version Downloads Last Updated
3.0.0 77 1/22/2026
3.0.0-rc.10 59 12/29/2025
2.2.1 1,298 10/21/2025
2.2.0 332 10/13/2025
2.2.0-rc.1 181 7/8/2025
2.1.0 1,522 6/9/2025
2.1.0-rc.4 151 4/27/2025
2.1.0-rc.3 193 4/15/2025
2.1.0-rc.2 146 4/11/2025
2.1.0-rc.1 170 4/10/2025
2.0.9 836 2/11/2025
2.0.8 672 11/27/2024
2.0.7 383 11/4/2024
2.0.6 269 10/31/2024
2.0.5 702 10/10/2024
2.0.2 316 10/2/2024
2.0.1 327 9/23/2024
2.0.0-rc.23 142 7/11/2024
1.0.112 2,724 4/5/2024
1.0.111 1,528 1/8/2024
1.0.110 1,185 10/6/2023
1.0.109 792 10/5/2023
1.0.108 1,650 7/15/2023
1.0.107 338 5/28/2023
1.0.106 341 5/23/2023
1.0.96 398 4/27/2023
1.0.95 417 2/25/2023
1.0.70 527 1/9/2023
1.0.52 566 11/20/2022
1.0.50-beta 341 10/30/2022
1.0.36-beta 344 10/20/2022
1.0.33-beta 291 10/10/2022
1.0.30-beta 303 10/8/2022
1.0.1-beta1 295 10/3/2022
1.0.0-beta9 426 10/3/2022
1.0.0-beta8 411 9/27/2022
1.0.0-beta7 421 9/27/2022
1.0.0-beta6 461 9/27/2022
1.0.0-beta5 440 9/26/2022
1.0.0-beta4 482 9/24/2022
1.0.0-beta3 499 8/27/2022
1.0.0-beta2 435 8/24/2022
1.0.0-beta1 512 8/23/2022

See README.md for full details of changes in this release.