NAME
Developer::Dashboard::File - older file compatibility wrapper
SYNOPSIS
Developer::Dashboard::File->configure(aliases => { output => '/tmp/output.txt' });
my $file = Developer::Dashboard::File->output;
my $notes = Developer::Dashboard::File->resolve('notes');
my $name = 123;
my $numeric = Developer::Dashboard::File->$name();
Developer::Dashboard::File->write(output => "ok\n");
DESCRIPTION
This module exposes a project-neutral compatibility layer for older bookmark code that expects a File package.
METHODS
resolve
Returns the resolved file path for one configured alias or literal path without reading file content.
METHODS
configure, all, exists, read, cat, write, touch, rm
Configure and resolve compatibility files.
PURPOSE
This module provides named file resolution for runtime files and configured aliases. It gives callers the same conceptual file names exposed by dashboard files and dashboard file list without forcing them to know the exact on-disk layout under the current runtime.
WHY IT EXISTS
It exists so code and bookmark snippets can refer to stable file concepts such as global_config, dashboard_log, or configured aliases instead of hard-coding file paths. That keeps file-aware code portable across home and project-local runtimes.
WHEN TO USE
Use this file when a module, bookmark, or helper needs a named runtime file and should not know whether the active file path came from the home runtime, a project override, or a user-defined alias.
HOW TO USE
Load Developer::Dashboard::File and ask it for the named file you need. Use it as the semantic file layer above the lower-level file registry instead of hard-coding ~/.developer-dashboard descendants.
When you need the complete resolved file payload that dashboard files prints, call Developer::Dashboard::File->all. It returns the same hash shape as the CLI command.
WHAT USES IT
It is used by bookmark/runtime helper code, by compatibility tests, and by contributors who need the older top-level File abstraction to resolve through the current layered runtime.
EXAMPLES
Example 1:
perl -Ilib -MDeveloper::Dashboard::File -e 1
Do a direct compile-and-load check against the module from a source checkout.
Example 2:
prove -lv t/07-core-units.t t/21-refactor-coverage.t
Run the focused regression tests that most directly exercise this module's behavior.
Example 3:
HARNESS_PERL_SWITCHES=-MDevel::Cover prove -lr t
Recheck the module under the repository coverage gate rather than relying on a load-only probe.
Example 4:
prove -lr t
Put any module-level change back through the entire repository suite before release.