
Research
/Security News
Toptal’s GitHub Organization Hijacked: 10 Malicious Packages Published
Threat actors hijacked Toptal’s GitHub org, publishing npm packages with malicious payloads that steal tokens and attempt to wipe victim systems.
Node+browser package for Climate Data Online (CDO) API
$ npm install --save cdojs
cdojs should support all params and endpoints found on NCEI/NCDC's documentation for the CDO API.
Init the client:
var CDO = require('cdojs')
var client = new CDO('mytoken')
To retrieve the first page of queryable datasets, your code might look something like this:
client
.datasets()
.then(console.log)
Retrieve all 56 kinds of queryable temperature measurements, 25 per page (montly mean, daily minimum/maximum, etc):
client.all('datatypes', {datacategoryid: 'TEMP'}, console.log) // calls console.log once per page
Alternatively, if you want to page manually:
function getTempTypes (params) {
if (!params) params = {datacategoryid: 'TEMP'}
return client
.datatypes(params)
.then(page => (
page.results.length
? getTempTypes(CDO.paramsForNextPage(params)).then(pages => [page, ...pages])
: [page]
))
}
getTempTypes().then(console.log)
Typical usage: fetch all stations for ZIP code, then fetch daily temperatures between 2000 and 2001 for the first returned station
// init client with some default query params
var client = new CDO('mytoken', {params: { // set some default params
datasetid: 'GHCND', // "Daily Summaries"
datatypeid: 'TOBS', // "Temperature at the time of observation", one of the TEMP datatypes returned by the above query
startdate: '2000-01-01',
enddate: '2001-01-01'
}})
// fetch all stations for ZIP code
var results = []
client
.stations({locationid: 'ZIP:00002'}) // "Yukon Flats Nat Wildlife, AK 00002". Not all ZIPs have a station
.then(stations => (
client.all('data', {stationid: stations.results[0].id}, page => {
results = results.concat(page.results)
return false // return true to stop paging
})
))
.then(() => { console.log(results) })
FAQs
JS wrapper for NCEI's Climate Data Online API
The npm package cdojs receives a total of 2 weekly downloads. As such, cdojs popularity was classified as not popular.
We found that cdojs 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.
Research
/Security News
Threat actors hijacked Toptal’s GitHub org, publishing npm packages with malicious payloads that steal tokens and attempt to wipe victim systems.
Research
/Security News
Socket researchers investigate 4 malicious npm and PyPI packages with 56,000+ downloads that install surveillance malware.
Security News
The ongoing npm phishing campaign escalates as attackers hijack the popular 'is' package, embedding malware in multiple versions.