mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-08-30 05:17:19 +00:00
# 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)
63 lines
1.0 KiB
JSON
63 lines
1.0 KiB
JSON
{
|
|
"type": "filament",
|
|
"name": "Qidi Generic PC",
|
|
"inherits": "fdm_filament_pc",
|
|
"from": "system",
|
|
"setting_id": "wd4PrqXE2um46ueW",
|
|
"filament_id": "GFC99",
|
|
"instantiation": "true",
|
|
"filament_type": [
|
|
"PC"
|
|
],
|
|
"filament_max_volumetric_speed": [
|
|
"8"
|
|
],
|
|
"filament_flow_ratio": [
|
|
"0.94"
|
|
],
|
|
"enable_pressure_advance": [
|
|
"1"
|
|
],
|
|
"pressure_advance": [
|
|
"0.03"
|
|
],
|
|
"activate_air_filtration": [
|
|
"1"
|
|
],
|
|
"during_print_exhaust_fan_speed": [
|
|
"0"
|
|
],
|
|
"nozzle_temperature_initial_layer": [
|
|
"270"
|
|
],
|
|
"nozzle_temperature": [
|
|
"280"
|
|
],
|
|
"hot_plate_temp_initial_layer": [
|
|
"110"
|
|
],
|
|
"hot_plate_temp": [
|
|
"110"
|
|
],
|
|
"slow_down_min_speed": [
|
|
"20"
|
|
],
|
|
"overhang_fan_speed": [
|
|
"60"
|
|
],
|
|
"filament_vendor": [
|
|
"Generic"
|
|
],
|
|
"compatible_printers": [
|
|
"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"
|
|
]
|
|
}
|