From e6c901d2e5430a3815109b38ced11a4f695f0226 Mon Sep 17 00:00:00 2001 From: Crash Over Burn Date: Tue, 14 Apr 2026 13:05:33 +0000 Subject: Port upstream patches: Cmdliner 2.x, lockfile auto-creation, schema upgrade, Fossil VCS Ported from upstream darcs repository (v1.1.2): - Cmdliner 2.x compatibility fixes (variable shadowing) - Lockfile auto-creation when missing - Schema upgrade command with backup/rollback - Fossil VCS support (new VCS type) - Clean up Cmdliner warning for unescaped $PWD Files modified: - lib/schema.ml (new): Schema versioning module - lib/nixtamal.ml: Add upgrade function, Fossil meld support - lib/error.ml: Add Fossil to prefetch_method, Upgrade error - lib/input.ml: Add Fossil module, Kind variant - lib/prefetch.ml: Add Fossil prefetch with SRI hash support - lib/manifest.ml: Add Fossil codec - lib/lockfile.ml: Add Fossil lockfile type - lib/lock_loader.ml: Add Fossil feature flag - lib/input_foreman.ml: Add Fossil display and prefetch check - bin/cmd.ml: Cmdliner 2.x fixes, add Upgrade command - bin/dune, lib/dune, test/dune: Deprecation flags Builds successfully with all tests passing. --- lib/lock_loader.ml | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lib/lock_loader.ml') diff --git a/lib/lock_loader.ml b/lib/lock_loader.ml index c1648a0..3b6d128 100644 --- a/lib/lock_loader.ml +++ b/lib/lock_loader.ml @@ -16,6 +16,8 @@ module Features = struct let git = 1 lsl 2 let darcs = 1 lsl 3 let pijul = 1 lsl 4 + let nilla = 1 lsl 5 + let fossil = 1 lsl 6 let [@inline]has mask v = (mask land v) <> 0 let [@inline]add mask v = mask lor v @@ -30,6 +32,8 @@ module Features = struct | `Git _ -> add git | `Darcs _ -> add darcs | `Pijul _ -> add pijul + | `Nilla _ -> add nilla + | `Fossil _ -> add fossil let drop_input (input : Input.t) : t -> t = match input.kind with @@ -38,6 +42,8 @@ module Features = struct | `Git _ -> drop git | `Darcs _ -> drop darcs | `Pijul _ -> drop pijul + | `Nilla _ -> drop nilla + | `Fossil _ -> drop fossil end open Fmt -- cgit v1.2.3