Files
OrcaSlicer/resources/profiles/Qidi/filament/Qidi Generic PLA-CF.json
SoftFever feeea3e651 fix: treat renamed printer presets as compatible aliases (#14504)
# Description

Fixes user filament presets that reference an old printer preset name in
`compatible_printers`, even when the current system printer preset
correctly declares that old name in `renamed_from`.

## Core Issue

`PresetCollection::find_preset()` was updated to resolve `renamed_from`,
but this specific failure does not go through `find_preset()`.

For root user filament presets with empty `inherits`, Orca infers
`compatible_printers` from the filament name suffix after `@`. For
example:

```json
"ELEGOO PLA Base @Elegoo Neptune 4 Pro (0.4 nozzle)"
```

loads with:

```json
"compatible_printers": ["Elegoo Neptune 4 Pro (0.4 nozzle)"]
```

The current system printer preset is named:

```text
Elegoo Neptune 4 Pro 0.4 nozzle
```

and has:

```json
"renamed_from": "Elegoo Neptune 4 Pro (0.4 nozzle)"
```

However, filament compatibility was doing a direct string comparison
against the active printer name. Since that compatibility path does not
call `find_preset()`, the `renamed_from` mapping was never considered.

## Fix

Teach printer compatibility checks to treat
`active_printer.preset.renamed_from` entries as aliases of the active
printer name.

This preserves existing user preset JSON and avoids rewriting
`compatible_printers`, while allowing old printer suffixes to remain
compatible with renamed system printer presets.

## Tests

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-07-06 12:27:46 +08:00

65 lines
1.3 KiB
JSON

{
"type": "filament",
"name": "Qidi Generic PLA-CF",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "bJKgxsU0tR1NDtoN",
"filament_id": "GFL98",
"instantiation": "true",
"required_nozzle_HRC": [
"40"
],
"filament_flow_ratio": [
"0.96"
],
"filament_type": [
"PLA-CF"
],
"filament_max_volumetric_speed": [
"9"
],
"slow_down_layer_time": [
"8"
],
"additional_cooling_fan_speed": [
"0"
],
"temperature_vitrification": [
"55"
],
"nozzle_temperature_range_low": [
"190"
],
"nozzle_temperature_range_high": [
"240"
],
"filament_vendor": [
"Generic"
],
"compatible_printers": [
"Qidi X-Smart 3 0.2 nozzle",
"Qidi X-Plus 3 0.2 nozzle",
"Qidi X-Max 3 0.2 nozzle",
"Qidi X-Plus 0.4 nozzle",
"Qidi X-Max 0.4 nozzle",
"Qidi X-CF Pro 0.4 nozzle",
"Qidi X-Smart 3 0.4 nozzle",
"Qidi X-Plus 3 0.4 nozzle",
"Qidi X-Max 3 0.4 nozzle",
"Qidi X-Smart 3 0.6 nozzle",
"Qidi X-Plus 3 0.6 nozzle",
"Qidi X-Max 3 0.6 nozzle",
"Qidi X-Smart 3 0.8 nozzle",
"Qidi X-Plus 3 0.8 nozzle",
"Qidi X-Max 3 0.8 nozzle",
"Qidi Q1 Pro 0.2 nozzle",
"Qidi Q1 Pro 0.4 nozzle",
"Qidi Q1 Pro 0.6 nozzle",
"Qidi Q1 Pro 0.8 nozzle",
"Qidi X-Plus 4 0.2 nozzle",
"Qidi X-Plus 4 0.4 nozzle",
"Qidi X-Plus 4 0.6 nozzle",
"Qidi X-Plus 4 0.8 nozzle"
]
}