Skip to content

Commit

Permalink
- fix bug: browserify.bundle is asynchronous thus we need wait before
Browse files Browse the repository at this point in the history
   we make `main` folder.
 - upgrade LiveScript version to 1.6.0.
  • Loading branch information
zbryikt committed Dec 25, 2020
1 parent 9ee6895 commit 107a95e
Show file tree
Hide file tree
Showing 5 changed files with 116 additions and 64 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# 0.0.12

- fix bug: browserify.bundle is asynchronous thus we need wait before we make `main` folder.
- upgrade LiveScript version to 1.6.0.


# 0.0.11

- take care of name/version that contains `@` or `/` characters.
Expand Down
39 changes: 26 additions & 13 deletions cli.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env node
// Generated by LiveScript 1.3.1
// Generated by LiveScript 1.6.0
var fs, path, fsExtra, browserify, yargs, argv, useSymlink, fed, slice$ = [].slice;
fs = require('fs');
path = require('path');
Expand All @@ -19,7 +19,7 @@ fed = import$({
modules: []
}, JSON.parse(fs.readFileSync("package.json").toString()).frontendDependencies || {});
(fed.modules || []).map(function(obj){
var root, info, id, ref$, i$, name, version, ret, that, desdir, maindir, b, srcdir;
var root, info, id, ref$, i$, name, version, ret, that, desdir, maindir, p, srcdir;
obj = typeof obj === 'string' ? {
name: obj
} : obj;
Expand All @@ -46,10 +46,19 @@ fed = import$({
fsExtra.removeSync(desdir);
fsExtra.ensureDirSync(desdir);
if (obj.browserify) {
b = browserify(typeof obj.browserify === 'object' ? obj.browserify : void 8);
b.require(obj.name);
b.bundle().pipe(fs.createWriteStream(path.join(desdir, name + ".js")));
console.log(" -- (module -> browserify) -> " + desdir + " ");
p = new Promise(function(res, rej){
var b;
b = browserify(typeof obj.browserify === 'object' ? obj.browserify : void 8);
b.require(obj.name);
return b.bundle(function(e, buf){
if (e) {
return rej(new Error(e));
}
fs.writeFileSync(path.join(desdir, name + ".js"), buf);
console.log(" -- (module -> browserify) -> " + desdir + " ");
return res();
});
});
} else {
if (obj.dir) {
srcdir = path.join(root, obj.dir);
Expand All @@ -60,14 +69,18 @@ fed = import$({
}
}
fsExtra.copySync(srcdir, desdir);
console.log(" -- " + srcdir + " -> " + desdir + " ");
}
fsExtra.removeSync(maindir);
if (useSymlink) {
return fsExtra.ensureSymlinkSync(desdir, maindir);
} else {
return fsExtra.copySync(desdir, maindir);
p = Promise.resolve().then(function(){
return console.log(" -- " + srcdir + " -> " + desdir + " ");
});
}
return p.then(function(){
fsExtra.removeSync(maindir);
if (useSymlink) {
return fsExtra.ensureSymlinkSync(desdir, maindir);
} else {
return fsExtra.copySync(desdir, maindir);
}
});
});
function import$(obj, src){
var own = {}.hasOwnProperty;
Expand Down
21 changes: 13 additions & 8 deletions lib/main.ls
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,22 @@ fed = {root: '.', modules: []} <<< (JSON.parse(fs.read-file-sync "package.json"
fs-extra.remove-sync desdir
fs-extra.ensure-dir-sync desdir
if obj.browserify =>
b = browserify(if typeof(obj.browserify) == \object => obj.browserify)
b.require(obj.name)
b.bundle!pipe fs.createWriteStream(path.join(desdir, "#name.js"))
console.log " -- (module -> browserify) -> #desdir "
p = new Promise (res, rej) ->
b = browserify(if typeof(obj.browserify) == \object => obj.browserify)
b.require(obj.name)
b.bundle (e, buf) ->
if e => return rej new Error(e)
fs.write-file-sync path.join(desdir, "#name.js"), buf
console.log " -- (module -> browserify) -> #desdir "
res!
else
if obj.dir => srcdir = path.join(root, obj.dir)
else
srcdir = path.join(root, "dist")
if !fs.exists-sync(srcdir) => srcdir = root
fs-extra.copy-sync srcdir, desdir
console.log " -- #srcdir -> #desdir "
fs-extra.remove-sync maindir
if use-symlink => fs-extra.ensure-symlink-sync desdir, maindir
else fs-extra.copy-sync desdir, maindir
p = Promise.resolve!then -> console.log " -- #srcdir -> #desdir "
p.then ->
fs-extra.remove-sync maindir
if use-symlink => fs-extra.ensure-symlink-sync desdir, maindir
else fs-extra.copy-sync desdir, maindir
110 changes: 69 additions & 41 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
"cli.js"
],
"description": "Frontend dependency installer",
"version": "0.0.11",
"version": "0.0.12",
"homepage": "https://github.com/plotdb/fedep",
"repository": {
"type": "git",
Expand All @@ -22,7 +22,7 @@
"yargs": "^16.1.0"
},
"devDependencies": {
"LiveScript": ">=1.2.0"
"livescript": "^1.6.0"
},
"bin": {
"fedep": "./cli.js"
Expand Down

0 comments on commit 107a95e

Please sign in to comment.