Skip to content

Commit

Permalink
Merge branch 'main' into config-key-take-2
Browse files Browse the repository at this point in the history
Conflicts
---------
	gix-config/src/file/init/from_env.rs
	gix-config/src/parse/mod.rs
	gix/src/config/cache/access.rs
	gix/src/config/cache/incubate.rs
	gix/src/config/overrides.rs
	gix/src/repository/index.rs
  • Loading branch information
Byron committed Jun 21, 2024
2 parents e09a4ec + 9923542 commit 9fa1054
Show file tree
Hide file tree
Showing 934 changed files with 19,528 additions and 4,191 deletions.
5 changes: 4 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
**/generated-archives/*.tar.xz filter=lfs-disabled diff=lfs merge=lfs -text

# assure line feeds don't interfere with our working copy hash
# assure line feeds don't interfere with our working copy hash
**/tests/fixtures/**/*.sh text crlf=input eol=lf
/justfile text crlf=input eol=lf

# have GitHub treat the gix-packetline-blocking src copy as auto-generated
gix-packetline-blocking/src/ linguist-generated=true
9 changes: 9 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly
groups:
github-actions:
patterns: ["*"]
87 changes: 57 additions & 30 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
runs-on: ubuntu-latest
container: debian:buster
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Prerequisites
run: apt-get update && apt-get install --no-install-recommends -y ca-certificates curl gcc libc-dev # gcc is required as OS abstraction
- name: install Rust via Rustup
Expand All @@ -47,18 +47,18 @@ jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Setup dependencies
run:
sudo apt-get install tree
- uses: extractions/setup-just@v1
- name: test
env:
CI: true
GITOXIDE_TEST_IGNORE_ARCHIVES: 1
run: just ci-test
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Setup dependencies
run:
sudo apt-get install tree
- uses: extractions/setup-just@v2
- name: test
env:
CI: true
GIX_TEST_IGNORE_ARCHIVES: 1
run: just ci-test

test-fast:
strategy:
Expand All @@ -69,7 +69,7 @@ jobs:
- ubuntu-latest
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Setup dependencies (macos)
Expand All @@ -79,10 +79,7 @@ jobs:
- name: "cargo check default features"
if: startsWith(matrix.os, 'windows')
run: cargo check --all --bins --examples
- run: |
# it should never be a failure not to get the caches, as they can be regenerated.
git lfs fetch && git lfs checkout || true
- uses: taiki-e/install-action@v1
- uses: taiki-e/install-action@v2
with:
tool: nextest
- name: "Test (nextest)"
Expand All @@ -94,15 +91,15 @@ jobs:
matrix:
target: [ armv7-linux-androideabi ]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: ${{ matrix.target }}
- uses: taiki-e/install-action@v1
- uses: taiki-e/install-action@v2
with:
tool: cross
- name: "check"
Expand Down Expand Up @@ -135,7 +132,7 @@ jobs:
target: i686-pc-windows-gnu
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@master
with:
Expand All @@ -150,20 +147,20 @@ jobs:
- name: "Install prerequisites"
run: vcpkg install zlib:x64-windows-static-md
- name: "Installation from crates.io: gitoxide"
run: cargo +${{ matrix.rust }} install --target ${{ matrix.target }} --target-dir install-artifacts --debug --force gitoxide
run: cargo +${{ matrix.rust }} install --target ${{ matrix.target }} --no-default-features --features max-pure --target-dir install-artifacts --debug --force gitoxide
shell: msys2 {0}

lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
components: clippy,rustfmt
- uses: extractions/setup-just@v1
- uses: extractions/setup-just@v2
- name: Run cargo clippy
run: just clippy -D warnings
run: just clippy -D warnings -A unknown-lints
- name: Run cargo doc
run: just doc
- name: Run cargo fmt
Expand All @@ -176,7 +173,7 @@ jobs:
# Let's not fail CI for this, it will fail locally often enough, and a crate a little bigger
# than allows is no problem either if it comes to that.
just check-size || true
cargo-deny:
runs-on: ubuntu-latest
strategy:
Expand All @@ -189,10 +186,11 @@ jobs:
continue-on-error: ${{ matrix.checks == 'advisories' }}

steps:
- uses: actions/checkout@v3
- uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check ${{ matrix.checks }}
- uses: actions/checkout@v4
- uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check ${{ matrix.checks }}

wasm:
name: WebAssembly
runs-on: ubuntu-latest
Expand All @@ -213,3 +211,32 @@ jobs:
name: crates with 'wasm' feature
- run: cd gix-pack && cargo build --all-features --target ${{ matrix.target }}
name: gix-pack with all features (including wasm)

check-packetline:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
# We consider this script read-only and its effect is the same everywhere.
# However, when changes are made to `etc/copy-packetline.sh`, re-enable the other platforms for testing.
# - macos-latest
# - windows-latest
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- name: Check that working tree is initially clean
run: |
set -x
git status
git diff --exit-code
- name: Regenerate gix-packetline-blocking/src
run: etc/copy-packetline.sh
- name: Check that gix-packetline-blocking/src was already up to date
run: |
set -x
git status
git diff --exit-code
2 changes: 1 addition & 1 deletion .github/workflows/cifuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
language: rust
fuzz-seconds: 600
- name: Upload Crash
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
if: failure() && steps.build.outcome == 'success'
with:
name: artifacts
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/cron.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
stress:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- name: stress
run: make stress
11 changes: 8 additions & 3 deletions .github/workflows/msrv.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,13 @@ jobs:
- windows-2019
- ubuntu-latest
runs-on: ${{ matrix.os }}
env:
# dictated by `firefox` to support the `helix` editor, but now driven by the `time` crate. IMPORTANT: adjust etc/msrv-badge.svg as well
rust_version: 1.67.0
steps:
- uses: actions/checkout@v3
- uses: dtolnay/[email protected] # dictated by `firefox` to support the `helix` editor, but now driven by the `time` crate. IMPORTANT: adjust etc/msrv-badge.svg as well
- uses: extractions/setup-just@v1
- uses: actions/checkout@v4
- uses: extractions/setup-just@v2
- run: |
rustup toolchain install ${{ env.rust_version }} --profile minimal --no-self-update
rustup default ${{ env.rust_version }}
- run: just ci-check-msrv
8 changes: 4 additions & 4 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ jobs:
run: echo "${{ env.ARTIFACT_VERSION }}" > artifacts/release-version

- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: artifacts
path: artifacts
Expand Down Expand Up @@ -129,7 +129,7 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
fetch-depth: 1

Expand Down Expand Up @@ -161,7 +161,7 @@ jobs:
echo "target dir is: ${{ env.TARGET_DIR }}"
- name: Get release download URL
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: artifacts
path: artifacts
Expand Down Expand Up @@ -211,7 +211,7 @@ jobs:
fi
- name: Upload release archive
uses: actions/[email protected].1
uses: actions/[email protected].2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,6 @@ $/tests/fixtures/commit-graphs/

# newer Git sees these as precious, older Git falls through to the pattern above
$**/fuzz/Cargo.lock

# Instead of adding more environment-specific ignores here, like for the IDE in use, prefer Git's user-global
# `core.excludesFile` mechanism, see https://git-scm.com/docs/git-config#Documentation/git-config.txt-coreexcludesFile.
2 changes: 1 addition & 1 deletion .gov/info.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ maintainers:
- push directly to 'main' branch
- reviews or suggestions by other maintainers if PRs are used
- co-ownership of contributed crates
- reveive sponsorship via GitHub from project page
- receive sponsorship via GitHub from project page


Loading

0 comments on commit 9fa1054

Please sign in to comment.