diff --git a/.gitignore b/.gitignore index 0bb5148..e15b388 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,6 @@ __pycache__ *.html *.pyd /fits.c +/dist/* +/src/fits.c +/wordscape_cheats.egg-info/* diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..1f92c97 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,2 @@ +include requirements.txt +recursive-include src * \ No newline at end of file diff --git a/setup.py b/setup.py index 27126cb..b092dd8 100644 --- a/setup.py +++ b/setup.py @@ -1,15 +1,18 @@ from setuptools import setup, find_packages +from setuptools.extension import Extension from Cython.Build import cythonize with open("requirements.txt") as file: REQUIREMENTS = file.read().rstrip().split("\n") +extensions = [Extension("wordscape.fits", ["src/fits.pyx"])] + setup( author="Raphael Roberts", author_email="raphael.robets48@gmail.com", description="Cheat for wordscape and wordscape like games", - entry_points=None, - ext_modules=cythonize("src/fits.pyx"), + entry_points={"console_scripts": ["wordscape=wordscape.main:main"]}, + ext_modules=cythonize(extensions), install_requires=REQUIREMENTS, name="wordscape_cheats", packages=find_packages(), diff --git a/wordscape/__init__.py b/wordscape/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/wordscape/candidate_cache.py b/wordscape/candidate_cache.py index 50508e9..356b2f1 100644 --- a/wordscape/candidate_cache.py +++ b/wordscape/candidate_cache.py @@ -12,12 +12,9 @@ def candidates(letters, dictionary: Dictionary): letters = "".join(letters) possibilities = [] for word in dictionary.word_frequency.keys(): - try: - if fits(letters, word): - possibilities.append(word) - except ZeroDivisionError: - breakpoint() - return word + if fits(letters, word): + possibilities.append(word) + return possibilities class CandidateCache: