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

Fix Bonanza #1216

Merged
merged 63 commits into from
Nov 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
94feec6
add rnv as dependency to template
mihaiblaga89 Oct 24, 2023
60d99ce
pinned rn-cli version
mihaiblaga89 Oct 24, 2023
f2d491f
Merge branch 'main' into fix/rnv_as_template_dep
mihaiblaga89 Oct 25, 2023
f002e78
moved dep back, added rnv from new task
mihaiblaga89 Oct 25, 2023
0be328a
Merge branch 'fix/rnv_as_template_dep' of github.com:pavjacko/renativ…
mihaiblaga89 Oct 30, 2023
674e22a
Merge branch 'main' into fix/rn_cli_version_fix
mihaiblaga89 Oct 30, 2023
cfb0130
tokenize react native path
mihaiblaga89 Oct 30, 2023
48ef244
1.0.0-feat-pin-cli.1
mihaiblaga89 Oct 30, 2023
3b7cb02
1.0.0-feat-pin-cli.2
mihaiblaga89 Oct 30, 2023
f5885da
fix/next_config_generating
ElenaDiachenko Oct 30, 2023
6700c20
1.0.0-feat-pin-cli.3
mihaiblaga89 Oct 30, 2023
ab6f1c8
fix android output and messages, removed duplicate function
mihaiblaga89 Oct 31, 2023
f2edff5
1.0.0-feat-pin-cli.4
mihaiblaga89 Oct 31, 2023
beef3d7
fix targetSchema tvos + xcode group creation
ElenaDiachenko Oct 31, 2023
7b103de
Merge pull request #1220 from flexn-io/fix/tvos_build
mihaiblaga89 Nov 1, 2023
14115e4
1.0.0-feat-pin-cli.5
mihaiblaga89 Nov 1, 2023
6150e0d
fix project version
ElenaDiachenko Nov 1, 2023
1afe378
hide project info in the summary <= rnv new
ElenaDiachenko Nov 1, 2023
a67b9e3
fix/task.rnv.new_test
ElenaDiachenko Nov 1, 2023
2cc6ef2
Merge pull request #1221 from flexn-io/fix/web_new-project
mihaiblaga89 Nov 1, 2023
b7807a6
Merge branch 'main' into fix/dynamic_rn_path_in_templates
mihaiblaga89 Nov 1, 2023
3b7ec1c
1.0.0-feat-pin-cli.6
mihaiblaga89 Nov 1, 2023
902c02a
bring packages to same version
mihaiblaga89 Nov 1, 2023
cd5c124
restructure template and support files, cleanup, fix schema hook
mihaiblaga89 Nov 2, 2023
86ab83c
revert back to template files without engine extend for now
mihaiblaga89 Nov 2, 2023
e210f5a
fix ts, rename function
mihaiblaga89 Nov 2, 2023
ce57fd4
1.0.0-feat-pin-cli.7
mihaiblaga89 Nov 2, 2023
816f7d0
1.0.0-feat-bonanza.1
mihaiblaga89 Nov 2, 2023
60d595a
missing folder in engine next pkg
mihaiblaga89 Nov 2, 2023
9b3d6bd
1.0.0-feat-bonanza.2
mihaiblaga89 Nov 2, 2023
978f3b5
add rnv core as external for esbuild
mihaiblaga89 Nov 3, 2023
dfa8234
fix tvos incorrect package resolution
mihaiblaga89 Nov 3, 2023
fa54726
1.0.0-feat-bonanza.3
mihaiblaga89 Nov 3, 2023
2948ab7
fix/kill_child_processes on exit
ElenaDiachenko Nov 3, 2023
a86aa62
fix ios build phase rn location
mihaiblaga89 Nov 3, 2023
81272f0
1.0.0-feat-bonanza.4
mihaiblaga89 Nov 3, 2023
c4141bd
fix
ElenaDiachenko Nov 4, 2023
e3755bb
fix
ElenaDiachenko Nov 4, 2023
eca6588
fix/androidwear_manifest
ElenaDiachenko Nov 6, 2023
53eee0f
fix/androidwear_manifest
ElenaDiachenko Nov 6, 2023
541000a
remove hacky RN path handling, add always relative handling and tests
mihaiblaga89 Nov 6, 2023
fd69e3d
moved metro-config to sdk-rn
mihaiblaga89 Nov 6, 2023
a61e695
prevent the opening of a new terminal
ElenaDiachenko Nov 7, 2023
00b024f
Merge pull request #1226 from flexn-io/fix/androidwear_manifest
mihaiblaga89 Nov 7, 2023
f1589aa
fix env
ElenaDiachenko Nov 7, 2023
10100f5
Merge pull request #1228 from flexn-io/fix/ios-tvos_export
mihaiblaga89 Nov 7, 2023
faff989
fix metro-config, add metro-babel-transformer as dep, no-hoist for li…
mihaiblaga89 Nov 7, 2023
2a865ef
1.0.0-feat-metro-config.1
mihaiblaga89 Nov 7, 2023
4f4c8d1
Merge branch 'fix/dynamic_rn_path_in_templates' of github.com:pavjack…
mihaiblaga89 Nov 7, 2023
04c70e6
revert back engine prereqs
mihaiblaga89 Nov 7, 2023
6408eea
1.0.0-feat-metro-config.2
mihaiblaga89 Nov 7, 2023
e3b5521
fix next cfg, add ios rn path injection, remove mandatory bootstrapQu…
mihaiblaga89 Nov 7, 2023
b654a41
added codegen and rn cli android injections
mihaiblaga89 Nov 7, 2023
46fb217
added hermes injection and correct path for root
mihaiblaga89 Nov 7, 2023
5c18adf
reverted optional bootstrapQuestions
mihaiblaga89 Nov 7, 2023
bd7cfb8
fix logic
ElenaDiachenko Nov 8, 2023
a2eba76
Merge pull request #1224 from flexn-io/fix/kill_child_processes
mihaiblaga89 Nov 8, 2023
dc1a026
Merge pull request #1230 from flexn-io/feat/remove_metro_config
mihaiblaga89 Nov 8, 2023
5f4668f
1.0.0-feat-bonanza.5
mihaiblaga89 Nov 8, 2023
4c9098a
rn path injections leftovers
mihaiblaga89 Nov 8, 2023
92f856c
1.0.0-feat-bonanza.6
mihaiblaga89 Nov 8, 2023
cc2e5d3
make rn new arch configurable
mihaiblaga89 Nov 8, 2023
2a8f808
1.0.0-feat-bonanza.7
mihaiblaga89 Nov 8, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
15 changes: 8 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@flexn/renative-monorepo",
"version": "1.0.0-canary.7",
"version": "1.0.0-feat-bonanza.7",
"description": "🚀🚀🚀 Unified Development Platform. Bootstrap, Develop & Deploy `iOS`, `tvOS`, `Android`, `Android TV`, `Fire TV`, `Android Wear`, `Web`, `Tizen TV`, `Tizen Watch`, `Tizen Mobile`, `LG webOS`, `macOS/OSX`, `Windows`, `KaiOS`, `Linux` and `Chromecast` platforms",
"keywords": [
"android tv",
Expand Down Expand Up @@ -59,9 +59,6 @@
"bootstrap": "yarn run link:rnv && npx lerna bootstrap && yarn build",
"bootstrap-clean": "rimraf -I ./node_modules; npx lerna clean --yes && yarn bootstrap",
"build": "lerna run build",
"report-circular": "npx madge --circular --extensions ts --exclude '\\.(d.ts)$' ./packages",
"report-ts-coverage": "typescript-coverage-report -p ./packages/core/tsconfig.json -t 99",
"report-jest": "jest --coverage",
"compile": "npx lerna run compile",
"deploy:canary": "yarn pre-publish && npx lerna publish from-package --dist-tag canary && git push origin HEAD",
"deploy:feat": "yarn pre-publish && npx lerna publish from-package --dist-tag feat && git push origin HEAD",
Expand All @@ -79,6 +76,9 @@
"pre-publish": "yarn build && yarn lint && yarn test && rnv hooks run -x prePublish -r && rnv hooks run -x gitCommitAndTag",
"prettier-write-all": "npx prettier '**/*.{js,jsx,ts,tsx,mjs,cjs,json,md}' --write --config .prettierrc.js",
"prettier-write-json": "npx prettier '**/{package.json,renative.plugins.json,renative.json}' --write --config .prettierrc.js",
"report-circular": "npx madge --circular --extensions ts --exclude '\\.(d.ts)$' ./packages",
"report-jest": "jest --coverage",
"report-ts-coverage": "typescript-coverage-report -p ./packages/core/tsconfig.json -t 99",
"sanity": "yarn compile && yarn lint && yarn test",
"test": "jest",
"watch": "npx lerna exec yarn watch --parallel",
Expand All @@ -89,8 +89,8 @@
"@flexn/eslint-config": "1.0.0",
"@flexn/prettier-config": "1.0.0",
"@flexn/typescript-config": "1.0.0",
"@rnv/build-hooks-git": "1.0.0-canary.7",
"@rnv/core": "1.0.0-canary.7",
"@rnv/build-hooks-git": "1.0.0-feat-bonanza.7",
"@rnv/core": "1.0.0-feat-bonanza.7",
"@types/jest": "~27.0.2",
"@types/kill-port": "2.0.0",
"@types/lodash.get": "4.4.7",
Expand Down Expand Up @@ -147,7 +147,8 @@
"webpack",
"mini-css-extract-plugin",
"execa",
"**/@flexn/plugins"
"**/@flexn/plugins",
"**/@react-native/metro-babel-transformer"
]
},
"resolutions": {}
Expand Down
4 changes: 2 additions & 2 deletions packages/app-harness/.watchmanconfig
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@
"../sdk-kaios",
"../sdk-tizen",
"../sdk-webos",
"../sdk-webpak"
"../sdk-webpack"
]
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ GEM
json (>= 1.5.1)
atomos (0.1.3)
claide (1.1.0)
cocoapods (1.13.0)
cocoapods (1.14.2)
addressable (~> 2.8)
claide (>= 1.0.2, < 2.0)
cocoapods-core (= 1.13.0)
cocoapods-core (= 1.14.2)
cocoapods-deintegrate (>= 1.0.3, < 2.0)
cocoapods-downloader (>= 1.6.0, < 2.0)
cocoapods-downloader (>= 2.0)
cocoapods-plugins (>= 1.0.0, < 2.0)
cocoapods-search (>= 1.0.0, < 2.0)
cocoapods-trunk (>= 1.6.0, < 2.0)
Expand All @@ -33,7 +33,7 @@ GEM
nap (~> 1.0)
ruby-macho (>= 2.3.0, < 3.0)
xcodeproj (>= 1.23.0, < 2.0)
cocoapods-core (1.13.0)
cocoapods-core (1.14.2)
activesupport (>= 5.0, < 8)
addressable (~> 2.8)
algoliasearch (~> 1.0)
Expand All @@ -44,7 +44,7 @@ GEM
public_suffix (~> 4.0)
typhoeus (~> 1.0)
cocoapods-deintegrate (1.0.5)
cocoapods-downloader (1.6.3)
cocoapods-downloader (2.0)
cocoapods-plugins (1.0.0)
nap
cocoapods-search (1.0.1)
Expand Down
2 changes: 1 addition & 1 deletion packages/app-harness/appConfigs/harness/renative.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"title": "ReNative",
"description": "Cross-platform application project based on ReNative",
"buildSchemes": {
"debug": {
"debug": {
"id": "renative.helloworld.debug",
"title": "ReNative Debug"
},
Expand Down
27 changes: 14 additions & 13 deletions packages/app-harness/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rnv/app-harness",
"version": "1.0.0-canary.7",
"version": "1.0.0-feat-pin-cli.6",
"description": "ReNative Test Harness App",
"keywords": [],
"homepage": "https://github.com/flexn-io/renative#readme",
Expand Down Expand Up @@ -30,30 +30,31 @@
"watch": "tsc --watch --preserveWatchOutput --noEmit"
},
"dependencies": {
"@lightningjs/sdk": "^5.4.1",
"@react-native-community/cli": "^11.3.8",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mihaiblaga89 do we have recorded issue which is mitigated by enforcing this?
would like to avoid internal rn deps exposed in project as much as possible.

"@rnv/renative": "1.0.0-feat-bonanza.7",
"next": "13.5.2",
"raf": "3.4.1",
"@lightningjs/sdk": "^5.4.1",
"react": "18.2.0",
"react-art": "18.2.0",
"react-dom": "18.2.0",
"react-native": "0.72.4",
"react-native-gesture-handler": "2.13.1",
"react-native-tvos": "0.72.4-0",
"react-native-web": "0.19.9",
"@rnv/renative": "1.0.0-canary.7"
"react-native-web": "0.19.9"
},
"devDependencies": {
"@flexn/assets-renative-outline": "0.3.2",
"@flexn/graybox": "0.21.1",
"@flexn/typescript-config": "1.0.0",
"@react-native/metro-config": "^0.73.1",
"@rnv/engine-lightning": "1.0.0-canary.7",
"@rnv/engine-rn": "1.0.0-canary.7",
"@rnv/engine-rn-electron": "1.0.0-canary.7",
"@rnv/engine-rn-next": "1.0.0-canary.7",
"@rnv/engine-rn-tvos": "1.0.0-canary.7",
"@rnv/engine-rn-web": "1.0.0-canary.7",
"@rnv/core": "1.0.0-canary.7",
"@rnv/core": "1.0.0-feat-bonanza.7",
"@rnv/engine-lightning": "1.0.0-feat-bonanza.7",
"@rnv/engine-rn": "1.0.0-feat-bonanza.7",
"@rnv/engine-rn-electron": "1.0.0-feat-bonanza.7",
"@rnv/engine-rn-next": "1.0.0-feat-bonanza.7",
"@rnv/engine-rn-tvos": "1.0.0-feat-bonanza.7",
"@rnv/engine-rn-web": "1.0.0-feat-bonanza.7",
"@rnv/template-starter": "1.0.0-feat-bonanza.7",
"@types/react": "18.2.22",
"@types/react-dom": "18.2.7",
"@types/react-native": "0.72.2",
Expand All @@ -62,7 +63,7 @@
"detox": "18.20.2",
"jetifier": "1.6.5",
"metro-react-native-babel-preset": "0.76.8",
"rnv": "1.0.0-canary.7",
"rnv": "1.0.0-feat-bonanza.7",
"xcode": "2.1.0"
},
"private": true
Expand Down
4 changes: 3 additions & 1 deletion packages/app-harness/renative.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
{
"$schema": "../../.rnv/schema/rnv.project.json",
"extendsTemplate": "@rnv/template-starter/renative.json",
"plugins": {}
"plugins": {
"@react-native-community/cli": "^11.3.8"
}
}
7 changes: 4 additions & 3 deletions packages/build-hooks-git/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rnv/build-hooks-git",
"version": "1.0.0-canary.7",
"version": "1.0.0-feat-bonanza.7",
"description": "Build Hooks for Git",
"keywords": [],
"homepage": "https://github.com/flexn-io/renative#readme",
Expand Down Expand Up @@ -30,10 +30,11 @@
"simple-git": "^3.16.0"
},
"peerDependencies": {
"@rnv/core": "^1.0.0-canary.7"
"@rnv/core": "^1.0.0-feat-bonanza.7"
},
"publishConfig": {
"access": "public"
},
"types": "lib/index"
"types": "lib/index",
"gitHead": "48ef244c6ec2e206cbfd72fe8770d8dc03387591"
}
8 changes: 4 additions & 4 deletions packages/build-hooks-schema/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,14 @@
"watch": "tsc --watch --preserveWatchOutput"
},
"dependencies": {
"zod-to-json-schema": "3.21.4",
"zod": "3.22.4"
"zod": "3.22.4",
"zod-to-json-schema": "3.21.4"
},
"peerDependencies": {
"@rnv/core": "^1.0.0-canary.7"
"@rnv/core": "^1.0.0-feat-bonanza.7"
},
"publishConfig": {
"access": "public"
},
"types": "lib/index"
}
}
15 changes: 12 additions & 3 deletions packages/build-hooks-schema/src/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,21 @@ const _generateSchemaFile = (opts: { schema: z.ZodObject<any>; schemaId: string

jsonSchema.definitions[schemaId].properties['$schema'] = {
type: 'string',
description: 'schema definition',
description: 'schema definition',
};

const destPath = path.join(ctx.paths.project.dir, `packages/core/jsonSchema/${schemaId}.json`);
const destFolder = path.join(ctx.paths.project.dir, `packages/core/jsonSchema`);
if (!fs.existsSync(destFolder)) {
fs.mkdirSync(destFolder, { recursive: true });
}
const destPath = path.join(destFolder, `${schemaId}.json`);
fs.writeFileSync(destPath, JSON.stringify(jsonSchema, null, 2));

const destPath2 = path.join(ctx.paths.project.dir, `.rnv/schema/${schemaId}.json`);
const destFolder2 = path.join(ctx.paths.project.dir, `.rnv/schema`);
if (!fs.existsSync(destFolder2)) {
fs.mkdirSync(destFolder2, { recursive: true });
}
const destPath2 = path.join(destFolder2, `${schemaId}.json`);

fs.writeFileSync(destPath2, JSON.stringify(jsonSchema, null, 2));
};
9 changes: 5 additions & 4 deletions packages/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rnv/cli",
"version": "1.0.0-canary.7",
"version": "1.0.0-feat-bonanza.7",
"description": "ReNative CLI",
"keywords": [],
"homepage": "https://github.com/flexn-io/renative#readme",
Expand Down Expand Up @@ -37,10 +37,11 @@
"inquirer": "8.2.0"
},
"peerDependencies": {
"@rnv/core": "^1.0.0-canary.7"
"@rnv/core": "^1.0.0-feat-bonanza.7"
},
"private": false,
"publishConfig": {
"access": "public"
}
}
},
"gitHead": "48ef244c6ec2e206cbfd72fe8770d8dc03387591"
}
23 changes: 22 additions & 1 deletion packages/cli/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,20 @@ import Logger from './logger';
//IMPORTANT: Using require instead of import here to avoid circular dependency issue rnv => @rnv/cli => rnv
const { executeRnv } = require('rnv');

const terminateProcesses = (): void => {
const { runningProcesses } = getContext();
try {
runningProcesses.forEach((p) => {
p.kill();
});
} catch (e) {
console.log(e);
}
runningProcesses.length = 0;

process.exit(0);
};

export const run = () => {
const packageJson = JSON.parse(fs.readFileSync(path.join(__dirname, '../package.json')).toString());
let cmdValue = '';
Expand Down Expand Up @@ -41,7 +55,14 @@ export const run = () => {

program.parse(process.argv);

process.on('SIGINT', () => {
terminateProcesses();
});

executeRnv({ cmd: cmdValue, subCmd: cmdOption, program, process, spinner: Spinner, prompt: Prompt, logger: Logger })
.then(() => logComplete(!getContext().runtime.keepSessionActive))
.catch((e: unknown) => logError(e, true));
.catch((e: unknown) => {
logError(e);
terminateProcesses();
});
};
2 changes: 1 addition & 1 deletion packages/cli/src/logger/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ export const logSummary = (header = 'SUMMARY') => {
let str = printBoxStart(`${ICN_ROCKET} ${header} ${timeString}`, getCurrentCommand());

str += printIntoBox(`ReNative Version: ${_highlightColor(ctx.rnvVersion)}`);
if (ctx.files?.project?.package) {
if (ctx.files?.project?.package?.name && ctx.files?.project?.package?.version) {
str += printIntoBox(`Project Name ($package.name): ${_highlightColor(ctx.files.project.package.name)}`);
str += printIntoBox(
`Project Version ($package.version): ${_highlightColor(ctx.files.project.package.version)}`
Expand Down
4 changes: 4 additions & 0 deletions packages/core/jsonSchema/rnv.engine.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@
"type": "string",
"description": "Engine extension ised by rnv during compilation"
},
"extends": {
"type": "string",
"description": "ID of engine to extend. Not being used yet"
},
"overview": {
"type": "string",
"description": "Overview description of engine"
Expand Down
4 changes: 4 additions & 0 deletions packages/core/jsonSchema/rnv.project.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
"type": "string",
"description": "Workspace ID your project belongs to. This will mach same folder name in the root of your user directory. ie `~/` on macOS"
},
"projectVersion": {
"type": "string"
},
"projectName": {
"type": "string",
"description": "Name of the project which will be used in workspace as folder name. this will also be used as part of the KEY in crypto env var generator"
Expand Down Expand Up @@ -3886,6 +3889,7 @@
},
"required": [
"workspaceID",
"projectVersion",
"projectName",
"templates",
"currentTemplate"
Expand Down
6 changes: 3 additions & 3 deletions packages/core/jsonSchema/rnv.template.json
Original file line number Diff line number Diff line change
Expand Up @@ -209,14 +209,14 @@
},
"name": {
"type": "string"
},
"version": {
"type": "string"
}
},
"additionalProperties": false
}
},
"required": [
"bootstrapQuestions"
],
"additionalProperties": false,
"description": "Used in `renative.template.json` allows you to define template behaviour."
},
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@rnv/core",
"version": "1.0.0-canary.7",
"version": "1.0.0-feat-bonanza.7",
"description": "RNV Core SDK",
"keywords": [],
"homepage": "https://github.com/flexn-io/renative#readme",
Expand Down