Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
@sandfox/serverless-webpack-plugin
Advanced tools
Readme
Forked from serverless-webpack-plugin which is itself forked from serverless-optimizer-plugin.
This plugin uses webpack to optimize your Serverless Node.js Functions on deployment.
This fork has some bugfixes and behaviour breaks. It no longer handles copying/moving node_modules for you and instead expects them all to handled via webpack
Note: Requires Serverless v0.5.0.
npm install @sandfox/serverless-webpack-plugin webpack --save-dev
plugins
array in your Serverless Project's s-project.json
, like this:plugins: [
"@sandfox/serverless-webpack-plugin"
]
custom
property of either your s-project.json
or s-function.json
add an webpack property. The configPath is relative to the project root.{
...
"custom": {
"webpack": {
"configPath": "path/relative/to/project-path"
}
}
...
}
TODO: make this example webpack2 or delete
This plugin allows you to completely customize how your code is optimized by specifying your own webpack config. Heres a sample webpack.config.js
:
var webpack = require('webpack');
module.exports = {
// entry: provided by serverless
// output: provided by serverless
target: 'node',
externals: [
'aws-sdk'
],
resolve: {
extensions: ['', '.js', '.jsx']
},
devtool: 'source-map',
plugins: [
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.optimize.UglifyJsPlugin({
compress: {
unused: true,
dead_code: true,
warnings: false,
drop_debugger: true
}
})
],
module: {
loaders: [
{
test: /\.jsx?$/,
loader: 'babel',
exclude: /node_modules/,
query: {
presets: ['es2015', 'stage-0']
}
}
]
}
};
Note: Some node modules don't play nicely with webpack.optimize.UglifyJsPlugin
in this case, you can omit it from
your config, or add the offending modules to externals
. For more on externals see below.
Externals specified in your webpack config will be properly packaged into the deployment.
This is useful when working with modules that have binary dependencies, are incompatible with webpack.optimize.UglifyJsPlugin
or if you simply want to improve build performance. Check out webpack-node-externals
for an easy way to externalize all node modules.
Yes using devtool: 'source-map'
works, include require('source-map-support').install();
you'll have pretty stacktraces.
If you need to load modules before your lambda function module is loaded,
you can specify those modules with entry option in your webpack config.
For example if you need to load the babel-polyfill, you can do that
by adding entry: ['babel-polyfill']
to your webpack config.
This will first load the babel-polyfill module and then your lambda function module.
The plugin builds directly from the source files, using "magic handlers" to include the parent directory (as mentioned in the 0.5.0 release notes) is unnecessary.
FAQs
Serverless Webpack Plugin - Significantly reduces Lambda file size and improves performance
The npm package @sandfox/serverless-webpack-plugin receives a total of 0 weekly downloads. As such, @sandfox/serverless-webpack-plugin popularity was classified as not popular.
We found that @sandfox/serverless-webpack-plugin demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.