diff options
-rw-r--r-- | .gitignore | 123 | ||||
-rw-r--r-- | CHANGELOG | 11 | ||||
-rw-r--r-- | setup.py | 44 |
3 files changed, 130 insertions, 48 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3a32806 --- /dev/null +++ b/.gitignore @@ -0,0 +1,123 @@ +.DS_Store + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# Patches +*.patch + +# Emacs files +*~ +\#*\#
\ No newline at end of file @@ -18,6 +18,12 @@ supported. 3. Pickling a BeautifulSoup object. (Note that pickling a Tag object can still cause an overflow.) +* Replaced setup.py and setup.cfg with pyproject.toml. Beautiful Soup + packages now uses hatch as its build backend. + +* Added a tox.ini file to make it easier to run the test suite against all + supported versions of Python. + * Making a copy of a BeautifulSoup object no longer parses the document again, which should improve performance significantly. @@ -29,15 +35,12 @@ supported. * Added unit tests for fuzz test cases created by third parties. Some of these tests are skipped since they point - to problems outside of Beautiful Soup; but this change + to problems outside of Beautiful Soup, but this change puts them all in one convenient place. * PageElement now implements the known_xml attribute. (This was technically a bug, but it shouldn't be an issue in normal use.) [bug=2007895] -* Added a tox.ini file to make it easier to run the test suite against all - supported versions of Python. - = 4.12.0 (20230320) * Introduced the .css property, which centralizes all access to diff --git a/setup.py b/setup.py deleted file mode 100644 index e96eca7..0000000 --- a/setup.py +++ /dev/null @@ -1,44 +0,0 @@ -from setuptools import ( - setup, - find_packages, -) -import sys - -from bs4 import __version__ - -with open("README.md", "r") as fh: - long_description = fh.read() - -setup( - name="beautifulsoup4", - version = __version__, - author="Leonard Richardson", - author_email='leonardr@segfault.org', - url="https://www.crummy.com/software/BeautifulSoup/bs4/", - download_url = "https://www.crummy.com/software/BeautifulSoup/bs4/download/", - description="Screen-scraping library", - python_requires='>=3.6.0', - install_requires=[ - "soupsieve >1.2", - ], - tests_require=['pytest'], - long_description=long_description, - long_description_content_type="text/markdown", - license="MIT", - packages=['bs4', 'bs4/builder', 'bs4/tests'], - # NOTE: Stuff like the documentation is included via MANIFEST.in - extras_require = { - 'lxml' : [ 'lxml'], - 'html5lib' : ['html5lib'], - }, - classifiers=["Development Status :: 5 - Production/Stable", - "Intended Audience :: Developers", - "License :: OSI Approved :: MIT License", - "Programming Language :: Python", - 'Programming Language :: Python :: 3', - "Topic :: Text Processing :: Markup :: HTML", - "Topic :: Text Processing :: Markup :: XML", - "Topic :: Text Processing :: Markup :: SGML", - "Topic :: Software Development :: Libraries :: Python Modules", - ], -) |