generate electron.d.ts during dist creation, not during build

This commit is contained in:
Zeke Sikelianos 2017-03-31 21:35:58 -07:00
parent c00bac5c0b
commit c2230ca76a
3 changed files with 9 additions and 8 deletions

View file

@ -33,8 +33,6 @@
"clean": "python ./script/clean.py",
"clean-build": "python ./script/clean.py --build",
"coverage": "npm run instrument-code-coverage && npm test -- --use-instrumented-asar",
"generate-api-json": "electron-docs-linter docs/api --version=$npm_package_version --outfile=out/electron-api.json",
"generate-typescript-definitions": "electron-typescript-definitions --in=out/electron-api.json --out=out/electron.d.ts",
"instrument-code-coverage": "electabul instrument --input-path ./lib --output-path ./out/coverage/electron.asar",
"lint": "npm run lint-js && npm run lint-cpp && npm run lint-py && npm run lint-api-docs-js && npm run lint-api-docs",
"lint-js": "standard && cd spec && standard",

View file

@ -82,9 +82,6 @@ def main():
sys.stderr.flush()
execute([npm, 'run', 'lint'])
sys.stderr.write('\nRunning `npm run generate-typescript-definitions`\n')
sys.stderr.flush()
execute([npm, 'run', 'generate-typescript-definitions'])
if is_release:
run_script('build.py', ['-c', 'R'])
run_script('create-dist.py')

View file

@ -92,7 +92,7 @@ def main():
if PLATFORM != 'win32' and not args.no_api_docs:
create_api_json_schema()
copy_typescript_definitions()
create_typescript_definitions()
if PLATFORM == 'linux':
strip_binaries()
@ -145,8 +145,14 @@ def create_api_json_schema():
'--version={}'.format(ELECTRON_VERSION.replace('v', ''))],
env=env)
def copy_typescript_definitions():
shutil.copy2(os.path.join(SOURCE_ROOT, 'out', 'electron.d.ts'), DIST_DIR)
def create_typescript_definitions():
node_bin_dir = os.path.join(SOURCE_ROOT, 'node_modules', '.bin')
env = os.environ.copy()
env['PATH'] = os.path.pathsep.join([node_bin_dir, env['PATH']])
infile = os.path.relpath(os.path.join(DIST_DIR, 'electron-api.json'))
outfile = os.path.relpath(os.path.join(DIST_DIR, 'electron.d.ts'))
execute(['electron-typescript-definitions', '--in={0}'.format(infile),
'--out={0}'.format(outfile)], env=env)
def strip_binaries():
for binary in TARGET_BINARIES[PLATFORM]: