FoundationaLLM.Client.Core 0.9.7-rc316

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-rc316
                    
NuGet\Install-Package FoundationaLLM.Client.Core -Version 0.9.7-rc316
                    
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-rc316" />
                    
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-rc316" />
                    
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-rc316
                    
#r "nuget: FoundationaLLM.Client.Core, 0.9.7-rc316"
                    
#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-rc316
                    
#: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-rc316&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=FoundationaLLM.Client.Core&version=0.9.7-rc316&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 399 12/8/2025
0.9.8-beta106 647 12/2/2025
0.9.8-beta105 646 12/1/2025
0.9.8-beta104 645 12/1/2025
0.9.8-beta101 122 11/28/2025
0.9.7 170 11/24/2025
0.9.7-rc488 279 11/21/2025
0.9.7-rc487 312 11/21/2025
0.9.7-rc485 395 11/19/2025
0.9.7-rc484 384 11/18/2025
0.9.7-rc483 380 11/18/2025
0.9.7-rc481 390 11/18/2025
0.9.7-rc480 378 11/17/2025
0.9.7-rc479 268 11/17/2025
0.9.7-rc474 263 11/16/2025
0.9.7-rc473 280 11/16/2025
0.9.7-rc471 252 11/10/2025
0.9.7-rc470 253 11/10/2025
0.9.7-rc467 253 11/10/2025
0.9.7-rc466 119 11/7/2025
0.9.7-rc461 177 11/4/2025
0.9.7-rc460 179 11/4/2025
0.9.7-rc452 187 10/28/2025
0.9.7-rc451 171 10/28/2025
0.9.7-rc440 163 10/21/2025
0.9.7-rc439 167 10/20/2025
0.9.7-rc428 171 10/1/2025
0.9.7-rc418 187 9/29/2025
0.9.7-rc408 132 9/26/2025
0.9.7-rc407 139 9/26/2025
0.9.7-rc406 166 9/25/2025
0.9.7-rc405 167 9/25/2025
0.9.7-rc404 165 9/25/2025
0.9.7-rc403 169 9/25/2025
0.9.7-rc402 180 9/24/2025
0.9.7-rc401 168 9/23/2025
0.9.7-rc400 160 9/23/2025
0.9.7-rc399 155 9/23/2025
0.9.7-rc398 158 9/23/2025
0.9.7-rc397 161 9/23/2025
0.9.7-rc396 160 9/23/2025
0.9.7-rc395 155 9/23/2025
0.9.7-rc394 171 9/23/2025
0.9.7-rc393 180 9/22/2025
0.9.7-rc392 170 9/22/2025
0.9.7-rc391 168 9/22/2025
0.9.7-rc390 175 9/22/2025
0.9.7-rc389 180 9/22/2025
0.9.7-rc388 179 9/22/2025
0.9.7-rc387 189 9/22/2025
0.9.7-rc386 178 9/22/2025
0.9.7-rc385 206 9/22/2025
0.9.7-rc384 223 9/22/2025
0.9.7-rc383 218 9/19/2025
0.9.7-rc382 294 9/17/2025
0.9.7-rc381 289 9/17/2025
0.9.7-rc380 293 9/16/2025
0.9.7-rc379 287 9/16/2025
0.9.7-rc378 286 9/16/2025
0.9.7-rc377 299 9/16/2025
0.9.7-rc376 296 9/16/2025
0.9.7-rc375 289 9/16/2025
0.9.7-rc374 287 9/16/2025
0.9.7-rc373 245 9/15/2025
0.9.7-rc372 109 9/12/2025
0.9.7-rc371 127 9/12/2025
0.9.7-rc370 136 9/12/2025
0.9.7-rc369 134 9/12/2025
0.9.7-rc368 161 9/11/2025
0.9.7-rc367 142 9/10/2025
0.9.7-rc366 148 9/10/2025
0.9.7-rc365 149 9/10/2025
0.9.7-rc364 149 9/9/2025
0.9.7-rc363 147 9/9/2025
0.9.7-rc362 142 9/9/2025
0.9.7-rc361 151 9/9/2025
0.9.7-rc360 144 9/9/2025
0.9.7-rc359 149 9/9/2025
0.9.7-rc358 150 9/9/2025
0.9.7-rc357 140 9/8/2025
0.9.7-rc356 103 9/5/2025
0.9.7-rc355 115 9/5/2025
0.9.7-rc354 126 9/5/2025
0.9.7-rc353 118 9/5/2025
0.9.7-rc352 129 9/5/2025
0.9.7-rc351 128 9/5/2025
0.9.7-rc350 165 9/5/2025
0.9.7-rc349 174 9/5/2025
0.9.7-rc348 168 9/4/2025
0.9.7-rc347 161 9/4/2025
0.9.7-rc346 162 9/4/2025
0.9.7-rc345 159 9/3/2025
0.9.7-rc344 173 9/3/2025
0.9.7-rc343 169 9/3/2025
0.9.7-rc342 170 9/3/2025
0.9.7-rc341 156 9/3/2025
0.9.7-rc340 158 9/3/2025
0.9.7-rc339 161 9/3/2025
0.9.7-rc338 161 9/3/2025
0.9.7-rc337 159 9/2/2025
0.9.7-rc336 157 9/2/2025
0.9.7-rc335 159 9/2/2025
0.9.7-rc334 140 9/2/2025
0.9.7-rc333 142 9/2/2025
0.9.7-rc332 144 9/2/2025
0.9.7-rc331 148 9/2/2025
0.9.7-rc330 158 9/1/2025
0.9.7-rc329 153 8/31/2025
0.9.7-rc328 162 8/31/2025
0.9.7-rc327 164 8/31/2025
0.9.7-rc326 151 8/31/2025
0.9.7-rc325 166 8/31/2025
0.9.7-rc324 181 8/29/2025
0.9.7-rc323 179 8/29/2025
0.9.7-rc322 184 8/29/2025
0.9.7-rc321 199 8/29/2025
0.9.7-rc320 201 8/29/2025
0.9.7-rc319 194 8/28/2025
0.9.7-rc318 195 8/28/2025
0.9.7-rc317 196 8/28/2025
0.9.7-rc316 202 8/26/2025
0.9.7-rc315 198 8/26/2025
0.9.7-rc314 210 8/26/2025
0.9.7-rc313 213 8/26/2025
0.9.7-rc312 197 8/26/2025
0.9.7-rc311 220 8/26/2025
0.9.7-rc310 214 8/26/2025
0.9.7-rc309 172 8/25/2025
0.9.7-rc308 166 8/25/2025
0.9.7-rc307 165 8/25/2025
0.9.7-rc306 165 8/25/2025
0.9.7-rc305 296 8/25/2025
0.9.7-rc304 294 8/25/2025
0.9.7-rc303 261 8/25/2025
0.9.7-rc302 260 8/25/2025
0.9.7-rc301 94 8/22/2025
0.9.7-rc300 86 8/22/2025
0.9.7-rc299 115 8/22/2025
0.9.7-rc298 119 8/22/2025
0.9.7-rc297 142 8/21/2025
0.9.7-rc296 145 8/21/2025
0.9.7-rc295 152 8/21/2025
0.9.7-rc293 149 8/21/2025
0.9.7-rc292 145 8/21/2025
0.9.7-rc291 143 8/21/2025
0.9.7-rc290 143 8/20/2025
0.9.7-rc289 153 8/19/2025
0.9.7-rc288 143 8/19/2025
0.9.7-rc287 146 8/19/2025
0.9.7-rc286 156 8/19/2025
0.9.7-rc285 144 8/18/2025
0.9.7-rc284 147 8/18/2025
0.9.7-rc283 146 8/18/2025
0.9.7-rc282 143 8/18/2025
0.9.7-rc281 146 8/18/2025
0.9.7-rc280 156 8/18/2025
0.9.7-rc279 148 8/18/2025
0.9.7-rc278 142 8/18/2025
0.9.7-rc277 158 8/18/2025
0.9.7-rc276 142 8/18/2025
0.9.7-rc275 143 8/18/2025
0.9.7-rc274 147 8/18/2025
0.9.7-rc273 153 8/17/2025
0.9.7-rc272 127 8/16/2025
0.9.7-rc271 145 8/10/2025
0.9.7-rc270 114 8/9/2025
0.9.7-rc269 135 8/9/2025
0.9.7-rc268 137 8/9/2025
0.9.7-rc267 140 8/9/2025
0.9.7-rc266 165 8/8/2025
0.9.7-rc265 162 8/8/2025
0.9.7-rc264 163 8/8/2025
0.9.7-rc263 202 8/8/2025
0.9.7-rc262 200 8/8/2025
0.9.7-rc261 190 8/8/2025
0.9.7-rc260 204 8/8/2025
0.9.7-rc259 238 8/7/2025
0.9.7-rc258 196 8/4/2025
0.9.7-rc257 203 8/4/2025
0.9.7-rc256 147 7/27/2025
0.9.7-rc255 492 7/24/2025
0.9.7-rc254 545 7/22/2025
0.9.7-rc253 540 7/22/2025
0.9.7-rc252 518 7/21/2025
0.9.7-rc251 422 7/21/2025
0.9.7-rc250 337 7/20/2025
0.9.7-rc249.1 304 7/20/2025
0.9.7-rc249 253 7/20/2025
0.9.7-rc248.1 167 8/29/2025
0.9.7-rc248 88 7/18/2025
0.9.7-rc247 86 7/18/2025
0.9.7-rc246 93 7/18/2025
0.9.7-rc245 94 7/18/2025
0.9.7-rc244 120 7/18/2025
0.9.7-rc243 134 7/18/2025
0.9.7-rc242 125 7/18/2025
0.9.7-rc241 158 7/17/2025
0.9.7-rc240 167 7/17/2025
0.9.7-rc239 157 7/17/2025
0.9.7-rc238 158 7/17/2025
0.9.7-rc237 153 7/17/2025
0.9.7-rc236 168 7/17/2025
0.9.7-rc235 156 7/17/2025
0.9.7-rc234 157 7/16/2025
0.9.7-rc233 180 7/16/2025
0.9.7-rc232 153 7/16/2025
0.9.7-rc231 164 7/16/2025
0.9.7-rc230 154 7/16/2025
0.9.7-rc229 156 7/16/2025
0.9.7-rc228 172 7/16/2025
0.9.7-rc227 154 7/16/2025
0.9.7-rc226 163 7/16/2025
0.9.7-rc225 170 7/15/2025
0.9.7-rc224 160 7/15/2025
0.9.7-rc223 168 7/15/2025
0.9.7-rc222 161 7/15/2025
0.9.7-rc220 177 7/10/2025
0.9.7-rc219 160 7/10/2025
0.9.7-rc218 165 7/10/2025
0.9.7-rc217 164 7/10/2025
0.9.7-rc216 180 7/10/2025
0.9.7-rc215 154 7/10/2025
0.9.7-rc214 152 7/9/2025
0.9.7-rc213 165 7/8/2025
0.9.7-rc212 158 7/8/2025
0.9.7-rc211 161 7/8/2025
0.9.7-rc208 160 7/8/2025
0.9.7-rc207 160 7/8/2025
0.9.7-rc206 156 7/8/2025
0.9.7-rc205 161 7/7/2025
0.9.7-rc204 157 7/7/2025
0.9.7-rc203 169 7/7/2025
0.9.7-rc202 156 7/7/2025
0.9.7-rc201 154 7/7/2025
0.9.7-rc200 166 7/3/2025
0.9.7-rc199 175 7/3/2025
0.9.7-rc198 166 7/3/2025
0.9.7-rc197 171 7/3/2025
0.9.7-rc196 157 7/2/2025
0.9.7-rc195 160 7/2/2025
0.9.7-rc194 158 7/1/2025
0.9.7-rc193 155 7/1/2025
0.9.7-rc192 167 7/1/2025
0.9.7-rc191 177 6/30/2025
0.9.7-rc190 158 6/30/2025
0.9.7-rc188 157 6/26/2025
0.9.7-rc187 173 6/26/2025
0.9.7-rc186 167 6/26/2025
0.9.7-rc185 157 6/26/2025
0.9.7-rc184 156 6/24/2025
0.9.7-rc181 174 6/23/2025
0.9.7-rc180 158 6/23/2025
0.9.7-rc179 175 6/23/2025
0.9.7-rc178 160 6/23/2025
0.9.7-rc177 105 6/20/2025
0.9.7-rc176 101 6/20/2025
0.9.7-rc175 110 6/20/2025
0.9.7-rc174 110 6/20/2025
0.9.7-rc173 102 6/20/2025
0.9.7-rc172 165 6/19/2025
0.9.7-rc171 162 6/19/2025
0.9.7-rc170 176 6/19/2025
0.9.7-rc169 161 6/19/2025
0.9.7-rc168 161 6/19/2025
0.9.7-rc167 170 6/19/2025
0.9.7-rc166 158 6/17/2025
0.9.7-rc165 165 6/17/2025
0.9.7-rc164 162 6/16/2025
0.9.7-rc163 169 6/16/2025
0.9.7-rc162 176 6/16/2025
0.9.7-rc161 176 6/15/2025
0.9.7-rc160 235 6/13/2025
0.9.7-rc159 261 6/13/2025
0.9.7-rc158 303 6/12/2025
0.9.7-rc157 315 6/11/2025
0.9.7-rc156 305 6/11/2025
0.9.7-rc155 301 6/10/2025
0.9.7-rc154 307 6/10/2025
0.9.7-rc153 312 6/10/2025
0.9.7-rc152 315 6/10/2025
0.9.7-rc151 307 6/10/2025
0.9.7-rc150.4 478 7/23/2025
0.9.7-rc150.3 133 6/23/2025
0.9.7-rc150.2 135 6/23/2025
0.9.7-rc150 308 6/10/2025
0.9.7-rc149 285 6/9/2025
0.9.7-rc148 290 6/9/2025
0.9.7-rc147 284 6/9/2025
0.9.7-rc146 291 6/9/2025
0.9.7-rc145 287 6/9/2025
0.9.7-rc144 258 6/9/2025
0.9.7-rc143 222 6/8/2025
0.9.7-rc142 233 6/8/2025
0.9.7-rc141 139 6/8/2025
0.9.7-rc140 136 6/7/2025
0.9.7-rc139 134 6/6/2025
0.9.7-rc138 139 6/6/2025
0.9.7-rc137 124 6/6/2025
0.9.7-rc136 177 6/5/2025
0.9.7-rc135 164 6/5/2025
0.9.7-rc134 169 6/5/2025
0.9.7-rc133 160 6/5/2025
0.9.7-rc132 168 6/5/2025
0.9.7-rc131 161 6/5/2025
0.9.7-rc130 164 6/5/2025
0.9.7-rc129 178 6/5/2025
0.9.7-rc128 163 6/4/2025
0.9.7-rc127 169 6/4/2025
0.9.7-rc126 155 6/4/2025
0.9.7-rc125 180 6/4/2025
0.9.7-rc124 178 6/3/2025
0.9.7-rc123 161 6/3/2025
0.9.7-rc122 160 6/3/2025
0.9.7-rc121 165 6/3/2025
0.9.7-rc120 179 6/3/2025
0.9.7-rc119 168 6/2/2025
0.9.7-rc118 164 6/2/2025
0.9.7-rc117 151 6/2/2025
0.9.7-rc116 134 5/30/2025
0.9.7-rc115 157 5/30/2025
0.9.7-rc114 176 5/29/2025
0.9.7-rc113 171 5/29/2025
0.9.7-rc112 174 5/29/2025
0.9.7-rc111 168 5/29/2025
0.9.7-rc110 174 5/29/2025
0.9.7-rc109 177 5/28/2025
0.9.7-rc108 172 5/28/2025
0.9.7-rc107 171 5/27/2025
0.9.7-rc106 164 5/27/2025
0.9.7-rc105 170 5/27/2025
0.9.7-rc104 172 5/26/2025
0.9.7-rc103 174 5/25/2025
0.9.7-rc102 188 5/25/2025
0.9.7-rc101 87 5/24/2025
0.9.7-rc100 122 5/23/2025
0.9.7-post3 396 12/8/2025
0.9.7-post1 647 12/1/2025
0.9.7-ex331 157 9/2/2025
0.9.7-beta159 168 5/20/2025
0.9.7-beta158 200 5/16/2025
0.9.7-beta157 258 5/13/2025
0.9.7-beta156 247 5/12/2025
0.9.7-beta155 182 5/6/2025
0.9.7-beta154 175 5/6/2025
0.9.7-beta153 182 5/5/2025
0.9.7-beta152 177 4/30/2025
0.9.7-beta151 199 4/21/2025
0.9.7-beta150 199 4/21/2025
0.9.7-beta149 200 4/20/2025
0.9.7-beta148 173 4/18/2025
0.9.7-beta147 211 4/17/2025
0.9.7-beta146 222 4/17/2025
0.9.7-beta145 141 4/11/2025
0.9.7-beta144 155 4/11/2025
0.9.7-beta143 174 4/11/2025
0.9.7-beta142 158 4/11/2025
0.9.7-beta141 156 4/11/2025
0.9.7-beta140 196 4/10/2025
0.9.7-beta139 190 4/10/2025
0.9.7-beta138 204 4/9/2025
0.9.7-beta137 182 4/3/2025
0.9.7-beta136 175 4/2/2025
0.9.7-beta135 194 4/2/2025
0.9.7-beta134 187 4/2/2025
0.9.7-beta133 185 4/2/2025
0.9.7-beta132 187 4/2/2025
0.9.7-beta131 181 4/1/2025
0.9.7-beta130 194 4/1/2025
0.9.7-beta129 195 3/31/2025
0.9.7-beta128 184 3/31/2025
0.9.7-beta127 180 3/30/2025
0.9.7-beta126 179 3/30/2025
0.9.7-beta125 492 3/26/2025
0.9.7-beta124 499 3/26/2025
0.9.7-beta123 502 3/26/2025
0.9.7-beta122 494 3/25/2025
0.9.7-beta121 501 3/25/2025
0.9.7-beta120 496 3/25/2025
0.9.7-beta119 516 3/25/2025
0.9.7-beta118 506 3/25/2025
0.9.7-beta117 510 3/25/2025
0.9.7-beta116 513 3/24/2025
0.9.7-beta115 433 3/24/2025
0.9.7-beta114 299 3/23/2025
0.9.7-beta113 135 3/21/2025
0.9.7-beta112 155 3/21/2025
0.9.7-beta111 182 3/19/2025
0.9.7-beta110 184 3/19/2025
0.9.7-beta109 185 3/18/2025
0.9.7-beta108 177 3/17/2025
0.9.7-beta107 170 3/17/2025
0.9.7-beta106 196 3/17/2025
0.9.7-beta105 181 3/13/2025
0.9.7-beta104 185 3/12/2025
0.9.7-beta103 205 3/11/2025
0.9.7-beta102 193 3/9/2025
0.9.7-beta101 236 3/7/2025
0.9.7-beta100 245 3/5/2025
0.9.6 283 3/3/2025
0.9.6-rc100 129 2/28/2025
0.9.5 146 2/26/2025
0.9.5-rc102 126 2/25/2025
0.9.5-rc101 139 2/24/2025
0.9.5-rc100 138 2/23/2025
0.9.4 148 2/21/2025
0.9.3 150 2/17/2025
0.9.3-rc018 140 2/17/2025
0.9.3-rc017 139 2/12/2025
0.9.3-rc016 135 2/12/2025
0.9.3-rc015 139 2/7/2025
0.9.3-rc014 122 2/6/2025
0.9.3-rc013 128 2/5/2025
0.9.3-rc012 139 2/5/2025
0.9.3-rc011 137 2/5/2025
0.9.3-rc010 138 2/5/2025
0.9.3-rc009 140 2/4/2025
0.9.3-rc008 137 2/4/2025
0.9.3-rc007 131 2/4/2025
0.9.3-rc006 136 2/3/2025
0.9.3-rc005 138 2/3/2025
0.9.3-rc004 132 1/31/2025
0.9.3-rc003 139 1/30/2025
0.9.3-rc002 129 1/29/2025
0.9.3-rc001 116 1/29/2025
0.9.2 135 1/24/2025
0.9.2-rc007 109 1/24/2025
0.9.2-rc006 124 1/23/2025
0.9.2-rc005 116 1/23/2025
0.9.2-rc004 124 1/23/2025
0.9.2-rc003 114 1/23/2025
0.9.2-rc002 113 1/23/2025
0.9.2-rc001 116 1/22/2025
0.9.2-a001 151 1/21/2025
0.9.1 142 1/21/2025
0.9.1-rc131 126 1/19/2025
0.9.1-rc130 127 1/19/2025
0.9.1-rc129 139 1/19/2025
0.9.1-rc128 116 1/18/2025
0.9.1-rc127 125 1/18/2025
0.9.1-rc126 136 1/17/2025
0.9.1-rc125 133 1/17/2025
0.9.1-rc124 127 1/16/2025
0.9.1-rc123 133 1/15/2025
0.9.1-rc122 117 1/14/2025
0.9.1-rc121 115 1/14/2025
0.9.1-rc120 127 1/14/2025
0.9.1-rc118 126 1/13/2025
0.9.1-rc117 138 1/13/2025
0.9.1-rc116 128 1/8/2025
0.9.1-rc115 131 1/2/2025
0.9.1-rc114 131 12/24/2024
0.9.1-rc113 133 12/23/2024
0.9.1-rc112 138 12/22/2024
0.9.1-rc111 138 12/22/2024
0.9.1-rc110 134 12/21/2024
0.9.1-rc109 133 12/21/2024
0.9.1-rc108 142 12/21/2024
0.9.1-rc107 151 12/20/2024
0.9.1-rc106 132 12/20/2024
0.9.1-rc105 145 12/19/2024
0.9.1-rc104 131 12/19/2024
0.9.1-rc100 141 12/16/2024
0.9.1-alpha4 143 12/15/2024
0.9.1-alpha3 143 12/15/2024
0.9.0-rc3 131 12/9/2024
0.9.0-rc2 138 12/9/2024
0.9.0-alpha5 135 11/28/2024
0.9.0-alpha1 126 11/27/2024
0.8.4 150 11/20/2024
0.8.3 177 9/18/2024
0.8.2 153 9/3/2024
0.8.2-alpha2 138 9/23/2024
0.8.1 184 8/23/2024
0.8.1-alpha2 140 9/18/2024