cargo-copter 0.2.7

Test dependents against multiple versions of your crate (or your local WIP before publishing). Inspired by the cargo-crusader
{
  "comparison_stats": [
    {
      "already_broken": 1,
      "fully_passing": 3,
      "passed_check": 4,
      "passed_fetch": 5,
      "passed_test": 3,
      "regressions": [],
      "total_tested": 5,
      "version_label": "Default"
    }
  ],
  "crate_name": "rgb",
  "crate_version": "0.8.52",
  "summary": {
    "broken": 0,
    "passed": 0,
    "regressed": 0,
    "total": 0
  },
  "test_results": [
    {
      "baseline_passed": null,
      "offered": null,
      "primary": {
        "dependent_name": "ansi_colours",
        "dependent_version": "1.2.3",
        "resolved_source": "CratesIo",
        "resolved_version": "0.8.52",
        "spec": "^0.8",
        "used_offered_version": true
      },
      "test": {
        "commands": [
          {
            "command": "Fetch",
            "features": [],
            "result": {
              "duration": 0.602603053,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Check",
            "features": [],
            "result": {
              "duration": 0.055118659,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Test",
            "features": [],
            "result": {
              "duration": 1.814372154,
              "failures": [],
              "passed": true
            }
          }
        ]
      },
      "transitive": [
        {
          "dependency": {
            "dependent_name": "ansi_colours",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8",
            "used_offered_version": false
          },
          "depth": 1
        },
        {
          "dependency": {
            "dependent_name": "empfindung",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8",
            "used_offered_version": false
          },
          "depth": 1
        }
      ]
    },
    {
      "baseline_passed": null,
      "offered": null,
      "primary": {
        "dependent_name": "resvg",
        "dependent_version": "0.45.1",
        "resolved_source": "CratesIo",
        "resolved_version": "0.8.52",
        "spec": "^0.8",
        "used_offered_version": true
      },
      "test": {
        "commands": [
          {
            "command": "Fetch",
            "features": [],
            "result": {
              "duration": 0.721374265,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Check",
            "features": [],
            "result": {
              "duration": 3.268399957,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Test",
            "features": [],
            "result": {
              "duration": 5.3610818479999995,
              "failures": [],
              "passed": true
            }
          }
        ]
      },
      "transitive": [
        {
          "dependency": {
            "dependent_name": "resvg",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8",
            "used_offered_version": false
          },
          "depth": 1
        }
      ]
    },
    {
      "baseline_passed": null,
      "offered": null,
      "primary": {
        "dependent_name": "image",
        "dependent_version": "0.25.9",
        "resolved_source": "CratesIo",
        "resolved_version": "0.8.52",
        "spec": "^0.8.48",
        "used_offered_version": true
      },
      "test": {
        "commands": [
          {
            "command": "Fetch",
            "features": [],
            "result": {
              "duration": 1.566242023,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Check",
            "features": [],
            "result": {
              "duration": 8.537373179,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Test",
            "features": [],
            "result": {
              "duration": 15.809835643,
              "failures": [
                {
                  "crate_name": "dependent",
                  "error_message": "error: couldn't read `src/../tests/images/jpg/portrait_2.jpg`: No such file or directory (os error 2)\n   --> src/metadata.rs:169:31\n    |\n169 |     const TEST_IMAGE: &[u8] = include_bytes!(\"../tests/images/jpg/portrait_2.jpg\");\n    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n"
                }
              ],
              "passed": false
            }
          }
        ]
      },
      "transitive": [
        {
          "dependency": {
            "dependent_name": "image",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8.48",
            "used_offered_version": false
          },
          "depth": 1
        },
        {
          "dependency": {
            "dependent_name": "ravif",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8.50",
            "used_offered_version": false
          },
          "depth": 1
        }
      ]
    },
    {
      "baseline_passed": null,
      "offered": null,
      "primary": {
        "dependent_name": "svgfilters",
        "dependent_version": "0.4.0",
        "resolved_source": "CratesIo",
        "resolved_version": "0.8.52",
        "spec": "^0.8",
        "used_offered_version": true
      },
      "test": {
        "commands": [
          {
            "command": "Fetch",
            "features": [],
            "result": {
              "duration": 0.308696384,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Check",
            "features": [],
            "result": {
              "duration": 0.388713797,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Test",
            "features": [],
            "result": {
              "duration": 0.48552171,
              "failures": [],
              "passed": true
            }
          }
        ]
      },
      "transitive": [
        {
          "dependency": {
            "dependent_name": "svgfilters",
            "dependent_version": "?",
            "resolved_source": "CratesIo",
            "resolved_version": "0.8.52",
            "spec": "^0.8",
            "used_offered_version": false
          },
          "depth": 1
        }
      ]
    },
    {
      "baseline_passed": null,
      "offered": null,
      "primary": {
        "dependent_name": "ravif",
        "dependent_version": "0.12.0",
        "resolved_source": "CratesIo",
        "resolved_version": "0.8.52",
        "spec": "^0.8.50",
        "used_offered_version": true
      },
      "test": {
        "commands": [
          {
            "command": "Fetch",
            "features": [],
            "result": {
              "duration": 0.902216136,
              "failures": [],
              "passed": true
            }
          },
          {
            "command": "Check",
            "features": [],
            "result": {
              "duration": 8.056077456,
              "failures": [
                {
                  "crate_name": "dependent",
                  "error_message": "   Compiling proc-macro2 v1.0.103\n   Compiling unicode-ident v1.0.22\n   Compiling quote v1.0.42\n   Compiling autocfg v1.5.0\n   Compiling libc v0.2.178\n   Compiling crossbeam-utils v0.8.21\n   Compiling num-traits v0.2.19\n   Compiling syn v2.0.111\n    Checking crossbeam-epoch v0.9.18\n   Compiling rayon-core v1.13.0\n    Checking crossbeam-deque v0.8.6\n   Compiling jobserver v0.1.34\n    Checking num-integer v0.1.46\n   Compiling anyhow v1.0.100\n    Checking either v1.15.0\n    Checking memchr v2.7.6\n    Checking num-bigint v0.4.6\n    Checking stable_deref_trait v1.2.1\n   Compiling thiserror v2.0.17\n   Compiling shlex v1.3.0\n   Compiling find-msvc-tools v0.1.5\n    Checking arrayvec v0.7.6\n   Compiling log v0.4.29\n    Checking num-rational v0.4.2\n   Compiling nasm-rs v0.3.1\n   Compiling cc v1.2.49\n    Checking rayon v1.11.0\n    Checking as-slice v0.2.1\n   Compiling av-scenechange v0.14.1\n   Compiling built v0.8.0\n   Compiling paste v1.0.15\n    Checking aligned v0.4.3\n    Checking nom v8.0.0\n    Checking core2 v0.4.0\n    Checking y4m v0.8.0\n    Checking cfg-if v1.0.4\n   Compiling pastey v0.1.1\n    Checking maybe-rayon v0.1.1\n    Checking bitstream-io v4.9.0\n    Checking itertools v0.14.0\n   Compiling simd_helpers v0.1.0\n   Compiling noop_proc_macro v0.3.0\n    Checking imgref v1.12.0\n   Compiling rav1e v0.8.1\n    Checking new_debug_unreachable v1.0.6\n    Checking loop9 v0.1.5\n    Checking avif-serialize v0.8.6\n    Checking quick-error v2.0.1\n    Checking rgb v0.8.52\nerror: failed to run custom build command for `rav1e v0.8.1`\nnote: To improve backtraces for build dependencies, set the CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.\n\nCaused by:\n  process didn't exit successfully: `/copter/staging/ravif-0.12.0/target/debug/build/rav1e-76ec4d03d41aff32/build-script-build` (exit status: 101)\n  --- stdout\n  cargo:rustc-cfg=nasm_x86_64\n\n  --- stderr\n\n  thread 'main' (6077) panicked at /cargo-cache/registry/src/index.crates.io-1949cf8c6b5b557f/rav1e-0.8.1/build.rs:144:9:\n  NASM build failed. Make sure you have nasm installed or disable the \"asm\" feature.\n  You can get NASM from https://nasm.us or your system's package manager.\n\n  error: Unable to run nasm: No such file or directory (os error 2)\n  stack backtrace:\n     0: __rustc::rust_begin_unwind\n     1: core::panicking::panic_fmt\n     2: build_script_build::build_nasm_files::{{closure}}\n     3: build_script_build::main\n  note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\nwarning: build failed, waiting for other jobs to finish...\n"
                }
              ],
              "passed": false
            }
          }
        ]
      },
      "transitive": []
    }
  ],
  "total_dependents": 5
}