Amin Yahyaabadi
d8a5d20641
fix: downgrade gcovr to 5.2
2024-01-22 02:28:55 -08:00
Amin Yahyaabadi
e05c1f4361
fix: update llvm to 17.0.6
2024-01-22 02:27:21 -08:00
Amin Yahyaabadi
47e4597aa4
test: remove .js extension for typescript files for jest
2024-01-22 02:07:57 -08:00
Amin Yahyaabadi
8b2ab43823
fix: add fs/promises compat for node 12
2024-01-22 01:54:10 -08:00
Amin Yahyaabadi
4c125e89f7
fix: update dependencies
2024-01-22 01:41:20 -08:00
Kefu Chai
3d4cc40549
fix: use higher priority when installing llvm alternatives
...
before this change, gcc and g++ are installed using `updateAptAlternatives()`
with the same priority of 40 when they are installed along with
ld and libstdc++ as the dependencies of clang and llvm. but both
gcc and clang are installed using the same priority of 40 on ubuntu,
and the same applies to g++ and clang++. this renders it impossible
to use the default compilers of cc and cxx when clang/llvm is installed
using setup-cpp on an ubuntu host, as gcc is always prefered over
clang by the update-alternatives, as their priorities are identical.
in this change, the "priority" parameter is added to the setupGcc(),
so that we can specify a different priority when installing llvm.
strictly speaking, this is not necessary. as we can just use a higher
priority when calling updateAptAlternatives() in llvm/llvm.ts. but by
making it more explicit, we can ensure that we always prefer llvm over
gcc when installing llvm.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-01-22 14:25:47 +08:00
Amin Yahyaabadi
7987f9195b
fix: use llvm 17.0.4 on Windows
2023-11-14 11:38:59 -08:00
Amin Yahyaabadi
b532e97a17
fix: update llvm to 17.0.5
2023-11-14 11:15:00 -08:00
Amin Yahyaabadi
0f59570d63
fix: update Conan, Meson, Task
2023-11-14 11:10:02 -08:00
Iain Chesworth
ec2fe0a7d5
Add Ubuntu 22.04 specific default for LLVM 17.0.2
2023-10-21 23:37:19 +11:00
Iain Chesworth
f1914d3936
Update default on Windows to 17.0.3, Linux to 17.0.2, and the "default" to 17.0.3.
2023-10-21 23:31:38 +11:00
Iain Chesworth
0af408ae6a
Add support for LLVM 17 on Windows, Linux.
2023-10-21 23:18:02 +11:00
Amin Yahyaabadi
6a37ff7253
fix: fix grantUserWriteAccess for cpprc
2023-09-11 11:47:10 -07:00
Amin Yahyaabadi
4f69ae3519
feat: use grantUserWriteAccess from admina and await it
2023-09-11 11:05:16 -07:00
Amin Yahyaabadi
17286fce04
fix: specify the major version for clang-format
2023-09-11 09:09:40 -07:00
Amin Yahyaabadi
edd2c831ed
fix: remove pip caching from actions_python
2023-09-11 01:21:43 -07:00
Amin Yahyaabadi
d3a4b94794
fix: choose clang-format before other patches
2023-09-11 00:28:17 -07:00
Amin Yahyaabadi
734bc14554
feat: support only installing clang-format on Ubuntu
2023-09-10 23:58:16 -07:00
Amin Yahyaabadi
96396ce7c5
perf: add dynamically loaded cache-dependencies for actions python
...
This reduces the main bundle size by ⚠️ 1.28 MB minified! This bundle is loaded only when caching is enabled.
`setup-python` is used in [`setup-cpp`](https://github.com/aminya/setup-cpp ) as a library. This optimization reduces the bundle size for that package as well. The build system of `setup-python` uses `ncc`, which doesn't immediately benefit from this change, but setup-cpp uses `Parcel`, which shows this huge improvement.
The reason for this huge reduction is that caching the dependencies uses the `@actions/cache` package, which is an extremely large package with big dependencies. The bundle size before this separation shows this:
![Screenshot_20230907_230625](https://github.com/actions/setup-python/assets/16418197/ec1baf34-85c3-459d-b8cf-894899959b2c )
2023-09-07 23:21:19 -07:00
Amin Yahyaabadi
99191e7285
fix: async grantUserWriteAccess
2023-09-07 13:47:30 -07:00
Amin Yahyaabadi
ff2b1155f8
fix: fix memoization for promises
2023-09-07 13:46:36 -07:00
Amin Yahyaabadi
47a297a43e
fix: use pip index versions to check the existence of a package
2023-09-07 11:27:34 -07:00
Amin Yahyaabadi
af4a6f813e
fix: check for pip existence outside the try/catch loop
2023-09-07 11:04:26 -07:00
Amin Yahyaabadi
3fa4b5925a
fix: use the system package manager instead of pip for standard modules
2023-09-06 21:38:08 -07:00
Amin Yahyaabadi
678aa3361f
fix: use an info level message for reboot requirements for choco
2023-09-06 21:29:38 -07:00
Amin Yahyaabadi
6af571471a
fix: log the pip fallback error
2023-09-06 21:29:20 -07:00
Amin Yahyaabadi
ddbec096fd
fix: fix venv installation warning
2023-09-06 21:18:43 -07:00
Amin Yahyaabadi
8d969d8dbd
test: remove nala after testing it
2023-09-05 12:14:09 -07:00
Amin Yahyaabadi
aa96482204
test: mark the skipped tests in jest
2023-09-04 19:27:23 -07:00
Amin Yahyaabadi
b10559687a
test: fix the gcovr version tests
2023-09-04 19:25:56 -07:00
Amin Yahyaabadi
9303e93d38
fix: update cmake, gcovr, kcov, meson, task, doxygen, gcc
2023-09-03 17:42:40 -07:00
Amin Yahyaabadi
62674fbcdd
tests: skip some msvc installation tests based on the Windows version
2023-09-01 11:23:25 -07:00
Amin Yahyaabadi
86eecc382e
fix: default to LLVM 16 on Windows and Linux
2023-09-01 10:02:59 -07:00
Amin Yahyaabadi
20531c3692
fix: install venv for using pipx
2023-09-01 03:46:12 -07:00
Amin Yahyaabadi
42d3ea447e
fix: add system package manager fallback for pip packages
2023-09-01 03:44:04 -07:00
Amin Yahyaabadi
0916dc5cfb
fix: fix library installation via pip + fix conan
2023-09-01 03:28:05 -07:00
Amin Yahyaabadi
65c4b0f5dc
fix: fix checking for pipx existence
2023-09-01 03:10:24 -07:00
Amin Yahyaabadi
512202e7f4
fix: handle upgrade/user flags for pipx
2023-09-01 03:02:09 -07:00
Amin Yahyaabadi
4e60284097
feat: install python packages using pipx to avoid conflicts with system
2023-09-01 02:49:28 -07:00
Amin Yahyaabadi
1f59ba33f1
fix: use user flag when installing packages via pip
2023-09-01 02:36:39 -07:00
Amin Yahyaabadi
307b9178a3
fix: prevent adding /usr/bin if it is already on the PATH
2023-08-31 22:42:47 -07:00
Amin Yahyaabadi
511e70eef5
test: disable cppcheck test on Windows
2023-08-22 11:45:19 -07:00
Amin Yahyaabadi
95f86c5d8c
tests: disable cppcheck on windows
2023-08-21 23:12:00 -07:00
Amin Yahyaabadi
54cbc0f1bf
fix: fix the timeout conversion and add a custom message
2023-08-21 21:58:10 -07:00
Amin Yahyaabadi
4c53a2d376
fix: ensure constant initialization order
2023-08-21 21:41:17 -07:00
Amin Yahyaabadi
52047bd03a
fix: add timeout for the LLVM installer call
2023-08-21 20:21:34 -07:00
Amin Yahyaabadi
d7596dd449
feat: fail fast inside CI when an error happens
2023-08-21 20:16:33 -07:00
Amin Yahyaabadi
d93dc2b536
feat: add timeout for installation of the tools
2023-08-21 20:11:21 -07:00
Amin Yahyaabadi
99a4fe7118
fix: make llvm installer less verbose for non-debug
2023-08-21 19:29:23 -07:00
Amin Yahyaabadi
bc25e4e3b4
perf: memoize setupLLVMWithoutActivation
2023-07-24 15:48:38 -07:00
Amin Yahyaabadi
10c725c53f
test: remove some long-running duplicate tests for kcov/llvm
2023-07-24 15:48:23 -07:00
Amin Yahyaabadi
f0d23edbf1
fix: update dependencies
2023-07-24 13:20:13 -07:00
abeimler
9af05511cb
Merge branch 'feature/cross-mingw' of https://github.com/abeimler/setup-cpp into feature/cross-mingw
2023-07-20 12:29:20 +02:00
abeimler
f849ee113e
fix: docker mingw build (test)
2023-07-20 12:26:09 +02:00
Amin Yahyaabadi
69ae3d5dd5
fix: report errors if yay is needed but it is not installed
2023-07-20 03:12:39 -07:00
Amin Yahyaabadi
7ccf39eac3
chore: fix linting errors
2023-07-20 02:44:13 -07:00
abeimler
fb48106188
fix: mingw version
2023-07-20 00:26:55 +02:00
abeimler
5ea2c0f2ed
Merge branch 'feature/cross-mingw' of https://github.com/abeimler/setup-cpp into feature/cross-mingw
2023-07-19 23:40:18 +02:00
abeimler
a884ad83aa
Merge branch 'master' of https://github.com/abeimler/setup-cpp into feature/cross-mingw
2023-07-19 23:31:19 +02:00
Amin Yahyaabadi
5f5040c0c8
fix: handle libc++ conflicting packages for LLVM
2023-07-17 22:51:54 -07:00
Amin Yahyaabadi
2e790802d0
fix: fix conflicts between clang apt packages
2023-07-17 14:21:12 -07:00
Amin Yahyaabadi
dd2f1139ce
fix: catch the errors of setupLLVMApt correctly
2023-07-17 13:55:49 -07:00
Amin Yahyaabadi
3206aaa7c3
fix: fix passing the version number to the llvm installer
2023-07-17 13:44:34 -07:00
Amin Yahyaabadi
da1eb59304
fix: install clang-tidy and clang-format as well
2023-07-17 13:29:53 -07:00
Amin Yahyaabadi
60eecceb8a
fix: add the bin directory to the path for llvm installer
2023-07-17 11:44:40 -07:00
Amin Yahyaabadi
c3a7043921
fix: pass the llvm version to the installer
2023-07-17 11:21:11 -07:00
Amin Yahyaabadi
e7304e1143
fix: install the packages needed for the llvm installer
2023-07-17 11:01:22 -07:00
Amin Yahyaabadi
71e227aa5f
fix: fix the path for the ubuntu LLVM installer
2023-07-17 10:15:53 -07:00
Amin Yahyaabadi
b195200069
feat: support llvm 16.0.6
2023-07-16 23:52:38 -07:00
Amin Yahyaabadi
9fa897444d
fix: fix: dnf search
2023-07-16 23:42:25 -07:00
Amin Yahyaabadi
41b2cf629a
feat: support installing multiple dnf packages
2023-07-16 03:12:24 -07:00
Amin Yahyaabadi
dd9ff769c8
fix: refactor LLVM installation
2023-07-16 02:48:34 -07:00
Amin Yahyaabadi
70a091c663
feat: support installing llvm via apt on Ubuntu
2023-07-15 21:46:28 -07:00
Amin Yahyaabadi
3a3a6aeea9
fix: fix nala apt key addition
2023-07-15 18:53:44 -07:00
Amin Yahyaabadi
6326464ed5
fix: nala installation on ubuntu
2023-07-15 18:33:56 -07:00
Amin Yahyaabadi
0b443e82cc
fix: relax and coerce the found pip version
2023-07-15 16:16:34 -07:00
Amin Yahyaabadi
471b55347a
fix: add UTF-8 locale for Nala if it is not already defined
2023-07-06 12:35:54 -07:00
Amin Yahyaabadi
70bf67fc05
feat: install python/pip binaries for python3
2023-07-04 12:30:06 -07:00
Amin Yahyaabadi
4cbbb57e1f
feat: upgrade setup-tools and refactor package installer
2023-07-04 12:29:30 -07:00
Amin Yahyaabadi
b5439543fd
fix: check all the python/pip binaries on the PATH
2023-06-29 13:58:48 -07:00
Amin Yahyaabadi
d841abd854
fix: set the minimum python version 3.7.9
2023-06-29 13:49:06 -07:00
Amin Yahyaabadi
5ab4d6a34d
fix: refactor checking for python binary
2023-06-29 13:21:36 -07:00
Amin Yahyaabadi
130062b173
fix: use min versions instead of default versions
2023-06-28 17:23:48 -07:00
Amin Yahyaabadi
67a5cc536b
fix: do not pani on addAptKey server errors
2023-06-28 16:45:32 -07:00
Amin Yahyaabadi
201ecd0a36
feat: upgrade pip after system installation
2023-06-28 16:43:01 -07:00
Amin Yahyaabadi
43600ff17c
fix: remove unused addPythonBaseExecPrefix
2023-06-28 16:20:43 -07:00
Amin Yahyaabadi
9aecf4658e
fix: parallel findPython and findPip
2023-06-28 16:19:00 -07:00
Amin Yahyaabadi
f708497511
fix: memoize ubuntuVersion and use it everywhere
2023-06-28 16:06:31 -07:00
Amin Yahyaabadi
cfa0cc5326
feat: support ubuntu version on Ubuntu-based distros
2023-06-28 16:04:33 -07:00
Amin Yahyaabadi
76c4891c79
fix: fix setupPipSystem
2023-06-28 15:46:43 -07:00
Amin Yahyaabadi
09fad1b45b
feat: use the setupDir in findPython
2023-06-28 15:44:25 -07:00
Amin Yahyaabadi
f6ebfc1d77
fix: memoize addPythonBaseExecPrefix
2023-06-28 15:22:03 -07:00
Amin Yahyaabadi
08aaab1859
feat: add execPaths when installing python
2023-06-28 15:16:31 -07:00
Amin Yahyaabadi
6637fda894
feat: install pip and wheel in all cases
2023-06-28 15:10:33 -07:00
Amin Yahyaabadi
0f6b349a1e
feat: more robust pip installation and upgrade
2023-06-28 14:45:15 -07:00
Amin Yahyaabadi
7039a1a602
feat: improve pip installation and detection
2023-06-27 17:10:13 -07:00
Amin Yahyaabadi
24a5993a98
fix: handle edge-cases for default versions
2023-06-14 00:47:34 -07:00
Amin Yahyaabadi
18a5143dce
fix: make sure the tool has a default version before using it
2023-06-14 00:22:24 -07:00
Amin Yahyaabadi
775ff238d7
feat: improve default versions for non-LTS ubuntus
2023-06-14 00:15:13 -07:00
Amin Yahyaabadi
aa57ff04be
feat: use a table to print the available options in the cli [skip test]
2023-05-26 11:19:46 -07:00