Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion p4-fusion/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,6 @@ target_link_libraries(p4-fusion PUBLIC
p4script_cstub
${OPENSSL_SSL_LIBRARIES}
${OPENSSL_CRYPTO_LIBRARIES}
git2
libgit2package
minitrace
)
92 changes: 92 additions & 0 deletions vendor/libgit2/.clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# This file is an example configuration for clang-format 5.0.
#
# Note that this style definition should only be understood as a hint
# for writing new code. The rules are still work-in-progress and does
# not yet exactly match the style we have in the existing code.

# C Language specifics
Language: Cpp

# Use tabs whenever we need to fill whitespace that spans at least from one tab
# stop to the next one.
#
# These settings are mirrored in .editorconfig. Keep them in sync.
UseTab: ForIndentation
TabWidth: 8
IndentWidth: 8
ContinuationIndentWidth: 8
ColumnLimit: 80

AlignAfterOpenBracket: AlwaysBreak
AlignEscapedNewlines: Left
AlignTrailingComments: false

# Allow putting parameters onto the next line
AllowAllArgumentsOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false

# Don't allow short braced statements to be on a single line
# if (a) not if (a) return;
# return;
AllowShortBlocksOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortLoopsOnASingleLine: false
AllowShortLambdasOnASingleLine: None

# Pack as many parameters or arguments onto the same line as possible
# int myFunction(int aaaaaaaaaaaa, int bbbbbbbb,
# int cccc);
BinPackArguments: true
BinPackParameters: false

BreakBeforeBraces: Linux
BreakBeforeBinaryOperators: None
BreakBeforeTernaryOperators: false
BreakStringLiterals: false

# The number of spaces before trailing line comments (// - comments).
# This does not affect trailing block comments (/* - comments).
SpacesBeforeTrailingComments: 1

# Don't insert spaces in casts
# x = (int32) y; not x = ( int32 ) y;
SpacesInCStyleCastParentheses: false

# Don't insert spaces inside container literals
# var arr = [1, 2, 3]; not var arr = [ 1, 2, 3 ];
SpacesInContainerLiterals: false

# Don't insert spaces after '(' or before ')'
# f(arg); not f( arg );
SpacesInParentheses: false

# Don't insert spaces after '[' or before ']'
# int a[5]; not int a[ 5 ];
SpacesInSquareBrackets: false

# Insert a space after '{' and before '}' in struct initializers
Cpp11BracedListStyle: false

# A list of macros that should be interpreted as foreach loops instead of as
# function calls.
ForEachMacros:
- 'git_array_foreach'
- 'git_vector_foreach'

# The maximum number of consecutive empty lines to keep.
MaxEmptyLinesToKeep: 1

# No empty line at the start of a block.
KeepEmptyLinesAtTheStartOfBlocks: false

# Penalties
# This decides what order things should be done if a line is too long
PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 30
PenaltyBreakComment: 10
PenaltyBreakFirstLessLess: 0
PenaltyBreakString: 10
PenaltyExcessCharacter: 100
PenaltyReturnTypeOnItsOwnLine: 60

SortIncludes: false
2 changes: 2 additions & 0 deletions vendor/libgit2/.gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
* text=auto
ci/**/*.sh text eol=lf
script/**/*.sh text eol=lf
tests/resources/** linguist-vendored
109 changes: 109 additions & 0 deletions vendor/libgit2/.github/actions/download-or-build-container/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
# Run a build step in a container or directly on the Actions runner
name: Download or Build Container
description: Download a container from the package registry, or build it if it's not found

inputs:
container:
description: Container name
type: string
required: true
dockerfile:
description: Dockerfile
type: string
base:
description: Container base
type: string
registry:
description: Docker registry to read and publish to
type: string
default: ghcr.io
config-path:
description: Path to Dockerfiles
type: string
github_token:
description: GitHub Token
type: string

runs:
using: 'composite'
steps:
- name: Download container
run: |
IMAGE_NAME="${{ inputs.container }}"
DOCKERFILE_PATH="${{ inputs.dockerfile }}"
DOCKER_REGISTRY="${{ inputs.registry }}"
DOCKERFILE_ROOT="${{ inputs.config-path }}"

if [ "${DOCKERFILE_PATH}" = "" ]; then
DOCKERFILE_PATH="${DOCKERFILE_ROOT}/${IMAGE_NAME}"
else
DOCKERFILE_PATH="${DOCKERFILE_ROOT}/${DOCKERFILE_PATH}"
fi

GIT_WORKTREE=$(cd "${GITHUB_ACTION_PATH}" && git rev-parse --show-toplevel)
echo "::: git worktree is ${GIT_WORKTREE}"
cd "${GIT_WORKTREE}"

DOCKER_CONTAINER="${GITHUB_REPOSITORY}/${IMAGE_NAME}"
DOCKER_REGISTRY_CONTAINER="${DOCKER_REGISTRY}/${DOCKER_CONTAINER}"

echo "dockerfile=${DOCKERFILE_PATH}" >> $GITHUB_ENV
echo "docker-container=${DOCKER_CONTAINER}" >> $GITHUB_ENV
echo "docker-registry-container=${DOCKER_REGISTRY_CONTAINER}" >> $GITHUB_ENV

# Identify the last git commit that touched the Dockerfiles
# Use this as a hash to identify the resulting docker containers
echo "::: dockerfile path is ${DOCKERFILE_PATH}"

DOCKER_SHA=$(git log -1 --pretty=format:"%h" -- "${DOCKERFILE_PATH}")
echo "docker-sha=${DOCKER_SHA}" >> $GITHUB_ENV

echo "::: docker sha is ${DOCKER_SHA}"

DOCKER_REGISTRY_CONTAINER_SHA="${DOCKER_REGISTRY_CONTAINER}:${DOCKER_SHA}"

echo "docker-registry-container-sha=${DOCKER_REGISTRY_CONTAINER_SHA}" >> $GITHUB_ENV
echo "docker-registry-container-latest=${DOCKER_REGISTRY_CONTAINER}:latest" >> $GITHUB_ENV

echo "::: logging in to ${DOCKER_REGISTRY} as ${GITHUB_ACTOR}"

exists="true"
docker login https://${DOCKER_REGISTRY} -u ${GITHUB_ACTOR} -p ${GITHUB_TOKEN} || exists="false"

echo "::: pulling ${DOCKER_REGISTRY_CONTAINER_SHA}"

if [ "${exists}" != "false" ]; then
docker pull ${DOCKER_REGISTRY_CONTAINER_SHA} || exists="false"
fi

if [ "${exists}" = "true" ]; then
echo "::: docker container exists in registry"
echo "docker-container-exists=true" >> $GITHUB_ENV
else
echo "::: docker container does not exist in registry"
echo "docker-container-exists=false" >> $GITHUB_ENV
fi
shell: bash
env:
GITHUB_TOKEN: ${{ inputs.github_token }}
- name: Create container
run: |
if [ "${{ inputs.base }}" != "" ]; then
BASE_ARG="--build-arg BASE=${{ inputs.base }}"
fi

GIT_WORKTREE=$(cd "${GITHUB_ACTION_PATH}" && git rev-parse --show-toplevel)
echo "::: git worktree is ${GIT_WORKTREE}"
cd "${GIT_WORKTREE}"

docker build -t ${{ env.docker-registry-container-sha }} --build-arg UID=$(id -u) --build-arg GID=$(id -g) ${BASE_ARG} -f ${{ env.dockerfile }} .
docker tag ${{ env.docker-registry-container-sha }} ${{ env.docker-registry-container-latest }}
shell: bash
working-directory: source/${{ inputs.config-path }}
if: env.docker-container-exists != 'true'
- name: Publish container
run: |
docker push ${{ env.docker-registry-container-sha }}
docker push ${{ env.docker-registry-container-latest }}
shell: bash
if: env.docker-container-exists != 'true' && github.event_name != 'pull_request'
51 changes: 51 additions & 0 deletions vendor/libgit2/.github/actions/run-build/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Run a build step in a container or directly on the Actions runner
name: Run Build Step
description: Run a build step in a container or directly on the Actions runner

inputs:
command:
description: Command to run
type: string
required: true
container:
description: Optional container to run in
type: string
container-version:
description: Version of the container to run
type: string
shell:
description: Shell to use
type: string
required: true
default: 'bash'

runs:
using: 'composite'
steps:
- run: |
if [ -n "${{ inputs.container }}" ]; then
docker run \
--rm \
--user "$(id -u):$(id -g)" \
-v "$(pwd)/source:/home/libgit2/source" \
-v "$(pwd)/build:/home/libgit2/build" \
-w /home/libgit2 \
-e ASAN_SYMBOLIZER_PATH \
-e CC \
-e CFLAGS \
-e CMAKE_GENERATOR \
-e CMAKE_OPTIONS \
-e GITTEST_NEGOTIATE_PASSWORD \
-e GITTEST_FLAKY_STAT \
-e PKG_CONFIG_PATH \
-e SKIP_NEGOTIATE_TESTS \
-e SKIP_SSH_TESTS \
-e SKIP_PUSHOPTIONS_TESTS \
-e TSAN_OPTIONS \
-e UBSAN_OPTIONS \
${{ inputs.container-version }} \
/bin/bash -c "${{ inputs.command }}"
else
${{ inputs.command }}
fi
shell: ${{ inputs.shell != '' && inputs.shell || 'bash' }}
17 changes: 16 additions & 1 deletion vendor/libgit2/.github/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,33 @@ changelog:
- title: New features
labels:
- feature
- title: Performance improvements
labels:
- performance
- title: Bug fixes
labels:
- bug
- title: Security fixes
labels:
- security
- title: Code cleanups
labels:
- cleanup
- title: CI improvements
- title: Build and CI improvements
labels:
- build
- title: Documentation improvements
labels:
- documentation
- title: Platform compatibility fixes
labels:
- compatibility
- title: Git compatibility fixes
labels:
- git compatibility
- title: Dependency updates
labels:
- dependency
- title: Other changes
labels:
- '*'
Loading
Loading