Commit Graph

359 Commits

Author SHA1 Message Date
Frédéric FRANCE
3cd1ab2c5e
Update windows-ci.yml for branch 20 (#31800) 2024-11-13 21:20:27 +01:00
Frédéric FRANCE
072683ffe7
Update phpstan.neon.dist for branch 20.0 (#31795)
* Update phpstan.neon.dist

* Update phpstan.yml

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-11-13 15:26:29 +01:00
Laurent Destailleur
214642f603 Do not run windows-ci is phpstan is ko 2024-11-13 13:32:30 +01:00
Laurent Destailleur
bc118020b3 Rename CI main jobs 2024-11-13 13:03:33 +01:00
Laurent Destailleur
85108b974f Split ci sheduler in 2 files 2024-11-13 12:54:42 +01:00
Laurent Destailleur
e04ca76103 Doc github actions 2024-11-13 12:49:30 +01:00
Laurent Destailleur
a0ef0f2de5 Try to run windows-ci only if travis ok first. 2024-11-13 12:37:28 +01:00
MDW
d8a980444a
Flow: Setup mariadb after restoring cache (#31274)
# Flow: Setup mariadb after restoring cache

To use the cache, it has to be restored first.  The original
order of actions did not enable the reuse of the mariadb
executable from cache
2024-10-06 13:55:48 +02:00
MDW
d31baf0b99
(Re)store mariadb setup executable from/to cache (#31263)
# (Re)store mariadb setup executable from/to cache

After adding cachability for setup-mariadb on the fork of that action,
use the feature
2024-10-04 08:50:09 +02:00
Frédéric FRANCE
a6c93a5306
Update windows-ci.yml for branch 20.0 (#31258)
waiting official fix for action
2024-10-03 19:31:20 +02:00
MDW
5b3f55a48c
Qual: Fix caching for windows workflow (#30705) (#30728)
* Qual: Adjust cache configuration for windows-ci

# Qual: Adjust cache configuration for windows-ci

actions/cache@v4 is flawed on windows, try suggestions from issue
discussion to fix it.
https://github.com/actions/cache/issues/1361
.

* Make cache key depend on install path directory
2024-08-23 15:17:25 +02:00
Laurent Destailleur
2bd6b32974 Doc 2024-04-29 11:08:55 +02:00
Laurent Destailleur
ca65e9a333 QUAL the config_extended of phpstan will be kept on apstats only for the
moment: Too many CTI error not related to PR.
2024-04-24 21:44:58 +02:00
MDW
fad3e2d2bf
QUAL: Add sqlfluff (SQL code and style check) (#29097)
* QUAL: Add sqlfluff (SQL code and style check)

# QUAL: Add sqlfluff (SQL code and style check)

This adds a validity and style check on the .sql files.
The same tool can be used to fix style (which can be set up as a
pre-commit hook).

* Ignore some sqlfluff notices

* Ignore RF04 notice, warning about the use of sql keywords

* Adjust dialects for some directories
2024-04-16 01:23:27 +02:00
Laurent Destailleur
8a942a632d
Merge pull request #29165 from Dolibarr/dependabot/github_actions/mdeweerd/logToCheckStyle-2024.3.5
Bump mdeweerd/logToCheckStyle from 2024.3.4 to 2024.3.5
2024-04-02 11:54:23 +02:00
dependabot[bot]
0580966d67
Bump mdeweerd/logToCheckStyle from 2024.3.4 to 2024.3.5
Bumps [mdeweerd/logToCheckStyle](https://github.com/mdeweerd/logtocheckstyle) from 2024.3.4 to 2024.3.5.
- [Commits](https://github.com/mdeweerd/logtocheckstyle/compare/v2024.3.4...v2024.3.5)

---
updated-dependencies:
- dependency-name: mdeweerd/logToCheckStyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 05:52:18 +00:00
dependabot[bot]
352b895639
Bump tj-actions/changed-files from 43 to 44
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 43 to 44.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v43...v44)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-01 05:52:16 +00:00
MDW
ca36c740e5
"Qual: Add dependencies between workflows
# Qual: Add dependencies between workflows

Run costly workflows only after a few workflows succeed
(pre-commit, phan).
2024-03-22 09:50:42 +01:00
MDW
dc15b2ee79
Qual: Bump logToCheckStyle for better filename handling
# Qual: Bump logToCheckStyle for better filename handling

Some notifications from the PHPCS step in pre-commit extracted too many
characters for the filename in a specific case.
The update to logToCheckStyle fixes that.
2024-03-20 21:57:08 +01:00
MDW
4785ed1fbf
Qual: Cleanup windows-ci.yaml file 2024-03-19 03:43:35 +01:00
MDW
4de8ce0a62
Apply open_basedir during setup 2024-03-19 03:43:34 +01:00
Laurent Destailleur
4768243bf4
Merge pull request #28956 from Dolibarr/dependabot/github_actions/mdeweerd/logToCheckStyle-2024.3.2
Bump mdeweerd/logToCheckStyle from 2024.2.9 to 2024.3.2
2024-03-19 02:09:55 +01:00
Laurent Destailleur
db0dd76571
Merge pull request #28934 from Dolibarr/dependabot/github_actions/tj-actions/changed-files-43
Bump tj-actions/changed-files from 42 to 43
2024-03-19 01:54:46 +01:00
dependabot[bot]
35670de57c
Bump mdeweerd/logToCheckStyle from 2024.2.9 to 2024.3.2
Bumps [mdeweerd/logToCheckStyle](https://github.com/mdeweerd/logtocheckstyle) from 2024.2.9 to 2024.3.2.
- [Commits](https://github.com/mdeweerd/logtocheckstyle/compare/v2024.2.9...2024.3.2)

---
updated-dependencies:
- dependency-name: mdeweerd/logToCheckStyle
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-19 00:45:11 +00:00
MDW
c9e7fc0ca4 Qual: Update logToCheckStyle to version that extracts PHP Fatal Errors 2024-03-18 23:48:05 +01:00
MDW
a08f330ca7 Qual: Always run phpcin pre-commit workflow
# Qual: Always run phpcs in pre-commit workflow

Developers are prioritizing the Travis Run because the pre-commit workflow
only runs the phpcs checks if the other pre-commit checks did not fail.
This modifies the action so that the phpcs checks are also run if the
previous step failed.

That should help limit travis load and delays.
2024-03-18 23:48:05 +01:00
dependabot[bot]
e72c596223
Bump tj-actions/changed-files from 42 to 43
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 42 to 43.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v42...v43)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 05:12:50 +00:00
MDW
289621c739
Qual/Fix Win-CI Check that the PHPUNIT step really completed
# Qual/Fix Win-CI Check that the PHPUNIT step really completed

The program under test can abruptly abort the PHPUNIT test case by calling
exit which results in no error code - it then appears as if the test was
successful.
This adds a grep on the last lines looking for the summary information from
phpunit.
If absent, the step fails
2024-03-16 23:20:58 +01:00
MDW
325cb587f6
Qual: Exclude some tests from windows-ci until fixed
# Qual: Exclude some tests from windows-ci until fixed

Until #28598 and #28264 find some way to the develop branch, this update will
skip the tests that currently fail on windows so that the results of other
tests have an effect on the CI status and github annotations
2024-03-11 20:46:21 +01:00
MDW
ec0fd31386
Fix phpstan workflow file (#28741)
* Fix phpstan workflow file

# Fix phpstan workflow file

Line was split in two, joined

* qual: set memory limit to 'unlimited' (-1)

* Remove some stubs to check impact

* Fix: Verify execution time limit

* Remove stub files to reuse cache

* Qual: Rename distribution phpstan.neon to phpstan.neon.dist

# Qual: Rename distribution phpstan.neon to phpstan.neon.dist

This allows the developer to override some settings locally

Also update the .gitignore file with phpstan.neon and some other other
ignores (cache, local log files, temporary edit files).

* Enable debug on phpstan

* Re-enable stubs

* Fix: Change parallel settings to defaults, remove buffer

'buffer' is not a documented parameter, removing it.
Removing some configuration settings as the defaults are higher and
should adapt better to the target machine
2024-03-11 14:04:02 +01:00
MDW
4c442de1a2
Qual: Add phan stub files to phpstan configuration (#28730)
* Qual: Add phan stub files to phpstan configuration

* Provide log as artifact (for debug), improve CACHE_KEY
2024-03-10 02:00:41 +01:00
MDW
dc72cd390b
Qual: Clean up caches when PR is closed (#28648)
# Qual: Clean up caches when PR is closed

This will clean up caches when a PR is closed.

This requires that `actions:write` is enabled.

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-03-05 16:31:45 +01:00
MDW
b30dd4e707
Fix: Cache issue in windows-ci - add enableCrossOsArchive (#28607)
# Fix: Cache issue in windows-ci - add enableCrossOsArchive

There is an issue in actions/cache on windows and adding 'enableCrossOsArchive: true'
should fix it according to
https://github.com/actions/cache/issues/1275#issuecomment-1925217178
2024-03-04 18:28:24 +01:00
MDW
1e41588cfe
Fix: Improve cache key generation for windows-ci (#28602)
# Fix: Improve cache key generation for windows-ci

Caches did not restore as expected.  This change attemps to fix it.
2024-03-03 18:40:30 +01:00
Laurent Destailleur
ff0eea8ce6 Removed field that are never filled 2024-03-02 16:56:04 +01:00
Laurent Destailleur
fa27adec1b Clean trans 2024-03-02 16:52:12 +01:00
MDW
6115d58f47
Qual: Optimize workflow (#28386)
# Qual: Optimize workflow

The log annotation based on the pre-commit logs is now simplified.
2024-02-23 20:05:29 +01:00
MDW
8655d5a86b
QUAL Use phan to help detect new issues (#27706)
* Qual: Add phan flow

- Add phan configuration (config, baseline, stubs);
- Add github action;
- Update apstats.php.

* Add directives to ignore false phan notices

* Qual: Add typing hints for extrafields TPL files

# Qual: Add typing hints for extrafields TPL files

Add typing hints for phan on view files

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-02-21 18:14:29 +01:00
Laurent Destailleur
4a68630fba Clean exakat 2024-02-21 14:55:44 +01:00
MDW
af01b3d73a
Qual: Re-enable open_basedir restriction in tests (#28315)
* Fix: Workaround for false security issue in tests

# Fix: Workaround for false security issue in tests

This is a quick workaround for the false security issues in tests
by setting the ['SELF'] variable to something that is
considered harmless

* Update windows-ci workflow

# Update windows-ci workflow

- Setup_conf.sh - Added caching feature;
- phpunit.bat - Example updated based on experience with php web server
- Provide dolibarr.log and phpunit output as artefacts.
- Convert PHPUNIT log to Github Annotations
- Setup php web server for API tests
- Enable caching sql initialisation

* Qual: Re-enable open_basedir restriction in tests

# Qual: Re-enable open_basedir restriction in tests

Using open_basedir restriction is closer to the production reality
and seemed to generate some issues on a windows development machine.

---------

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-02-21 13:57:05 +01:00
Laurent Destailleur
61f571a367 Avoir error 2024-02-20 18:55:38 +01:00
MDW
e5423d5c59
Qual: Add exceptions for codespell (#28186)
* Dev: Add setup scripts for phpunit/database

# Dev: Add setup scripts for phpunit/database

Some scripts that helped to setup some unit testing.

* NEW Add Windows ci workflow

# NEW Add Windows ci workflow

This adds a workflow to execute ci on a windows platform

* Disable open_basedir for now, to test effect

* Qual: Exclude documents directory from codespell

# Qual: Exclude documents directory from codespell

Documents directory may be present during development (unit tests).
Do not check spelling there

* Qual: Add codespell exceptions

# Qual: Add codespell exceptions

Add new exceptions to codespell (var identified as misspelling).
2024-02-15 14:49:09 +01:00
MDW
a68f6ed0d1
Qual: Improve caching for phpstan (#28180)
# Qual: Improve caching for phpstan

The phpstan step does not seem to always choose the best cache.
This configuration update adds the target branch to the restore
feature.
Maybe it is more selective and better.
2024-02-15 13:55:54 +01:00
MDW
7a389299c3
Qual: ci: Run pre-commit/php-cs with cache (#28079)
This adds a hook to .pre-commit-config.yaml and updates the workflow
to run php-cs with cache when it is run for all files.
When running on changed files only, the cache is not useful.

The php-codesniffer ruleset.xml was cleaned up (duplicates removal/formatted)
2024-02-10 01:22:07 +01:00
MDW
0394c2bea9
Qual: disable PHPCS action (now performed by pre-commit) (#28097)
# Qual: disable PHPCS action (now performed by pre-commit)

The php-cs analysis is now ensured by pre-commit which does analysis
on changed files in PR's and full analysis in the main branches.

It also provides better reports (PHPCS did not report all the issues
seen in travis).
2024-02-09 18:57:27 +01:00
MDW
828496776b
Qual: pre-commit: run phpcs on all files in 'main' branches. (#28018) (#28067)
This change to the workflow will run phpcs on all files in develop,
17.0, 18.0, ... (rule== branch ends in .0).

This ensures that phpcs is run in a github workflow for fast phpcs
issue detection in the develop and other main branches.

Ultimately, this means that the PHPCS action can be disabled
in branches where it is active.  But I propose to verify that
the updated action does the job as expected (tested in a fork
it is ok).

Co-authored-by: Laurent Destailleur <eldy@destailleur.fr>
2024-02-08 13:57:05 +01:00
Laurent Destailleur
40f18f5577 Try to use a unique id 2024-02-02 13:56:11 +01:00
MDW
ea9f9c5bee Qual: Make phpcs messages in pre-commit extractable.
# Qual: Make phpcs messages in pre-commit extractable.

To make messages extractable for annotation when phpcs is run in pre-commit,
change the report style to emacs.
Also had to update logToCs.py.

Using checkstyle directly as an option would not make the output readable
when pre-commit is run from the CLI, on commit.
2024-01-29 11:33:28 +01:00
MDW
4c077ebc4e Fix: pre-commit - install required phpcs
# Fix: pre-commit - install required phpcs
2024-01-28 16:07:43 +01:00
MDW
14b14a3b0f Add --files to pre-commit call for selected files 2024-01-28 16:07:43 +01:00