flori / amatch Goto Github PK
View Code? Open in Web Editor NEWApproximate String Matching library
License: Apache License 2.0
Approximate String Matching library
License: Apache License 2.0
Hi,
you're using GPL as License. This is of course limiting the usage of your gem quite a lot as it means one cannot use it in commercial applications.
Is there a reason for that ? Do you use any 3rd party GPL code ?
I am converting my Rails app to Jruby, but while trying to bundle install
I get this error:
An error occurred while installing amatch (0.3.0), and Bundler cannot continue.
Make sure that `gem install amatch -v '0.3.0'` succeeds before bundling.
Is amatch
incompatible with jruby?
I found this excellent gem! 💎
It seems like there are a few ruby gems for string matching:
Would it make sense to join forces? In other words, have several maintainers of one project.
String distance is a great functionality, but the API can be pretty static over time. So what's important is mostly to have several maintainers that can help each other with CI upgrades and similar.
ping @kiyoka @flori @dimus @tonytonyjan
I've opened issues in all three repos quoted above, with the same message
Besides AMatch, I'm using another algorithm based on bi-grams comparisons : https://gist.github.com/1139737
Would you consider implementing a C version of it in AMatch ?
Thanks
Random segfault. Happened to both my production servers at the same time, but I can't reproduce the segfault in the console.
Amatch::DamerauLevenshtein.new('чай').match('чая')
# => 2
I guess, the same problem as colinsurprenant/hotwater#1
Hi,
I've been using AMatch for 2 years, with a regular MRI 1.8.7 in production, but with versions 2.0.5 and 2.0.7, I have SEGFAULTs on a regular basis when running with REE.
I thought it was happening only with Debian 64 bits, but recently I've had some with a 32 bits Ubuntu and now also with Mac OS X (10.6.8).
There is a more detailed ticket in the REE issue tracker : http://code.google.com/p/rubyenterpriseedition/issues/detail?id=71
Tell me if there is anything I can do to help solving this very annoying thing.
Besides that, I'm very happy with AMatch. Thanks for maintaining it.
As of now the Tins dependency is locked at version 0.3 but the latest version is 1.0.1. I've tried to fork and do a pull request but the dependencies and gemspec handling looks like an unusual setup.
So please, could you update Tins' version and maybe consider refactoring the gem build.
Thanks!
This segfaults for me nearly every time:
https://gist.github.com/15772e34fc5c2f2b944d
Crash report here: https://gist.github.com/9dbe901d30da83cac130
Not really a bug. It would be worth noting in the documentation for PairDistance that it is actually an implementation of the Dice's coefficient algorithm
(this was previously reported by me in #3, but that issue is more focused on a Jaro-Winkler bug. apologies for spamming it before)
I'm finding this very hard to reproduce.
I've seen it in production on Heroku Celadon Cedar.
https://gist.github.com/8bfe1132e31ba97a3102
https://gist.github.com/8b4e3a1cd1da5472ffa4
Here's one approximation of what my app is doing, but of course it doesn't segfault:
require 'faker'
require 'fuzzy_match'
require 'amatch'
FuzzyMatch.engine = :amatch
haystack = []
1000.times {
haystack << Faker::Company.name
}
1000.times {
fuzzy_match = FuzzyMatch.new(haystack)
needle = Faker::Company.name
match = fuzzy_match.find needle
puts [needle, match].join(' => ')
}
This is the output of gem install amatch
/home/francois/.rubies/rubinius-dev/bin/rbx extconf.rb
creating Makefile
Rewriting the generated Makefile to get my compiler output displayed...
make "DESTDIR="
make: compiling: Command not found
make: *** [amatch_ext.o] Error 127
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.