1# This config is different from config.toml in this directory, as the latter is recognized by Cargo.
2# This file is placed in $HOME/.cargo/config.toml on CI runs. Cargo then merges Zeds .cargo/config.toml with $HOME/.cargo/config.toml
3# with preference for settings from Zeds config.toml.
4# TL;DR: If a value is set in both ci-config.toml and config.toml, config.toml value takes precedence.
5# Arrays are merged together though. See: https://doc.rust-lang.org/cargo/reference/config.html#hierarchical-structure
6# The intent for this file is to configure CI build process with a divergance from Zed developers experience; for example, in this config file
7# we use `-D warnings` for rustflags (which makes compilation fail in presence of warnings during build process). Placing that in developers `config.toml`
8# would be incovenient.
9# We *could* override things like RUSTFLAGS manually by setting them as environment variables, but that is less DRY; worse yet, if you forget to set proper environment variables
10# in one spot, that's going to trigger a rebuild of all of the artifacts. Using ci-config.toml we can define these overrides for CI in one spot and not worry about it.
11[build]
12rustflags = ["-D", "warnings"]
13
14[alias]
15xtask = "run --package xtask --"