Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
This library implements a pure Ruby interface to the WordNet lexical/semantic database. Unlike existing ruby bindings, this one doesn't require you to convert the original WordNet database into a new database format; instead it can work directly on the database that comes with WordNet.
If you're doing something data-intensive you will achieve much better performance with Michael Granger's Ruby-WordNet, since it converts the WordNet database into a BerkelyDB file for quicker access. rwordnet has a much smaller footprint, with no gem or native dependencies, and requires about a third of the space on disk as Ruby-Wordnet + DB. In writing rwordnet, I've focused more on usability and ease of installation ( gem install rwordnet ) at the expense of some performance. Use at your own risk, etc.
Note |
---|
2.0.0 changed how you require rwordnet from require 'wordnet' to require 'rwordnet' (note the extra r !). |
One of the chief benefits of rwordnet over Ruby-WordNet is how easy it is to install:
gem install rwordnet
That's it! rwordnet comes bundled with the WordNet database which it uses by default, so there's absolutely nothing else to download, install, or configure. Of course, if you want to use your own WordNet installation, that's easy too -- just set the path to WordNet's database files before using the library (see examples below).
The other benefit of rwordnet over Ruby-WordNet is that it's so much easier (IMHO) to use.
As an example, consider finding all of the noun glosses for a given word:
require 'rwordnet'
lemma = WordNet::Lemma.find("fruit", :noun)
lemma.synsets.each { |synset| puts synset.gloss }
...or all of the glosses, period:
lemmas = WordNet::Lemma.find_all("fruit")
synsets = lemmas.map { |lemma| lemma.synsets }
words = synsets.flatten
words.each { |word| puts word.gloss }
Have your own WordNet database that you've marked up with extra attributes and whatnot? No problem:
require 'rwordnet'
WordNet::DB.path = "/path/to/WordNet-3.0"
lemmas = WordNet::Lemma.find_all("fruit")
FAQs
Unknown package
We found that rwordnet demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers 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
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.