RaiUtils 4.2.0

dotnet add package RaiUtils --version 4.2.0
                    
NuGet\Install-Package RaiUtils -Version 4.2.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="RaiUtils" Version="4.2.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="RaiUtils" Version="4.2.0" />
                    
Directory.Packages.props
<PackageReference Include="RaiUtils" />
                    
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 RaiUtils --version 4.2.0
                    
#r "nuget: RaiUtils, 4.2.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 RaiUtils@4.2.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=RaiUtils&version=4.2.0
                    
Install as a Cake Addin
#tool nuget:?package=RaiUtils&version=4.2.0
                    
Install as a Cake Tool

RaiUtils

RaiUtils change requests and release notes are centralized in the RAIkeep doc/ directory under RaiUtils_... filenames; they are not stored separately in this child repository.

Random, Email, ParameterDictionary, JSON conversion helpers, and lightweight search expressions.

formerly RaiUtilsCore

4.2.0

  • Aligns RaiUtils with the seven-package RAIkeep release that introduces RaiDiagram.
  • Adds RaiException, the dependency-light base for RAIkeep domain exceptions.
  • Adds ToolNotFoundException with stable tool-name and executable-path diagnostics.
  • Establishes the shared exception boundary used by RaiImage and the upcoming RaiDiagram package.
  • Keeps RaiUtils aligned with the mkdir polymorphism update line introduced in OsLib.
  • Documents the supported cloud-backed provider claim used with OsLib and JsonPit: Dropbox, OneDrive, GoogleDrive, and ICloudDrive.
  • Notes the JsonPit identifier migration from Name to Id, including legacy normalization behavior.
  • Refreshes live package docs for the 4.2.0 line.
  • Provides utility helpers for:
    • Email syntax validation (Email)
    • JSON token conversion to plain dictionaries/arrays (JsonConversionExtensions)
    • Lowercase key filtering for incoming name-value parameters (ParameterDictionary)
    • Randomization extensions for enumerable/list sources (RandomExtensions)
    • Wildcard-and expression matching against object properties (SearchExpression)

namespace

RaiUtils

classes

Email: Validates an email address string using regex.

  • Email: Valid, Invalid, ToString

JsonConversionExtensions: Converts JObject and JArray to plain .NET dictionary/array trees.

  • JsonConversionExtensions: ToDictionary, ToArray

ParameterDictionary: StringDictionary filtered to lowercase keys from NameValueCollection.

  • ParameterDictionary: constructor with lowercase-key import behavior

RandomExtensions: Random element selection and shuffle helpers for IEnumerable and IList.

  • RandomExtensions: Random, Shuffle, TakeAny

SearchExpression: Parses text search patterns and evaluates matches against object properties.

  • SearchExpression: ConditionsAsString, IsMatch(object)

dependencies

  • NuGet package dependency: Newtonsoft.Json.
  • No direct code dependency on OsLib types is present in current RaiUtils source.

cross-package cloud root convention

RaiUtils does not resolve cloud roots itself, but it is intended to stay compatible with the same machine-local configuration contract used by OsLib and JsonPit.

Recommended shared contract across .NET and upcoming Python packages:

  • Use RAIkeep.json5 for explicit cloud roots.
  • Rely on ~/.config/RAIkeep.json5 unless the host application overrides the config bootstrap path.
  • Reuse the same PascalCase Cloud.* keys: Cloud.Dropbox, Cloud.OneDrive, Cloud.GoogleDrive, Cloud.ICloudDrive.
  • Prefer explicit Ubuntu Google Drive configuration over probe-only assumptions when packages are used together in development or deployment tooling.
  • Treat Dropbox, OneDrive, GoogleDrive, and ICloudDrive as the current supported provider set for the packaged stack.

nuget

https://www.nuget.org/packages/RaiUtils/

diagram

detailed api

  • Foldable class and method-level documentation: API.md

release notes

unit tests

solution format

  • Upgraded solution format is available as RaiUtils.slnx (generated with dotnet solution migrate).
Product Compatible and additional computed target framework versions.
.NET 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. 
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 RaiUtils:

Package Downloads
JsonPit

Stores json files across servers (synchronized).

RaiImage

Managing image files with meaningful elements in the image name and path.

RaiDiagram

Agent-readable semantic diagrams, model reconciliation, and PlantUML rendering for RAIkeep.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
4.2.0 95 8/16/2026
4.1.0 99 8/13/2026
4.0.1 128 8/11/2026
4.0.0 140 8/7/2026
3.13.1 139 8/3/2026
3.11.4 175 7/11/2026
3.11.3 155 6/28/2026
3.11.2 101 6/28/2026
3.11.1 161 6/24/2026
3.10.2 210 6/18/2026
3.9.1 154 6/8/2026
3.9.0 153 6/6/2026
3.8.15 145 6/6/2026
3.8.14 114 6/6/2026
3.8.12 170 6/6/2026
3.8.11 139 6/5/2026
3.8.7 111 5/16/2026
3.8.6 116 5/16/2026
3.8.3 111 5/16/2026
3.8.1 238 5/11/2026
Loading failed

4.2.0 aligns RaiUtils with the seven-package RAIkeep release and supports RaiDiagram's shared exception boundary.