Sync from SUSE:SLFO:Main python-Whoosh revision a3931a6379c8f2738c57d6541edf907e
This commit is contained in:
commit
bc37d2acc1
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
16
NullMatcherClass-hashable.patch
Normal file
16
NullMatcherClass-hashable.patch
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
src/whoosh/matching/mcore.py | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
--- a/src/whoosh/matching/mcore.py
|
||||
+++ b/src/whoosh/matching/mcore.py
|
||||
@@ -379,6 +379,9 @@ class NullMatcherClass(Matcher):
|
||||
def __repr__(self):
|
||||
return "<NullMatcher>"
|
||||
|
||||
+ def __hash__(self):
|
||||
+ return hash((self.is_active(), tuple(self.all_ids())))
|
||||
+
|
||||
def supports_block_quality(self):
|
||||
return True
|
||||
|
BIN
Whoosh-2.7.4.tar.gz
(Stored with Git LFS)
Normal file
BIN
Whoosh-2.7.4.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
57
py2encoding.patch
Normal file
57
py2encoding.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From f5a777572fb9c91fa10be3c1ffd5f65cc9323653 Mon Sep 17 00:00:00 2001
|
||||
From: fortable1999 <fortable1999@gmail.com>
|
||||
Date: Wed, 12 Dec 2018 11:18:50 +0900
|
||||
Subject: [PATCH] Fixed test case for ListCorrector; Fixed FSA __eq__ function
|
||||
|
||||
---
|
||||
src/whoosh/automata/fsa.py | 7 +------
|
||||
tests/test_reading.py | 1 +
|
||||
tests/test_spelling.py | 7 ++++++-
|
||||
5 files changed, 12 insertions(+), 8 deletions(-)
|
||||
create mode 100644 .gitignore
|
||||
|
||||
diff --git a/src/whoosh/automata/fsa.py b/src/whoosh/automata/fsa.py
|
||||
index 280ddb50..54d23f2f 100644
|
||||
--- a/src/whoosh/automata/fsa.py
|
||||
+++ b/src/whoosh/automata/fsa.py
|
||||
@@ -44,12 +44,7 @@ def __eq__(self, other):
|
||||
return False
|
||||
st = self.transitions
|
||||
ot = other.transitions
|
||||
- if list(st) != list(ot):
|
||||
- return False
|
||||
- for key in st:
|
||||
- if st[key] != ot[key]:
|
||||
- return False
|
||||
- return True
|
||||
+ return st == ot
|
||||
|
||||
def all_states(self):
|
||||
stateset = set(self.transitions)
|
||||
diff --git a/tests/test_reading.py b/tests/test_reading.py
|
||||
index e2c2b71d..9fefc41c 100644
|
||||
--- a/tests/test_reading.py
|
||||
+++ b/tests/test_reading.py
|
||||
@@ -1,3 +1,4 @@
|
||||
+# coding=utf-8
|
||||
from __future__ import with_statement
|
||||
import random, threading, time
|
||||
|
||||
diff --git a/tests/test_spelling.py b/tests/test_spelling.py
|
||||
index ce5284f1..440c2d02 100644
|
||||
--- a/tests/test_spelling.py
|
||||
+++ b/tests/test_spelling.py
|
||||
@@ -20,7 +20,12 @@ def test_list_corrector():
|
||||
corr = spelling.ListCorrector(_wordlist)
|
||||
typo = "reoction"
|
||||
sugs = list(corr.suggest(typo, maxdist=2))
|
||||
- target = [w for w in _wordlist if levenshtein(typo, w) <= 2]
|
||||
+ target = []
|
||||
+ for lev_dist in range(1, 3):
|
||||
+ # sugs will return suggest first ordered by levenshtein distance
|
||||
+ # then second order by dictionary order
|
||||
+ target += [w for w in _wordlist
|
||||
+ if levenshtein(typo, w) <= lev_dist and w not in target]
|
||||
assert sugs == target
|
||||
|
||||
|
13
pytest4.patch
Normal file
13
pytest4.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: Whoosh-2.7.4/setup.cfg
|
||||
===================================================================
|
||||
--- Whoosh-2.7.4.orig/setup.cfg
|
||||
+++ Whoosh-2.7.4/setup.cfg
|
||||
@@ -15,7 +15,7 @@ formats = zip,gztar
|
||||
push = sdist bdist_wheel upload
|
||||
pushdocs = build_sphinx upload_sphinx
|
||||
|
||||
-[pytest]
|
||||
+[tool:pytest]
|
||||
addopts = -rs --tb=native
|
||||
norecursedirs = .hg .tox _build tmp* env* benchmark stress
|
||||
minversion = 2.0
|
212
python-Whoosh.changes
Normal file
212
python-Whoosh.changes
Normal file
@ -0,0 +1,212 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed May 3 10:41:31 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
||||
|
||||
- fix line endings
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 2 05:48:24 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>
|
||||
|
||||
- add sle15_python_module_pythons (jsc#PED-68)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Apr 23 22:40:43 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
||||
|
||||
- Move documentation into the main package for SLE15
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 5 09:38:22 UTC 2022 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Update in SLE-15 (bsc#1197830)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 21 07:55:58 UTC 2021 - Matej Cepl <mcepl@suse.com>
|
||||
|
||||
- Add NullMatcherClass-hashable.patch which adds __hash__
|
||||
method to NullMatcherClass, so that it works with Sphinx4
|
||||
(gh#whoosh-community/whoosh#570).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 18 08:22:32 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
||||
|
||||
- Add patch to fix build with pytest4+ (both in git of upstream):
|
||||
* pytest4.patch
|
||||
* py2encoding.patch
|
||||
- Use fdupes
|
||||
- Update URL
|
||||
- Make sure py2 tests are run too
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 4 12:56:04 UTC 2018 - Matej Cepl <mcepl@suse.com>
|
||||
|
||||
- Remove superfluous devel dependency for noarch package
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 10 10:20:39 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Ensure neutrality of description.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 26 09:07:38 UTC 2017 - tbechtold@suse.com
|
||||
|
||||
- convert to singlespec
|
||||
- split -doc package
|
||||
- use files.pythonhosted.org as Source url
|
||||
- update to 2.7.4:
|
||||
* Changed version number to 2.7.0.
|
||||
* Added tag 2.7.0 for changeset 8abeb09483b9
|
||||
* Results.extend() didn't update the cached length.
|
||||
* Fixed VarBytesListColumn and FixedBytesListColumn.
|
||||
* Handle an empty queue exception in mpwriter.
|
||||
* Merging pull request with local commit.
|
||||
* Added test for storing tuples.
|
||||
* Remove caching decorator from VarBytesColumn reader.
|
||||
* Added test for has_deletions() after an optimization.
|
||||
* Try to avoid an UnboundLocalError in the DFA when MultiTerm.matcher() has
|
||||
an empty string.
|
||||
* Don't try to write a vector if the list of items is empty.
|
||||
* Implemented use of score_fn argument to NestedParent.
|
||||
* Don't cache query -> bitset, since this somehow prevents the Searcher from
|
||||
being collected.
|
||||
* Changed README docs link to point to readthedocs.org.
|
||||
* Change uses of dump[s]() to always use protocol 2 instead of -1
|
||||
("use latest protocol") so indices created with Python 3.x are backwards
|
||||
compatible.
|
||||
* Fix the analyzer in test_vector_unicode() to not lowercase, since this
|
||||
makes the test fail on some Python versions.
|
||||
* Actually use the split_fn passed by the user. Not sure what happened here.
|
||||
* Handle pickled Schema objects that don't have a _subfields attribute.
|
||||
* Added fix and tests for calling expand_prefix() with unicode.
|
||||
* Fix short code for Swedish in language aliases.
|
||||
* Fix missing a consecutive token during highlighting
|
||||
* Added estimate_size() methods to SpanNear2.
|
||||
* Removed reference to "allfields" keyword argument.
|
||||
* Added tests/english-words.10.gz to manifest so it's included in the distribution.
|
||||
* Fix warnings in docs build.
|
||||
* BufferedWriter should call close() instead of commit() when exiting a context.
|
||||
* Reinstate fields.IDLIST's analyzer.
|
||||
* Change the version of my fork to be distinct from the base repo.
|
||||
* Backed out changeset 96255fc8ff17
|
||||
* A typo in `whoosh.fields.KEYWORD` documentation
|
||||
* Created new branch romanian-stemmer
|
||||
* Skip ISO-8859-1 suffixes on Unicode strings
|
||||
* Created new branch spanish-tokenizer
|
||||
* Add sanity check for Spanish stemmer
|
||||
* Fix sample highlight class
|
||||
* Reorder the self._tempstorage.destroy() in SegmentWriter._finish to
|
||||
before the lock is released
|
||||
* IOError from rmdir is ok if the error was ENOENT
|
||||
* Fix reporting of total count in FilterCollector, based on PR #63 by Jannon Frank.
|
||||
* Added a test for pickling a schema with a stemming analyzer.
|
||||
* Initial unfinished, massive checkin of next-gen architecture.
|
||||
* Fix forward-compatibility issue for Python 3.x.
|
||||
* Write offsets in VarBytesColumn when there are more than a certain number of rows.
|
||||
* Replaced porter stemming algorithm implementation with one based on the one in NLTK.
|
||||
* Add IDEA's .cache directory to hgignore.
|
||||
* Add IDEA's .cache directory to hgignore.
|
||||
* Remove docstring chickenscratch.
|
||||
* Fix test accidentally left with assert False at the end.
|
||||
* Removed accidentally committed debug prints.
|
||||
* Bumped version number for bugfix release.
|
||||
* Added tag 2.7.1 for changeset 1bd4b9792eed
|
||||
* Merging Bitbucket and local heads.
|
||||
* Bumped version number.
|
||||
* Added tag 2.7.2 for changeset f6bf123ac708
|
||||
* Fixed logic for checking if floats are all whole in encode_weights.
|
||||
* Change posting storage so the data from individual posts can be pulled
|
||||
out as raw bytes.
|
||||
* Fixed error in CommaSeparatedTokenizer.
|
||||
* Fixed import error.
|
||||
* Minor changes.
|
||||
* Updated VarBytesColumn to store offsets as well as lengths.
|
||||
* Added context protocol to Index class. Store TOC file name in object.
|
||||
* Switched to lighter-weight posting block format.
|
||||
* Forgot to check in pfor.py.
|
||||
* Reduced size of and references to whoosh.compat, in anticipation of
|
||||
using 3to2 for most things.
|
||||
* Remove (object) from class definitions, assuming 3to2 will take care of it.
|
||||
* Fixed problems from compat refactoring.
|
||||
* Fixed problem with calling leaf matcher methods on a MultiMatcher.
|
||||
* Don't encode bytes in _kws_to_query.
|
||||
* Removed typing annotations to prevent circular import.
|
||||
* Cleaned up filename generation/checking, added GC step to saving TOC.
|
||||
* Added header checks in terms and postings files.
|
||||
* Cleaned up storage cleanup, call it in SegmentWriter.cancel().
|
||||
* Added another except clause to catch TypeError, because that's what's raised
|
||||
if you try to pickle a function.
|
||||
* Fixed error that discarded vector metadata when merging segments.
|
||||
* Added ability to specify an analyzer in KEYWORD field constructor.
|
||||
* Bumped version number to 2.7.3.
|
||||
* Added tag 2.7.3 for changeset f5a1508e93fd
|
||||
* Added HyphenFilter to collapse hyphenated words into single tokens.
|
||||
* Have OrGroup.factory() return a real class instead of a function.
|
||||
* Bumped version number.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Apr 24 09:45:18 UTC 2015 - cdenicolo@suse.com
|
||||
|
||||
- license update: BSD-2-Clause
|
||||
correct license ist BSD-2-Clause
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 22 11:33:23 UTC 2015 - mcihar@suse.cz
|
||||
|
||||
- Update to 2.7.0:
|
||||
* Removed on-disk word graph implementation of spell checking in favor of much
|
||||
simpler and faster FSA implementation over the term file.
|
||||
* Many bug fixes.
|
||||
* Removed backwards compatibility with indexes created by versions prior to
|
||||
2.5. You may need to re-index if you are using an old index that hasn't been
|
||||
updated.
|
||||
* This is the last 2.x release before a major overhaul that will break backwards
|
||||
compatibility.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 23 10:50:40 UTC 2014 - mcihar@suse.cz
|
||||
|
||||
- Upgrate to 2.5.7 (no changelog provided)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 24 11:17:15 UTC 2013 - speilicke@suse.com
|
||||
|
||||
- Require python-setuptools instead of distribute (upstreams merged)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 7 12:26:44 UTC 2013 - mcihar@suse.cz
|
||||
|
||||
- build documentation during build
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 7 12:15:05 UTC 2013 - mcihar@suse.cz
|
||||
|
||||
- now uses py.test instead of nose for testing
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 7 12:09:27 UTC 2013 - mcihar@suse.cz
|
||||
|
||||
- Update to version 2.5.4
|
||||
+ New index format
|
||||
+ Better API for index creation
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 30 11:42:20 UTC 2013 - saschpe@suse.de
|
||||
|
||||
- Update to version 2.4.1:
|
||||
+ Fixes issues #242, #257, #261, #262, #263
|
||||
- Renamed to python-Whoosh, obsoletes python-whoosh
|
||||
- Install HTML documentation and LICENSE.txt
|
||||
- Set SPDX-style license
|
||||
- Run testsuite
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 8 13:33:01 UTC 2012 - highwaystar.ru@gmail.com
|
||||
|
||||
- update to 2.4.0
|
||||
- python3 package added
|
||||
- a lot of spec improvements
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 16 13:15:09 UTC 2012 - mcihar@suse.cz
|
||||
|
||||
- updated to 2.3.2
|
||||
- make package noarch if possible
|
||||
|
100
python-Whoosh.spec
Normal file
100
python-Whoosh.spec
Normal file
@ -0,0 +1,100 @@
|
||||
#
|
||||
# spec file for package python-Whoosh
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%{?sle15_python_module_pythons}
|
||||
Name: python-Whoosh
|
||||
Version: 2.7.4
|
||||
Release: 0
|
||||
Summary: Pure-Python full text indexing, search, and spell checking library
|
||||
License: BSD-2-Clause
|
||||
Group: Development/Languages/Python
|
||||
URL: https://github.com/whoosh-community/whoosh/
|
||||
Source: https://files.pythonhosted.org/packages/source/W/Whoosh/Whoosh-%{version}.tar.gz
|
||||
# upstream in completely unrelated https://github.com/whoosh-community/whoosh/commit/b43e5a432109
|
||||
Patch0: pytest4.patch
|
||||
# upstream in https://github.com/whoosh-community/whoosh/commit/f5a777572fb9
|
||||
Patch1: py2encoding.patch
|
||||
# PATCH-FIX-UPSTREAM NullMatcherClass-hashable.patch gh#whoosh-community/whoosh#570 mcepl@suse.com
|
||||
# NullMatcherClass needs __hash__ method as well for Sphinx4 compatiblity.
|
||||
Patch2: NullMatcherClass-hashable.patch
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: python3-Sphinx
|
||||
BuildArch: noarch
|
||||
# SECTION the testing dependencies
|
||||
BuildRequires: %{python_module pytest}
|
||||
# /SECTION
|
||||
%ifpython2
|
||||
Provides: python-whoosh = %{version}
|
||||
Obsoletes: python-whoosh < %{version}
|
||||
%endif
|
||||
%python_subpackages
|
||||
|
||||
%description
|
||||
Whoosh is a pure-Python indexing and search library. It can be used
|
||||
to add search functionality to applications and websites. Every part
|
||||
of how Whoosh works can be extended or replaced to meet specific
|
||||
needs.
|
||||
|
||||
%if 0%{?suse_version} > 1500
|
||||
%package -n python-Whoosh-doc
|
||||
Summary: Documentation for %{name}
|
||||
Group: Documentation/Other
|
||||
Provides: %{python_module Whoosh-doc = %{version}}
|
||||
|
||||
%description -n python-Whoosh-doc
|
||||
Whoosh is a pure-Python indexing and search library. It can be used
|
||||
to add search functionality to applications and websites. Every part
|
||||
of how Whoosh works can be extended or replaced to meet specific
|
||||
needs.
|
||||
|
||||
This package contains the documentation.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n Whoosh-%{version}
|
||||
|
||||
# Fix CRLF->LF
|
||||
sed -i -e 's/\r$//' docs/source/api/filedb/{filestore,filetables,structfile}.rst
|
||||
|
||||
%build
|
||||
%python_build
|
||||
sphinx-build -b html -d docs/build/doctrees docs/source docs/build/html
|
||||
|
||||
%install
|
||||
%python_install
|
||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||
|
||||
%check
|
||||
export LANG=en_US.UTF8
|
||||
# test_list_corrector - depends on dict sorting thats in py3+ only
|
||||
%pytest -k 'not test_list_corrector'
|
||||
|
||||
%files %{python_files}
|
||||
%license LICENSE.txt
|
||||
%doc README.txt
|
||||
%{python_sitelib}/*
|
||||
|
||||
%if 0%{?suse_version} > 1500
|
||||
%files -n python-Whoosh-doc
|
||||
%license LICENSE.txt
|
||||
%endif
|
||||
%doc docs/build/html
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user