Releases: RuedigerVoigt/exoskeleton
Releases · RuedigerVoigt/exoskeleton
2.1.1
2.1.0
- Compatible with Python 3.10.
- Updated dependencies, especially
lxml
andbeautifulsoup
.
2.0.0
Due to refactoring there are quite a lot of changes to the interface and the database. A new major version was chosen to signal this break.
Breaking Changes:
- Dropped support for Python 3.6 and 3.7!
- Python 3.6 version has end of life set for December 2021.
- Had to also drop the support for Python 3.7 in order to get a stable API for asyncio.
- The database now contains many more SQL functions and stored procedures. You must upgrade the schema using the corresponding part of the SQL script. This is basically code that previously was found mixed with the Python code. It was moved to the database in order to make the code of the package easier to read and maintain.
- Some functions have been moved! (or to be precise: Their aliases in the main class have been removed to reduce duplicated code.)
- All methods directly regarding labels can easily be accessed via
your_exo_object.labels.label_function
. That is, if you need to access them directly. - All methods regarding the host blocklist have been moved. They can be accessed via
your_exo_object.blocklist.blocklist_function
. - All methods regarding error handling must be accessed via
your_exo_object.errorhandling.errohandling_method
. - The method
exoskeleton.prettify_html
has been moved toexoskeleton.helpers.prettify_html
. - All methods with the prefix
job_
now are found inyour_exoskeleton_object.jobs.without_the_prefix
. For example:exoskeleton.job_define_new
is nowexoskeleton.jobs.define_new()
.
- All methods directly regarding labels can easily be accessed via
Other Changes:
- Small bugfixes.
- Updated and new dependencies.
- Improved code tests:
- Increased test coverage.
- All tests now also run with Python version
3.10.0-beta.3
. Building thelxml
dependency requires an extra step, but besides this, there seem to be no issues with the upcoming version of Python.
Changes that should not affect you: (If they do, your code propably operates on the wrong level of abstraction.)
- The parameter
error_type
for the methoderror_manager.add_crawl_delay
is no longer optional. - The method
filemaster_labels_by_url
was only useful for testing. For this reason it has been removed fromexoskeleton
into the automatic tests. - The method
update_host_statistics
is now private and accessed by aliases for the different cases.
v1.3.0
- The dependency
userprovided
changed its interface. Due to this, version>=0.9.0
ofuserprovided
and version>=1.1.0
ofbote
are required.
1.2.5 SECURITY RELEASE
- Update dependency
lxml
to4.6.3
(security update). - Version updates for other dependencies.
v1.2.4
- Improved test strategy and documentation.
- Publish code coverage report.
- Update dependencies.
- Cleaned up some code, but no functional changes.
v1.2.3 (maintenance release)
- Update required versions of dependencies
agg
andbote
. - Refactored code.
v1.2.2 (maintenance release)
- Update required versions of dependencies
- Add
compatibility
package as dependency
v1.2.1 SECURITY RELEASE
- Compatible with Python 3.9
- Require lxml version >= 4.6.2 as it fixes a vulnerability and works with Python 3.9
v1.2.0
Refactored code; some bugfixes
See CHANGELOG.md