FoundationaLLM.Client.Core 0.9.7-beta117

This is a prerelease version of FoundationaLLM.Client.Core.
There is a newer version of this package available.
See the version list below for details.
dotnet add package FoundationaLLM.Client.Core --version 0.9.7-beta117
                    
NuGet\Install-Package FoundationaLLM.Client.Core -Version 0.9.7-beta117
                    
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="FoundationaLLM.Client.Core" Version="0.9.7-beta117" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FoundationaLLM.Client.Core" Version="0.9.7-beta117" />
                    
Directory.Packages.props
<PackageReference Include="FoundationaLLM.Client.Core" />
                    
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 FoundationaLLM.Client.Core --version 0.9.7-beta117
                    
#r "nuget: FoundationaLLM.Client.Core, 0.9.7-beta117"
                    
#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 FoundationaLLM.Client.Core@0.9.7-beta117
                    
#: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=FoundationaLLM.Client.Core&version=0.9.7-beta117&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FoundationaLLM.Client.Core&version=0.9.7-beta117&prerelease
                    
Install as a Cake Tool

FoundationaLLM Core Client

The FoundationaLLM Core Client is a .NET client library that simplifies the process of interacting with the FoundationaLLM Core API. The client library provides a set of classes and methods that allow you to interact with the FoundationaLLM Core API in a more intuitive way.

This library contains two primary classes:

  • CoreRESTClient: A class that provides a set of methods for interacting with the FoundationaLLM Core API using REST. This is considered the low-level client and provides direct access to all Core API endpoints.
  • CoreClient: A class that provides a set of methods for interacting with the FoundationaLLM Core API using a higher-level abstraction. This class is designed to simplify the process of interacting with the Core API by providing a more intuitive interface. It does not contain all the methods available in the CoreRESTClient class, but it provides a more user-friendly way to interact with the Core API.

These two classes are mutually exclusive, and you should choose one based on your requirements. If you need direct access to all Core API endpoints, use the CoreRESTClient class. If you need a more user-friendly interface, use the CoreClient class.

Getting started

If you do not have FoundationaLLM deployed, follow the Quick Start Deployment instructions to get FoundationaLLM deployed in your Azure subscription.

Install the NuGet package:

dotnet add package FoundationaLLM.Client.Core

Manual service instantiation

Complete the following steps if you do not want to use dependency injection:

  1. Create a new instance of the CoreRESTClient and CoreClient classes:

    var coreUri = "<YOUR_CORE_API_URL>"; // e.g., "https://myfoundationallmcoreapi.com"
    var instanceId = "<YOUR_INSTANCE_ID>"; // Each FoundationaLLM deployment has a unique (GUID) ID. Locate this value in the FoundationaLLM Management Portal or in Azure App Config (FoundationaLLM:Instance:Id key)
    
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    var options = new APIClientSettings // Optional settings parameter. Default timeout is 900 seconds.
    {
        Timeout = TimeSpan.FromSeconds(600)
    };
    
    var coreRestClient = new CoreRESTClient(
        coreUri,
        credential,
        instanceId,
        options);
    var coreClient = new CoreClient(
        coreUri,
        credential,
        instanceId,
        options);
    
  2. Make a request to the Core API with the CoreRESTClient class:

    var status = await coreRestClient.Status.GetServiceStatusAsync();
    
  3. Make a request to the Core API with the CoreClient class:

    var results = await coreClient.GetAgentsAsync();
    

You can use the FoundationaLLM.Common.Authentication.DefaultAuthentication class to generate the TokenCredential. This class sets the AzureCredential property using the ManagedIdentityCredential when running in a production environment (production parameter of the Initialize method) and the AzureCliCredential when running in a development environment.

Example:

DefaultAuthentication.Initialize(false, "Test"); var credentials = DefaultAuthentication.AzureCredential;

Use dependency injection with a configuration file

Rather than manually instantiating the CoreRESTClient and CoreClient classes, you can use dependency injection to manage the instances. This approach is more flexible and allows you to easily switch between different implementations of the ICoreClient and ICoreRESTClient interfaces.

  1. Create a configuration file (e.g., appsettings.json) with the following content:

    {
        "FoundationaLLM": {
            "APIEndpoints": {
     	        "CoreAPI": {
     	            "Essentials": {
     	                "APIUrl": "https://localhost:63279/"
                    }
     		    },
            },
            "Instance": {
                "Id": "00000000-0000-0000-0000-000000000000"
            }
        }
    }
    
  2. Read the configuration file:

    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .Build();
    
  3. Use the CoreClient extension method to add the CoreClient and CoreRESTClient to the service collection:

    var services = new ServiceCollection();
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    services.AddCoreClient(
        configuration[AppConfigurationKeys.FoundationaLLM_APIEndpoints_CoreAPI_Essentials_APIUrl]!,
        credential,
        configuration[AppConfigurationKeys.FoundationaLLM_Instance_Id]!);
    
    var serviceProvider = services.BuildServiceProvider();
    
  4. Retrieve the CoreClient and CoreRESTClient instances from the service provider:

    var coreClient = serviceProvider.GetRequiredService<ICoreClient>();
    var coreRestClient = serviceProvider.GetRequiredService<ICoreRESTClient>();
    

Alternately, you can inject the CoreClient and CoreRESTClient instances directly into your classes using dependency injection.

public class MyService
{
    private readonly ICoreClient _coreClient;
    private readonly ICoreRESTClient _coreRestClient;

    public MyService(ICoreClient coreClient, ICoreRESTClient coreRestClient)
    {
        _coreClient = coreClient;
        _coreRestClient = coreRestClient;
    }
}

Use dependency injection with Azure App Configuration

If you prefer to retrieve the configuration settings from Azure App Configuration, you can use the Microsoft.Azure.AppConfiguration.AspNetCore or Microsoft.Extensions.Configuration.AzureAppConfiguration package to retrieve the configuration settings from Azure App Configuration.

  1. Connect to Azure App Configuration:

    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
        .AddEnvironmentVariables()
        .AddAzureAppConfiguration(options =>
        {
            options.Connect("<connection-string>");
            options.ConfigureKeyVault(kv =>
            {
                kv.SetCredential(Credentials);
            });
            options.Select(AppConfigurationKeyFilters.FoundationaLLM_Instance);
            options.Select(AppConfigurationKeyFilters.FoundationaLLM_APIEndpoints_CoreAPI_Essentials);
        })
        .Build();
    

    If you have configured your local development environment, you can obtain the App Config connection string from an environment variable (Environment.GetEnvironmentVariable(EnvironmentVariables.FoundationaLLM_AppConfig_ConnectionString)) when developing locally.

  2. Use the CoreClient extension method to add the CoreClient and CoreRESTClient to the service collection:

    var services = new ServiceCollection();
    var credential = new AzureCliCredential(); // Can use any TokenCredential implementation, such as ManagedIdentityCredential or AzureCliCredential.
    
    services.AddCoreClient(
        configuration[AppConfigurationKeys.FoundationaLLM_APIEndpoints_CoreAPI_Essentials_APIUrl]!,
        credential,
        configuration[AppConfigurationKeys.FoundationaLLM_Instance_Id]!);
    
  3. Retrieve the CoreClient and CoreRESTClient instances from the service provider:

    var coreClient = serviceProvider.GetRequiredService<ICoreClient>();
    var coreRestClient = serviceProvider.GetRequiredService<ICoreRESTClient>();
    

Example projects

The Core.Examples test project contains several examples that demonstrate how to use the CoreClient and CoreRESTClient classes to interact with the Core API through a series of end-to-end tests.

FoundationaLLM: The platform for deploying, scaling, securing and governing generative AI in the enterprises 🚀

License

FoundationaLLM provides the platform for deploying, scaling, securing and governing generative AI in the enterprise. With FoundationaLLM you can:

  • Create AI agents that are grounded in your enterprise data, be that text, semi-structured or structured data.
  • Make AI agents available to your users through a branded chat interface or integrate the REST API to the AI agent into your application for a copilot experience or integrate the Agent API in a machine-to-machine automated process.
  • Experiment building agents that can use a variety of large language models including OpenAI GPT-4, Mistral and Llama 2 or any models pulled from the Hugging Face model catalog that provide a REST completions endpoint.
  • Centrally manage, configure and secure your AI agents AND their underlying assets including prompts, data sources, vectorization data pipelines, vector databases and large language models using the management portal.
  • Enable everyone in your enterprise to create their own AI agents. Your non-developer users can create and deploy their own agents in a self-service fashion from the management portal, but we don't get in the way of your advanced AI developers who can deploy their own orchestrations built in LangChain, Semantic Kernel, Prompt Flow or any orchestration that exposes a completions endpoint.
  • Deploy and manage scalable vectorization data pipelines that can ingest millions of documents to provide knowledge to your model.
  • Empower your users with as many task-focused AI agents as desired.
  • Control access to the AI agents and the resources they access using role-based access controls (RBAC).
  • Harness the rapidly evolving capabilities from Azure AI and Azure OpenAI from one integrated stack.

FoundationaLLM is not a large language model. It enables you to use the large language models of your choice (e.g., OpenAI GPT-4, Mistral, LLama 2, etc.)

FoundationaLLM deploys a secure, comprehensive and highly configurable copilot platform to your Azure cloud environment:

  • Simplifies integration with enterprise data sources used by agent for in-context learning (e.g., enabling RAG, CoT, ReAct and inner monologue patterns).
  • Provides defense in depth with fine-grain security controls over data used by agent and pre/post completion filters that guard against attack.
  • Hardened solution attacked by an LLM red team from inception.
  • Scalable solution load balances across multiple LLM endpoints.
  • Extensible to new data sources, new LLM orchestrators and LLMs.

Why is FoundationaLLM Needed?

Simply put we saw a lot of folks reinventing the wheel just to get a customized copilot or AI agent that was grounded and bases its responses in their own data as opposed to the trained parametric knowledge of the model. Many of the solutions we saw made for great demos, but were effectively toys wrapping calls to OpenAI endpoints- they were not something intended or ready to take into production at enterprise scale. We built FoundationaLLM to provide a continuous journey, one that was quick to get started with so folks could experiment quickly with LLM's but not fall off a cliff after that with a solution that would be insecure, unlicensed, inflexible and not fully featured enough to grow from the prototype into a production solution without having to start all over.

The core problems to deliver enterprise copilots or AI agents are:

  • Enterprise grade copilots or AI agents are complex and have lots of moving parts (not to mention infrastructure).
  • The industry has a skills gap when it comes to filling the roles needed to deliver these complex copilot solutions.
  • The top AI risks (inaccuracy, cybersecurity, compliance, explainability, privacy) are not being mitigated by individual tools.
  • Delivery of a copilot or AI agent solution is time consuming, expensive and frustrating when starting from scratch.

Documentation

Get up to speed with FoundationaLLM by reading the documentation. This includes deployment instructions, quickstarts, architecture, and API references.

Getting Started

FoundationaLLM provides a simple command line driven approach to getting your first deployment up and running. Basically, it's two commands. After that, you can customize the solution, run it locally on your machine and update the deployment with your customizations.

Follow the Quick Start Deployment instructions to get FoundationaLLM deployed in your Azure subscription.

Reporting Issues and Support

If you encounter any issues with FoundationaLLM, please open an issue on GitHub. We will respond to your issue as soon as possible. Please use the Labels (bug, documentation, general question, release x.x.x) to categorize your issue and provide as much detail as possible to help us understand and resolve the issue.

Product Compatible and additional computed target framework versions.
.NET 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 was computed.  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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on FoundationaLLM.Client.Core:

Package Downloads
FoundationaLLM.Core.Examples

FoundationaLLM.Core.Examples contains custom development examples packaged as tests.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.9.8-beta107 416 12/8/2025
0.9.8-beta106 658 12/2/2025
0.9.8-beta105 655 12/1/2025
0.9.8-beta104 655 12/1/2025
0.9.8-beta101 130 11/28/2025
0.9.7 181 11/24/2025
0.9.7-rc488 288 11/21/2025
0.9.7-rc487 316 11/21/2025
0.9.7-rc485 403 11/19/2025
0.9.7-rc484 390 11/18/2025
0.9.7-rc483 392 11/18/2025
0.9.7-rc481 404 11/18/2025
0.9.7-rc480 386 11/17/2025
0.9.7-rc479 277 11/17/2025
0.9.7-rc474 267 11/16/2025
0.9.7-rc473 286 11/16/2025
0.9.7-rc471 258 11/10/2025
0.9.7-rc470 261 11/10/2025
0.9.7-rc467 261 11/10/2025
0.9.7-rc466 130 11/7/2025
0.9.7-rc461 181 11/4/2025
0.9.7-rc460 187 11/4/2025
0.9.7-rc452 196 10/28/2025
0.9.7-rc451 173 10/28/2025
0.9.7-rc440 169 10/21/2025
0.9.7-rc439 175 10/20/2025
0.9.7-rc428 176 10/1/2025
0.9.7-rc418 192 9/29/2025
0.9.7-rc408 141 9/26/2025
0.9.7-rc407 143 9/26/2025
0.9.7-rc406 171 9/25/2025
0.9.7-rc405 176 9/25/2025
0.9.7-rc404 169 9/25/2025
0.9.7-rc403 177 9/25/2025
0.9.7-rc402 189 9/24/2025
0.9.7-rc401 173 9/23/2025
0.9.7-rc400 164 9/23/2025
0.9.7-rc399 161 9/23/2025
0.9.7-rc398 161 9/23/2025
0.9.7-rc397 168 9/23/2025
0.9.7-rc396 164 9/23/2025
0.9.7-rc395 157 9/23/2025
0.9.7-rc394 177 9/23/2025
0.9.7-rc393 186 9/22/2025
0.9.7-rc392 175 9/22/2025
0.9.7-rc391 171 9/22/2025
0.9.7-rc390 180 9/22/2025
0.9.7-rc389 189 9/22/2025
0.9.7-rc388 189 9/22/2025
0.9.7-rc387 200 9/22/2025
0.9.7-rc386 183 9/22/2025
0.9.7-rc385 213 9/22/2025
0.9.7-rc384 228 9/22/2025
0.9.7-rc383 227 9/19/2025
0.9.7-rc382 299 9/17/2025
0.9.7-rc381 298 9/17/2025
0.9.7-rc380 299 9/16/2025
0.9.7-rc379 293 9/16/2025
0.9.7-rc378 292 9/16/2025
0.9.7-rc377 304 9/16/2025
0.9.7-rc376 303 9/16/2025
0.9.7-rc375 293 9/16/2025
0.9.7-rc374 293 9/16/2025
0.9.7-rc373 247 9/15/2025
0.9.7-rc372 115 9/12/2025
0.9.7-rc371 132 9/12/2025
0.9.7-rc370 142 9/12/2025
0.9.7-rc369 138 9/12/2025
0.9.7-rc368 163 9/11/2025
0.9.7-rc367 149 9/10/2025
0.9.7-rc366 152 9/10/2025
0.9.7-rc365 157 9/10/2025
0.9.7-rc364 157 9/9/2025
0.9.7-rc363 152 9/9/2025
0.9.7-rc362 148 9/9/2025
0.9.7-rc361 155 9/9/2025
0.9.7-rc360 149 9/9/2025
0.9.7-rc359 158 9/9/2025
0.9.7-rc358 154 9/9/2025
0.9.7-rc357 147 9/8/2025
0.9.7-rc356 108 9/5/2025
0.9.7-rc355 127 9/5/2025
0.9.7-rc354 136 9/5/2025
0.9.7-rc353 125 9/5/2025
0.9.7-rc352 135 9/5/2025
0.9.7-rc351 135 9/5/2025
0.9.7-rc350 171 9/5/2025
0.9.7-rc349 179 9/5/2025
0.9.7-rc348 177 9/4/2025
0.9.7-rc347 170 9/4/2025
0.9.7-rc346 168 9/4/2025
0.9.7-rc345 165 9/3/2025
0.9.7-rc344 180 9/3/2025
0.9.7-rc343 176 9/3/2025
0.9.7-rc342 175 9/3/2025
0.9.7-rc341 160 9/3/2025
0.9.7-rc340 165 9/3/2025
0.9.7-rc339 169 9/3/2025
0.9.7-rc338 168 9/3/2025
0.9.7-rc337 164 9/2/2025
0.9.7-rc336 164 9/2/2025
0.9.7-rc335 165 9/2/2025
0.9.7-rc334 146 9/2/2025
0.9.7-rc333 150 9/2/2025
0.9.7-rc332 150 9/2/2025
0.9.7-rc331 154 9/2/2025
0.9.7-rc330 161 9/1/2025
0.9.7-rc329 161 8/31/2025
0.9.7-rc328 167 8/31/2025
0.9.7-rc327 174 8/31/2025
0.9.7-rc326 159 8/31/2025
0.9.7-rc325 172 8/31/2025
0.9.7-rc324 187 8/29/2025
0.9.7-rc323 190 8/29/2025
0.9.7-rc322 187 8/29/2025
0.9.7-rc321 204 8/29/2025
0.9.7-rc320 209 8/29/2025
0.9.7-rc319 199 8/28/2025
0.9.7-rc318 201 8/28/2025
0.9.7-rc317 203 8/28/2025
0.9.7-rc316 206 8/26/2025
0.9.7-rc315 204 8/26/2025
0.9.7-rc314 219 8/26/2025
0.9.7-rc313 217 8/26/2025
0.9.7-rc312 199 8/26/2025
0.9.7-rc311 226 8/26/2025
0.9.7-rc310 222 8/26/2025
0.9.7-rc309 177 8/25/2025
0.9.7-rc308 173 8/25/2025
0.9.7-rc307 169 8/25/2025
0.9.7-rc306 169 8/25/2025
0.9.7-rc305 301 8/25/2025
0.9.7-rc304 301 8/25/2025
0.9.7-rc303 268 8/25/2025
0.9.7-rc302 270 8/25/2025
0.9.7-rc301 99 8/22/2025
0.9.7-rc300 93 8/22/2025
0.9.7-rc299 121 8/22/2025
0.9.7-rc298 124 8/22/2025
0.9.7-rc297 151 8/21/2025
0.9.7-rc296 152 8/21/2025
0.9.7-rc295 160 8/21/2025
0.9.7-rc293 152 8/21/2025
0.9.7-rc292 152 8/21/2025
0.9.7-rc291 148 8/21/2025
0.9.7-rc290 149 8/20/2025
0.9.7-rc289 160 8/19/2025
0.9.7-rc288 151 8/19/2025
0.9.7-rc287 153 8/19/2025
0.9.7-rc286 160 8/19/2025
0.9.7-rc285 147 8/18/2025
0.9.7-rc284 153 8/18/2025
0.9.7-rc283 151 8/18/2025
0.9.7-rc282 152 8/18/2025
0.9.7-rc281 152 8/18/2025
0.9.7-rc280 158 8/18/2025
0.9.7-rc279 152 8/18/2025
0.9.7-rc278 146 8/18/2025
0.9.7-rc277 166 8/18/2025
0.9.7-rc276 146 8/18/2025
0.9.7-rc275 151 8/18/2025
0.9.7-rc274 151 8/18/2025
0.9.7-rc273 161 8/17/2025
0.9.7-rc272 133 8/16/2025
0.9.7-rc271 156 8/10/2025
0.9.7-rc270 120 8/9/2025
0.9.7-rc269 142 8/9/2025
0.9.7-rc268 143 8/9/2025
0.9.7-rc267 143 8/9/2025
0.9.7-rc266 168 8/8/2025
0.9.7-rc265 175 8/8/2025
0.9.7-rc264 174 8/8/2025
0.9.7-rc263 210 8/8/2025
0.9.7-rc262 207 8/8/2025
0.9.7-rc261 195 8/8/2025
0.9.7-rc260 211 8/8/2025
0.9.7-rc259 241 8/7/2025
0.9.7-rc258 203 8/4/2025
0.9.7-rc257 210 8/4/2025
0.9.7-rc256 153 7/27/2025
0.9.7-rc255 498 7/24/2025
0.9.7-rc254 549 7/22/2025
0.9.7-rc253 547 7/22/2025
0.9.7-rc252 524 7/21/2025
0.9.7-rc251 430 7/21/2025
0.9.7-rc250 343 7/20/2025
0.9.7-rc249.1 310 7/20/2025
0.9.7-rc249 260 7/20/2025
0.9.7-rc248.1 174 8/29/2025
0.9.7-rc248 97 7/18/2025
0.9.7-rc247 91 7/18/2025
0.9.7-rc246 96 7/18/2025
0.9.7-rc245 101 7/18/2025
0.9.7-rc244 127 7/18/2025
0.9.7-rc243 136 7/18/2025
0.9.7-rc242 132 7/18/2025
0.9.7-rc241 167 7/17/2025
0.9.7-rc240 173 7/17/2025
0.9.7-rc239 164 7/17/2025
0.9.7-rc238 163 7/17/2025
0.9.7-rc237 157 7/17/2025
0.9.7-rc236 172 7/17/2025
0.9.7-rc235 164 7/17/2025
0.9.7-rc234 163 7/16/2025
0.9.7-rc233 184 7/16/2025
0.9.7-rc232 160 7/16/2025
0.9.7-rc231 173 7/16/2025
0.9.7-rc230 161 7/16/2025
0.9.7-rc229 161 7/16/2025
0.9.7-rc228 175 7/16/2025
0.9.7-rc227 161 7/16/2025
0.9.7-rc226 166 7/16/2025
0.9.7-rc225 175 7/15/2025
0.9.7-rc224 165 7/15/2025
0.9.7-rc223 176 7/15/2025
0.9.7-rc222 169 7/15/2025
0.9.7-rc220 181 7/10/2025
0.9.7-rc219 165 7/10/2025
0.9.7-rc218 173 7/10/2025
0.9.7-rc217 173 7/10/2025
0.9.7-rc216 182 7/10/2025
0.9.7-rc215 160 7/10/2025
0.9.7-rc214 157 7/9/2025
0.9.7-rc213 170 7/8/2025
0.9.7-rc212 164 7/8/2025
0.9.7-rc211 168 7/8/2025
0.9.7-rc208 170 7/8/2025
0.9.7-rc207 163 7/8/2025
0.9.7-rc206 163 7/8/2025
0.9.7-rc205 166 7/7/2025
0.9.7-rc204 161 7/7/2025
0.9.7-rc203 179 7/7/2025
0.9.7-rc202 163 7/7/2025
0.9.7-rc201 160 7/7/2025
0.9.7-rc200 173 7/3/2025
0.9.7-rc199 184 7/3/2025
0.9.7-rc198 180 7/3/2025
0.9.7-rc197 178 7/3/2025
0.9.7-rc196 161 7/2/2025
0.9.7-rc195 166 7/2/2025
0.9.7-rc194 164 7/1/2025
0.9.7-rc193 160 7/1/2025
0.9.7-rc192 170 7/1/2025
0.9.7-rc191 183 6/30/2025
0.9.7-rc190 162 6/30/2025
0.9.7-rc188 160 6/26/2025
0.9.7-rc187 179 6/26/2025
0.9.7-rc186 171 6/26/2025
0.9.7-rc185 163 6/26/2025
0.9.7-rc184 161 6/24/2025
0.9.7-rc181 183 6/23/2025
0.9.7-rc180 165 6/23/2025
0.9.7-rc179 180 6/23/2025
0.9.7-rc178 165 6/23/2025
0.9.7-rc177 112 6/20/2025
0.9.7-rc176 106 6/20/2025
0.9.7-rc175 118 6/20/2025
0.9.7-rc174 117 6/20/2025
0.9.7-rc173 108 6/20/2025
0.9.7-rc172 172 6/19/2025
0.9.7-rc171 170 6/19/2025
0.9.7-rc170 179 6/19/2025
0.9.7-rc169 166 6/19/2025
0.9.7-rc168 173 6/19/2025
0.9.7-rc167 178 6/19/2025
0.9.7-rc166 168 6/17/2025
0.9.7-rc165 174 6/17/2025
0.9.7-rc164 166 6/16/2025
0.9.7-rc163 177 6/16/2025
0.9.7-rc162 187 6/16/2025
0.9.7-rc161 185 6/15/2025
0.9.7-rc160 240 6/13/2025
0.9.7-rc159 269 6/13/2025
0.9.7-rc158 310 6/12/2025
0.9.7-rc157 323 6/11/2025
0.9.7-rc156 313 6/11/2025
0.9.7-rc155 305 6/10/2025
0.9.7-rc154 315 6/10/2025
0.9.7-rc153 319 6/10/2025
0.9.7-rc152 321 6/10/2025
0.9.7-rc151 314 6/10/2025
0.9.7-rc150.4 487 7/23/2025
0.9.7-rc150.3 139 6/23/2025
0.9.7-rc150.2 139 6/23/2025
0.9.7-rc150 318 6/10/2025
0.9.7-rc149 292 6/9/2025
0.9.7-rc148 293 6/9/2025
0.9.7-rc147 290 6/9/2025
0.9.7-rc146 298 6/9/2025
0.9.7-rc145 290 6/9/2025
0.9.7-rc144 262 6/9/2025
0.9.7-rc143 230 6/8/2025
0.9.7-rc142 239 6/8/2025
0.9.7-rc141 143 6/8/2025
0.9.7-rc140 139 6/7/2025
0.9.7-rc139 140 6/6/2025
0.9.7-rc138 146 6/6/2025
0.9.7-rc137 129 6/6/2025
0.9.7-rc136 184 6/5/2025
0.9.7-rc135 170 6/5/2025
0.9.7-rc134 173 6/5/2025
0.9.7-rc133 167 6/5/2025
0.9.7-rc132 172 6/5/2025
0.9.7-rc131 171 6/5/2025
0.9.7-rc130 170 6/5/2025
0.9.7-rc129 184 6/5/2025
0.9.7-rc128 167 6/4/2025
0.9.7-rc127 178 6/4/2025
0.9.7-rc126 162 6/4/2025
0.9.7-rc125 186 6/4/2025
0.9.7-rc124 184 6/3/2025
0.9.7-rc123 166 6/3/2025
0.9.7-rc122 166 6/3/2025
0.9.7-rc121 170 6/3/2025
0.9.7-rc120 186 6/3/2025
0.9.7-rc119 175 6/2/2025
0.9.7-rc118 170 6/2/2025
0.9.7-rc117 160 6/2/2025
0.9.7-rc116 143 5/30/2025
0.9.7-rc115 161 5/30/2025
0.9.7-rc114 180 5/29/2025
0.9.7-rc113 177 5/29/2025
0.9.7-rc112 181 5/29/2025
0.9.7-rc111 173 5/29/2025
0.9.7-rc110 180 5/29/2025
0.9.7-rc109 179 5/28/2025
0.9.7-rc108 181 5/28/2025
0.9.7-rc107 174 5/27/2025
0.9.7-rc106 170 5/27/2025
0.9.7-rc105 175 5/27/2025
0.9.7-rc104 178 5/26/2025
0.9.7-rc103 182 5/25/2025
0.9.7-rc102 194 5/25/2025
0.9.7-rc101 93 5/24/2025
0.9.7-rc100 134 5/23/2025
0.9.7-post9 162 12/22/2025
0.9.7-post3 404 12/8/2025
0.9.7-post1 658 12/1/2025
0.9.7-ex331 169 9/2/2025
0.9.7-beta159 175 5/20/2025
0.9.7-beta158 209 5/16/2025
0.9.7-beta157 262 5/13/2025
0.9.7-beta156 253 5/12/2025
0.9.7-beta155 191 5/6/2025
0.9.7-beta154 180 5/6/2025
0.9.7-beta153 186 5/5/2025
0.9.7-beta152 183 4/30/2025
0.9.7-beta151 205 4/21/2025
0.9.7-beta150 205 4/21/2025
0.9.7-beta149 207 4/20/2025
0.9.7-beta148 176 4/18/2025
0.9.7-beta147 218 4/17/2025
0.9.7-beta146 230 4/17/2025
0.9.7-beta145 148 4/11/2025
0.9.7-beta144 162 4/11/2025
0.9.7-beta143 178 4/11/2025
0.9.7-beta142 164 4/11/2025
0.9.7-beta141 167 4/11/2025
0.9.7-beta140 204 4/10/2025
0.9.7-beta139 197 4/10/2025
0.9.7-beta138 212 4/9/2025
0.9.7-beta137 185 4/3/2025
0.9.7-beta136 181 4/2/2025
0.9.7-beta135 200 4/2/2025
0.9.7-beta134 193 4/2/2025
0.9.7-beta133 191 4/2/2025
0.9.7-beta132 190 4/2/2025
0.9.7-beta131 188 4/1/2025
0.9.7-beta130 204 4/1/2025
0.9.7-beta129 200 3/31/2025
0.9.7-beta128 191 3/31/2025
0.9.7-beta127 190 3/30/2025
0.9.7-beta126 181 3/30/2025
0.9.7-beta125 499 3/26/2025
0.9.7-beta124 504 3/26/2025
0.9.7-beta123 511 3/26/2025
0.9.7-beta122 500 3/25/2025
0.9.7-beta121 507 3/25/2025
0.9.7-beta120 503 3/25/2025
0.9.7-beta119 526 3/25/2025
0.9.7-beta118 510 3/25/2025
0.9.7-beta117 521 3/25/2025
0.9.7-beta116 519 3/24/2025
0.9.7-beta115 440 3/24/2025
0.9.7-beta114 307 3/23/2025
0.9.7-beta113 139 3/21/2025
0.9.7-beta112 160 3/21/2025
0.9.7-beta111 188 3/19/2025
0.9.7-beta110 192 3/19/2025
0.9.7-beta109 190 3/18/2025
0.9.7-beta108 180 3/17/2025
0.9.7-beta107 178 3/17/2025
0.9.7-beta106 202 3/17/2025
0.9.7-beta105 186 3/13/2025
0.9.7-beta104 191 3/12/2025
0.9.7-beta103 211 3/11/2025
0.9.7-beta102 195 3/9/2025
0.9.7-beta101 245 3/7/2025
0.9.7-beta100 250 3/5/2025
0.9.6 289 3/3/2025
0.9.6-rc100 135 2/28/2025
0.9.5 156 2/26/2025
0.9.5-rc102 133 2/25/2025
0.9.5-rc101 145 2/24/2025
0.9.5-rc100 145 2/23/2025
0.9.4 155 2/21/2025
0.9.3 159 2/17/2025
0.9.3-rc018 148 2/17/2025
0.9.3-rc017 147 2/12/2025
0.9.3-rc016 141 2/12/2025
0.9.3-rc015 145 2/7/2025
0.9.3-rc014 129 2/6/2025
0.9.3-rc013 135 2/5/2025
0.9.3-rc012 148 2/5/2025
0.9.3-rc011 142 2/5/2025
0.9.3-rc010 142 2/5/2025
0.9.3-rc009 146 2/4/2025
0.9.3-rc008 143 2/4/2025
0.9.3-rc007 138 2/4/2025
0.9.3-rc006 141 2/3/2025
0.9.3-rc005 145 2/3/2025
0.9.3-rc004 141 1/31/2025
0.9.3-rc003 147 1/30/2025
0.9.3-rc002 133 1/29/2025
0.9.3-rc001 123 1/29/2025
0.9.2 139 1/24/2025
0.9.2-rc007 111 1/24/2025
0.9.2-rc006 127 1/23/2025
0.9.2-rc005 120 1/23/2025
0.9.2-rc004 134 1/23/2025
0.9.2-rc003 118 1/23/2025
0.9.2-rc002 119 1/23/2025
0.9.2-rc001 120 1/22/2025
0.9.2-a001 153 1/21/2025
0.9.1 148 1/21/2025
0.9.1-rc131 133 1/19/2025
0.9.1-rc130 135 1/19/2025
0.9.1-rc129 149 1/19/2025
0.9.1-rc128 122 1/18/2025
0.9.1-rc127 133 1/18/2025
0.9.1-rc126 144 1/17/2025
0.9.1-rc125 141 1/17/2025
0.9.1-rc124 133 1/16/2025
0.9.1-rc123 137 1/15/2025
0.9.1-rc122 124 1/14/2025
0.9.1-rc121 121 1/14/2025
0.9.1-rc120 134 1/14/2025
0.9.1-rc118 132 1/13/2025
0.9.1-rc117 146 1/13/2025
0.9.1-rc116 133 1/8/2025
0.9.1-rc115 140 1/2/2025
0.9.1-rc114 137 12/24/2024
0.9.1-rc113 138 12/23/2024
0.9.1-rc112 142 12/22/2024
0.9.1-rc111 140 12/22/2024
0.9.1-rc110 137 12/21/2024
0.9.1-rc109 138 12/21/2024
0.9.1-rc108 148 12/21/2024
0.9.1-rc107 157 12/20/2024
0.9.1-rc106 139 12/20/2024
0.9.1-rc105 158 12/19/2024
0.9.1-rc104 139 12/19/2024
0.9.1-rc100 147 12/16/2024
0.9.1-alpha4 153 12/15/2024
0.9.1-alpha3 151 12/15/2024
0.9.0-rc3 140 12/9/2024
0.9.0-rc2 142 12/9/2024
0.9.0-alpha5 143 11/28/2024
0.9.0-alpha1 130 11/27/2024
0.8.4 155 11/20/2024
0.8.3 184 9/18/2024
0.8.2 158 9/3/2024
0.8.2-alpha2 144 9/23/2024
0.8.1 187 8/23/2024
0.8.1-alpha2 144 9/18/2024