Skip to main content

CPM — Cpyte Package Manager

A compiler-pipeline dependency resolver and installer for the Cpyte programming language.

import @std.json
          ↓
Resolve → Lower → Optimize → Execute

Install

pip install cpyte-cpm

Note: CPM uses the Cpyte package registry at https://cypackage.5gnew.io.vn/ as the default package source for Cpyte packages.

Quick Start

cpm init                        # create cpytoml
cpm add @std/json@^2.0          # add a dependency
cpm install                     # install all from manifest

Commands

Command Description
cpm init Initialize a new project (cpytoml)
cpm add <pkg> Add packages to manifest + install
cpm remove <pkg> Remove packages + uninstall
cpm install Install all dependencies from manifest
cpm install <pkg> Install specific packages
cpm update Re-resolve and update all packages
cpm update <pkg> Re-resolve specific packages
cpm build Build the project
cpm run <script> Run a named script

Global Flags

-v, --verbose        Verbose output
-q, --quiet          Suppress output
-y, --yes            Auto-confirm prompts
--offline            Offline mode (skip network)
--no-cache           Disable cache
--config <path>      Custom config / repo URL
--target <platform>  Target platform (e.g. linux/x86_64)
--llvm-version <V>   LLVM version for prebuilt packages

Manifest (cpytoml)

[cpm]
name = "my-app"
version = "1.0"
prebuilt = false
llvm_version = "18.1.0"

[cpm.target]
os = "linux"
arch = "x86_64"
features = ["gui", "ssl"]

[cpm.dependencies]
"@std/json" = "^2.0"
"@std/http" = "1.0"
"package_a" = "latest"

Claims System

Packages declare platform support; CPM filters based on your target.

Package metadata (registry):

{
  "name": "win32-api",
  "claims": { "os": ["windows"], "arch": ["x86_64"] }
}

Resolution:

Target win32-api (windows) posix-api (linux) @std/json (any)
linux/x86_64 skip install install
windows/x86_64 install skip install

Auto-detects from current platform when no target is specified.

Prebuilt Mode

When the registry serves precompiled LLVM IR:

[cpm]
prebuilt = true
llvm_version = "18.1.0"

CPM fetches .ll artifacts from metadata/prebuilt/... and skips source packages with incompatible LLVM versions (major version must match).

Lockfile (cpm.lock)

Auto-generated. Pins exact versions for reproducible builds.

[[package]]
name = "@std/json"
version = "2.0.3"
resolved = "https://repo.example.com/group/std/json/2.0.3.tar.gz"
checksum = "sha256:abc123..."
dependencies = ["@std/encoding@1.2.0"]
llvm_version = "18.1.0"
cpyte_version = "0.5.0"

Directory Layout

~/.cpm/
├── cache/<name>/<version>/     # downloaded archives
└── modules/<name>/<version>/   # extracted packages

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cpyte_cpm-1.1.2.tar.gz (24.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cpyte_cpm-1.1.2-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

Details for the file cpyte_cpm-1.1.2.tar.gz.

File metadata

  • Download URL: cpyte_cpm-1.1.2.tar.gz
  • Upload date:
  • Size: 24.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for cpyte_cpm-1.1.2.tar.gz
Algorithm Hash digest
SHA256 5fbdddd812172528c752e3198b18c9f2166dd39e25cdc90e4b3316ad02b11363
MD5 b6228729967e1cad5ffd68232ea25cf8
BLAKE2b-256 2909e970d7994927c9f12c8cfbabab5e20b3750f74d579aff14c7ac97ecdfbf4

See more details on using hashes here.

File details

Details for the file cpyte_cpm-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: cpyte_cpm-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 25.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for cpyte_cpm-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 48c1975cc409504344bfd1dff7bbb3203529c2f1bb2924fba5c82d1529dedd23
MD5 d5ef14840c4b34a8da3e7459fe96b006
BLAKE2b-256 b1a09fa5f413a9b2e6e0d9eb30dda81c8bbd91685ec65e7244fe86db869e0a01

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page