diff options
Add comprehensive project documentation
Create complete documentation set in doc/ folder:
- index.rst: Main project overview, quickstart, architecture
- philosophy.rst: Design principles, KDL rationale, VCS diversity
- roadmap.rst: Phased development plan (Phase 2.5 current, Phase 3 graphs next)
- history.rst: Development timeline, key decisions, lessons learned
- manifest.rst: Updated to v0.2.0, added Fossil docs, schema upgrade notes
Documentation covers:
- Current state (Phase 2.5)
- Complete roadmap through Phase 4
- Visual dependency graph plans (Phase 3)
- Philosophy and anti-corporate stance
- History from origins to present
All documentation in reStructuredText format for website generation.
Diffstat (limited to 'doc/manifest.rst')
| -rw-r--r-- | doc/manifest.rst | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/doc/manifest.rst b/doc/manifest.rst index 9d1d74a..728e515 100644 --- a/doc/manifest.rst +++ b/doc/manifest.rst @@ -6,7 +6,7 @@ Setting up for pinning down inputs -------------------------------------------------------------------------------- :author: toastal -:version: 0.1.1 +:version: 0.2.0 .. role:: ab .. role:: ac @@ -18,16 +18,22 @@ Synopsis Nixtamal uses :ac:`KDL` for its manifest describing inputs. At the highest level, this includes: -• manifest version +• manifest version (supports schema upgrades via ``nixtamal upgrade``) • default hashing algorithm • list of inputs - • the input kind & its specific attributes - • a command to check if ‘latest’ + • the input kind & its specific attributes (Git, Darcs, Pijul, Fossil, etc.) + • a command to check if 'latest' • hashing information .. note:: + The manifest uses schema versioning (currently 0.2.0). When upgrading + nixtamal, use ``nixtamal upgrade`` to migrate manifests between schema + versions. The upgrade command creates backups and supports rollback. + +.. note:: + While :ac:`KDL` Schema Language exists, it seems there is a upcoming `v2 <https://github.com/kdl-org/kdl/pull/486>`_. It seems to address some issues with the v1 :ab:`spec` which would both help, but also render using the @@ -77,7 +83,7 @@ At a high level these should be seen as “kind” There are specific nodes for each different type of supported fetchers/prefetchers: ``file``, ``archive``, ``git``, ``darcs``, ``pijul`` - (with more to come in the future). + ``fossil``, ``nilla``. ``hash`` An optional node for hash algorithm information for a input. The ``algorithm`` property will be used when prefetching, locking, & for @@ -163,6 +169,15 @@ Pijul reference point for getting stable reference; if unsure, try ``channel main`` +Fossil +-------------------------------------------------------------------------------- + +``repository`` + `Templated node`_ repository reference for the input +“reference” + ``branch`` *or* ``tag`` *or* ``checkin`` node as the reference point for + getting stable reference; checkins are SHA1 hashes of commits + Templated node ================================================================================ |
