pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/time/py-icalendar



Module Name:    pkgsrc
Committed By:   wiz
Date:           Sun May  3 14:49:07 UTC 2026

Modified Files:
        pkgsrc/time/py-icalendar: Makefile PLIST distinfo

Log Message:
py-icalendar: update to 7.1.0.

Minor changes

    Deprecate icalendar.parser.escape_string and icalendar.parser.unescape_string for icalendar version 8. Use _escape_string and _unescape_string internally. #1011

    Added behavioral tests for LazyCalendar covering serialization round-trips, .todos, .journals, forward timezone references, and with_uid() substring false-positives. #1050

    Added edge case tests for Conference parameter normalization covering string passthrough, empty list filtering, and None omission. #925

    Make icalendar an explicit editable install for clarity. #1268

    Do not run some tests until a pull request is approved. #1246

    Mark skipped CI tasks as skipped instead of running them. #1286

    Created an ical_value() property for the vBoolean component. #876

    Created an ical_value() property for the vFloat component. #876

    Created an ical_value() property for the vInt component. #876

    Created an ical_value() property for the vBinary component. #876

    Put the link check as the last documentation CI task, allowing the documentation build and Vale to run first and fail faster. #1295

    Extended localize() to support localizing both datetime.datetime and datetime.time objects, returning timezone-aware datetime.time objects for the latter. #1142

    Add type hints to tests directory functions. #938

    Update to Contributor Covenant 3.0 Code of Conduct, hosted at https://pycal.org/code-of-conduct/.

New features

    Added LazyCalendar for lazy parsing of subcomponents. #158, #1050

    Updated icalendar.prop.dt.time.vTime.from_ical() to support parsing time values with TZID parameters, returning timezone-aware datetime.time objects. #1142

    Added subcomponents parameter to Component.new, Event.new, Todo.new, and Availability.new. #1065

    Switch to uv for development. #1102

Bug fixes

    Allow lenient parsing of content lines with optional whitespace around property and parameter delimiters (for example, REFRESH - INTERVAL; VALUE = DURATION:PT48H) when parsing calendars with 
strict=False. #351

    X-properties with a VALUE parameter are now parsed using the correct type instead of falling back to vUnknown. #1238

    Test that the DURATION property catches datetime.timedelta objects without vProperty wrappers. #884

    Fixed get_end_property() to avoid allowing the creating of VEVENT components with negative durations. Only VTODO components are allowed to have negative durations. #999

    GitHub Actions: conditional tests now show as "skipped" instead of "pending". #1264

    Fixed Component.__eq__ method not being commutative when comparing subcomponents. #1224

    Verified that the VALUE parameter of jCal components is used for the type of the component property. #1237

    Fix escape_char() handling of bytes input by converting with icalendar.parser_tools.to_unicode() before escaping. #1226

    Fixed RecursionError in walk(), property_items(), and to_ical() by using iterative implementations for component traversal and property extraction. #1348

Documentation

    Convert docstring of string_parameter() to Google style. #1072, #1316

    Run sphinx-build with -W to turn warnings into errors. #1306

    Added sphinx-llms-txt extension to generate llms.txt and llms-full.txt files for AI/LLM documentation consumption. #1302

    Fixed CI Vale check reporting and resolved Vale errors. #1277

    Include Makefile in documentation workflow path filters so documentation CI runs when Makefile logic changes, and keep Vale failures visible in CI output. #1277

    Document how to install icalendar on Alpine Linux. #1290

    Add documentation for usage of the Sphinx extension sphinx-icalendar. #1268

    Add Repology badge and distribution installation instructions to install documentation. #1119

    Updated references to vUri and RELTYPE classes in attr.py. #1158

    Convert docstrings in attr.py and cal/calendar.py to Google Style format. #1072

    Explained import shortcuts in API design documentation. #1161

    Added tutorial for creating a calendar with events with attendees. #1262

    Added recognition of NLnet Foundation for its funding and Open Collective for donations to the documentation footer. #1214

    Documented vText properties according to RFC 5545 Section 3.3.11. #742

    Convert docstrings in icalendar.caselessdict to Google Style format with Parameters, Returns, Raises, and Example sections as appropriate. #1072

    Fix broken docstring for add_component() link in available. #1158

    Revise AI policy, per NLnet advice. See discussion under pycal.org issue #24.

    Add documentation for how to use uv for development. #1102

    Reorganize Design documentation. #1292

    Improve docstring for categories_property, which renders to HTML in Calendar.categories, Event.categories, Journal.categories, and Todo.categories. #1244

    Fixed Python object cross-references in icalendar.cal.component.Component._infer_value_type. #1158, #1344


To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 pkgsrc/time/py-icalendar/Makefile
cvs rdiff -u -r1.32 -r1.33 pkgsrc/time/py-icalendar/PLIST
cvs rdiff -u -r1.50 -r1.51 pkgsrc/time/py-icalendar/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/time/py-icalendar/Makefile
diff -u pkgsrc/time/py-icalendar/Makefile:1.59 pkgsrc/time/py-icalendar/Makefile:1.60
--- pkgsrc/time/py-icalendar/Makefile:1.59      Fri Mar  6 13:07:55 2026
+++ pkgsrc/time/py-icalendar/Makefile   Sun May  3 14:49:07 2026
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.59 2026/03/06 13:07:55 adam Exp $
+# $NetBSD: Makefile,v 1.60 2026/05/03 14:49:07 wiz Exp $
 
-DISTNAME=      icalendar-7.0.3
+DISTNAME=      icalendar-7.1.0
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    time python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=i/icalendar/}
@@ -23,8 +23,8 @@ USE_LANGUAGES=        # none
 REPLACE_SH+=           src/icalendar/tests/fuzzed/generate_python_test_cases_from_downloaded_clusterfuzz_test_cases.sh
 REPLACE_PYTHON+=       src/icalendar/cli.py
 
-# as of 7.0.2
-# 1 failed, 12085 passed, 23 skipped, 6 errors
+# as of 7.1.0
+# 22 failed, 14682 passed, 28 skipped, 6 errors
 
 post-install:
        cd ${DESTDIR}${PREFIX}/bin && \

Index: pkgsrc/time/py-icalendar/PLIST
diff -u pkgsrc/time/py-icalendar/PLIST:1.32 pkgsrc/time/py-icalendar/PLIST:1.33
--- pkgsrc/time/py-icalendar/PLIST:1.32 Fri Mar  6 13:07:55 2026
+++ pkgsrc/time/py-icalendar/PLIST      Sun May  3 14:49:07 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.32 2026/03/06 13:07:55 adam Exp $
+@comment $NetBSD: PLIST,v 1.33 2026/05/03 14:49:07 wiz Exp $
 bin/icalendar-${PYVERSSUFFIX}
 ${PYSITELIB}/${WHEEL_INFODIR}/METADATA
 ${PYSITELIB}/${WHEEL_INFODIR}/RECORD
@@ -50,6 +50,9 @@ ${PYSITELIB}/icalendar/cal/free_busy.pyo
 ${PYSITELIB}/icalendar/cal/journal.py
 ${PYSITELIB}/icalendar/cal/journal.pyc
 ${PYSITELIB}/icalendar/cal/journal.pyo
+${PYSITELIB}/icalendar/cal/lazy.py
+${PYSITELIB}/icalendar/cal/lazy.pyc
+${PYSITELIB}/icalendar/cal/lazy.pyo
 ${PYSITELIB}/icalendar/cal/timezone.py
 ${PYSITELIB}/icalendar/cal/timezone.pyc
 ${PYSITELIB}/icalendar/cal/timezone.pyo
@@ -80,6 +83,18 @@ ${PYSITELIB}/icalendar/parser/__init__.p
 ${PYSITELIB}/icalendar/parser/content_line.py
 ${PYSITELIB}/icalendar/parser/content_line.pyc
 ${PYSITELIB}/icalendar/parser/content_line.pyo
+${PYSITELIB}/icalendar/parser/ical/__init__.py
+${PYSITELIB}/icalendar/parser/ical/__init__.pyc
+${PYSITELIB}/icalendar/parser/ical/__init__.pyo
+${PYSITELIB}/icalendar/parser/ical/calendar.py
+${PYSITELIB}/icalendar/parser/ical/calendar.pyc
+${PYSITELIB}/icalendar/parser/ical/calendar.pyo
+${PYSITELIB}/icalendar/parser/ical/component.py
+${PYSITELIB}/icalendar/parser/ical/component.pyc
+${PYSITELIB}/icalendar/parser/ical/component.pyo
+${PYSITELIB}/icalendar/parser/ical/lazy.py
+${PYSITELIB}/icalendar/parser/ical/lazy.pyc
+${PYSITELIB}/icalendar/parser/ical/lazy.pyo
 ${PYSITELIB}/icalendar/parser/parameter.py
 ${PYSITELIB}/icalendar/parser/parameter.pyc
 ${PYSITELIB}/icalendar/parser/parameter.pyo
@@ -252,12 +267,23 @@ ${PYSITELIB}/icalendar/tests/calendars/b
 ${PYSITELIB}/icalendar/tests/calendars/broken_ical.ics
 ${PYSITELIB}/icalendar/tests/calendars/calendar_with_unicode.ics
 ${PYSITELIB}/icalendar/tests/calendars/created_calendar_with_unicode_fields.ics
+${PYSITELIB}/icalendar/tests/calendars/empty.ics
 ${PYSITELIB}/icalendar/tests/calendars/empty_RDATE.ics
 ${PYSITELIB}/icalendar/tests/calendars/example.ics
 ${PYSITELIB}/icalendar/tests/calendars/fuzz_testcase_0_char_in_component_name.ics
 ${PYSITELIB}/icalendar/tests/calendars/fuzz_testcase_invalid_month.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_104_broken_calendar.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_all_components.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_calendar_with_events_and_todos.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_empty_calendar.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_forward_timezone_reference.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_multiple_calendars.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_simple_calendar.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_timezone_only_calendar.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1050_uid_in_description.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_1231_recurrence.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_1237_x_property.jcal
+${PYSITELIB}/icalendar/tests/calendars/issue_1238.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_127_categories_with_commas.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_156_RDATE_with_PERIOD_TZID_khal.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_156_RDATE_with_PERIOD_TZID_khal_2.ics
@@ -275,6 +301,7 @@ ${PYSITELIB}/icalendar/tests/calendars/i
 ${PYSITELIB}/icalendar/tests/calendars/issue_322_expected_calendar.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_348_exception_parsing_value.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_350.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_351_whitespace_in_property_and_params.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_466_convert_tzid_with_slash.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_466_respect_unique_timezone.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_526_calendar_with_different_events.ics
@@ -289,6 +316,7 @@ ${PYSITELIB}/icalendar/tests/calendars/i
 ${PYSITELIB}/icalendar/tests/calendars/issue_82_expected_output.ics
 ${PYSITELIB}/icalendar/tests/calendars/issue_836_do_not_quote_tzid.ics
 ${PYSITELIB}/icalendar/tests/calendars/multiple_calendar_components.ics
+${PYSITELIB}/icalendar/tests/calendars/multiple_timezones.ics
 ${PYSITELIB}/icalendar/tests/calendars/pacific_fiji.ics
 ${PYSITELIB}/icalendar/tests/calendars/parsing_error.ics
 ${PYSITELIB}/icalendar/tests/calendars/parsing_error_in_UTC_offset.ics
@@ -409,6 +437,12 @@ ${PYSITELIB}/icalendar/tests/prop/test_v
 ${PYSITELIB}/icalendar/tests/prop/test_vDatetime.py
 ${PYSITELIB}/icalendar/tests/prop/test_vDatetime.pyc
 ${PYSITELIB}/icalendar/tests/prop/test_vDatetime.pyo
+${PYSITELIB}/icalendar/tests/prop/test_vFloat.py
+${PYSITELIB}/icalendar/tests/prop/test_vFloat.pyc
+${PYSITELIB}/icalendar/tests/prop/test_vFloat.pyo
+${PYSITELIB}/icalendar/tests/prop/test_vInt.py
+${PYSITELIB}/icalendar/tests/prop/test_vInt.pyc
+${PYSITELIB}/icalendar/tests/prop/test_vInt.pyo
 ${PYSITELIB}/icalendar/tests/prop/test_vPeriod.py
 ${PYSITELIB}/icalendar/tests/prop/test_vPeriod.pyc
 ${PYSITELIB}/icalendar/tests/prop/test_vPeriod.pyo
@@ -533,6 +567,15 @@ ${PYSITELIB}/icalendar/tests/test_icalen
 ${PYSITELIB}/icalendar/tests/test_image.py
 ${PYSITELIB}/icalendar/tests/test_image.pyc
 ${PYSITELIB}/icalendar/tests/test_image.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_calendar.py
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_calendar.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_calendar.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_parsing.py
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_parsing.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1050_lazy_parsing.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1065_new_subcomponents.py
+${PYSITELIB}/icalendar/tests/test_issue_1065_new_subcomponents.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1065_new_subcomponents.pyo
 ${PYSITELIB}/icalendar/tests/test_issue_1066_calendar_uid.py
 ${PYSITELIB}/icalendar/tests/test_issue_1066_calendar_uid.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_1066_calendar_uid.pyo
@@ -548,9 +591,18 @@ ${PYSITELIB}/icalendar/tests/test_issue_
 ${PYSITELIB}/icalendar/tests/test_issue_116.py
 ${PYSITELIB}/icalendar/tests/test_issue_116.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_116.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1226.py
+${PYSITELIB}/icalendar/tests/test_issue_1226.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1226.pyo
 ${PYSITELIB}/icalendar/tests/test_issue_1231.py
 ${PYSITELIB}/icalendar/tests/test_issue_1231.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_1231.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1237_jcal_paring_of_known_types.py
+${PYSITELIB}/icalendar/tests/test_issue_1237_jcal_paring_of_known_types.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1237_jcal_paring_of_known_types.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1238.py
+${PYSITELIB}/icalendar/tests/test_issue_1238.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1238.pyo
 ${PYSITELIB}/icalendar/tests/test_issue_127_categories_comma_escaping.py
 ${PYSITELIB}/icalendar/tests/test_issue_127_categories_comma_escaping.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_127_categories_comma_escaping.pyo
@@ -599,6 +651,9 @@ ${PYSITELIB}/icalendar/tests/test_issue_
 ${PYSITELIB}/icalendar/tests/test_issue_350.py
 ${PYSITELIB}/icalendar/tests/test_issue_350.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_350.pyo
+${PYSITELIB}/icalendar/tests/test_issue_351_lenient_whitespace_parsing.py
+${PYSITELIB}/icalendar/tests/test_issue_351_lenient_whitespace_parsing.pyc
+${PYSITELIB}/icalendar/tests/test_issue_351_lenient_whitespace_parsing.pyo
 ${PYSITELIB}/icalendar/tests/test_issue_355_url_escaping.py
 ${PYSITELIB}/icalendar/tests/test_issue_355_url_escaping.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_355_url_escaping.pyo
@@ -662,6 +717,9 @@ ${PYSITELIB}/icalendar/tests/test_issue_
 ${PYSITELIB}/icalendar/tests/test_issue_870_vcaladdress_new.py
 ${PYSITELIB}/icalendar/tests/test_issue_870_vcaladdress_new.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_870_vcaladdress_new.pyo
+${PYSITELIB}/icalendar/tests/test_issue_884_get_duration.py
+${PYSITELIB}/icalendar/tests/test_issue_884_get_duration.pyc
+${PYSITELIB}/icalendar/tests/test_issue_884_get_duration.pyo
 ${PYSITELIB}/icalendar/tests/test_issue_898_todo_end.py
 ${PYSITELIB}/icalendar/tests/test_issue_898_todo_end.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_898_todo_end.pyo
@@ -674,6 +732,9 @@ ${PYSITELIB}/icalendar/tests/test_issue_
 ${PYSITELIB}/icalendar/tests/test_issue_987.py
 ${PYSITELIB}/icalendar/tests/test_issue_987.pyc
 ${PYSITELIB}/icalendar/tests/test_issue_987.pyo
+${PYSITELIB}/icalendar/tests/test_issue_999_negative_event_duration.py
+${PYSITELIB}/icalendar/tests/test_issue_999_negative_event_duration.pyc
+${PYSITELIB}/icalendar/tests/test_issue_999_negative_event_duration.pyo
 ${PYSITELIB}/icalendar/tests/test_multiple.py
 ${PYSITELIB}/icalendar/tests/test_multiple.pyc
 ${PYSITELIB}/icalendar/tests/test_multiple.pyo
@@ -725,6 +786,9 @@ ${PYSITELIB}/icalendar/tests/test_timezo
 ${PYSITELIB}/icalendar/tests/test_timezoned.py
 ${PYSITELIB}/icalendar/tests/test_timezoned.pyc
 ${PYSITELIB}/icalendar/tests/test_timezoned.pyo
+${PYSITELIB}/icalendar/tests/test_tools.py
+${PYSITELIB}/icalendar/tests/test_tools.pyc
+${PYSITELIB}/icalendar/tests/test_tools.pyo
 ${PYSITELIB}/icalendar/tests/test_type_hints.py
 ${PYSITELIB}/icalendar/tests/test_type_hints.pyc
 ${PYSITELIB}/icalendar/tests/test_type_hints.pyo

Index: pkgsrc/time/py-icalendar/distinfo
diff -u pkgsrc/time/py-icalendar/distinfo:1.50 pkgsrc/time/py-icalendar/distinfo:1.51
--- pkgsrc/time/py-icalendar/distinfo:1.50      Fri Mar  6 13:07:55 2026
+++ pkgsrc/time/py-icalendar/distinfo   Sun May  3 14:49:07 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.50 2026/03/06 13:07:55 adam Exp $
+$NetBSD: distinfo,v 1.51 2026/05/03 14:49:07 wiz Exp $
 
-BLAKE2s (icalendar-7.0.3.tar.gz) = fa1d9c6457a3996fbdba0c261d7ee1a02eb6b9f63f0b5eb042d86ac76a1d0f13
-SHA512 (icalendar-7.0.3.tar.gz) = ecdb49ee5e13e779279fcb94c77c174a63f2b2146abc09d6254e111b50207401e727848e331fd048899f755d35670a0bd70aef181d7ebd922fd42736a1d1008e
-Size (icalendar-7.0.3.tar.gz) = 443788 bytes
+BLAKE2s (icalendar-7.1.0.tar.gz) = 5b19d75c3be3eef6669fc9cc044566cf36d0349e8bd6177b7d403589c65a574f
+SHA512 (icalendar-7.1.0.tar.gz) = e266942a6baf9b9abe469db37e258bf78e07a5c439269b65f6aabcfede5803fb941c1d5f48361e919c75c91a98dbca2b9577dae7bfae235c695afc1509462343
+Size (icalendar-7.1.0.tar.gz) = 467258 bytes



Home | Main Index | Thread Index | Old Index