cmtt / publicsuffixlist Goto Github PK
View Code? Open in Web Editor NEWA validator for domain names and top level domains, driven by publicsuffixlist.org and ICANN's generic TLDs.
A validator for domain names and top level domains, driven by publicsuffixlist.org and ICANN's generic TLDs.
publicsuffixlist doesn't work with node 12 - it fails 11 of its tests and produces completely wrong results, e.g.:
> psl.domain('example.org.uk')
'org.uk'
Version 0.2.2 of psl.domain() resolves the hostname 'ogc.beta.agiv.be' incorrectly to 'ogc.beta.agiv.de'. The effective_tld_names.dat used by publicsuffixlist does not contain anything special for a "ogc", "beta" or "agiv".
var PublicSuffixList = require('publicsuffixlist');
var psl = new PublicSuffixList();
psl.initializeSync();
psl.domain('agiv.be'); // => 'agiv.be' as expected
psl.domain('beta.agiv.be'); // => 'agiv.be' as expected
psl.domain('ogc.beta.agiv.be'); // => 'ogc.beta.agiv.be' !?
Hi,
If I try to install this package on Ubuntu or Debian systems, I get this:
npm install publicsuffixlist
npm http GET https://registry.npmjs.org/publicsuffixlist
npm http 200 https://registry.npmjs.org/publicsuffixlist
> [email protected] preinstall /tmp/zz/node_modules/publicsuffixlist
> node download_list.js
Downloading https://publicsuffix.org/list/effective_tld_names.dat?raw=1
Contacting publicsuffix.org...
/tmp/zz/node_modules/publicsuffixlist/download_list.js:76
throw new Error(err);
^
Error: Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
at /tmp/zz/node_modules/publicsuffixlist/download_list.js:76:11
at /tmp/zz/node_modules/publicsuffixlist/download_list.js:61:5
at ClientRequest.<anonymous> (/tmp/zz/node_modules/publicsuffixlist/download_list.js:28:5)
at ClientRequest.EventEmitter.emit (events.js:95:17)
at CleartextStream.socketErrorListener (http.js:1547:9)
at CleartextStream.EventEmitter.emit (events.js:95:17)
at SecurePair.<anonymous> (tls.js:1389:19)
at SecurePair.EventEmitter.emit (events.js:92:17)
at SecurePair.maybeInitFinished (tls.js:982:10)
at CleartextStream.read [as _read] (tls.js:469:13)
> [email protected] preuninstall /tmp/zz/node_modules/publicsuffixlist
> node delete_list.js
npm ERR! [email protected] preinstall: `node download_list.js`
npm ERR! Exit status 8
npm ERR!
npm ERR! Failed at the [email protected] preinstall script.
npm ERR! This is most likely a problem with the publicsuffixlist package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node download_list.js
npm ERR! You can get their info via:
npm ERR! npm owner ls publicsuffixlist
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 4.1.0-2-amd64
npm ERR! command "/usr/local/bin/node" "/usr/local/bin/npm" "install" "publicsuffixlist"
npm ERR! cwd /tmp/zz
npm ERR! node -v v0.10.28
npm ERR! npm -v 1.4.9
npm ERR! code ELIFECYCLE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /tmp/zz/npm-debug.log
npm ERR! not ok code 0
And indeed, simply using wget to download the raw data (from https://publicsuffix.org/list/effective_tld_names.dat?raw=1, like it happens during the installation process) results in an error, too:
wget https://publicsuffix.org/list/effective_tld_names.dat?raw=1
--2015-09-03 19:29:36-- https://publicsuffix.org/list/effective_tld_names.dat?raw=1
Resolving publicsuffix.org (publicsuffix.org)... 63.245.217.20
Connecting to publicsuffix.org (publicsuffix.org)|63.245.217.20|:443... connected.
ERROR: The certificate of 'publicsuffix.org' is not trusted.
ERROR: The certificate of 'publicsuffix.org' hasn't got a known issuer.
Of course, for wget, we can always simply use the --no-check-certificate
flag, which makes it work...
It would be great if you could adjust the installation script so that the permission check is omitted, because it looks like the upstream server has a certificate which is not considered valid by Ubuntu and Debian systems. (Interestingly, when open the URL with Chrome or FF, they say that the certificate is valid...)
Thank you.
Because gulp
gulp-di
gulp-istanbul
gulp-jshint
gulp-mocha
and mocha
are all listed as dependencies
rather than devDependencies
, there are a ton of extra modules that are needlessly downloaded for people just using the module.
suggestion: Move the listed modules to devDependencies
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.