Skip to content

fix: detached presets not showing up#13793

Merged
SoftFever merged 3 commits into
mainfrom
fix/detached-filaments
May 22, 2026
Merged

fix: detached presets not showing up#13793
SoftFever merged 3 commits into
mainfrom
fix/detached-filaments

Conversation

@peachismomo

Copy link
Copy Markdown
Contributor

Description

If you save a custom preset as detached from parent, it wont show up when you download from the cloud.
This is because it is being silently ignored when there is no base id.

How to Download Pull Requests Artifacts for Testing

@github-actions

Copy link
Copy Markdown

Hi @peachismomo, you can manage the labels for this PR by /bot add-label and /bot remove-label

Allowed labels are:
bug-fix, enhancement, Localization, profile, QoL, UI/UX and dependencies.

Examples:

/bot add-label bug-fix
/bot add-label bug-fix, UI/UX
/bot remove-label bug-fix, UI/UX

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes cloud preset downloads so “detached” (root) user presets without a base_id are no longer silently ignored, ensuring they appear after syncing/downloading from the cloud.

Changes:

  • Allow loading user presets that have no base_id when they don’t inherit from a parent preset.
  • Adjust custom preset alias generation to avoid producing an empty alias for certain root filament preset names.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/libslic3r/Preset.cpp
Comment on lines +2189 to 2202
// base_id is only required for presets inheriting from a parent. Root presets
// with an empty "inherits" field intentionally have no base_id.
std::string cloud_base_id;
auto base_id_iter = preset_values.find(BBL_JSON_KEY_BASE_ID);
if (base_id_iter != preset_values.end()) {
cloud_base_id = base_id_iter->second;
} else {
auto inherits_iter = preset_values.find(BBL_JSON_KEY_INHERITS);
if (inherits_iter != preset_values.end() && !inherits_iter->second.empty()) {
BOOST_LOG_TRIVIAL(warning) << __FUNCTION__ << boost::format("can not find base_id, not loading for user preset %1%") % canonical_name;
unlock();
return false;
}
}
@github-actions

Copy link
Copy Markdown

Test Results

0 tests  ±0   0 ✅ ±0   0s ⏱️ ±0s
1 suites ±0   0 💤 ±0 
1 files   ±0   0 ❌ ±0 

Results for commit 5d03ca2. ± Comparison against base commit 16a992b.

@SoftFever SoftFever merged commit 464ca4c into main May 22, 2026
15 checks passed
@SoftFever SoftFever deleted the fix/detached-filaments branch May 22, 2026 11:05
SoftFever pushed a commit that referenced this pull request May 22, 2026
* fix: detached presets not showing up

* slightly better code clarity

* remove cloud_prefix
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants