collect-feeds
Advanced tools
Comparing version 0.0.8 to 0.0.9
@@ -9,2 +9,5 @@ 'use strict'; | ||
const queue = new Queue(6, Infinity); | ||
// Black List: | ||
// - github user: https://github.com/user | ||
const blackList = /^https?:\/\/github\.com\/[^/]+\/?$/; | ||
const gotOptions = { | ||
@@ -17,5 +20,32 @@ headers: { | ||
let knownFeedEndpoints = [ | ||
'feed/', | ||
'feed', | ||
'feed.xml', | ||
'atom.xml', | ||
'rss.xml', | ||
'feed/rss/', | ||
'feed/rss2/', | ||
'feed/rdf/', | ||
'feed/atom/', | ||
'?feed=rss', | ||
'?feed=rss2', | ||
'?feed=rdf', | ||
'?feed=atom', | ||
'services/rss/' | ||
]; | ||
knownFeedEndpoints = knownFeedEndpoints.concat(knownFeedEndpoints.map(v => { | ||
return '/' + v; | ||
})); | ||
function findFeed(url) { | ||
return Promise.all([queue.add(() => feedFinder(url)), queue.add(() => rssFinder({url, gotOptions}))]) | ||
if (blackList.test(url)) { | ||
return Promise.resolve(null); | ||
} | ||
return Promise.all([queue.add(() => feedFinder(url, {knownFeedEndpoints, gotOptions})), queue.add(() => rssFinder({url, gotOptions}))]) | ||
.then(result => { | ||
console.debug('\n----'); | ||
console.debug(result[0]); | ||
console.debug(result[1]); | ||
const feedUrls1 = result[0]; | ||
@@ -40,2 +70,3 @@ const feedUrls2 = result[1].feedUrls.map(v => v.url); | ||
} | ||
return feedUrls2[0] || feedUrls1[0] || null; | ||
@@ -42,0 +73,0 @@ }); |
{ | ||
"name": "collect-feeds", | ||
"version": "0.0.8", | ||
"version": "0.0.9", | ||
"description": "A CLI for collect feed URLs.", | ||
@@ -18,3 +18,3 @@ "main": "lib/index.js", | ||
"dependencies": { | ||
"feed-finder": "github:dailyrandomphoto/feed-finder#b77a900b004ae5c7178593d9aef6525eb1d5eb69", | ||
"feed-finder": "github:dailyrandomphoto/feed-finder#my-master", | ||
"fs-extra": "^8.1.0", | ||
@@ -21,0 +21,0 @@ "promise-queue": "^2.2.5", |
GitHub dependency
Supply chain riskContains a dependency which resolves to a GitHub URL. Dependencies fetched from GitHub specifiers are not immutable can be used to inject untrusted code or reduce the likelihood of a reproducible install.
Found 1 instance in 1 package
GitHub dependency
Supply chain riskContains a dependency which resolves to a GitHub URL. Dependencies fetched from GitHub specifiers are not immutable can be used to inject untrusted code or reduce the likelihood of a reproducible install.
Found 1 instance in 1 package
11051
216