File tree Expand file tree Collapse file tree 6 files changed +129
-4681
lines changed Expand file tree Collapse file tree 6 files changed +129
-4681
lines changed Original file line number Diff line number Diff line change
1
+ name : Continual Integration
2
+
3
+ on :
4
+ workflow_dispatch :
5
+ push :
6
+ branches :
7
+ - main
8
+ - feature/**
9
+ - bugfix/**
10
+ - dependabot/**
11
+
12
+ jobs :
13
+ phpunit :
14
+ name : PHPUnit (PHP ${{ matrix.php-versions }}, Laravel ${{ matrix.laravel-versions }})
15
+
16
+ runs-on : ubuntu-latest
17
+
18
+ strategy :
19
+ fail-fast : false
20
+ matrix :
21
+ php-versions : ['8.1', '8.2', '8.3']
22
+ laravel-versions : ['9.*', '10.*', '11.*', '12.*']
23
+ exclude :
24
+ - php-versions : ' 8.1'
25
+ laravel-versions : ' 11.*' # Laravel 11 typically requires PHP 8.2+
26
+ - php-versions : ' 8.1'
27
+ laravel-versions : ' 12.*' # Laravel 12 typically requires PHP 8.2+
28
+
29
+ steps :
30
+ - name : Checkout code
31
+ uses : actions/checkout@v4
32
+
33
+ - name : Setup PHP
34
+ uses : shivammathur/setup-php@v2
35
+ with :
36
+ php-version : ${{ matrix.php-versions }}
37
+
38
+ - name : Validate composer files
39
+ run : composer validate --strict
40
+
41
+ - name : Cache Composer dependencies
42
+ uses : actions/cache@v4
43
+ with :
44
+ path : vendor
45
+ key : ${{ runner.os }}-php-${{ matrix.php-versions }}-laravel-${{ matrix.laravel-versions }}
46
+ restore-keys : |
47
+ ${{ runner.os }}-php-${{ matrix.php-versions }}-laravel-${{ matrix.laravel-versions }}
48
+ ${{ runner.os }}-php-${{ matrix.php-versions }}-laravel-
49
+ ${{ runner.os }}-php-${{ matrix.php-versions }}-
50
+
51
+ - name : Install Composer dependencies
52
+ run : |
53
+ composer install --prefer-dist --no-progress --no-interaction
54
+ composer update "illuminate/support:${{ matrix.laravel-versions }}" "illuminate/container:${{ matrix.laravel-versions }}" --with-all-dependencies --prefer-dist --no-progress --no-interaction
55
+
56
+ - name : Run PHPUnit tests
57
+ run : vendor/bin/phpunit
Original file line number Diff line number Diff line change 1
1
# Composer
2
2
/vendor /
3
+ composer.lock
3
4
4
5
# IDE
5
6
.idea
13
14
14
15
# Test Coverage
15
16
/test-reports
17
+
18
+ # OS
19
+ .DS_Store
Original file line number Diff line number Diff line change
1
+ FROM php:8.4-cli
2
+
3
+ RUN apt-get update && apt-get install -y \
4
+ git \
5
+ unzip \
6
+ $PHPIZE_DEPS \
7
+ && rm -rf /var/lib/apt/lists/*
8
+
9
+ RUN pecl install pcov && docker-php-ext-enable pcov
10
+
11
+ RUN echo "pcov.enabled=1" > /usr/local/etc/php/conf.d/99-pcov.ini
12
+
13
+ COPY --from=composer/composer:latest-bin /composer /usr/local/bin/composer
14
+
15
+ WORKDIR /app
Original file line number Diff line number Diff line change
1
+
2
+ IMAGE_NAME := json-diff
3
+ CURRENT_DIR := $(shell pwd)
4
+
5
+ .PHONY : help
6
+
7
+ # COLORS
8
+ GREEN := $(shell tput -Txterm setaf 2)
9
+ YELLOW := $(shell tput -Txterm setaf 3)
10
+ WHITE := $(shell tput -Txterm setaf 7)
11
+ RESET := $(shell tput -Txterm sgr0)
12
+
13
+ TARGET_MAX_CHAR_NUM =20
14
+
15
+ # # Show help
16
+ help :
17
+ @echo ' '
18
+ @echo ' Usage:'
19
+ @echo ' ${YELLOW}make${RESET} ${GREEN}<target>${RESET}'
20
+ @echo ' '
21
+ @echo ' Targets:'
22
+ @awk ' /^[a-zA-Z\-\_0-9]+:/ { \
23
+ helpMessage = match(lastLine, /^# # (.*)/); \
24
+ if (helpMessage) { \
25
+ helpCommand = substr($$ 1, 0, index($$ 1, " :" )-1); \
26
+ helpMessage = substr(lastLine, RSTART + 3, RLENGTH); \
27
+ printf " ${YELLOW} %-$( TARGET_MAX_CHAR_NUM) s${RESET} ${GREEN} %s${RESET} \n" , helpCommand, helpMessage; \
28
+ } \
29
+ } \
30
+ { lastLine = $$ 0 }' $(MAKEFILE_LIST)
31
+
32
+ # # Start and log into the container
33
+ up : build run
34
+
35
+ # # Build a new version of the container
36
+ build :
37
+ @docker build -t $(IMAGE_NAME ) .
38
+
39
+ # # Run the existing container
40
+ run :
41
+ @docker run -it --rm -v " $( CURRENT_DIR) :/app" $(IMAGE_NAME ) bash
Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " covergenius/json-diff" ,
3
+ "description" : " JSON Diff" ,
3
4
"type" : " library" ,
4
- "license" : " GNUv3 " ,
5
+ "license" : " GPL-3.0-only " ,
5
6
"autoload" : {
6
7
"psr-4" : {
7
8
"Jet\\ JsonDiff\\ " : " src/"
20
21
},
21
22
"authors" : [
22
23
{
23
- "name" : " Jet Lim and Ruben Funai"
24
+ "name" : " Jet Lim"
25
+ },
26
+ {
27
+ "name" : " Ruben Funai"
24
28
}
25
29
],
26
30
"require" : {
27
31
"php" : " ^8.0" ,
28
- "illuminate/support" : " ^9.0 || ^10.0" ,
29
- "illuminate/container" : " ^9.0 || ^10.0"
32
+ "illuminate/support" : " ^9.0 || ^10.0 || ^11.0 || ^12.0 " ,
33
+ "illuminate/container" : " ^9.0 || ^10.0 || ^11.0 || ^12.0 "
30
34
},
31
35
"require-dev" : {
32
36
"phpunit/phpunit" : " ^9.6" ,
41
45
"lint" : [
42
46
" php-cs-fixer fix -v"
43
47
],
44
- "test:with- coverage" : [
48
+ "test:coverage" : [
45
49
" phpunit --coverage-html ./test-reports"
50
+ ],
51
+ "test" : [
52
+ " phpunit"
46
53
]
47
54
}
48
55
}
You can’t perform that action at this time.
0 commit comments