# Generated from hanny-0.2.1.gem by gem2rpm -*- rpm-spec -*-
%global gem_name hanny

Name: rubygem-%{gem_name}
Version: 0.2.1
Release: 1%{?dist}
Summary: Hanny is a Hash-based Approximate Nearest Neighbor search library in Ruby
License: BSD-2-Clause
URL: https://github.com/yoshoku/hanny
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
BuildRequires: ruby(release)
BuildRequires: rubygems-devel
BuildRequires: ruby
BuildArch: noarch

%description
Hanny is a Hash-based Approximate Nearest Neighbor (ANN) search library in
Ruby.
Hash-based ANN converts vector data into binary codes and builds a hash table
by using the binary codes as hash keys.
To build the hash table, Hanny uses Locality Sensitive Hashing (LSH) of
approximating cosine similarity.
It is known that if the code length is sufficiently long (ex. greater than
128-bit), LSH can obtain high search performance.
In the experiment, Hanny achieved about twenty times faster search speed than
the brute-force search by Euclidean distance.


%package doc
Summary: Documentation for %{name}
Requires: %{name} = %{version}-%{release}
BuildArch: noarch

%description doc
Documentation for %{name}.

%prep
%setup -q -n %{gem_name}-%{version}

%build
# Create the gem as gem install only works on a gem file
gem build ../%{gem_name}-%{version}.gemspec

# %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir
# by default, so that we can move it into the buildroot in %%install
%gem_install

%install
mkdir -p %{buildroot}%{gem_dir}
cp -a .%{gem_dir}/* \
        %{buildroot}%{gem_dir}/



%check
pushd .%{gem_instdir}
# Run the test suite.
popd

%files
%dir %{gem_instdir}
%{gem_instdir}/.coveralls.yml
%{gem_instdir}/.github
%exclude %{gem_instdir}/.gitignore
%exclude %{gem_instdir}/.rubocop.yml
%{gem_instdir}/CODE_OF_CONDUCT.md
%license %{gem_instdir}/LICENSE.txt
%{gem_instdir}/Steepfile
%{gem_libdir}
%{gem_instdir}/sig
%exclude %{gem_cache}
%{gem_spec}

%files doc
%doc %{gem_docdir}
%exclude %{gem_instdir}/.rspec
%doc %{gem_instdir}/CHANGELOG.md
%{gem_instdir}/Gemfile
%doc %{gem_instdir}/README.md
%{gem_instdir}/Rakefile
%{gem_instdir}/hanny.gemspec

%changelog
* Mon Sep 13 2021 mockbuilder - 0.2.1-1
- Initial package