Skip to main content

Module registry

Module registry 

Source
Expand description

Phase 39: Registry Client

HTTP client for communicating with the LOGOS package registry.

This module provides the RegistryClient for authenticated API calls to the package registry, along with supporting types for package metadata and error handling.

§Architecture

The registry client uses ureq for HTTP requests with Bearer token authentication. All requests are made over HTTPS to the configured registry URL (defaulting to registry.logicaffeine.com).

§Example

use logicaffeine_cli::project::registry::{RegistryClient, PublishMetadata};

let client = RegistryClient::new("https://registry.logicaffeine.com", "tok_xxx");

// Validate authentication
let user = client.validate_token()?;
println!("Authenticated as: {}", user.login);

Structs§

PublishMetadata
Metadata submitted when publishing a package.
PublishResult
Response from a successful publish operation.
RegistryClient
HTTP client for the LOGOS package registry API.
UserInfo
User information returned from the registry’s /auth/me endpoint.

Enums§

PackageError
Errors that can occur when creating a package tarball.
RegistryError
Errors that can occur during registry API operations.

Functions§

create_tarball
Create a gzipped tarball from a LOGOS project.
is_git_dirty
Check if the git working directory has uncommitted changes.