Security News
RubyGems.org Adds New Maintainer Role
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Simple JavaScript logging library. Supports logging to local console as well as a remote endpoint.
Lawgr has the concept of logging targets. A target being a function which will be called when any of the logging functions are called. The default configuration includes a target called local
, which renders messages in the local console.
A remote target is also available for sending log messages to a remote endpoint. To make use of it you can reconfigure the targets
property as follows:
log.config.targets = [ log.defaults.targets.local, log.defaults.targets.remote ];
The log.defaults.targets.remote
target will post log messages to /logs/ with a body like this:
{
level: "error",
message: "Oh noes!",
sender: "some-app",
stack: [{
context: [
"var someFuncName = function() {",
" throw new Error('Oh Noes');",
"};"
],
func: "someFuncName",
line: 2,
column: 12,
url: "http://blah.com/scripts/lib.js"
}],
url: "/"
useragent: "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36"
}
The sender
property is configured as follows:
log.config.sender = 'some-app';
The stack
property is only included if available. Stack traces are obtained through TraceKit.
You can also implement your own target(s) by providing a function with the following signature:
function (level, message, stack)
level
will be one of debug, info, warning, error or critical. message
is the log message. stack
corresponds to the stack
property in the example above.
The API for logging messages is simple:
log.debug('This is a debug thing');
log.info('This is an informational thing');
log.warning('This is a warning thing');
log.error('This is an error thing');
log.critical('This is a critical thing');
Unhandled errors (window.onerror
) are automatically caught and logged as an error. However, once an error hits window.onerror, the stack trace is limited to a single frame. For better stack traces, use try
-catch
blocks withing your code:
try {
something();
catch (e) {
log.error(e);
}
When throwing errors, create an instance of Error
rather than using a string
:
throw new Error('Oh noes!');
bower install lawgr
npm install lawgr
Install-Package lawgr.js
Prior to publishing a new version of the package, you must run the following commands to configure your NuGet and npm credentials. You should only need to do this once.
npm adduser
grunt nugetkey --key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Once you have entered your credentials, you can publish to npm and NuGet by running one of the following tasks:
grunt publish
Increments patch version in package.json, publishes to npm and NuGet. This is short-hand for grunt publish:patch
.
grunt publish:minor
As before, but bumps minor version.
grunt publish:major
As before, but bumps major version.
The publish task will create an appropriate semver tag which Bower will detect as a new version.
FAQs
Simple JavaScript logging library.
The npm package lawgr receives a total of 0 weekly downloads. As such, lawgr popularity was classified as not popular.
We found that lawgr 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
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.
Security News
Research
Socket's threat research team has detected five malicious npm packages targeting Roblox developers, deploying malware to steal credentials and personal data.