Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

prebuild

Package Overview
Dependencies
Maintainers
2
Versions
117
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

prebuild - npm Package Compare versions

Comparing version 1.1.1 to 1.2.0

34

bin.js

@@ -13,2 +13,4 @@ #!/usr/bin/env node

log.heading = 'prebuild'
if (process.env.npm_config_loglevel) log.level = process.env.npm_config_loglevel
var setupLog = log.info.bind(log, 'setup')

@@ -111,14 +113,23 @@

if (v[0] !== 'v') v = 'v' + v
log.info('setup', 'Preparing to prebuild ' + pkg.name + '@' + pkg.version + ' for ' + v + ' on ' + rc.platform + '-' + rc.arch)
build(v, function (err, filename) {
setupLog('Preparing to prebuild ' + pkg.name + '@' + pkg.version + ' for ' + v + ' on ' + rc.platform + '-' + rc.arch)
getAbi(v, function (err, abi) {
if (err) return log.error(err.message)
getAbi(v, function (err, abi) {
if (err) return log.error(err.message)
pack(filename, abi)
var tarPath = getTarPath(abi)
var next = function (err) {
if (err) return cb(err)
cb(null, { path: tarPath, abi: abi, version: v, platform: rc.platform, arch: rc.arch})
}
fs.stat(tarPath, function (err, st) {
if (!err && !rc.force) {
log.info('package', tarPath + ' exists, skipping build')
return next()
}
build(v, function (err, filename) {
if (err) return cb(err)
pack(filename, tarPath, next)
})
})
})
function pack (filename, abi) {
var name = pkg.name + '-v' + pkg.version + '-node-v' + abi + '-' + rc.platform + '-' + rc.arch + '.tar.gz'
var tarPath = path.join('prebuilds', name)
function pack (filename, tarPath, cb) {
fs.mkdir('prebuilds', function () {

@@ -144,3 +155,3 @@ fs.stat(filename, function (err, st) {

log.info('package', 'Prebuild written to ' + tarPath)
cb(null, {path: tarPath, name: name, abi: abi, version: v, platform: rc.platform, arch: rc.arch})
cb()
})

@@ -151,1 +162,6 @@ })

}
function getTarPath (abi) {
var name = pkg.name + '-v' + pkg.version + '-node-v' + abi + '-' + rc.platform + '-' + rc.arch + '.tar.gz'
return path.join('prebuilds', name)
}
{
"name": "prebuild",
"version": "1.1.1",
"version": "1.2.0",
"description": "A command line tool for easily doing prebuilds for multiple version of node/iojs on a specific platform",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -12,4 +12,5 @@ var minimist = require('minimist')

arch: 'a',
platform: 'p'
platform: 'p',
force: 'f'
}
}))

@@ -19,4 +19,25 @@ # prebuild

## ABI
You just need to do a prebuild for every version of node/iojs that have new ABI (application binary interface).
As of writing this to support all versions of node (>0.8.0) and iojs do
```
prebuild -t 0.10.26 -t 0.12.7 -t 1.8.1 -t 1.0.1 -t 2.4.0
```
Optionally you can add a rc file to `~/.prebuildrc` with the following content
``` ini
target[] = 0.10.26
target[] = 0.12.7
target[] = 1.8.1
target[] = 1.0.1
target[] = 2.4.0
```
To always build for the above versions
## License
MIT
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc