
Research
npm Malware Targets Telegram Bot Developers with Persistent SSH Backdoors
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
hapi-dev-errors
Advanced tools
Return better error details and skip the look at command line to catch the issue.
A hapi plugin to show server errors in the browser or terminal.
Installation · Usage · Plugin Options
Follow @marcuspoehls for updates!
Development of this hapi plugin is supported by Future Studio University 🚀
Join the Future Studio University and Skyrocket in Node.js
A hapi plugin to return an error view for web requests, providing more details of the issue. hapi-dev-errors
will give you the exact file where the error happend and a nice error stacktrace within the browser. Skip the extra look at your command line to catch the issue's location.
hapi-dev-errors
seamlessly integrates Youch to show the error details.
Besides the web view, hapi-dev-errors
prints pretty error details to the terminal. This is nice when running your hapi server as an API. Printing error details to the console is enabled by default. To disable the terminal error, use the toTerminal: false
option.
This plugin uses async/await which requires Node.js v12 or newer.
Major Release | hapi.js version | Node.js version |
---|---|---|
v4 | >=17 hapi | >=12 |
v3 | >=17 hapi | >=8 |
v2 | >=17 hapi | >=8 |
Add hapi-dev-errors
as a dependency to your project:
npm i hapi-dev-errors
Use the 3.x
release of hapi-dev-errors
:
npm i hapi-dev-errors@3
Use the 1.3.2
release of hapi-dev-errors
with hapi v16. Later versions are only compatible with hapi v17.
npm i hapi-dev-errors@1.3.2
Check out the examples directory and get
an impression on how to configure hapi-dev-errors
with the individual plugins options and how to customize the
error view.
hapi-dev-errors
is disabled by default to avoid leaking sensitive error details during production.
Enable the plugin by define a "truthy" value for the showErrors
option.
The most straight forward way to register the hapi-dev-errors
plugin:
await server.register({
plugin: require('hapi-dev-errors'),
options: {
showErrors: process.env.NODE_ENV !== 'production'
}
})
// went smooth like chocolate :)
The following plugin options allow you to customize the default behavior of hapi-dev-errors
:
(boolean)
, default: false
— by default, the plugin is disabled and keeps hapi's default error handling behavior(string)
, no default — provide the template name that you want to render with h.view(template, errorData)
(boolean)
, default: true
— print pretty errors to the terminal as well (enabled by default)(array)
- default: linked SVG icons for Google and Stack Overflow - an array of callback functions that accept the error as a parameter. The callback functions should return the link to render below the error message. Pass an empty array []
to disable the default linksawait server.register({
plugin: require('hapi-dev-errors'),
options: {
showErrors: process.env.NODE_ENV !== 'production',
template: 'my-error-view',
toTerminal: true,
links: [ (error) => {
return `
<a href="https://github.com/futurestudio/hapi-dev-errors/search?q=${error.message}">
Search hapi-dev-errors on GitHub
</a>
`
}
]
}
})
// went smooth like chocolate :)
hapi-dev-errors
supports the template
option while registering the plugin. Provide a template name to
use your personal error template and not the default one shipped with hapi-dev-errors
. In case you pass a string
value for the template name, the view will be rendered with h.view(template, errorData).code(500)
.
Available properties to use in your custom error view:
request
: the request that caused the errorerror
: the error response with all its propertiestitle
: error title like Internal Server Error
statusCode
: HTTP response status code (always 500)message
: error message, like Uncaught error: h.view(...).test is not a function
method
: HTTP request method, like GET
url
: URL request path, like /signup
headers
: HTTP request headers object, in key-value formatpayload
: HTTP request payload, only available for HTTP methods other than GET
, in key-value formatstacktrace
: error stacktraceDo you miss a feature? Please don’t hesitate to create an issue with a short description of your desired addition to this plugin.
git checkout -b my-feature
git commit -am 'Add some feature'
git push origin my-new-feature
MIT © Future Studio
futurestud.io · GitHub @futurestudio · Twitter @futurestud_io
Version 4.0.0 (2020-01-10)
FAQs
Return better error details and skip the look at command line to catch the issue.
The npm package hapi-dev-errors receives a total of 845 weekly downloads. As such, hapi-dev-errors popularity was classified as not popular.
We found that hapi-dev-errors demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers 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.
Research
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
Security News
pip, PDM, pip-audit, and the packaging library are already adding support for Python’s new lock file format.
Product
Socket's Go support is now generally available, bringing automatic scanning and deep code analysis to all users with Go projects.