Skip to content

Commit bf82301

Browse files
committed
Merge remote-tracking branch 'origin/master' into replay-drop-commits-that-become-empty
2 parents 8a2a121 + b31ab93 commit bf82301

File tree

256 files changed

+21690
-13213
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

256 files changed

+21690
-13213
lines changed

.gitattributes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
* whitespace=!indent,trail,space
1+
* whitespace=trail,space
22
*.[ch] whitespace=indent,trail,space diff=cpp
33
*.sh whitespace=indent,trail,space text eol=lf
44
*.perl text eol=lf diff=perl

.github/workflows/check-style.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
jobname: ClangFormat
2121
runs-on: ubuntu-latest
2222
steps:
23-
- uses: actions/checkout@v4
23+
- uses: actions/checkout@v5
2424
with:
2525
fetch-depth: 0
2626

.github/workflows/check-whitespace.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
check-whitespace:
2020
runs-on: ubuntu-latest
2121
steps:
22-
- uses: actions/checkout@v4
22+
- uses: actions/checkout@v5
2323
with:
2424
fetch-depth: 0
2525

.github/workflows/coverity.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
COVERITY_LANGUAGE: cxx
3939
COVERITY_PLATFORM: overridden-below
4040
steps:
41-
- uses: actions/checkout@v4
41+
- uses: actions/checkout@v5
4242
- name: install minimal Git for Windows SDK
4343
if: contains(matrix.os, 'windows')
4444
uses: git-for-windows/setup-git-for-windows-sdk@v1

.github/workflows/l10n.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
origin \
6464
${{ github.ref }} \
6565
$args
66-
- uses: actions/setup-go@v5
66+
- uses: actions/setup-go@v6
6767
with:
6868
go-version: '>=1.16'
6969
cache: false

.github/workflows/main.yml

Lines changed: 54 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
echo "skip_concurrent=$skip_concurrent" >>$GITHUB_OUTPUT
6464
- name: skip if the commit or tree was already tested
6565
id: skip-if-redundant
66-
uses: actions/github-script@v7
66+
uses: actions/github-script@v8
6767
if: steps.check-ref.outputs.enabled == 'yes'
6868
with:
6969
github-token: ${{secrets.GITHUB_TOKEN}}
@@ -112,7 +112,7 @@ jobs:
112112
group: windows-build-${{ github.ref }}
113113
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
114114
steps:
115-
- uses: actions/checkout@v4
115+
- uses: actions/checkout@v5
116116
- uses: git-for-windows/setup-git-for-windows-sdk@v1
117117
- name: build
118118
shell: bash
@@ -123,7 +123,7 @@ jobs:
123123
- name: zip up tracked files
124124
run: git archive -o artifacts/tracked.tar.gz HEAD
125125
- name: upload tracked files and build artifacts
126-
uses: actions/upload-artifact@v4
126+
uses: actions/upload-artifact@v5
127127
with:
128128
name: windows-artifacts
129129
path: artifacts
@@ -140,7 +140,7 @@ jobs:
140140
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
141141
steps:
142142
- name: download tracked files and build artifacts
143-
uses: actions/download-artifact@v4
143+
uses: actions/download-artifact@v6
144144
with:
145145
name: windows-artifacts
146146
path: ${{github.workspace}}
@@ -157,7 +157,7 @@ jobs:
157157
run: ci/print-test-failures.sh
158158
- name: Upload failed tests' directories
159159
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
160-
uses: actions/upload-artifact@v4
160+
uses: actions/upload-artifact@v5
161161
with:
162162
name: failed-tests-windows-${{ matrix.nr }}
163163
path: ${{env.FAILED_TEST_ARTIFACTS}}
@@ -173,10 +173,10 @@ jobs:
173173
group: vs-build-${{ github.ref }}
174174
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
175175
steps:
176-
- uses: actions/checkout@v4
176+
- uses: actions/checkout@v5
177177
- uses: git-for-windows/setup-git-for-windows-sdk@v1
178178
- name: initialize vcpkg
179-
uses: actions/checkout@v4
179+
uses: actions/checkout@v5
180180
with:
181181
repository: 'microsoft/vcpkg'
182182
path: 'compat/vcbuild/vcpkg'
@@ -208,7 +208,7 @@ jobs:
208208
- name: zip up tracked files
209209
run: git archive -o artifacts/tracked.tar.gz HEAD
210210
- name: upload tracked files and build artifacts
211-
uses: actions/upload-artifact@v4
211+
uses: actions/upload-artifact@v5
212212
with:
213213
name: vs-artifacts
214214
path: artifacts
@@ -226,7 +226,7 @@ jobs:
226226
steps:
227227
- uses: git-for-windows/setup-git-for-windows-sdk@v1
228228
- name: download tracked files and build artifacts
229-
uses: actions/download-artifact@v4
229+
uses: actions/download-artifact@v6
230230
with:
231231
name: vs-artifacts
232232
path: ${{github.workspace}}
@@ -244,7 +244,7 @@ jobs:
244244
run: ci/print-test-failures.sh
245245
- name: Upload failed tests' directories
246246
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
247-
uses: actions/upload-artifact@v4
247+
uses: actions/upload-artifact@v5
248248
with:
249249
name: failed-tests-windows-vs-${{ matrix.nr }}
250250
path: ${{env.FAILED_TEST_ARTIFACTS}}
@@ -258,8 +258,8 @@ jobs:
258258
group: windows-meson-build-${{ github.ref }}
259259
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
260260
steps:
261-
- uses: actions/checkout@v4
262-
- uses: actions/setup-python@v5
261+
- uses: actions/checkout@v5
262+
- uses: actions/setup-python@v6
263263
- name: Set up dependencies
264264
shell: pwsh
265265
run: pip install meson ninja
@@ -270,7 +270,7 @@ jobs:
270270
shell: pwsh
271271
run: meson compile -C build
272272
- name: Upload build artifacts
273-
uses: actions/upload-artifact@v4
273+
uses: actions/upload-artifact@v5
274274
with:
275275
name: windows-meson-artifacts
276276
path: build
@@ -286,19 +286,29 @@ jobs:
286286
group: windows-meson-test-${{ matrix.nr }}-${{ github.ref }}
287287
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
288288
steps:
289-
- uses: actions/checkout@v4
290-
- uses: actions/setup-python@v5
289+
- uses: actions/checkout@v5
290+
- uses: actions/setup-python@v6
291291
- name: Set up dependencies
292292
shell: pwsh
293293
run: pip install meson ninja
294294
- name: Download build artifacts
295-
uses: actions/download-artifact@v4
295+
uses: actions/download-artifact@v6
296296
with:
297297
name: windows-meson-artifacts
298298
path: build
299299
- name: Test
300300
shell: pwsh
301-
run: meson test -C build --no-rebuild --print-errorlogs --slice "$(1+${{ matrix.nr }})/10"
301+
run: ci/run-test-slice-meson.sh build ${{matrix.nr}} 10
302+
- name: print test failures
303+
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
304+
shell: bash
305+
run: ci/print-test-failures.sh
306+
- name: Upload failed tests' directories
307+
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
308+
uses: actions/upload-artifact@v4
309+
with:
310+
name: failed-tests-windows-meson-${{ matrix.nr }}
311+
path: ${{env.FAILED_TEST_ARTIFACTS}}
302312

303313
regular:
304314
name: ${{matrix.vector.jobname}} (${{matrix.vector.pool}})
@@ -313,16 +323,16 @@ jobs:
313323
vector:
314324
- jobname: osx-clang
315325
cc: clang
316-
pool: macos-13
326+
pool: macos-14
317327
- jobname: osx-reftable
318328
cc: clang
319-
pool: macos-13
329+
pool: macos-14
320330
- jobname: osx-gcc
321331
cc: gcc-13
322-
pool: macos-13
332+
pool: macos-14
323333
- jobname: osx-meson
324334
cc: clang
325-
pool: macos-13
335+
pool: macos-14
326336
env:
327337
CC: ${{matrix.vector.cc}}
328338
CC_PACKAGE: ${{matrix.vector.cc_package}}
@@ -331,15 +341,15 @@ jobs:
331341
TEST_OUTPUT_DIRECTORY: ${{github.workspace}}/t
332342
runs-on: ${{matrix.vector.pool}}
333343
steps:
334-
- uses: actions/checkout@v4
344+
- uses: actions/checkout@v5
335345
- run: ci/install-dependencies.sh
336346
- run: ci/run-build-and-tests.sh
337347
- name: print test failures
338348
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
339349
run: ci/print-test-failures.sh
340350
- name: Upload failed tests' directories
341351
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
342-
uses: actions/upload-artifact@v4
352+
uses: actions/upload-artifact@v5
343353
with:
344354
name: failed-tests-${{matrix.vector.jobname}}
345355
path: ${{env.FAILED_TEST_ARTIFACTS}}
@@ -352,7 +362,7 @@ jobs:
352362
CI_JOB_IMAGE: ubuntu-latest
353363
runs-on: ubuntu-latest
354364
steps:
355-
- uses: actions/checkout@v4
365+
- uses: actions/checkout@v5
356366
- run: ci/install-dependencies.sh
357367
- run: ci/run-build-and-minimal-fuzzers.sh
358368
dockerized:
@@ -429,7 +439,7 @@ jobs:
429439
else
430440
apt-get -q update && apt-get -q -y install git
431441
fi
432-
- uses: actions/checkout@v4
442+
- uses: actions/checkout@v5
433443
- run: ci/install-dependencies.sh
434444
- run: useradd builder --create-home
435445
- run: chown -R builder .
@@ -439,7 +449,7 @@ jobs:
439449
run: sudo --preserve-env --set-home --user=builder ci/print-test-failures.sh
440450
- name: Upload failed tests' directories
441451
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
442-
uses: actions/upload-artifact@v4
452+
uses: actions/upload-artifact@v5
443453
with:
444454
name: failed-tests-${{matrix.vector.jobname}}
445455
path: ${{env.FAILED_TEST_ARTIFACTS}}
@@ -454,10 +464,25 @@ jobs:
454464
group: static-analysis-${{ github.ref }}
455465
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
456466
steps:
457-
- uses: actions/checkout@v4
467+
- uses: actions/checkout@v5
458468
- run: ci/install-dependencies.sh
459469
- run: ci/run-static-analysis.sh
460470
- run: ci/check-directional-formatting.bash
471+
rust-analysis:
472+
needs: ci-config
473+
if: needs.ci-config.outputs.enabled == 'yes'
474+
env:
475+
jobname: RustAnalysis
476+
CI_JOB_IMAGE: ubuntu:rolling
477+
runs-on: ubuntu-latest
478+
container: ubuntu:rolling
479+
concurrency:
480+
group: rust-analysis-${{ github.ref }}
481+
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
482+
steps:
483+
- uses: actions/checkout@v4
484+
- run: ci/install-dependencies.sh
485+
- run: ci/run-rust-checks.sh
461486
sparse:
462487
needs: ci-config
463488
if: needs.ci-config.outputs.enabled == 'yes'
@@ -469,7 +494,7 @@ jobs:
469494
group: sparse-${{ github.ref }}
470495
cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
471496
steps:
472-
- uses: actions/checkout@v4
497+
- uses: actions/checkout@v5
473498
- name: Install other dependencies
474499
run: ci/install-dependencies.sh
475500
- run: make sparse
@@ -485,6 +510,6 @@ jobs:
485510
CI_JOB_IMAGE: ubuntu-latest
486511
runs-on: ubuntu-latest
487512
steps:
488-
- uses: actions/checkout@v4
513+
- uses: actions/checkout@v5
489514
- run: ci/install-dependencies.sh
490515
- run: ci/test-documentation.sh

.gitlab-ci.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ test:mingw64:
161161
- saas-windows-medium-amd64
162162
before_script:
163163
- *windows_before_script
164-
- choco install -y git meson ninja
164+
- choco install -y git meson ninja rust-ms
165165
- Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1
166166
- refreshenv
167167

@@ -212,6 +212,17 @@ static-analysis:
212212
- ./ci/run-static-analysis.sh
213213
- ./ci/check-directional-formatting.bash
214214

215+
rust-analysis:
216+
image: ubuntu:rolling
217+
stage: analyze
218+
needs: [ ]
219+
variables:
220+
jobname: RustAnalysis
221+
before_script:
222+
- ./ci/install-dependencies.sh
223+
script:
224+
- ./ci/run-rust-checks.sh
225+
215226
check-whitespace:
216227
image: ubuntu:latest
217228
stage: analyze

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
name = "gitcore"
33
version = "0.1.0"
44
edition = "2018"
5+
rust-version = "1.49.0"
56

67
[lib]
78
crate-type = ["staticlib"]

Documentation/BreakingChanges.adoc

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,26 @@ The command will be removed.
295295
+
296296
297297

298+
* Support for `core.preferSymlinkRefs=true` has been deprecated and will be
299+
removed in Git 3.0. Writing symbolic refs as symbolic links will be phased
300+
out in favor of using plain files using the textual representation of
301+
symbolic refs.
302+
+
303+
Symbolic references were initially always stored as a symbolic link. This was
304+
changed in 9b143c6e15 (Teach update-ref about a symbolic ref stored in a
305+
textfile., 2005-09-25), where a new textual symref format was introduced to
306+
store those symbolic refs in a plain file. In 9f0bb90d16
307+
(core.prefersymlinkrefs: use symlinks for .git/HEAD, 2006-05-02), the Git
308+
project switched the default to use the textual symrefs in favor of symbolic
309+
links.
310+
+
311+
The migration away from symbolic links has happened almost 20 years ago by now,
312+
and there is no known reason why one should prefer them nowadays. Furthermore,
313+
symbolic links are not supported on some platforms.
314+
+
315+
Note that only the writing side for such symbolic links is deprecated. Reading
316+
such symbolic links is still supported for now.
317+
298318
== Superseded features that will not be deprecated
299319

300320
Some features have gained newer replacements that aim to improve the design in

Documentation/Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ MAN5_TXT += gitformat-bundle.adoc
3434
MAN5_TXT += gitformat-chunk.adoc
3535
MAN5_TXT += gitformat-commit-graph.adoc
3636
MAN5_TXT += gitformat-index.adoc
37+
MAN5_TXT += gitformat-loose.adoc
3738
MAN5_TXT += gitformat-pack.adoc
3839
MAN5_TXT += gitformat-signature.adoc
3940
MAN5_TXT += githooks.adoc
@@ -122,6 +123,7 @@ TECH_DOCS += technical/bundle-uri
122123
TECH_DOCS += technical/commit-graph
123124
TECH_DOCS += technical/directory-rename-detection
124125
TECH_DOCS += technical/hash-function-transition
126+
TECH_DOCS += technical/large-object-promisors
125127
TECH_DOCS += technical/long-running-process-protocol
126128
TECH_DOCS += technical/multi-pack-index
127129
TECH_DOCS += technical/packfile-uri

0 commit comments

Comments
 (0)