Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/X-ARTEMIS/ASTD/llms.txt

Use this file to discover all available pages before exploring further.

ASTD follows semantic versioning (major.minor.patch) to communicate exactly what has changed between releases. Each number in a version string carries a specific meaning, so you can quickly judge whether an upgrade is safe to pull in or requires a closer look at the changelog. The current stable release is 0.2.0, available on the ASTD releases page.

Version Format

Every ASTD release uses the three-part format major.minor.patch. Reading a version string like 0.2.0 tells you the major version is 0, the minor version is 2, and the patch version is 0. Each segment is incremented independently based on what changed.
major . minor . patch
  0   .   2   .   0

What Triggers Each Bump

Patch

A bug fix or issue resolution within an existing function. No new API surface is introduced — just corrected behaviour.

Minor

A new function added to a pre-existing module (e.g. a new helper in the math module). Existing code remains unaffected.

Major

An entirely new library or module is introduced (e.g. a brand-new astd/network/ module). This expands ASTD’s scope significantly.
ASTD is still in early development (major version 0), which means the API is stabilising. Pay attention to minor version bumps in addition to major ones when building on this library.

Upgrade Guidance

Not every version bump requires the same level of attention before upgrading. Use this table as a quick reference:
Bump typeWhat changedSafe to upgrade?
Patch (0.2.00.2.1)Bug fixes only✅ Yes — pull in immediately
Minor (0.2.00.3.0)New function(s) in an existing module✅ Yes — scan release notes for new API additions
Major (0.2.01.0.0)New module/library introduced⚠️ Review — skim the new module docs before upgrading
Because ASTD is header-only, upgrading is as simple as replacing the astd/ directory. There is no build system, no package manager, and no linking step to worry about.

Current Release

The latest stable release is 0.2.0. It ships the math and time modules.

View All Releases

Browse every release on GitHub, including release notes and downloadable archives.

Pinning to a Specific Version

If you need reproducible builds or want to hold on a known-good release, use git clone with the --branch flag pointing at the tag you want:
git clone --branch 0.2.0 https://github.com/X-ARTEMIS/ASTD
This checks out the repository at exactly the 0.2.0 tag. After cloning, copy the astd/ directory into your project as usual:
cp -r ASTD/astd ./astd
Cloning main directly always gives you the latest development code, which may be ahead of the most recent tagged release. Use a tag pin in production to avoid unexpected changes.

Finding Releases

All tagged releases — including source archives and release notes — are listed on the GitHub releases page:
https://github.com/X-ARTEMIS/ASTD/releases
You can either download a .zip or .tar.gz archive and copy the astd/ directory into your project, or use the git clone --branch <tag> approach shown above.

Frequently Asked Questions

A 0.x.x version signals that the library is still stabilising its API. Modules and functions may evolve between minor versions. Once the core API is considered stable and the module set is well-rounded, a 1.0.0 release will be made.
In ASTD’s current policy, a major bump means a new module has been introduced — not necessarily that existing APIs broke. That said, reviewing the release notes before upgrading across a major version is always good practice.
Yes. Because ASTD is header-only, you can include individual headers directly (e.g. #include "astd/math/math.hpp") rather than the convenience header astd/astd.hpp. This lets you pull in exactly the modules you need.

Build docs developers (and LLMs) love