mini-levenshtein 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c3a780c4f86bb3ef04672b62bb2e4eca2059af8e86a698a0dfb8030d38d7559f
4
+ data.tar.gz: 036ca28be4f4a770e13015596ac3379287486386b93de221f4a60a27122277bd
5
+ SHA512:
6
+ metadata.gz: 5706d550af3c94f592bf1359ea14b9efe0123241c6529628c94a46ac7bfa772af1cffe6523a86bc7d2bba71c8d2888cb4e2e546d3aa8b20a68aac048f64f2127
7
+ data.tar.gz: ad0d95b68d6113b1eb69a2a50bdfba73e287fb8a191aba23e68e705ddc1c787bbdfbc41502367a85b8c26bc511217696f60229c7d75916f9bc6b1e890a37445b
@@ -0,0 +1,25 @@
1
+ name: Ruby
2
+
3
+ on:
4
+ push:
5
+ branches: [ master ]
6
+ pull_request:
7
+ branches: [ master ]
8
+
9
+ jobs:
10
+ test:
11
+
12
+ runs-on: ubuntu-latest
13
+ strategy:
14
+ matrix:
15
+ ruby-version: ['2.5', '2.6', '2.7', '3.0']
16
+
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Set up Ruby
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ ruby-version: ${{ matrix.ruby-version }}
23
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
24
+ - name: Run tests
25
+ run: bundle exec rake spec
data/.gitignore ADDED
@@ -0,0 +1,2 @@
1
+ lib/mini-levenshtein/mini_levenshtein.bundle
2
+ tmp/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --require spec_helper
2
+ --format documentation
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby 2.5.9
data/Gemfile ADDED
@@ -0,0 +1,10 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ gem 'rake'
6
+ gem 'rake-compiler'
7
+ gem 'rspec'
8
+ gem 'pry'
9
+ gem 'ruby-prof'
10
+ gem 'faker'
data/Gemfile.lock ADDED
@@ -0,0 +1,52 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ mini-levenshtein (0.1.0)
5
+
6
+ GEM
7
+ remote: https://rubygems.org/
8
+ specs:
9
+ coderay (1.1.3)
10
+ concurrent-ruby (1.1.10)
11
+ diff-lcs (1.5.0)
12
+ faker (2.20.0)
13
+ i18n (>= 1.8.11, < 2)
14
+ i18n (1.10.0)
15
+ concurrent-ruby (~> 1.0)
16
+ method_source (1.0.0)
17
+ pry (0.14.1)
18
+ coderay (~> 1.1)
19
+ method_source (~> 1.0)
20
+ rake (13.0.6)
21
+ rake-compiler (1.2.0)
22
+ rake
23
+ rspec (3.11.0)
24
+ rspec-core (~> 3.11.0)
25
+ rspec-expectations (~> 3.11.0)
26
+ rspec-mocks (~> 3.11.0)
27
+ rspec-core (3.11.0)
28
+ rspec-support (~> 3.11.0)
29
+ rspec-expectations (3.11.0)
30
+ diff-lcs (>= 1.2.0, < 2.0)
31
+ rspec-support (~> 3.11.0)
32
+ rspec-mocks (3.11.1)
33
+ diff-lcs (>= 1.2.0, < 2.0)
34
+ rspec-support (~> 3.11.0)
35
+ rspec-support (3.11.0)
36
+ ruby-prof (1.4.3)
37
+
38
+ PLATFORMS
39
+ -darwin-21
40
+ x86_64-linux
41
+
42
+ DEPENDENCIES
43
+ faker
44
+ mini-levenshtein!
45
+ pry
46
+ rake
47
+ rake-compiler
48
+ rspec
49
+ ruby-prof
50
+
51
+ BUNDLED WITH
52
+ 2.3.6
data/README.md ADDED
@@ -0,0 +1,15 @@
1
+ # mini-levenshtein
2
+
3
+ Simple, fast, levenshtein distance
4
+
5
+ # Synopsis
6
+
7
+ ```ruby
8
+ MiniLevenshtein.distance("levenshtein", "levenstien") # => 3
9
+
10
+ MiniLevenshtein.ratio("levenshtein", "levenstien") # 0.857142...
11
+ ```
12
+
13
+ # Author
14
+
15
+ Delon Newman <contact@delonnewman.name>
data/Rakefile ADDED
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bundler/gem_tasks'
4
+ require 'rspec/core/rake_task'
5
+ require 'rake/dsl_definition'
6
+ require 'rake'
7
+ require 'rake/extensiontask'
8
+ require 'rspec'
9
+
10
+ RSpec::Core::RakeTask.new(:spec) do |rspec|
11
+ rspec.pattern = FileList['spec/**/*_spec.rb']
12
+ end
13
+
14
+ Rake::ExtensionTask.new('mini_levenshtein') do |extension|
15
+ extension.ext_dir = 'ext/mini_levenshtein'
16
+ extension.lib_dir = 'lib/mini-levenshtein'
17
+ end
18
+
19
+ Rake::Task[:spec].prerequisites << :compile
20
+
21
+ desc 'open an irb session preloaded with this gem'
22
+ task :console do
23
+ sh 'bundle exec pry -Ilib -rpp -rmini-levenshtein'
24
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Loads mkmf which is used to make makefiles for Ruby extensions
4
+ require 'mkmf'
5
+
6
+ # The destination
7
+ dir_config('mini-levenshtein/mini_levenshtein')
8
+
9
+ # Do the work
10
+ create_makefile('mini-levenshtein/mini_levenshtein')