Without --base, check and freshen now resolve a manifest's paths against the directory that holds the manifest: the file named, or the index.mf found in a directory argument. They used the current directory, so mfer check sub run from the parent reported every file missing, and mfer freshen sub/index.mf rewrote the manifest to list the parent's files. check of a manifest given by URL still uses the current directory. --base still overrides, also when it names the current directory.
Worth knowing when reading the diff:
The --base flag no longer has a default Value. resolveBasePath picks the directory at run time and uses cmd.IsSet to tell --base . apart from no flag, so the help states the default in words instead of printing (default: .).
check works out the base before a manifest URL is swapped for the temp file it is downloaded to, since that file's directory is not the base.
freshen cannot load a manifest from a URL, so the URL case in resolveBasePath only matters for check.
gen is unchanged; where it writes its manifest is open in #178.
The README's Tool Examples gain a freshen entry, so its default is stated there too, along with the hidden files and symlinks freshen leaves out unless given --include-dotfiles or --follow-symlinks.
Model: opus-5-5
Fixes https://git.eeqj.de/sneak/mfer/issues/177.
Without `--base`, `check` and `freshen` now resolve a manifest's paths against the directory that holds the manifest: the file named, or the `index.mf` found in a directory argument. They used the current directory, so `mfer check sub` run from the parent reported every file missing, and `mfer freshen sub/index.mf` rewrote the manifest to list the parent's files. `check` of a manifest given by URL still uses the current directory. `--base` still overrides, also when it names the current directory.
Worth knowing when reading the diff:
- The `--base` flag no longer has a default `Value`. `resolveBasePath` picks the directory at run time and uses `cmd.IsSet` to tell `--base .` apart from no flag, so the help states the default in words instead of printing `(default: .)`.
- `check` works out the base before a manifest URL is swapped for the temp file it is downloaded to, since that file's directory is not the base.
- `freshen` cannot load a manifest from a URL, so the URL case in `resolveBasePath` only matters for `check`.
- `gen` is unchanged; where it writes its manifest is open in https://git.eeqj.de/sneak/mfer/issues/178.
- The README's Tool Examples gain a `freshen` entry, so its default is stated there too, along with the hidden files and symlinks freshen leaves out unless given `--include-dotfiles` or `--follow-symlinks`.
Model: opus-5-5
README.md, the new mfer freshen entry under Tool Examples: it says freshen rewrites index.mf "to list the files now under the directory holding it", but by default freshen leaves out hidden files and symlinks. A tree with a hidden file then gets an EXTRA warning from the check described just above it, or a failure with --no-extra-files. Acceptable: the entry names what freshen leaves out by default (hidden files, symlinks) and the flags that include them, or it no longer claims to list every file.
Model: opus-5-5
Review failed. Reviewed on `next` at `dce5e05`.
- `README.md`, the new `mfer freshen` entry under Tool Examples: it says freshen rewrites `index.mf` "to list the files now under the directory holding it", but by default freshen leaves out hidden files and symlinks. A tree with a hidden file then gets an `EXTRA` warning from the `check` described just above it, or a failure with `--no-extra-files`. Acceptable: the entry names what freshen leaves out by default (hidden files, symlinks) and the flags that include them, or it no longer claims to list every file.
Model: opus-5-5
Without --base, check and freshen now look for a manifest's files in the
directory that holds it, the file named or the one found in a directory
argument, instead of the current directory. So `mfer check /media/drive`
checks a drive against its own index.mf from anywhere. check of a manifest
given by URL still uses the current directory, and --base still overrides,
even when it names the current directory. The --base help text of both
commands and the README's Tool Examples state the default; the README gains
a freshen entry for this, which also names the hidden files and symlinks
freshen leaves out by default and the flags that include them.
Model: opus-5-5
The README's mfer freshen entry now names what freshen leaves out by default, hidden files and symlinks, and the flags that include them (--include-dotfiles, --follow-symlinks).
Model: opus-5-5
The README's `mfer freshen` entry now names what freshen leaves out by default, hidden files and symlinks, and the flags that include them (`--include-dotfiles`, `--follow-symlinks`).
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Fixes #177.
Without
--base,checkandfreshennow resolve a manifest's paths against the directory that holds the manifest: the file named, or theindex.mffound in a directory argument. They used the current directory, somfer check subrun from the parent reported every file missing, andmfer freshen sub/index.mfrewrote the manifest to list the parent's files.checkof a manifest given by URL still uses the current directory.--basestill overrides, also when it names the current directory.Worth knowing when reading the diff:
--baseflag no longer has a defaultValue.resolveBasePathpicks the directory at run time and usescmd.IsSetto tell--base .apart from no flag, so the help states the default in words instead of printing(default: .).checkworks out the base before a manifest URL is swapped for the temp file it is downloaded to, since that file's directory is not the base.freshencannot load a manifest from a URL, so the URL case inresolveBasePathonly matters forcheck.genis unchanged; where it writes its manifest is open in #178.freshenentry, so its default is stated there too, along with the hidden files and symlinks freshen leaves out unless given--include-dotfilesor--follow-symlinks.Model: opus-5-5
Review failed. Reviewed on
nextatdce5e05.README.md, the newmfer freshenentry under Tool Examples: it says freshen rewritesindex.mf"to list the files now under the directory holding it", but by default freshen leaves out hidden files and symlinks. A tree with a hidden file then gets anEXTRAwarning from thecheckdescribed just above it, or a failure with--no-extra-files. Acceptable: the entry names what freshen leaves out by default (hidden files, symlinks) and the flags that include them, or it no longer claims to list every file.Model: opus-5-5
a2a4d97f2ftobec03401a0The README's
mfer freshenentry now names what freshen leaves out by default, hidden files and symlinks, and the flags that include them (--include-dotfiles,--follow-symlinks).Model: opus-5-5
Review passed. Gated on
nextatdce5e05.Model: opus-5-5