mirror of
https://github.com/pyscript/pyscript.git
synced 2025-12-19 18:27:29 -05:00
Moves Python code out of interpreter file (#207)
* make copy of .py files part of build process * move code out ofinterpreter file and make it download and load code during initialization * fix double ; in interpreter * remove debugging print * update dependencies * fix project name and version * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * lint * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * change fmt-py * lint * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * remove extra content * define missing strict type * create build folder if doesn't exist Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
@@ -6,7 +6,43 @@ import { terser } from "rollup-plugin-terser";
|
||||
import sveltePreprocess from "svelte-preprocess";
|
||||
import typescript from "@rollup/plugin-typescript";
|
||||
import css from "rollup-plugin-css-only";
|
||||
import serve from 'rollup-plugin-serve'
|
||||
import serve from 'rollup-plugin-serve';
|
||||
|
||||
import path from "path";
|
||||
import fs from "fs";
|
||||
|
||||
function copyPythonFiles(from, to, overwrite = false) {
|
||||
return {
|
||||
name: 'copy-files',
|
||||
generateBundle() {
|
||||
const log = msg => console.log('\x1b[36m%s\x1b[0m', msg)
|
||||
log(`copy files: ${from} → ${to}`)
|
||||
|
||||
// create folder if it doesn't exist
|
||||
if (!fs.existsSync(to)){
|
||||
log(`Destination folder ${to} doesn't exist. Creating...`)
|
||||
fs.mkdirSync(to);
|
||||
}
|
||||
|
||||
fs.readdirSync(from).forEach(file => {
|
||||
const fromFile = `${from}/${file}`
|
||||
const toFile = `${to}/${file}`
|
||||
if (fromFile.endsWith(`.py`)){
|
||||
log(`----> ${fromFile} → ${toFile}`)
|
||||
if (fs.existsSync(toFile) && !overwrite){
|
||||
log(`skipping ${fromFile} → ${toFile}`)
|
||||
return
|
||||
}else{
|
||||
fs.copyFileSync(
|
||||
path.resolve(fromFile),
|
||||
path.resolve(toFile)
|
||||
);
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const production = !process.env.ROLLUP_WATCH || (process.env.NODE_ENV === "production");
|
||||
|
||||
@@ -68,6 +104,8 @@ export default {
|
||||
sourceMap: !production,
|
||||
inlineSources: !production,
|
||||
}),
|
||||
// Copy all the python files from source to the build folder
|
||||
copyPythonFiles("./src/", "./examples/build", true),
|
||||
!production && serve(),
|
||||
!production && livereload("public"),
|
||||
production && terser(),
|
||||
|
||||
Reference in New Issue
Block a user