Files
OrcaSlicer/resources/profiles/Qidi/process/0.12mm Fine @X-Max 4.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

71 lines
1.2 KiB
JSON

{
"type": "process",
"name": "0.12mm Fine @X-Max 4",
"inherits": "fdm_process_n_common",
"from": "system",
"setting_id": "LwuGo5RPFaXOdGOP",
"instantiation": "true",
"bottom_color_penetration_layers": "5",
"bottom_shell_layers": "7",
"bridge_flow": "1",
"default_acceleration": [
"10000"
],
"elefant_foot_compensation": "0.15",
"enable_arc_fitting": "0",
"gap_infill_speed": [
"350"
],
"initial_layer_infill_speed": [
"105"
],
"initial_layer_speed": [
"50"
],
"inner_wall_acceleration": [
"5000"
],
"inner_wall_speed": [
"350"
],
"internal_solid_infill_speed": [
"350"
],
"layer_height": "0.12",
"outer_wall_acceleration": [
"3000"
],
"outer_wall_speed": [
"200"
],
"overhang_1_4_speed": [
"60"
],
"overhang_2_4_speed": [
"30"
],
"overhang_3_4_speed": [
"10"
],
"small_perimeter_threshold": [
"50"
],
"smooth_coefficient": "4",
"sparse_infill_speed": [
"430"
],
"support_bottom_z_distance": "0.12",
"support_threshold_angle": "20",
"support_top_z_distance": "0.12",
"top_color_penetration_layers": "7",
"top_shell_layers": "8",
"top_shell_thickness": "0.8",
"top_surface_speed": [
"200"
],
"wall_loops": "4",
"compatible_printers": [
"Qidi X-Max 4 0.4 nozzle"
]
}