Commit Graph

118 Commits

Author SHA1 Message Date
Amin Yahyaabadi d316735ce5
fix: fisrt check python binary instead of python3
To avoid preferring brew over system python
2024-09-17 17:17:23 -07:00
Amin Yahyaabadi 3a8e462ed6
fix: manually memoize getPython 2024-09-17 15:49:19 -07:00
Amin Yahyaabadi 99db11072d
feat: skip installation of pip/pipx packages if already installed 2024-09-17 15:32:20 -07:00
Amin Yahyaabadi 22ad634883
fix(llvm): set LLVM_CPPFLAGS/LDFLAGS instead of CPPFLAGS/LDFLAGS 2024-09-17 12:06:23 -07:00
Amin Yahyaabadi 3e4a96d3c7
fix: use patha only when needed 2024-09-04 02:04:32 -07:00
Amin Yahyaabadi 8302e555d2
fix: do not use __dirname 2024-09-04 00:56:29 -07:00
Amin Yahyaabadi c17f568574
fix: fix timeouts by using memoizee 2024-08-29 16:12:54 -07:00
Amin Yahyaabadi 19bf09e888
feat!: support addAptKey options through installAptPack
BREAKING no default keys are added during apt installations anymore. Explicitly pass the keys needed.
BREAKING the arguments to addAptKeyViaServer and addAptKeyViaDownload has changed. addAptKeyViaDownload renamed to addAptKeyViaURL
2024-08-28 13:55:40 -07:00
Amin Yahyaabadi f2d212e7ec
feat: introduce setup-brew package 2024-08-23 15:20:37 -07:00
Amin Yahyaabadi d3b2f3531c
fix!: rename os-env to envosman due to npm conflict 2024-08-16 02:56:38 -07:00
Amin Yahyaabadi dc74686724
feat: add setup-apt package for all the apt utils 2024-08-16 01:50:32 -07:00
Amin Yahyaabadi 08cf20cc0e
fix: add js file extension for all relative imports 2024-08-15 15:22:07 -07:00
Amin Yahyaabadi 33c1974e70
fix: use default pnpm configuration 2024-08-15 15:02:03 -07:00
Amin Yahyaabadi 771228c4ae
feat!: add guard and source RC options for os-env 2024-08-14 19:07:39 -07:00
Amin Yahyaabadi 77e643057d
feat: add os-env package for managing path, env, rc files 2024-08-14 18:22:33 -07:00
Amin Yahyaabadi c75a134b9c
fix: add default search paths for python on Windows 2024-08-07 14:01:14 -07:00
Amin Yahyaabadi 45a40e9d95
fix: throw an error if could not find the python binary 2024-08-07 13:59:07 -07:00
Amin Yahyaabadi 4ab758d47f
fix: add biome linter + fix the issues 2024-08-06 23:44:32 -07:00
Amin Yahyaabadi cceb0f93f2
fix: fix all the eslint issues 2024-04-09 23:58:48 -07:00
Amin Yahyaabadi 15f5776d5f lint: use dprint for formatting 2024-04-03 00:15:43 -07:00
Amin Yahyaabadi 5eefa3d4ef fix: install pipx using apt without a prefix on Linux 2024-02-14 04:16:39 -08:00
Amin Yahyaabadi 0324d60e51
test: use the correct python binary name on darwin 2024-01-24 14:20:55 -08:00
Amin Yahyaabadi d8a5d20641
fix: downgrade gcovr to 5.2 2024-01-22 02:28:55 -08:00
Amin Yahyaabadi edd2c831ed fix: remove pip caching from actions_python 2023-09-11 01:21:43 -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 ff2b1155f8 fix: fix memoization for promises 2023-09-07 13:46:36 -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 41b2cf629a feat: support installing multiple dnf packages 2023-07-16 03:12:24 -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 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 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 11b44434f5 fix: fix all the linting errors 2023-05-24 14:57:08 -07:00