Developer Options¶
Added in version 2.0.3.
Advanced startup options for troubleshooting and loader validation.
These developer-facing details may change without notice.
boot_config.json¶
boot_config.json is an external config file read before addon startup.
It lives under Blender’s CONFIG directory.
Keys¶
Key |
Type |
Default |
Meaning |
|---|---|---|---|
|
bool |
|
Register the |
|
bool |
|
Enable init logging during startup |
|
string |
|
Persistence backend (currently only |
|
bool |
|
Start with |
|
bool |
|
Automatically create |
Priority¶
command-line flags > boot_config.json > defaults
Tip
--pme-log-init overrides init_log_enabled.
Shape¶
{
"version": 1,
"enable_public_api_alias": false,
"init_log_enabled": false,
"persistence_backend": "prefs",
"dev": {
"use_loader_manifest": true,
"auto_generate_candidate": false
}
}
Update behavior¶
addon updates do not overwrite it
it is created automatically if missing
if it is broken, PME falls back to defaults
loader_manifest.json¶
loader_manifest.json defines the module load order used during startup.
Role¶
bundled static file included in release builds
used to resolve module load order quickly during startup
not normally edited directly by users
Shape¶
{
"version": 1,
"module_order": [
"core.namespace",
"infra.logging",
"infra.boot_config",
"..."
]
}
Fallback¶
If loader_manifest.json is missing or invalid, PME falls back to dependency-based dynamic discovery.
Module order resolution¶
--pme-use-candidate-loader-manifest--pme-use-loader-manifest/--pme-no-loader-manifestboot_config.dev.use_loader_manifestloader_manifest.jsondynamic discovery
normal startup uses
loader_manifest.jsondev.use_loader_manifest = falseswitches startup to dynamic discoverythe candidate manifest is a developer-facing helper path and is not selected by this toggle
if a candidate manifest or
loader_manifest.jsoncannot be used, PME falls back to dynamic discovery
loader_manifest_candidate.json¶
loader_manifest_candidate.json is a developer-facing candidate manifest used for validation runs.
Location¶
loader_manifest_candidate.jsonis created in the PME addon package
Role¶
stores the observed
loaded module orderfrom a successful startupused for review and comparison before promotion into
loader_manifest.jsonnot part of the
Use Bundled Loader Manifesttoggle contract
Creation¶
PME only creates loader_manifest_candidate.json when all of the following are true:
boot_config.dev.auto_generate_candidate == truestartup completed successfully
the staging path is writable
Promotion to loader_manifest.json¶
Startup never writes back to loader_manifest.json.
Promotion only happens through an explicit action:
python3 tools/promote_loader_manifest.pyPreferences > Settings > Developer → Promote Candidate to Bundled
Settings > Developer¶
Preferences > Settings > Developer is the editing surface for boot_config.json.
changes are written back to
boot_config.jsonthe UI reflects the current
boot_config.jsonvaluesboot-time flags such as
import pmeand init logging apply on the next startupUse Bundled Loader Manifest switches between
loader_manifest.jsonstartup and dynamic discoveryAuto-Save Candidate on Startup creates
loader_manifest_candidate.jsonafter successful startupPromote Candidate to Bundled copies the candidate manifest content into
loader_manifest.json
Note
dev settings affect every PME install that shares the same Blender profile.