version: 2
updates:
  - package-ecosystem: cargo
    directory: /
    schedule:
      interval: weekly
    open-pull-requests-limit: 5
    groups:
      # `windows` re-exports windows-core's types; bumping one alone makes
      # BOOL/HRESULT two distinct types and the Windows leg stops compiling.
      windows:
        patterns:
          - "windows"
          - "windows-*"
    ignore:
      # rusty_alloc 2.x does not compile on macOS: its unix backend passes
      # `&mut u8` where macOS libc's `mincore` expects `*mut c_char` (seen on
      # #6599). The dependency is opt-in behind the `rusty-alloc` feature.
      # Drop this once upstream fixes the macOS signature.
      - dependency-name: "rusty_alloc-api"
        versions: [">= 2"]
  - package-ecosystem: github-actions
    directory: /
    schedule:
      interval: weekly
  - package-ecosystem: nix
    directory: /
    schedule:
      interval: monthly
  - package-ecosystem: npm
    directory: /web
    schedule:
      interval: monthly
    open-pull-requests-limit: 3