Update dependency icalendar to ~=7.1.0 #261

Merged
tyler merged 1 commit from renovate/icalendar-7.x into dev 2026-05-01 06:03:30 -07:00
Collaborator

This PR contains the following updates:

Package Change Age Confidence
icalendar (changelog) ~=7.0.1~=7.1.0 age confidence

Release Notes

collective/icalendar (icalendar)

v7.1.0

Compare Source

Minor changes


- Deprecate ``icalendar.parser.escape_string`` and ``icalendar.parser.unescape_string`` for icalendar version 8. Use ``_escape_string`` and ``_unescape_string`` internally. :issue:`1011`
- Added behavioral tests for :class:`~icalendar.cal.lazy.LazyCalendar` covering serialization round-trips, ``.todos``, ``.journals``, forward timezone references, and ``with_uid()`` substring false-positives. :issue:`1050`
- Added edge case tests for :class:`~icalendar.prop.conference.Conference` parameter normalization covering string passthrough, empty list filtering, and ``None`` omission. :issue:`925`
- Make icalendar an explicit editable install for clarity. :pr:`1268`
- Do not run some tests until a pull request is approved. :pr:`1246`
- Mark skipped CI tasks as skipped instead of running them. :issue:`1286`
- Created an :meth:`~icalendar.prop.boolean.vBoolean.ical_value` property for the :class:`~icalendar.prop.boolean.vBoolean` component. :issue:`876`
- Created an :meth:`~icalendar.prop.float.vFloat.ical_value` property for the :class:`~icalendar.prop.float.vFloat` component. :issue:`876`
- Created an :meth:`~icalendar.prop.integer.vInt.ical_value` property for the :class:`~icalendar.prop.integer.vInt` component. :issue:`876`
- Created an :meth:`~icalendar.prop.binary.vBinary.ical_value` property for the :class:`~icalendar.prop.binary.vBinary` component. :issue:`876`
- Put the link check as the last documentation CI task, allowing the documentation build and Vale to run first and fail faster. :pr:`1295`
- Extended :func:`~icalendar.timezone.tzp.TZP.localize` to support localizing both :class:`datetime.datetime` and :class:`datetime.time` objects, returning timezone-aware :class:`datetime.time` objects for the latter. :issue:`1142`
- Add type hints to tests directory functions. :issue:`938`
- Update to Contributor Covenant 3.0 Code of Conduct, hosted at https://pycal.org/code-of-conduct/.

New features
~~~~~~~~~~~~

- Added :class:`~icalendar.cal.lazy.LazyCalendar` for lazy parsing of subcomponents. :issue:`158`, :issue:`1050`
- Updated :func:`icalendar.prop.dt.time.vTime.from_ical` to support parsing time values with TZID parameters, returning timezone-aware :class:`datetime.time` objects. :issue:`1142`
- Added ``subcomponents`` parameter to :meth:`Component.new <icalendar.cal.component.Component.new>`, :meth:`Event.new <icalendar.cal.event.Event.new>`, :meth:`Todo.new <icalendar.cal.todo.Todo.new>`, and :meth:`Availability.new <icalendar.cal.availability.Availability.new>`. :issue:`1065`
- Switch to uv for development. :issue:`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``. :issue:`351`
- X-properties with a ``VALUE`` parameter are now parsed using the correct type instead of falling back to :class:`~icalendar.prop.unkown.vUnknown`. :issue:`1238`
- Test that the ``DURATION`` property catches :class:`datetime.timedelta` objects without vProperty wrappers. :issue:`884`
- Fixed :func:`~icalendar.attr.get_end_property` to avoid allowing the creating of VEVENT components with negative durations. Only VTODO components are allowed to have negative durations. :issue:`999`
- GitHub Actions: conditional tests now show as "skipped" instead of "pending". :issue:`1264`
- Fixed :meth:`Component.__eq__ <icalendar.cal.component.Component.__eq__>` method not being commutative when comparing subcomponents. :issue:`1224`
- Verified that the ``VALUE`` parameter of jCal components is used for the type of the component property. :issue:`1237`
- Fix :func:`~icalendar.parser.string.escape_char` handling of ``bytes`` input by converting with :func:`icalendar.parser_tools.to_unicode` before escaping. :issue:`1226`
- Fixed ``RecursionError`` in ``walk()``, ``property_items()``, and ``to_ical()`` by using iterative implementations for component traversal and property extraction. :pr:`1348`

Documentation
  • Convert docstring of :func:~icalendar.param.string_parameter to Google style. :issue:1072, :pr:1316
  • Run sphinx-build with -W to turn warnings into errors. :issue:1306
  • Added sphinx-llms-txt <https://sphinx-llms-txt.readthedocs.io/en/stable/>_ extension to generate :file:llms.txt and :file:llms-full.txt files for AI/LLM documentation consumption. :issue:1302
  • Fixed CI Vale check reporting and resolved Vale errors. :issue:1277
  • Include :file:Makefile in documentation workflow path filters so documentation CI runs when Makefile logic changes, and keep Vale failures visible in CI output. :issue:1277
  • Document how to install icalendar on Alpine Linux. :pr:1290
  • Add documentation for usage of the Sphinx extension sphinx-icalendar <https://sphinx-icalendar.readthedocs.io/en/latest/>_. :pr:1268
  • Add Repology badge and distribution installation instructions to install documentation. :issue:1119
  • Updated references to :class:~icalendar.prop.uri.vUri and :class:~icalendar.enums.RELTYPE classes in :file:attr.py. :issue:1158
  • Convert docstrings in :file:attr.py and :file:cal/calendar.py to Google Style format. :issue:1072
  • Explained import shortcuts in :doc:../explanation/api-design documentation. :issue:1161
  • Added tutorial for creating a calendar with events with attendees. :pr:1262
  • Added recognition of NLnet Foundation for its funding and Open Collective for donations to the documentation footer. :issue:1214
  • Documented vText properties according to :rfc:5545#section-3.3.11. :issue:742
  • Convert docstrings in :mod:icalendar.caselessdict to Google Style format with Parameters, Returns, Raises, and Example sections as appropriate. :issue:1072
  • Fix broken docstring for :meth:~icalendar.cal.component.Component.add_component link in :attr:~icalendar.cal.availability.Availability.available. :issue:1158
  • Revise AI policy, per NLnet advice. See discussion under pycal.org issue #&#8203;24 <https://github.com/pycalendar/pycal.org/issues/24>_.
  • Add documentation for how to use uv for development. :issue:1102
  • Reorganize Design documentation. :issue:1292
  • Improve docstring for categories_property, which renders to HTML in :attr:Calendar.categories <icalendar.cal.calendar.Calendar.categories>, :attr:Event.categories <icalendar.cal.event.Event.categories>, :attr:Journal.categories <icalendar.cal.journal.Journal.categories>, and :attr:Todo.categories <icalendar.cal.todo.Todo.categories>. :issue:1244
  • Fixed Python object cross-references in icalendar.cal.component.Component._infer_value_type. :issue:1158, :pr:1344

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [icalendar](https://github.com/collective/icalendar) ([changelog](https://icalendar.readthedocs.io/en/stable/changelog.html)) | `~=7.0.1` → `~=7.1.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/icalendar/7.1.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/icalendar/7.0.3/7.1.0?slim=true) | --- ### Release Notes <details> <summary>collective/icalendar (icalendar)</summary> ### [`v7.1.0`](https://github.com/collective/icalendar/blob/HEAD/CHANGES.rst#710-2026-04-30) [Compare Source](https://github.com/collective/icalendar/compare/v7.0.3...v7.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. :issue:`1011` - Added behavioral tests for :class:`~icalendar.cal.lazy.LazyCalendar` covering serialization round-trips, ``.todos``, ``.journals``, forward timezone references, and ``with_uid()`` substring false-positives. :issue:`1050` - Added edge case tests for :class:`~icalendar.prop.conference.Conference` parameter normalization covering string passthrough, empty list filtering, and ``None`` omission. :issue:`925` - Make icalendar an explicit editable install for clarity. :pr:`1268` - Do not run some tests until a pull request is approved. :pr:`1246` - Mark skipped CI tasks as skipped instead of running them. :issue:`1286` - Created an :meth:`~icalendar.prop.boolean.vBoolean.ical_value` property for the :class:`~icalendar.prop.boolean.vBoolean` component. :issue:`876` - Created an :meth:`~icalendar.prop.float.vFloat.ical_value` property for the :class:`~icalendar.prop.float.vFloat` component. :issue:`876` - Created an :meth:`~icalendar.prop.integer.vInt.ical_value` property for the :class:`~icalendar.prop.integer.vInt` component. :issue:`876` - Created an :meth:`~icalendar.prop.binary.vBinary.ical_value` property for the :class:`~icalendar.prop.binary.vBinary` component. :issue:`876` - Put the link check as the last documentation CI task, allowing the documentation build and Vale to run first and fail faster. :pr:`1295` - Extended :func:`~icalendar.timezone.tzp.TZP.localize` to support localizing both :class:`datetime.datetime` and :class:`datetime.time` objects, returning timezone-aware :class:`datetime.time` objects for the latter. :issue:`1142` - Add type hints to tests directory functions. :issue:`938` - Update to Contributor Covenant 3.0 Code of Conduct, hosted at https://pycal.org/code-of-conduct/. New features ~~~~~~~~~~~~ - Added :class:`~icalendar.cal.lazy.LazyCalendar` for lazy parsing of subcomponents. :issue:`158`, :issue:`1050` - Updated :func:`icalendar.prop.dt.time.vTime.from_ical` to support parsing time values with TZID parameters, returning timezone-aware :class:`datetime.time` objects. :issue:`1142` - Added ``subcomponents`` parameter to :meth:`Component.new <icalendar.cal.component.Component.new>`, :meth:`Event.new <icalendar.cal.event.Event.new>`, :meth:`Todo.new <icalendar.cal.todo.Todo.new>`, and :meth:`Availability.new <icalendar.cal.availability.Availability.new>`. :issue:`1065` - Switch to uv for development. :issue:`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``. :issue:`351` - X-properties with a ``VALUE`` parameter are now parsed using the correct type instead of falling back to :class:`~icalendar.prop.unkown.vUnknown`. :issue:`1238` - Test that the ``DURATION`` property catches :class:`datetime.timedelta` objects without vProperty wrappers. :issue:`884` - Fixed :func:`~icalendar.attr.get_end_property` to avoid allowing the creating of VEVENT components with negative durations. Only VTODO components are allowed to have negative durations. :issue:`999` - GitHub Actions: conditional tests now show as "skipped" instead of "pending". :issue:`1264` - Fixed :meth:`Component.__eq__ <icalendar.cal.component.Component.__eq__>` method not being commutative when comparing subcomponents. :issue:`1224` - Verified that the ``VALUE`` parameter of jCal components is used for the type of the component property. :issue:`1237` - Fix :func:`~icalendar.parser.string.escape_char` handling of ``bytes`` input by converting with :func:`icalendar.parser_tools.to_unicode` before escaping. :issue:`1226` - Fixed ``RecursionError`` in ``walk()``, ``property_items()``, and ``to_ical()`` by using iterative implementations for component traversal and property extraction. :pr:`1348` Documentation ``` - Convert docstring of :func:`~icalendar.param.string_parameter` to Google style. :issue:`1072`, :pr:`1316` - Run `sphinx-build` with `-W` to turn warnings into errors. :issue:`1306` - Added `sphinx-llms-txt <https://sphinx-llms-txt.readthedocs.io/en/stable/>`\_ extension to generate :file:`llms.txt` and :file:`llms-full.txt` files for AI/LLM documentation consumption. :issue:`1302` - Fixed CI Vale check reporting and resolved Vale errors. :issue:`1277` - Include :file:`Makefile` in documentation workflow path filters so documentation CI runs when Makefile logic changes, and keep Vale failures visible in CI output. :issue:`1277` - Document how to install icalendar on Alpine Linux. :pr:`1290` - Add documentation for usage of the Sphinx extension `sphinx-icalendar <https://sphinx-icalendar.readthedocs.io/en/latest/>`\_. :pr:`1268` - Add Repology badge and distribution installation instructions to install documentation. :issue:`1119` - Updated references to :class:`~icalendar.prop.uri.vUri` and :class:`~icalendar.enums.RELTYPE` classes in :file:`attr.py`. :issue:`1158` - Convert docstrings in :file:`attr.py` and :file:`cal/calendar.py` to Google Style format. :issue:`1072` - Explained import shortcuts in :doc:`../explanation/api-design` documentation. :issue:`1161` - Added tutorial for creating a calendar with events with attendees. :pr:`1262` - Added recognition of NLnet Foundation for its funding and Open Collective for donations to the documentation footer. :issue:`1214` - Documented `vText` properties according to :rfc:`5545#section-3.3.11`. :issue:`742` - Convert docstrings in :mod:`icalendar.caselessdict` to Google Style format with `Parameters`, `Returns`, `Raises`, and `Example` sections as appropriate. :issue:`1072` - Fix broken docstring for :meth:`~icalendar.cal.component.Component.add_component` link in :attr:`~icalendar.cal.availability.Availability.available`. :issue:`1158` - Revise AI policy, per NLnet advice. See discussion under `pycal.org issue #&#8203;24 <https://github.com/pycalendar/pycal.org/issues/24>`\_. - Add documentation for how to use uv for development. :issue:`1102` - Reorganize Design documentation. :issue:`1292` - Improve docstring for `categories_property`, which renders to HTML in :attr:`Calendar.categories <icalendar.cal.calendar.Calendar.categories>`, :attr:`Event.categories <icalendar.cal.event.Event.categories>`, :attr:`Journal.categories <icalendar.cal.journal.Journal.categories>`, and :attr:`Todo.categories <icalendar.cal.todo.Todo.categories>`. :issue:`1244` - Fixed Python object cross-references in `icalendar.cal.component.Component._infer_value_type`. :issue:`1158`, :pr:`1344` </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNjAuMiIsInVwZGF0ZWRJblZlciI6IjQzLjE2MC4yIiwidGFyZ2V0QnJhbmNoIjoiZGV2IiwibGFiZWxzIjpbXX0=-->
Update dependency icalendar to ~=7.1.0
Some checks failed
Tests / test (pull_request) Failing after 11m36s
28cce98553
renovate-bot scheduled this pull request to auto merge when all checks succeed 2026-04-30 18:05:14 -07:00
tyler deleted branch renovate/icalendar-7.x 2026-05-01 06:03:40 -07:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
tyler/dailySummaryEmail!261
No description provided.