mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-07-26 20:32:06 +00:00
# Description This PR expands profile validation so we can catch backward compatibility issues with custom presets generated by older OrcaSlicer releases. It also adds missing `renamed_from` metadata for presets that were renamed or moved, so older user presets can resolve their original parent names against the current system profiles. ## Background Many users have reported missing preset issues after upgrading past 2.4.1. Investigation showed two common causes: - preset lookup and compatibility checks did not always account for `renamed_from` - some renamed base presets were missing the old preset name in their `renamed_from` metadata The existing profile workflow validates the current system profile tree and a single nightly-generated custom preset bundle. That is useful for catching current profile errors, but it does not validate user presets generated by older OrcaSlicer versions against the current system profiles. As a result, older missing-parent compatibility gaps can slip through. ## Changes - Update `check_profiles.yml` to validate historical custom preset fixtures from `OrcaSlicer/OrcaSlicer-profile-validator`. - Download the fixture manifest from the public `fixture-archive` release. - Validate each `orca_custom_presets_<version>.zip` fixture independently against the current PR's `resources/profiles`. - Generate per-version validation logs and upload them as workflow artifacts. - Fail profile validation if any historical fixture version fails. - Add missing `renamed_from` aliases for renamed/moved presets found by the historical fixture validation. ## Profile Compatibility Fixes This PR adds aliases for older parent names including: - `0.20mm Bambu Support W @BBL X1C` -> `0.20mm Standard @BBL X1C` - `Bambu PLA Impact @BBL X1C` -> `Bambu PLA Impact @System` - `Ginger Generic rPLA` -> `Ginger Generic PLA` - `Ginger Generic rPETG` -> `Ginger Generic PETG` - legacy `Panchroma PLA Stain` BBL filament names -> current `Panchroma PLA Satin` names - legacy Elegoo casing/name variants such as `Elegoo RAPID PLA+`, `Elegoo RAPID PETG`, `Elegoo RAPID PETG+`, and `Elegoo PETG Pro @System` ## Validation Flow The custom preset validation step now: 1. Downloads `manifest.json` from the `fixture-archive` release. 2. Iterates over every fixture listed in the manifest. 3. Copies the current branch's `resources/profiles` into a temporary profile tree. 4. Removes any existing `user` directory from that temporary tree. 5. Unzips exactly one historical fixture into the temporary tree. 6. Runs `OrcaSlicer_profile_validator -p <temp profile tree> -l 2`. 7. Writes a version-specific log and a consolidated summary. This keeps validation scoped per fixture version and avoids mixing generated user presets from different OrcaSlicer releases. ## Fixture Source Historical fixtures are stored as public release assets in: `OrcaSlicer/OrcaSlicer-profile-validator`, release tag `fixture-archive` Each release asset is expected to be named like: ```text orca_custom_presets_v2.4.1.zip ``` ## Testing Validated locally with: - current system profile validation - BBL filament subtype validation - historical custom preset fixture validation - extra profile JSON check in a clean profile tree The affected historical fixture set passed after adding the missing `renamed_from` aliases. The release manifest controls which fixture versions are validated. [How to Download Pull Requests Artifacts for Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
174 lines
2.4 KiB
JSON
174 lines
2.4 KiB
JSON
{
|
|
"type": "process",
|
|
"name": "0.20mm Standard @BBL X1C",
|
|
"renamed_from": "0.20mm Bambu Support W @BBL X1C",
|
|
"inherits": "fdm_process_single_0.20",
|
|
"from": "system",
|
|
"setting_id": "GP004",
|
|
"instantiation": "true",
|
|
"description": "It has a general layer height, and results in general layer lines and printing quality. It is suitable for most general printing cases.",
|
|
"bridge_speed": [
|
|
"50",
|
|
"50"
|
|
],
|
|
"default_acceleration": [
|
|
"10000",
|
|
"10000"
|
|
],
|
|
"enable_overhang_speed": [
|
|
"1",
|
|
"1"
|
|
],
|
|
"enable_height_slowdown": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"gap_infill_speed": [
|
|
"250",
|
|
"250"
|
|
],
|
|
"initial_layer_infill_speed": [
|
|
"105",
|
|
"105"
|
|
],
|
|
"initial_layer_speed": [
|
|
"50",
|
|
"50"
|
|
],
|
|
"inner_wall_speed": [
|
|
"300",
|
|
"300"
|
|
],
|
|
"internal_solid_infill_speed": [
|
|
"250",
|
|
"250"
|
|
],
|
|
"initial_layer_acceleration": [
|
|
"500",
|
|
"500"
|
|
],
|
|
"inner_wall_acceleration": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"initial_layer_travel_acceleration": [
|
|
"6000",
|
|
"6000"
|
|
],
|
|
"outer_wall_speed": [
|
|
"200",
|
|
"200"
|
|
],
|
|
"outer_wall_acceleration": [
|
|
"5000",
|
|
"5000"
|
|
],
|
|
"overhang_1_4_speed": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"overhang_2_4_speed": [
|
|
"50",
|
|
"50"
|
|
],
|
|
"overhang_3_4_speed": [
|
|
"30",
|
|
"30"
|
|
],
|
|
"overhang_4_4_speed": [
|
|
"10",
|
|
"10"
|
|
],
|
|
"overhang_totally_speed": [
|
|
"10",
|
|
"10"
|
|
],
|
|
"print_extruder_id": [
|
|
"1",
|
|
"1"
|
|
],
|
|
"print_extruder_variant": [
|
|
"Direct Drive Standard",
|
|
"Direct Drive High Flow"
|
|
],
|
|
"smooth_coefficient": "150",
|
|
"sparse_infill_speed": [
|
|
"270",
|
|
"270"
|
|
],
|
|
"slowdown_start_height": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"slowdown_start_speed": [
|
|
"1000",
|
|
"1000"
|
|
],
|
|
"slowdown_start_acc": [
|
|
"100000",
|
|
"100000"
|
|
],
|
|
"slowdown_end_height": [
|
|
"400",
|
|
"400"
|
|
],
|
|
"slowdown_end_speed": [
|
|
"1000",
|
|
"1000"
|
|
],
|
|
"slowdown_end_acc": [
|
|
"100000",
|
|
"100000"
|
|
],
|
|
"small_perimeter_speed": [
|
|
"50%",
|
|
"50%"
|
|
],
|
|
"small_perimeter_threshold": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"sparse_infill_acceleration": [
|
|
"100%",
|
|
"100%"
|
|
],
|
|
"support_speed": [
|
|
"150",
|
|
"150"
|
|
],
|
|
"support_interface_speed": [
|
|
"80",
|
|
"80"
|
|
],
|
|
"top_surface_acceleration": [
|
|
"2000",
|
|
"2000"
|
|
],
|
|
"top_surface_speed": [
|
|
"200",
|
|
"200"
|
|
],
|
|
"travel_speed": [
|
|
"500",
|
|
"500"
|
|
],
|
|
"travel_speed_z": [
|
|
"0",
|
|
"0"
|
|
],
|
|
"travel_acceleration": [
|
|
"10000",
|
|
"10000"
|
|
],
|
|
"vertical_shell_speed": [
|
|
"80%",
|
|
"80%"
|
|
],
|
|
"compatible_printers": [
|
|
"Bambu Lab X1 Carbon 0.4 nozzle",
|
|
"Bambu Lab X1 0.4 nozzle",
|
|
"Bambu Lab P1S 0.4 nozzle",
|
|
"Bambu Lab X1E 0.4 nozzle"
|
|
]
|
|
}
|