www/py-caldav: Update to 0.9.0 Changelog: https://github.com/python-caldav/caldav/releases Reviewed_by: koobs Differential_Revision: D35226 Sponsored by: The FreeBSD Foundation
Details
- Reviewers
koobs - Commits
- R11:32fd89bf6cc8: www/py-caldav: Update to 0.9.0
- portlint: ??
- testport (what versions, archs and Python versions?)
- maketest: (whats the summary output of passed, skipped, etc?)
jrm@ser /usr/ports/www/py-caldav [py-caldav↑1|✔] % portlint -AC
looks fine.
jrm@ser /usr/ports/www/py-caldav [py-caldav↑1|✔] % portclippy Makefile
jrm@ser /usr/ports/www/py-caldav [py-caldav↑1|✔] % portfmt -D Makefile
jrm@ser /usr/ports/www/py-caldav [py-caldav↑1|✔] %
poudriere testport 12.3/13.0/14 py36,37,38,39,310 all pass
Diff Detail
- Repository
- R11 FreeBSD ports repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
In the output, I see file caldav.py (for module caldav) not found.
http://pkg.ftfl.ca/data/14amd64-default/2022-05-16_21h35m20s/logs/py38-caldav-0.9.0.log
www/py-caldav/Makefile | ||
---|---|---|
12–22 | Upstream appears not to declare <version-spec>'s for these dependencies [1]. Not matching version specs can be problematic. [1] install_requires=['vobject', 'lxml', 'requests', 'six'] + extra_packages, | |
24 | Guideline: Remove unnecessary developer/upstream test dependencies wherever possible Should not be required with -o addopts= which overrides pytest options set in pytest.cfg or setup.cfg:[pytest] files (which usually add --cov and the like to command line arguments, expexting these tools to exist. Remove the TEST_DEPENDS and check that the tests still run. Other examples to remove, pylint, black, flake8, etc) | |
24 | Upstream only tests up to 3.8 but this version spec allows any versions above 3.6 including all unreleased future versions of Python. Do the tests pass with all Python versions up to and including 3.10? If so, ask upstream to CI those versions too. If not, cap the version-spec accordingly to only CI'd/tested versions. [1] envlist = py27,py37,py38 | |
26–27 | Guidelines:
Seeing both of these required at the same time is not uncommon, but becoming less common over time as projects transition from one test stack to another. It's very common for projects to accidentally leave one or the other in place when they're not actually required. | |
30 | Guideline: Scope dependencies to PYTHON_REL (or PYTHON_VER) correctly and completely. Appears pytz and tzlocal are only required for 2.7 and 3.5 [1]. Unfortunately this port already (incorrectly) specifies 3.6+, but nevertheless, if the above dependencies are only for <3.6, then they're not required, modulo the comment about pytz perhaps being still needed because of icalender. [1] For python 2.7 and 3.5 we depend on pytz and tzlocal. For 3.6 and up, batteries are included | |
30 | It appears 'mock' is conditionally (python version specific) missing from TEST_DEPENDS [1] [1] https://github.com/python-caldav/caldav/blob/v0.9.0/setup.py#L22= Also, 'xandikos<0.2.4', is declared as a test dependency for not in TEST_DEPENDS. TO the tests pass, or are certain tests skipped when this is not available? |
www/py-caldav/Makefile | ||
---|---|---|
12–22 | Changed to RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}... | |
24 | Yes, they pass for 3.7, 3.8, 3,9, and 3.10. | |
26–27 | It seems nose is required. The tests fail complaining about nose missing when it is removed from TEST_DEPENDS. | |
30 | The tests fail and complain about missing tzlocal when it's not included in TEST_DEPENDS. | |
30 | All tests do pass. platform freebsd14 -- Python 3.7.13, pytest-7.1.2, pluggy-1.0.0 -- /usr/local/bin/python3.7 cachedir: .pytest_cache rootdir: /wrkdirs/usr/ports/www/py-caldav/work-py37 collected 24 items caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testRequestNonAscii PASSED [ 4%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testPathWithEscapedCharacters PASSED [ 8%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testAbsoluteURL PASSED [ 12%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testDateSearch PASSED [ 16%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testCalendar PASSED [ 20%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::test_get_events_icloud PASSED [ 25%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::test_get_calendars PASSED [ 29%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::test_xml_parsing PASSED [ 33%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testFailedQuery PASSED [ 37%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testDefaultClient PASSED [ 41%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testInstance PASSED [ 45%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testURL PASSED [ 50%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testFilters PASSED [ 54%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::test_vcal_fixups PASSED [ 58%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::test_calendar_comp_class_by_data PASSED [ 62%] caldav-0.9.0/tests/test_caldav_unit.py::TestCalDAV::testContextManager PASSED [ 66%] caldav-0.9.0/tests/test_cdav.py::test_element PASSED [ 70%] caldav-0.9.0/tests/test_cdav.py::test_to_utc_date_string_date PASSED [ 75%] caldav-0.9.0/tests/test_cdav.py::test_to_utc_date_string_utc PASSED [ 79%] caldav-0.9.0/tests/test_cdav.py::test_to_utc_date_string_dt_with_pytz_tzinfo PASSED [ 83%] caldav-0.9.0/tests/test_cdav.py::test_to_utc_date_string_dt_with_local_tz PASSED [ 87%] caldav-0.9.0/tests/test_cdav.py::test_to_utc_date_string_naive_dt PASSED [ 91%] caldav-0.9.0/tests/test_utils.py::TestUtils::test_to_wire PASSED [ 95%] caldav-0.9.0/tests/test_vcal.py::TestVcal::test_create_ical PASSED [100%] |
- Change the version specs for python dependencies to match upstream.
- Remove unnecessary TEST_DEPENDS