Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Include transitive deps in autolinking #2054

Open
wants to merge 23 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
f8fa089
refactor: autolink transitive dependencies
TMisiukiewicz Sep 22, 2023
0401979
collect peer deps of projects dependencies
TMisiukiewicz Sep 22, 2023
f6e09aa
ignore optional peer deps
TMisiukiewicz Sep 22, 2023
d2e43b3
support npm
TMisiukiewicz Sep 22, 2023
a52888e
remove unused code
TMisiukiewicz Sep 22, 2023
54f6223
simplify deps installation
TMisiukiewicz Sep 22, 2023
4d6f8fc
run transitive deps installation when using npm
TMisiukiewicz Sep 22, 2023
f46240e
make transitive native libs visible for autolinking with npm
TMisiukiewicz Sep 22, 2023
3007302
checking peer dependencies with yarn
TMisiukiewicz Sep 22, 2023
2d4fb4c
add `--dependency-check` flag
TMisiukiewicz Sep 22, 2023
4634491
warn if cannot find matching version for a library
TMisiukiewicz Sep 22, 2023
2cee7d9
add tests for resolving transitive deps
TMisiukiewicz Sep 22, 2023
a56b80a
force add cli-doctor
TMisiukiewicz Sep 22, 2023
f81b0bc
fix circular reference
TMisiukiewicz Sep 22, 2023
e5e05b1
add new flag to README
TMisiukiewicz Sep 22, 2023
0a46e47
add transitive deps check to buildAndroid
TMisiukiewicz Sep 22, 2023
9c38ba3
remove --dependency-check flag
TMisiukiewicz Sep 22, 2023
4a5b4b2
refactor transitive deps mechanism
TMisiukiewicz Sep 22, 2023
26f262e
use config param to autolink peer deps
TMisiukiewicz Sep 22, 2023
5f1b739
don't run check for config command
TMisiukiewicz Sep 22, 2023
9ea7ff5
update tests
TMisiukiewicz Sep 28, 2023
e5c3720
add bun support
TMisiukiewicz Sep 29, 2023
6b48cff
update tests
TMisiukiewicz Sep 29, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
add transitive deps check to buildAndroid
TMisiukiewicz committed Sep 22, 2023
commit 0a46e47122a6c5108afc763453af8b36e2601312
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import {
CLIError,
checkTransitiveDependencies,
logger,
printRunDoctorTip,
} from '@react-native-community/cli-tools';
@@ -35,6 +36,10 @@ async function buildAndroid(

let {tasks} = args;

if (args.dependencyCheck) {
await checkTransitiveDependencies();
}

if (args.interactive) {
const selectedTask = await promptForTaskSelection(
'build',
238 changes: 1 addition & 237 deletions yarn.lock
Original file line number Diff line number Diff line change
@@ -119,17 +119,6 @@
browserslist "^4.21.3"
semver "^6.3.0"

"@babel/helper-compilation-targets@^7.22.6":
version "7.22.6"
resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.6.tgz#e30d61abe9480aa5a83232eb31c111be922d2e52"
integrity sha512-534sYEqWD9VfUm3IPn2SLcH4Q3P86XL+QvqdC7ZsFrzyyPF3T4XGiVghF6PTYNdWg6pXuoqXxNQAhbYeEInTzA==
dependencies:
"@babel/compat-data" "^7.22.6"
"@babel/helper-validator-option" "^7.22.5"
"@nicolo-ribaudo/semver-v6" "^6.3.3"
browserslist "^4.21.9"
lru-cache "^5.1.1"

"@babel/helper-compilation-targets@^7.8.7":
version "7.14.5"
resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.14.5.tgz#7a99c5d0967911e972fe2c3411f7d5b498498ecf"
@@ -270,20 +259,6 @@
"@babel/traverse" "^7.20.1"
"@babel/types" "^7.20.2"

"@babel/helper-module-transforms@^7.22.5":
version "7.22.5"
resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz#0f65daa0716961b6e96b164034e737f60a80d2ef"
integrity sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==
dependencies:
"@babel/helper-environment-visitor" "^7.22.5"
"@babel/helper-module-imports" "^7.22.5"
"@babel/helper-simple-access" "^7.22.5"
"@babel/helper-split-export-declaration" "^7.22.5"
"@babel/helper-validator-identifier" "^7.22.5"
"@babel/template" "^7.22.5"
"@babel/traverse" "^7.22.5"
"@babel/types" "^7.22.5"

"@babel/helper-optimise-call-expression@^7.18.6", "@babel/helper-optimise-call-expression@^7.22.5":
version "7.22.5"
resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e"
@@ -3270,7 +3245,7 @@ browserslist@^4.16.6:
node-releases "^2.0.6"
update-browserslist-db "^1.0.9"

browserslist@^4.21.3, browserslist@^4.21.9:
browserslist@^4.21.3:
version "4.21.9"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.9.tgz#e11bdd3c313d7e2a9e87e8b4b0c7872b13897635"
integrity sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==
@@ -6058,18 +6033,6 @@ hash.js@^1.0.0, hash.js@^1.0.3:
inherits "^2.0.3"
minimalistic-assert "^1.0.1"

hermes-estree@0.15.0:
version "0.15.0"
resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.15.0.tgz#e32f6210ab18c7b705bdcb375f7700f2db15d6ba"
integrity sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ==

hermes-parser@0.15.0:
version "0.15.0"
resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.15.0.tgz#f611a297c2a2dbbfbce8af8543242254f604c382"
integrity sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q==
dependencies:
hermes-estree "0.15.0"

hermes-profile-transformer@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz#bd0f5ecceda80dd0ddaae443469ab26fb38fc27b"
@@ -8047,13 +8010,6 @@ lru-cache@^10.0.1:
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.0.1.tgz#0a3be479df549cca0e5d693ac402ff19537a6b7a"
integrity sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==

lru-cache@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
dependencies:
yallist "^3.0.2"

lru-cache@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
@@ -8215,198 +8171,11 @@ merge2@^1.2.3, merge2@^1.3.0, merge2@^1.4.1:
resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==

metro-babel-transformer@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-babel-transformer/-/metro-babel-transformer-0.78.0.tgz#7f22dca1186c27908b281264dd31e5cb140de8d0"
integrity sha512-SwzvGuMXVqtwQjbuR0RKBKRCNwnQsiA7TG1X+VXkeF/UhbWT4V4fqE76SKWWFsNAv1WEJvsMQcUeLggiecehqg==
dependencies:
"@babel/core" "^7.20.0"
hermes-parser "0.15.0"
nullthrows "^1.1.1"

metro-cache-key@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-cache-key/-/metro-cache-key-0.78.0.tgz#493c8c71a188698fcb909dcbc55be4c4603cc3a8"
integrity sha512-2Mp5LQjpZ3yNdUSpIu6kB9cLUHDve4riHZ7i5n/MikHkpqVCOdo0qGsHujU9v8Fc1dWUOdSC0ufS9j03KpLh4Q==

metro-cache@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-cache/-/metro-cache-0.78.0.tgz#5abb129e62011ba91e4e3aa8a2ebab2d7c569b4a"
integrity sha512-kVub3O55oG3k875uDxwr53GuHvqrXc+vyHWaX42wa2AJrCETBVb1ybVTu4mfL/WXLMdn13ZusulOpY7lxVcZjQ==
dependencies:
metro-core "0.78.0"
rimraf "^3.0.2"

metro-config@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-config/-/metro-config-0.78.0.tgz#0a83cb9cd2e4913394272ee8a83d04ee14d833d8"
integrity sha512-v8P0WrtR/pe8xTyMEPhe+LBWoPivrJJzPlc+2iU9ZZhadhZH5JsBmmHXOobyZnKu2OWRFku6VpCiU2+Tg55F5g==
dependencies:
connect "^3.6.5"
cosmiconfig "^5.0.5"
jest-validate "^29.2.1"
metro "0.78.0"
metro-cache "0.78.0"
metro-core "0.78.0"
metro-runtime "0.78.0"

metro-core@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-core/-/metro-core-0.78.0.tgz#d14afc68ba270678a304d9f98130466307e5703c"
integrity sha512-pD9yfRdCESHmWs1FPuoEyBmIXNYMaAMV5L51zeR6ugHRRBUYyLjdrJtTEnxL2j7rTidkQ6jzYp3B091kGEptZw==
dependencies:
lodash.throttle "^4.1.1"
metro-resolver "0.78.0"

metro-file-map@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-file-map/-/metro-file-map-0.78.0.tgz#d2e84f5bfa7595695c83429088621d5a2fe61919"
integrity sha512-/RBoGID+sBFMEgDqcZg/ppehD+k8T7z83kHQZeIyoYHomiSe+gpWljNl6vLiRNJpeRNKiSk9EPZnhZ+knQsaMQ==
dependencies:
anymatch "^3.0.3"
debug "^2.2.0"
fb-watchman "^2.0.0"
graceful-fs "^4.2.4"
invariant "^2.2.4"
jest-util "^27.2.0"
jest-worker "^27.2.0"
micromatch "^4.0.4"
node-abort-controller "^3.1.1"
nullthrows "^1.1.1"
walker "^1.0.7"
optionalDependencies:
fsevents "^2.3.2"

metro-memory-fs@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-memory-fs/-/metro-memory-fs-0.78.0.tgz#e39f9e7bcf4b23c8287347e3c5c1b581e069c6a8"
integrity sha512-TXaP2wFW6zOZAnc1kTkvlgujdMe9cW0g0S4aC+XyfhkhAeA9+6qGD2KpXf5ngz2m8b0KgCpHpDgMJuYFl24mAQ==

metro-minify-terser@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-minify-terser/-/metro-minify-terser-0.78.0.tgz#3df1afe87d8033c43f161d46da2a2e03bbe1490a"
integrity sha512-IELdVJFIX0XkoFKXtWq5N02z32mclsbDb1SxJVYQYl1Qybm3fOih83teNvgPl0ezEtTVEAVdHeAwKiOGanjPZQ==
dependencies:
terser "^5.15.0"

metro-resolver@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-resolver/-/metro-resolver-0.78.0.tgz#36edd0ababe1e34dbcecc32ff7da7356676816e9"
integrity sha512-V8ajy9UfP4d2OIsD6vMr4ZWvA1xAORPgDBq1ir06hALUyZGLj/hOsxAUCSSjAN1XL32Nw9OZrLYDMZdw1exaow==

metro-runtime@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-runtime/-/metro-runtime-0.78.0.tgz#7c8f28724f91498fb9c73447212a8b478b486b7a"
integrity sha512-4AwNpoyiWtQQWL2hyEXpHrcSSK65mcBRk2v25NN30R/8P7P5yHXM2JVrcd6/LefVJOzgDQcQkzNPU7GyBqcm8A==
dependencies:
"@babel/runtime" "^7.0.0"
react-refresh "^0.4.0"

metro-source-map@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-source-map/-/metro-source-map-0.78.0.tgz#1e96996e15d555180434a96dc28158e1943cd5bd"
integrity sha512-tRF6ASVt2PQy4r5TdGis6/dtyDA0OTavsJ9xgLO0RyqBhLZAdtGj8LMPychEOHX1eXR/x+iKFsF9vXXWBRqfUg==
dependencies:
"@babel/traverse" "^7.20.0"
"@babel/types" "^7.20.0"
invariant "^2.2.4"
metro-symbolicate "0.78.0"
nullthrows "^1.1.1"
ob1 "0.78.0"
source-map "^0.5.6"
vlq "^1.0.0"

metro-symbolicate@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-symbolicate/-/metro-symbolicate-0.78.0.tgz#0f12a22511ad6de97b7abdfcfda67eadd8504b83"
integrity sha512-OcQpvcpNyDtqKjfANqaJi2hsd3ajfwn+3+wuqY1kYG9/apLFY11lBw+o/rIKOYc3q4zWvclkwDGMkPbAxbXLOA==
dependencies:
invariant "^2.2.4"
metro-source-map "0.78.0"
nullthrows "^1.1.1"
source-map "^0.5.6"
through2 "^2.0.1"
vlq "^1.0.0"

metro-transform-plugins@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-transform-plugins/-/metro-transform-plugins-0.78.0.tgz#306beaef06689a28123a6f1adc5662860a8ae6a8"
integrity sha512-rZFtHj6zTzHIVURoYDFw20Idf5UDcyv7aFOMBVkLDrBo8EpMb5yFRsFw2I/FEreX78YFkJpUkNdxAV9JrE7PHQ==
dependencies:
"@babel/core" "^7.20.0"
"@babel/generator" "^7.20.0"
"@babel/template" "^7.0.0"
"@babel/traverse" "^7.20.0"
nullthrows "^1.1.1"

metro-transform-worker@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro-transform-worker/-/metro-transform-worker-0.78.0.tgz#f505b36b94fa67facbbbec0d396a82a7ec1d6a73"
integrity sha512-tooyGrf3g+0c838BeYAkFUgVwSJeumsIcaT65oZ7Om11f8QdPiIyVbgD1iEl369R6rJuw0mEPibpEjMMIZJuNg==
dependencies:
"@babel/core" "^7.20.0"
"@babel/generator" "^7.20.0"
"@babel/parser" "^7.20.0"
"@babel/types" "^7.20.0"
metro "0.78.0"
metro-babel-transformer "0.78.0"
metro-cache "0.78.0"
metro-cache-key "0.78.0"
metro-source-map "0.78.0"
metro-transform-plugins "0.78.0"
nullthrows "^1.1.1"

metro@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/metro/-/metro-0.78.0.tgz#e927b9fab79b172f4439239691a6d21f5b1338fe"
integrity sha512-ZNOPyJh4hlYshztAxKFNgeERrlOzXASlyC6unf/Yqt+jRk/GgVcecQQamiEWcejC+aLhP4FVxWP5Z6BiFqkdDA==
dependencies:
"@babel/code-frame" "^7.0.0"
"@babel/core" "^7.20.0"
"@babel/generator" "^7.20.0"
"@babel/parser" "^7.20.0"
"@babel/template" "^7.0.0"
"@babel/traverse" "^7.20.0"
"@babel/types" "^7.20.0"
accepts "^1.3.7"
async "^3.2.2"
chalk "^4.0.0"
ci-info "^2.0.0"
connect "^3.6.5"
debug "^2.2.0"
denodeify "^1.2.1"
error-stack-parser "^2.0.6"
graceful-fs "^4.2.4"
hermes-parser "0.15.0"
image-size "^1.0.2"
invariant "^2.2.4"
jest-worker "^27.2.0"
jsc-safe-url "^0.2.2"
lodash.throttle "^4.1.1"
metro-babel-transformer "0.78.0"
metro-cache "0.78.0"
metro-cache-key "0.78.0"
metro-config "0.78.0"
metro-core "0.78.0"
metro-file-map "0.78.0"
metro-minify-terser "0.78.0"
metro-resolver "0.78.0"
metro-runtime "0.78.0"
metro-source-map "0.78.0"
metro-symbolicate "0.78.0"
metro-transform-plugins "0.78.0"
metro-transform-worker "0.78.0"
mime-types "^2.1.27"
node-fetch "^2.2.0"
nullthrows "^1.1.1"
rimraf "^3.0.2"
serialize-error "^2.1.0"
source-map "^0.5.6"
strip-ansi "^6.0.0"
throat "^5.0.0"
ws "^7.5.1"
yargs "^17.6.2"

micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
version "3.1.10"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23"
@@ -9147,11 +8916,6 @@ oauth-sign@~0.9.0:
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==

ob1@0.78.0:
version "0.78.0"
resolved "https://registry.yarnpkg.com/ob1/-/ob1-0.78.0.tgz#de39d59417c355e18e7c31fe83a35cb002e02b2e"
integrity sha512-jq+K4K7UVsZJZAC7KgT+CskxuZdXit3+sCbBtRVrTXU/j+6/+TdLiEp9v0V/KujzivxsWm99HlKoylocGlLo/g==

object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"