Compare commits

..

1 Commits

Author SHA1 Message Date
dependabot[bot] 265dc95eaa
Bump acorn from 5.7.3 to 5.7.4
Bumps [acorn](https://github.com/acornjs/acorn) from 5.7.3 to 5.7.4.
- [Release notes](https://github.com/acornjs/acorn/releases)
- [Commits](https://github.com/acornjs/acorn/compare/5.7.3...5.7.4)

Signed-off-by: dependabot[bot] <support@github.com>
2020-03-16 16:28:19 +00:00
9 changed files with 19 additions and 194 deletions

View File

@ -1,10 +1,5 @@
2.1.0
- Fix CLI script when used without specific POS (#41)
- :boom: Stopwords are now case-insensitive, i.e., "The", "And", "Him", etc. are all filtered out.
2.0.0
**2.0.0**
- Support for running wordpos in the **browser** (no breaking change for node environment)
- Dropped support for node 4.x.

View File

@ -206,7 +206,7 @@ wordpos.lookupAdjective('awesome', console.log);
```
In this case only one lookup was found, but there could be several.
Version 1.1 adds the `lexName` parameter, which maps the lexFilenum to one of [45 lexicographer domains](https://wordnet.princeton.edu/documentation/lexnames5wn).
Version 1.1 adds the `lexName` parameter, which maps the lexFilenum to one of [45 lexicographer domains](https://wordnet.princeton.edu/wordnet/man/lexnames.5WN.html).
#### seek(offset, pos, callback)

View File

@ -269,3 +269,4 @@ function sprint(results) {
},'');
}
}

20
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "wordpos",
"version": "2.0.0-beta.11",
"version": "2.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@ -1230,9 +1230,9 @@
"dev": true
},
"acorn": {
"version": "5.7.3",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
"integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
"version": "5.7.4",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz",
"integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==",
"dev": true
},
"acorn-globals": {
@ -1246,9 +1246,9 @@
},
"dependencies": {
"acorn": {
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz",
"integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==",
"version": "6.4.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz",
"integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==",
"dev": true
}
}
@ -4671,9 +4671,9 @@
},
"dependencies": {
"acorn": {
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz",
"integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==",
"version": "6.4.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz",
"integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==",
"dev": true
},
"escodegen": {

View File

@ -1,6 +1,6 @@
{
"name": "wordpos",
"version": "2.1.0",
"version": "2.0.0",
"description": "wordpos is a set of part-of-speech utilities for Node.js & browser using the WordNet database.",
"author": "Moos <mooster@42at.com>",
"keywords": [

View File

@ -160,12 +160,12 @@ function get(isFn) {
words = this.parse(text),
results = [],
self = this,
first = words[0];
first = words.shift();
// test one first & check for error, otherwise
// map is inoccuous to errors!
return exec(first)
.then(() => Promise.all(words.slice(1).map(exec)))
.then(() => Promise.all(words.map(exec)))
.then(done)
.catch(err => {
// done(); // callback signature is same! // FIXME
@ -224,13 +224,13 @@ function getPOS(text, callback) {
var args = [data];
var matches = uniq(flat(Object.values(data)));
data.rest = diff(words, matches);
profile && args.push(new Date() - start);
nextTick(callback, args);
return data;
}
function error(err) {
console.log('Error >>> ', err);
nextTick(callback, []);
throw err;
}

View File

@ -33,7 +33,7 @@ function normalize(word) {
}
function isStopword(stopwordsStr, word) {
return stopwordsStr.indexOf(' '+ word.toLowerCase() +' ') >= 0;
return stopwordsStr.indexOf(' '+word+' ') >= 0;
}
function tokenizer(str) {

View File

@ -1,171 +0,0 @@
/**
* cli_test.js
*
* Test CLI script
*
* Copyright (c) 2012-2020 mooster@42at.com
* https://github.com/moos/wordpos
*
* Released under MIT license
*/
var
chai = require('chai'),
assert = chai.assert,
exec = require('child_process').exec,
testStr = 'The angry bear chased the frightened little squirrel',
cmd = 'node ' + __dirname + '/../bin/wordpos-cli ',
gDone;
// compare two list of words independent of word order
function cmp(act, exp) {
assert.equal(act.trim().split(' ').sort().join(), exp.split(' ').sort().join());
}
describe('CLI tests', function() {
this.slow(300);
describe('Test CLI get', function() {
it('should get nouns', done => {
exec(cmd + '-n -b get ' + testStr, (error, stdout) => {
assert.isNull(error);
cmp(stdout, 'bear chased squirrel little');
done();
});
});
it('should get adjectives', done => {
exec(cmd + '-a -b get ' + testStr, (error, stdout) => {
assert.isNull(error);
cmp(stdout, 'angry frightened little');
done();
});
});
it('should get verbs', done => {
exec(cmd + '-v -b get ' + testStr, (error, stdout) => {
assert.isNull(error);
cmp(stdout, 'bear');
done();
});
});
it('should get adverbs', done => {
exec(cmd + '-r -b get ' + testStr, (error, stdout) => {
assert.isNull(error);
cmp(stdout, 'little');
done();
});
});
it('should get POS', done => {
exec(cmd + '-b get ' + testStr, (error, stdout, stderr) => {
assert.isNull(error);
cmp(stdout, 'bear chased squirrel little \n' +
'angry frightened little \n' +
'bear \n' +
'little');
done();
});
});
it('should get POS (single word)', done => {
exec(cmd + '-b get angry', (error, stdout, stderr) => {
assert.isNull(error);
assert.equal(stdout.trim(), 'angry');
done();
});
});
it('should get counts', done => {
exec(cmd + '-b -c get ' + testStr, (error, stdout, stderr) => {
assert.isNull(error);
assert.equal(stdout.trim(), '4 3 1 1 6');
done();
});
});
});
describe('Test CLI def', function() {
it('should define word', done => {
exec(cmd + 'def angry', (error, stdout) => {
assert.isNull(error);
assert(stdout.trim().startsWith('angry (def)\n a: feeling or showing anger;'));
done();
});
});
});
describe('Test CLI syn', function() {
it('should get synonyms', done => {
exec(cmd + 'syn angry', (error, stdout) => {
assert.isNull(error);
assert(stdout.trim().startsWith('angry (syn)\n a: angry'));
done();
});
});
});
describe('Test CLI exp', function() {
it('should get exmpale', done => {
exec(cmd + 'exp angry', (error, stdout) => {
assert.isNull(error);
assert(stdout.trim().startsWith('angry (exp)\n a: "angry at the weather"'));
done();
});
});
});
describe('Test CLI seek', function() {
it('should seek by offset', done => {
exec(cmd + '-a seek 00114629', (error, stdout) => {
assert.isNull(error);
assert(/lemma/.test(stdout), 'found lemma');
assert(/angry/.test(stdout), 'found angry');
done();
});
});
});
describe('Test CLI rand', function() {
it('should get a random word', done => {
exec(cmd + 'rand', (error, stdout) => {
assert.isNull(error);
assert(stdout.length > 1, 'got answer')
done();
});
});
it('should get a random word starting with...', done => {
exec(cmd + '-b rand angr', (error, stdout) => {
assert.isNull(error);
assert.equal(stdout.substr(0,4), 'angr');
done();
});
});
});
describe('Test CLI parse', function() {
it('should parse input', done => {
exec(cmd + '-b parse ' + testStr, (error, stdout) => {
assert.isNull(error);
assert.equal(stdout.trim(), 'angry bear chased frightened little squirrel');
done();
});
});
});
describe('Test CLI stopwords', function() {
let WordPOS = require('../src/wordpos');
it('should list stopwords', done => {
exec(cmd + '-j stopwords ' + testStr, (error, stdout) => {
assert.isNull(error);
assert.equal(stdout.trim(), JSON.stringify(WordPOS.stopwords));
done();
});
});
});
});

View File

@ -56,7 +56,7 @@ var str = "The angry bear chased the frightened little squirrel",
verbs: [ 'bear' ],
adjectives: [ 'little', 'angry', 'frightened' ],
adverbs: [ 'little' ],
rest: []
rest: [ 'The' ]
},
garble = 'garblegarble', // expect not to find word
offset = 1285602;