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: Mon Feb 16 11:15:47 UTC 2026
Modified Files:
pkgsrc/time/py-icalendar: Makefile PLIST distinfo
Log Message:
py-icalendar: update to 7.0.0.
7.0.0 (2026-02-11)
Minor changes
Created an example() method for the Todo component. See #743.
Created an example() method for the Alarm component. See #743.
Move property classes from icalendar.prop into their own files
with sub-packages icalendar.prop.recur and icalendar.prop.dt.
See #987.
Move classes and functions in icalendar.parser into their own
files. See #987.
Clarified custom component (X-* and IANA-registered) parsing
behavior through enhanced documentation and comprehensive how-to
guide. Custom components are automatically handled by the
library with no special configuration required. See #432.
Reorganized custom component tests into a dedicated
test_custom_components.py file with expanded test coverage for
Component.from_ical, Calendar.from_ical, and ComponentFactory
usage. See #433.
The typing-extensions dependency on Python < 3.13 is now
optional, part of the test extra.
The icalendar.tools.is_pytz_dt() return value is now hinted as
TypeGuard[datetime], not TypeIs[datetime], since returning
False should not allow narrowing it as non-datetime.
Regroup dependencies in, and remove obsolete ones, from
pyproject.toml. #906
Add type hints to internal helper functions. #938
Add type hints to prop value classes (vBoolean, vFloat, vUri,
vBinary, vInline). #938
Add type hints to remaining prop value classes (vText, vCalAddress,
vCategory, vGeo, vN, vOrg, vAdr, vBroken, vUid, Conference,
Image). #938
Added type hints and overloads to Calendar.from_ical and
Component.from_ical to support multiple=True/False return types.
#1129
CI: Print a link to Vale documentation when the spell checker
fails.
Remove bootstrap.py and buildout.cfg files as they are old
build configurations. #1171
Enforce ruff formatting and linting across the entire codebase,
with CI check to prevent regressions. See #672, #1171, #1172,
#1173, #1174, #1175, #1176, #1177, #1178, #1179, #1180, and
#1181.
Fix type annotations, typos, and validation logic in prop
module: corrected return type hints in parse_jcal_value methods,
fixed to_ical() return type in vDDDTypes, updated ClassVar type
hint in TypesFactory, removed dead code, fixed "abbrevation"
typo in vWeekday, and corrected validation logic in vMonth.
#1185
Rename vBrokenProperty to vBroken to match naming convention.
vBroken now stores the actual exception object in parse_error
instead of a string, and raises BrokenCalendarProperty when
accessing attributes like .dt that the expected type would
have. See #1087.
Breaking changes
Drop support for Python 3.8 and 3.9. See #977.
DURATION_REGEX moved from icalendar.prop to icalendar.prop.dt.duration.
See #987.
WEEKDAY_RULE moved from icalendar.prop to icalendar.prop.recur.weekday.
See #987.
Removed tzid_from_dt and tzid_from_tzinfo from icalendar.prop
as they exist in icalendar.timezone. See #987.
Component.decoded() now returns a string instead of bytes for
text properties.
Remove constants FOLD, NAME, NEWLINE, QUNSAFE_CHAR, QUOTABLE,
UFOLD, and UNSAFE_CHAR from icalendar.parser's export. See
#987.
New features
Added recursive parameter to Component.copy() to control copying
of subcomponents and properties. #899
Event components now have error-tolerant property parsing.
Properties with parsing errors fall back to vBroken, preserving
the raw value and allowing access to other valid properties.
Errors are recorded in component.errors. Partially addresses
#158.
Added AdrFields and NFields named tuples for structured access
to vCard ADR and N property fields. The fields attribute and
from_ical() return value of vAdr and vN now return these typed
named tuples, enabling access like adr.fields.street and
n.fields.family. Since named tuples are tuple subclasses,
existing code using tuple indexing or unpacking remains
compatible. Added name and units properties to vOrg for convenient
access to the organization name and organizational units. Added
ical_value property to all three classes. See #1060.
Added with_uid method to Component to filter subcomponents by
UID. See #950.
Enforce linting of code with Ruff in CI. #672
Bug fixes
Fixed Calendar.new to automatically generate a UID when not
provided, matching the documented behavior. Previously, the
documentation stated that uid would be set to a new uuid.uuid4()
if None, but the implementation did not generate it. See #1066.
Fixed import failure in Pyodide/WebAssembly environments by
using lazy initialization for timezone data in the zoneinfo
provider. The library can now be imported in environments
without timezone data (e.g., Cloudflare Workers, PyScript,
JupyterLite). See #1073.
Fixed icalendar.caselessdict.CaselessDict.__eq__() to return
NotImplemented when comparing with non-dict types instead of
raising AttributeError. See #1016.
Fixed decoding of categories. See #279.
Link timedelta to datetime.timedelta in the Python standard
library documentation. See #951.
Fix round-trip parsing of vCategory (CATEGORIES property) when
category values contain commas. Categories like 'Meeting, John'
now correctly survive round trips between Component.to_ical
and Component.from_ical instead of being split into multiple
categories. Added split_on_unescaped_comma() helper function.
See #127.
Fixed semicolon escaping in vCard structured properties (ADR,
N, ORG). Semicolons are now correctly treated as field separators
per RFC 6350, not escaped as in iCalendar TEXT values. Added
split_on_unescaped_semicolon() helper function and vAdr, vN,
vOrg property types. See #137.
Fix Image.from_property_value to raise TypeError instead of
AttributeError when value.params isn't valid (most notably,
isn't dict-like). #909
Documentation
Improved docstrings and formatting for the AlarmTime class.
#1072
Added how-to guide for handling parsing errors with vBroken
and the component.errors attribute. See #1085.
Updated 11 function docstrings in icalendar.parser to follow
the Google Style guide, improving API documentation clarity
and consistency. See #1072.
Applied Google-style docstrings to icalendar.tools utility
functions with Args, Returns, and Example sections. See #1072.
Simplify contributors and add supporters in credits. See #1035.
Add a section in the change log for Documentation. See #1043.
Fixed multiple more than one target found for cross-reference
warnings, and stopped using sphinx.ext.autosectionlabel, in
documentation. See #952.
Add funding.json manifest for funding information. See #1047.
Resolved Cannot resolve forward reference in type annotations
warning in documentation. Added SPHINX_APIDOC_OPTIONS to make
apidoc command, excluding __all__ items from being duplicated
in the documentation, and rebuilt the API documentation source
files. See #952.
Document how to create and read attendee information in events.
See #130.
Add usage examples. #443
Improve documentation contribution guide by adding chapters
for small edits, builds and checks, and a style guide. Added
details for Vale usage, Diátaxis framework, narrative and API
documentation, and fixing all spelling errors. See #991.
Document dictionary and property accessors. #124.
Moved content from the README into documentation to reduce
maintenance and point to the authoritative source of information.
See #1006.
Added "Code conventions" section to the Development contributing
guide. See #1004.
Use Google style docstrings in parser_tools. See #1017.
Document compatibility of icalendar with RFCs. See #1147.
Added Upgrade guide. See #997.
Fixed links in jCal usage documentation.
Enable sphinx-issues extension. #1091
Replaced "Arguments" and "Args" with "Parameters". #1076
Added documentation of how to set up a development environment
with git. #906
Documented how to install and use pre-commit. #996
Added a new rule to our docstring style guide to escape
docstrings, and added a new section for type hints in the code
conventions section. #1080
Documented __init__ methods. #1079
Moved "Edit this page" link to above the page table of contents.
#1106
Added Good First Issue link and fixed Up For Grabs link in
Contribute guide. #1095
Updated CONTRIBUTING.rst to explicitly state not to use Args
sections in docstrings. #1076
Document vInt.__new__ method parameters in class docstring with
RFC 5545 examples. #1118
Improved make vale command to provide guidance on failure or
success. #1137
Add sphinx_copybutton configuration to exclude line numbers,
prompts, and console output when copying code blocks.
Change Sphinx configuration to convert -- to en dash -, --- to
em dash —, and ... to ellipsis …, but doesn't transform quote
marks as they should be preserved. This restores cleaner and
consistent rendering of docstrings in the API Reference. See
smartquotes_action.
Fix incorrect return type annotation in Component.from_ical.
#1141
Fixed broken links in docs/how-to/usage.rst documentation. Part
of #1158
Enhanced the first-time contributors section, in hopes that
fewer contributors ask permission before starting work. #1165
Changed Sphinx configuration to inherit from CaselessDict,
displaying all of its class members in the in-page navigation.
Fixed broken cross-component links in Availability.new(). #994
Configured Sphinx to append the docstring from the __init__
method into its class docstring. #1156
7.0.0a3 (2025-12-19)
Minor changes
Add static [project.urls] to pyproject.toml for GitHub dependency
graph compatibility. See #1035.
Created an example() method for the Todo component. See #743.
Add type hints to icalendar.caselessdict file. See #938.
For releases, added a step to update the version switcher for
documentation.
New features
Added contributor list format and sorting instructions.
Bug fixes
Fix double-unescaping in vText.from_ical() and vCategory.from_ical()
by removing unescape_char(). See #1008.
7.0.0a2 (2025-11-29)
Minor changes
Convert changelog section labels to reStructuredText subheadings
for improved Read the Docs navigation. See #982.
Move sections in Table of Content of Reference guide.
Improve icalendar.prop.vDatetime documentation. See #946.
CLI now writes output files using UTF-8 explicitly instead of
relying on the system default. See #1005.
New features
Add compatibility to RFC 9253:
Add new property types vUid and vXmlReference.
Add properties to all components: Component.concepts,
Component.links, Component.refids, Component.related_to.
Add new values to RELTYPE.
Add LABEL, GAP, and VALUE parameters to property values
affected by RFC 9253.
Allow setting default values in Parameters.
Allow None as an argument to Parameters.
Add ical_value to several property values. See #876.
Add PyData Theme version switcher to documentation. See #825.
Test compatibility with Python 3.14. See #973.
Added documentation of Vale usage for icalender documentation
style guide. See #815.
Added funding link to pyproject.toml. See #800.
Added documentation of docstring format. See #747.
Add TypeAlias icalendar.VPROPERTY as a type for all properties.
Allow access to icalendar.TypesFactory via
icalendar.TypesFactory.instance().
Classes in icalendar.prop can all be initialized with parameters
now.
Allow passing icalendar.vDDDTypes as arguments to icalendar.vDDDLists.
Add support for datetime.timezone identification.
Add icalendar.is_utc() to check if a timezone is UTC.
Add support for JCal parsing and serialization. See #978.
Add icalendar.JCalParsingError exception for jCal parsing.
Add icalendar.Parameters.tzid and icalendar.Parameters.is_utc()
for timezone handling.
Add icalendar.vUnknown which is the default now for unknown
properties and the same as icalendar.vText.
Add icalendar.ComponentFactory.get_component_class() that
also creates a new component class when it does not exist.
Add icalendar.ComponentFactory.add_component_class() to
have a unified interface to add component classes.
Add icalendar.Component.to_json(), icalendar.Component.to_jcal(),
and icalendar.Component.from_jcal() methods so all components
can be serialized and parsed.
Classes in icalendar.prop receive the following updates:
Add to_jcal and from_jcal for serialization.
Add default_value class attribute for the default VALUE
parameter.
Add VALUE parameter property.
Add examples() classmethod that returns examples for
testing.
Added documentation of how to fuzz icalendar. See #905.
Added first-time contributors section to Contributing. See
#934.
Revised check of which files trigger a documentation build on
Read the Docs. See #848.
Created a separate path to contribute to documentation. See
#929.
Added a code of conduct. See #907.
Added redirects of moved files and 404 not found page to catch
any other obsolete URLs. See #959.
Added artificial intelligence (AI) policy. See #933.
Bug fixes
Correct name of AVAILABLE component.
Fix ical serialization of icalendar.vTime.
Make sure a component's conferences property adds VALUE=URI if
the conference is created as a URI.
Fix CLI deprecated argparse.FileType usage and remove
PendingDeprecationWarning. See #1005.
To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 pkgsrc/time/py-icalendar/Makefile
cvs rdiff -u -r1.29 -r1.30 pkgsrc/time/py-icalendar/PLIST
cvs rdiff -u -r1.46 -r1.47 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.55 pkgsrc/time/py-icalendar/Makefile:1.56
--- pkgsrc/time/py-icalendar/Makefile:1.55 Mon Nov 10 09:38:25 2025
+++ pkgsrc/time/py-icalendar/Makefile Mon Feb 16 11:15:47 2026
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.55 2025/11/10 09:38:25 wiz Exp $
+# $NetBSD: Makefile,v 1.56 2026/02/16 11:15:47 wiz Exp $
-DISTNAME= icalendar-6.3.2
+DISTNAME= icalendar-7.0.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 6.3.2
-# 16 failed, 8986 passed, 21 skipped
+# as of 7.0.0
+# 16 failed, 12063 passed, 23 skipped, 6 errors
post-install:
cd ${DESTDIR}${PREFIX}/bin && \
Index: pkgsrc/time/py-icalendar/PLIST
diff -u pkgsrc/time/py-icalendar/PLIST:1.29 pkgsrc/time/py-icalendar/PLIST:1.30
--- pkgsrc/time/py-icalendar/PLIST:1.29 Wed May 21 07:34:52 2025
+++ pkgsrc/time/py-icalendar/PLIST Mon Feb 16 11:15:47 2026
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.29 2025/05/21 07:34:52 adam Exp $
+@comment $NetBSD: PLIST,v 1.30 2026/02/16 11:15:47 wiz Exp $
bin/icalendar-${PYVERSSUFFIX}
${PYSITELIB}/${WHEEL_INFODIR}/METADATA
${PYSITELIB}/${WHEEL_INFODIR}/RECORD
@@ -17,15 +17,54 @@ ${PYSITELIB}/icalendar/alarms.pyo
${PYSITELIB}/icalendar/attr.py
${PYSITELIB}/icalendar/attr.pyc
${PYSITELIB}/icalendar/attr.pyo
-${PYSITELIB}/icalendar/cal.py
-${PYSITELIB}/icalendar/cal.pyc
-${PYSITELIB}/icalendar/cal.pyo
+${PYSITELIB}/icalendar/cal/__init__.py
+${PYSITELIB}/icalendar/cal/__init__.pyc
+${PYSITELIB}/icalendar/cal/__init__.pyo
+${PYSITELIB}/icalendar/cal/alarm.py
+${PYSITELIB}/icalendar/cal/alarm.pyc
+${PYSITELIB}/icalendar/cal/alarm.pyo
+${PYSITELIB}/icalendar/cal/availability.py
+${PYSITELIB}/icalendar/cal/availability.pyc
+${PYSITELIB}/icalendar/cal/availability.pyo
+${PYSITELIB}/icalendar/cal/available.py
+${PYSITELIB}/icalendar/cal/available.pyc
+${PYSITELIB}/icalendar/cal/available.pyo
+${PYSITELIB}/icalendar/cal/calendar.py
+${PYSITELIB}/icalendar/cal/calendar.pyc
+${PYSITELIB}/icalendar/cal/calendar.pyo
+${PYSITELIB}/icalendar/cal/component.py
+${PYSITELIB}/icalendar/cal/component.pyc
+${PYSITELIB}/icalendar/cal/component.pyo
+${PYSITELIB}/icalendar/cal/component_factory.py
+${PYSITELIB}/icalendar/cal/component_factory.pyc
+${PYSITELIB}/icalendar/cal/component_factory.pyo
+${PYSITELIB}/icalendar/cal/event.py
+${PYSITELIB}/icalendar/cal/event.pyc
+${PYSITELIB}/icalendar/cal/event.pyo
+${PYSITELIB}/icalendar/cal/examples.py
+${PYSITELIB}/icalendar/cal/examples.pyc
+${PYSITELIB}/icalendar/cal/examples.pyo
+${PYSITELIB}/icalendar/cal/free_busy.py
+${PYSITELIB}/icalendar/cal/free_busy.pyc
+${PYSITELIB}/icalendar/cal/free_busy.pyo
+${PYSITELIB}/icalendar/cal/journal.py
+${PYSITELIB}/icalendar/cal/journal.pyc
+${PYSITELIB}/icalendar/cal/journal.pyo
+${PYSITELIB}/icalendar/cal/timezone.py
+${PYSITELIB}/icalendar/cal/timezone.pyc
+${PYSITELIB}/icalendar/cal/timezone.pyo
+${PYSITELIB}/icalendar/cal/todo.py
+${PYSITELIB}/icalendar/cal/todo.pyc
+${PYSITELIB}/icalendar/cal/todo.pyo
${PYSITELIB}/icalendar/caselessdict.py
${PYSITELIB}/icalendar/caselessdict.pyc
${PYSITELIB}/icalendar/caselessdict.pyo
${PYSITELIB}/icalendar/cli.py
${PYSITELIB}/icalendar/cli.pyc
${PYSITELIB}/icalendar/cli.pyo
+${PYSITELIB}/icalendar/compatibility.py
+${PYSITELIB}/icalendar/compatibility.pyc
+${PYSITELIB}/icalendar/compatibility.pyo
${PYSITELIB}/icalendar/enums.py
${PYSITELIB}/icalendar/enums.pyc
${PYSITELIB}/icalendar/enums.pyo
@@ -35,18 +74,140 @@ ${PYSITELIB}/icalendar/error.pyo
${PYSITELIB}/icalendar/param.py
${PYSITELIB}/icalendar/param.pyc
${PYSITELIB}/icalendar/param.pyo
-${PYSITELIB}/icalendar/parser.py
-${PYSITELIB}/icalendar/parser.pyc
-${PYSITELIB}/icalendar/parser.pyo
+${PYSITELIB}/icalendar/parser/__init__.py
+${PYSITELIB}/icalendar/parser/__init__.pyc
+${PYSITELIB}/icalendar/parser/__init__.pyo
+${PYSITELIB}/icalendar/parser/content_line.py
+${PYSITELIB}/icalendar/parser/content_line.pyc
+${PYSITELIB}/icalendar/parser/content_line.pyo
+${PYSITELIB}/icalendar/parser/parameter.py
+${PYSITELIB}/icalendar/parser/parameter.pyc
+${PYSITELIB}/icalendar/parser/parameter.pyo
+${PYSITELIB}/icalendar/parser/property.py
+${PYSITELIB}/icalendar/parser/property.pyc
+${PYSITELIB}/icalendar/parser/property.pyo
+${PYSITELIB}/icalendar/parser/string.py
+${PYSITELIB}/icalendar/parser/string.pyc
+${PYSITELIB}/icalendar/parser/string.pyo
${PYSITELIB}/icalendar/parser_tools.py
${PYSITELIB}/icalendar/parser_tools.pyc
${PYSITELIB}/icalendar/parser_tools.pyo
-${PYSITELIB}/icalendar/prop.py
-${PYSITELIB}/icalendar/prop.pyc
-${PYSITELIB}/icalendar/prop.pyo
+${PYSITELIB}/icalendar/prop/__init__.py
+${PYSITELIB}/icalendar/prop/__init__.pyc
+${PYSITELIB}/icalendar/prop/__init__.pyo
+${PYSITELIB}/icalendar/prop/adr.py
+${PYSITELIB}/icalendar/prop/adr.pyc
+${PYSITELIB}/icalendar/prop/adr.pyo
+${PYSITELIB}/icalendar/prop/binary.py
+${PYSITELIB}/icalendar/prop/binary.pyc
+${PYSITELIB}/icalendar/prop/binary.pyo
+${PYSITELIB}/icalendar/prop/boolean.py
+${PYSITELIB}/icalendar/prop/boolean.pyc
+${PYSITELIB}/icalendar/prop/boolean.pyo
+${PYSITELIB}/icalendar/prop/broken.py
+${PYSITELIB}/icalendar/prop/broken.pyc
+${PYSITELIB}/icalendar/prop/broken.pyo
+${PYSITELIB}/icalendar/prop/cal_address.py
+${PYSITELIB}/icalendar/prop/cal_address.pyc
+${PYSITELIB}/icalendar/prop/cal_address.pyo
+${PYSITELIB}/icalendar/prop/categories.py
+${PYSITELIB}/icalendar/prop/categories.pyc
+${PYSITELIB}/icalendar/prop/categories.pyo
+${PYSITELIB}/icalendar/prop/conference.py
+${PYSITELIB}/icalendar/prop/conference.pyc
+${PYSITELIB}/icalendar/prop/conference.pyo
+${PYSITELIB}/icalendar/prop/dt/__init__.py
+${PYSITELIB}/icalendar/prop/dt/__init__.pyc
+${PYSITELIB}/icalendar/prop/dt/__init__.pyo
+${PYSITELIB}/icalendar/prop/dt/base.py
+${PYSITELIB}/icalendar/prop/dt/base.pyc
+${PYSITELIB}/icalendar/prop/dt/base.pyo
+${PYSITELIB}/icalendar/prop/dt/date.py
+${PYSITELIB}/icalendar/prop/dt/date.pyc
+${PYSITELIB}/icalendar/prop/dt/date.pyo
+${PYSITELIB}/icalendar/prop/dt/datetime.py
+${PYSITELIB}/icalendar/prop/dt/datetime.pyc
+${PYSITELIB}/icalendar/prop/dt/datetime.pyo
+${PYSITELIB}/icalendar/prop/dt/duration.py
+${PYSITELIB}/icalendar/prop/dt/duration.pyc
+${PYSITELIB}/icalendar/prop/dt/duration.pyo
+${PYSITELIB}/icalendar/prop/dt/list.py
+${PYSITELIB}/icalendar/prop/dt/list.pyc
+${PYSITELIB}/icalendar/prop/dt/list.pyo
+${PYSITELIB}/icalendar/prop/dt/period.py
+${PYSITELIB}/icalendar/prop/dt/period.pyc
+${PYSITELIB}/icalendar/prop/dt/period.pyo
+${PYSITELIB}/icalendar/prop/dt/time.py
+${PYSITELIB}/icalendar/prop/dt/time.pyc
+${PYSITELIB}/icalendar/prop/dt/time.pyo
+${PYSITELIB}/icalendar/prop/dt/types.py
+${PYSITELIB}/icalendar/prop/dt/types.pyc
+${PYSITELIB}/icalendar/prop/dt/types.pyo
+${PYSITELIB}/icalendar/prop/dt/utc_offset.py
+${PYSITELIB}/icalendar/prop/dt/utc_offset.pyc
+${PYSITELIB}/icalendar/prop/dt/utc_offset.pyo
+${PYSITELIB}/icalendar/prop/factory.py
+${PYSITELIB}/icalendar/prop/factory.pyc
+${PYSITELIB}/icalendar/prop/factory.pyo
+${PYSITELIB}/icalendar/prop/float.py
+${PYSITELIB}/icalendar/prop/float.pyc
+${PYSITELIB}/icalendar/prop/float.pyo
+${PYSITELIB}/icalendar/prop/geo.py
+${PYSITELIB}/icalendar/prop/geo.pyc
+${PYSITELIB}/icalendar/prop/geo.pyo
+${PYSITELIB}/icalendar/prop/image.py
+${PYSITELIB}/icalendar/prop/image.pyc
+${PYSITELIB}/icalendar/prop/image.pyo
+${PYSITELIB}/icalendar/prop/inline.py
+${PYSITELIB}/icalendar/prop/inline.pyc
+${PYSITELIB}/icalendar/prop/inline.pyo
+${PYSITELIB}/icalendar/prop/integer.py
+${PYSITELIB}/icalendar/prop/integer.pyc
+${PYSITELIB}/icalendar/prop/integer.pyo
+${PYSITELIB}/icalendar/prop/n.py
+${PYSITELIB}/icalendar/prop/n.pyc
+${PYSITELIB}/icalendar/prop/n.pyo
+${PYSITELIB}/icalendar/prop/org.py
+${PYSITELIB}/icalendar/prop/org.pyc
+${PYSITELIB}/icalendar/prop/org.pyo
+${PYSITELIB}/icalendar/prop/recur/__init__.py
+${PYSITELIB}/icalendar/prop/recur/__init__.pyc
+${PYSITELIB}/icalendar/prop/recur/__init__.pyo
+${PYSITELIB}/icalendar/prop/recur/frequency.py
+${PYSITELIB}/icalendar/prop/recur/frequency.pyc
+${PYSITELIB}/icalendar/prop/recur/frequency.pyo
+${PYSITELIB}/icalendar/prop/recur/month.py
+${PYSITELIB}/icalendar/prop/recur/month.pyc
+${PYSITELIB}/icalendar/prop/recur/month.pyo
+${PYSITELIB}/icalendar/prop/recur/recur.py
+${PYSITELIB}/icalendar/prop/recur/recur.pyc
+${PYSITELIB}/icalendar/prop/recur/recur.pyo
+${PYSITELIB}/icalendar/prop/recur/skip.py
+${PYSITELIB}/icalendar/prop/recur/skip.pyc
+${PYSITELIB}/icalendar/prop/recur/skip.pyo
+${PYSITELIB}/icalendar/prop/recur/weekday.py
+${PYSITELIB}/icalendar/prop/recur/weekday.pyc
+${PYSITELIB}/icalendar/prop/recur/weekday.pyo
+${PYSITELIB}/icalendar/prop/text.py
+${PYSITELIB}/icalendar/prop/text.pyc
+${PYSITELIB}/icalendar/prop/text.pyo
+${PYSITELIB}/icalendar/prop/uid.py
+${PYSITELIB}/icalendar/prop/uid.pyc
+${PYSITELIB}/icalendar/prop/uid.pyo
+${PYSITELIB}/icalendar/prop/unknown.py
+${PYSITELIB}/icalendar/prop/unknown.pyc
+${PYSITELIB}/icalendar/prop/unknown.pyo
+${PYSITELIB}/icalendar/prop/uri.py
+${PYSITELIB}/icalendar/prop/uri.pyc
+${PYSITELIB}/icalendar/prop/uri.pyo
+${PYSITELIB}/icalendar/prop/xml_reference.py
+${PYSITELIB}/icalendar/prop/xml_reference.pyc
+${PYSITELIB}/icalendar/prop/xml_reference.pyo
+${PYSITELIB}/icalendar/py.typed
${PYSITELIB}/icalendar/tests/__init__.py
${PYSITELIB}/icalendar/tests/__init__.pyc
${PYSITELIB}/icalendar/tests/__init__.pyo
+${PYSITELIB}/icalendar/tests/alarms/example.ics
${PYSITELIB}/icalendar/tests/alarms/rfc_5545_absolute_alarm_example.ics
${PYSITELIB}/icalendar/tests/alarms/rfc_5545_end.ics
${PYSITELIB}/icalendar/tests/alarms/start_date.ics
@@ -68,6 +229,8 @@ ${PYSITELIB}/icalendar/tests/attr/test_r
${PYSITELIB}/icalendar/tests/attr/test_rrule.py
${PYSITELIB}/icalendar/tests/attr/test_rrule.pyc
${PYSITELIB}/icalendar/tests/attr/test_rrule.pyo
+${PYSITELIB}/icalendar/tests/availabilities/rfc_7953_1.ics
+${PYSITELIB}/icalendar/tests/availabilities/rfc_7953_2.ics
${PYSITELIB}/icalendar/tests/calendars/alarm_etar_future.ics
${PYSITELIB}/icalendar/tests/calendars/alarm_etar_notification.ics
${PYSITELIB}/icalendar/tests/calendars/alarm_etar_notification_clicked.ics
@@ -85,11 +248,16 @@ ${PYSITELIB}/icalendar/tests/calendars/a
${PYSITELIB}/icalendar/tests/calendars/america_new_york_forward_reference.ics
${PYSITELIB}/icalendar/tests/calendars/big_bad_calendar.ics
${PYSITELIB}/icalendar/tests/calendars/bom_calendar.ics
+${PYSITELIB}/icalendar/tests/calendars/broken_dtstart.ics
${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_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_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
${PYSITELIB}/icalendar/tests/calendars/issue_165_missing_event.ics
@@ -102,6 +270,7 @@ ${PYSITELIB}/icalendar/tests/calendars/i
${PYSITELIB}/icalendar/tests/calendars/issue_237_fail_to_parse_timezone_with_non_ascii_tzid.ics
${PYSITELIB}/icalendar/tests/calendars/issue_27_multiple_periods_in_freebusy_multiple_freebusies.ics
${PYSITELIB}/icalendar/tests/calendars/issue_27_multiple_periods_in_freebusy_one_freebusy.ics
+${PYSITELIB}/icalendar/tests/calendars/issue_321_assert_dst_offset_is_not_false.ics
${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
@@ -116,6 +285,7 @@ ${PYSITELIB}/icalendar/tests/calendars/i
${PYSITELIB}/icalendar/tests/calendars/issue_722_timezone_transition_ambiguity.ics
${PYSITELIB}/icalendar/tests/calendars/issue_798_freebusy.ics
${PYSITELIB}/icalendar/tests/calendars/issue_798_related_to.ics
+${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/pacific_fiji.ics
@@ -126,7 +296,22 @@ ${PYSITELIB}/icalendar/tests/calendars/p
${PYSITELIB}/icalendar/tests/calendars/property_params.ics
${PYSITELIB}/icalendar/tests/calendars/rfc_5545_RDATE_example.ics
${PYSITELIB}/icalendar/tests/calendars/rfc_6868.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7256_multi_value_parameters.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_appendix_example_1_ical.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_appendix_example_1_jcal.jcal
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_appendix_example_2_ical.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_appendix_example_2_jcal.jcal
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_example_1.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_example_2.jcal
+${PYSITELIB}/icalendar/tests/calendars/rfc_7265_example_3.jcal
${PYSITELIB}/icalendar/tests/calendars/rfc_7529.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7953_3.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7986_conferences.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7986_image.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_7986_properties.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_9253_examples.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_9253_gap.ics
+${PYSITELIB}/icalendar/tests/calendars/rfc_9253_related_to.ics
${PYSITELIB}/icalendar/tests/calendars/small_bad_calendar.ics
${PYSITELIB}/icalendar/tests/calendars/time.ics
${PYSITELIB}/icalendar/tests/calendars/timezone_rdate.ics
@@ -137,6 +322,9 @@ ${PYSITELIB}/icalendar/tests/calendars/x
${PYSITELIB}/icalendar/tests/conftest.py
${PYSITELIB}/icalendar/tests/conftest.pyc
${PYSITELIB}/icalendar/tests/conftest.pyo
+${PYSITELIB}/icalendar/tests/data.py
+${PYSITELIB}/icalendar/tests/data.pyc
+${PYSITELIB}/icalendar/tests/data.pyo
${PYSITELIB}/icalendar/tests/events/event_with_escaped_character1.ics
${PYSITELIB}/icalendar/tests/events/event_with_escaped_character2.ics
${PYSITELIB}/icalendar/tests/events/event_with_escaped_character3.ics
@@ -155,12 +343,17 @@ ${PYSITELIB}/icalendar/tests/events/issu
${PYSITELIB}/icalendar/tests/events/issue_156_RDATE_with_PERIOD_list.ics
${PYSITELIB}/icalendar/tests/events/issue_157_removes_trailing_semicolon.ics
${PYSITELIB}/icalendar/tests/events/issue_184_broken_representation_of_period.ics
+${PYSITELIB}/icalendar/tests/events/issue_355_url_escaping.ics
+${PYSITELIB}/icalendar/tests/events/issue_355_url_escaping_2.ics
+${PYSITELIB}/icalendar/tests/events/issue_355_url_escaping_empty_param.ics
${PYSITELIB}/icalendar/tests/events/issue_464_invalid_rdate.ics
${PYSITELIB}/icalendar/tests/events/issue_53_description_parsed_properly.ics
${PYSITELIB}/icalendar/tests/events/issue_64_event_with_ascii_summary.ics
${PYSITELIB}/icalendar/tests/events/issue_64_event_with_non_ascii_summary.ics
${PYSITELIB}/icalendar/tests/events/issue_70_rrule_causes_attribute_error.ics
${PYSITELIB}/icalendar/tests/events/issue_82_expected_output.ics
+${PYSITELIB}/icalendar/tests/events/rfc_7265_example_4.ics
+${PYSITELIB}/icalendar/tests/events/rfc_7265_request_status.ics
${PYSITELIB}/icalendar/tests/events/rfc_9074_example_1.ics
${PYSITELIB}/icalendar/tests/events/rfc_9074_example_2.ics
${PYSITELIB}/icalendar/tests/events/rfc_9074_example_3.ics
@@ -179,9 +372,18 @@ ${PYSITELIB}/icalendar/tests/hypothesis/
${PYSITELIB}/icalendar/tests/prop/__init__.py
${PYSITELIB}/icalendar/tests/prop/__init__.pyc
${PYSITELIB}/icalendar/tests/prop/__init__.pyo
+${PYSITELIB}/icalendar/tests/prop/test_common_functionality.py
+${PYSITELIB}/icalendar/tests/prop/test_common_functionality.pyc
+${PYSITELIB}/icalendar/tests/prop/test_common_functionality.pyo
+${PYSITELIB}/icalendar/tests/prop/test_conference.py
+${PYSITELIB}/icalendar/tests/prop/test_conference.pyc
+${PYSITELIB}/icalendar/tests/prop/test_conference.pyo
${PYSITELIB}/icalendar/tests/prop/test_constructors.py
${PYSITELIB}/icalendar/tests/prop/test_constructors.pyc
${PYSITELIB}/icalendar/tests/prop/test_constructors.pyo
+${PYSITELIB}/icalendar/tests/prop/test_date_and_time.py
+${PYSITELIB}/icalendar/tests/prop/test_date_and_time.pyc
+${PYSITELIB}/icalendar/tests/prop/test_date_and_time.pyo
${PYSITELIB}/icalendar/tests/prop/test_identity_and_equality.py
${PYSITELIB}/icalendar/tests/prop/test_identity_and_equality.pyc
${PYSITELIB}/icalendar/tests/prop/test_identity_and_equality.pyo
@@ -215,49 +417,166 @@ ${PYSITELIB}/icalendar/tests/prop/test_v
${PYSITELIB}/icalendar/tests/prop/test_windows_to_olson_mapping.py
${PYSITELIB}/icalendar/tests/prop/test_windows_to_olson_mapping.pyc
${PYSITELIB}/icalendar/tests/prop/test_windows_to_olson_mapping.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/__init__.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/__init__.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/__init__.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_component_integration.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_component_integration.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_component_integration.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_split_on_unescaped_semicolon.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_split_on_unescaped_semicolon.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_split_on_unescaped_semicolon.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vAdr.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vAdr.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vAdr.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vN.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vN.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vN.pyo
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vOrg.py
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vOrg.pyc
+${PYSITELIB}/icalendar/tests/rfc_6350_vcard/test_vOrg.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/__init__.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/__init__.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/__init__.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_additional_considerations.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_additional_considerations.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_additional_considerations.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_categories.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_categories.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_categories.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_examples.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_examples.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_examples.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_invalid_jcal.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_invalid_jcal.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_invalid_jcal.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_3_components.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_3_components.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_3_components.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_4_properties.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_4_properties.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_4_properties.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_5_parameters.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_5_parameters.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_5_parameters.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_6_values.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_6_values.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_3_6_values.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_4_ical_parsing.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_4_ical_parsing.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_4_ical_parsing.pyo
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_5_3_examples.py
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_5_3_examples.pyc
+${PYSITELIB}/icalendar/tests/rfc_7265_jcal/test_section_5_3_examples.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/__init__.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/__init__.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/__init__.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_concept.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_concept.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_concept.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_gap.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_gap.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_gap.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_link.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_link.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_link.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_new_property_types.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_new_property_types.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_new_property_types.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_refid.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_refid.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_refid.pyo
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_related_to.py
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_related_to.pyc
+${PYSITELIB}/icalendar/tests/rfc_9253_icalendar_relationships/test_related_to.pyo
${PYSITELIB}/icalendar/tests/test_bom_calendar.py
${PYSITELIB}/icalendar/tests/test_bom_calendar.pyc
${PYSITELIB}/icalendar/tests/test_bom_calendar.pyo
${PYSITELIB}/icalendar/tests/test_cli_tool.py
${PYSITELIB}/icalendar/tests/test_cli_tool.pyc
${PYSITELIB}/icalendar/tests/test_cli_tool.pyo
+${PYSITELIB}/icalendar/tests/test_component_register.py
+${PYSITELIB}/icalendar/tests/test_component_register.pyc
+${PYSITELIB}/icalendar/tests/test_component_register.pyo
${PYSITELIB}/icalendar/tests/test_components_break_on_bad_ics.py
${PYSITELIB}/icalendar/tests/test_components_break_on_bad_ics.pyc
${PYSITELIB}/icalendar/tests/test_components_break_on_bad_ics.pyo
+${PYSITELIB}/icalendar/tests/test_consolidation_attr_functions.py
+${PYSITELIB}/icalendar/tests/test_consolidation_attr_functions.pyc
+${PYSITELIB}/icalendar/tests/test_consolidation_attr_functions.pyo
${PYSITELIB}/icalendar/tests/test_create_release.sh
+${PYSITELIB}/icalendar/tests/test_custom_components.py
+${PYSITELIB}/icalendar/tests/test_custom_components.pyc
+${PYSITELIB}/icalendar/tests/test_custom_components.pyo
${PYSITELIB}/icalendar/tests/test_encoding.py
${PYSITELIB}/icalendar/tests/test_encoding.pyc
${PYSITELIB}/icalendar/tests/test_encoding.pyo
+${PYSITELIB}/icalendar/tests/test_enums.py
+${PYSITELIB}/icalendar/tests/test_enums.pyc
+${PYSITELIB}/icalendar/tests/test_enums.pyo
${PYSITELIB}/icalendar/tests/test_equality.py
${PYSITELIB}/icalendar/tests/test_equality.pyc
${PYSITELIB}/icalendar/tests/test_equality.pyo
+${PYSITELIB}/icalendar/tests/test_error_tolerant_parsing.py
+${PYSITELIB}/icalendar/tests/test_error_tolerant_parsing.pyc
+${PYSITELIB}/icalendar/tests/test_error_tolerant_parsing.pyo
${PYSITELIB}/icalendar/tests/test_examples.py
${PYSITELIB}/icalendar/tests/test_examples.pyc
${PYSITELIB}/icalendar/tests/test_examples.pyo
+${PYSITELIB}/icalendar/tests/test_funding_json.py
+${PYSITELIB}/icalendar/tests/test_funding_json.pyc
+${PYSITELIB}/icalendar/tests/test_funding_json.pyo
${PYSITELIB}/icalendar/tests/test_icalendar.py
${PYSITELIB}/icalendar/tests/test_icalendar.pyc
${PYSITELIB}/icalendar/tests/test_icalendar.pyo
+${PYSITELIB}/icalendar/tests/test_image.py
+${PYSITELIB}/icalendar/tests/test_image.pyc
+${PYSITELIB}/icalendar/tests/test_image.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
+${PYSITELIB}/icalendar/tests/test_issue_1073_pyodide_import.py
+${PYSITELIB}/icalendar/tests/test_issue_1073_pyodide_import.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1073_pyodide_import.pyo
+${PYSITELIB}/icalendar/tests/test_issue_1129.py
+${PYSITELIB}/icalendar/tests/test_issue_1129.pyc
+${PYSITELIB}/icalendar/tests/test_issue_1129.pyo
${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_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
${PYSITELIB}/icalendar/tests/test_issue_165_missing_event.py
${PYSITELIB}/icalendar/tests/test_issue_165_missing_event.pyc
${PYSITELIB}/icalendar/tests/test_issue_165_missing_event.pyo
${PYSITELIB}/icalendar/tests/test_issue_168_parsing_invalid_calendars_no_warning.py
${PYSITELIB}/icalendar/tests/test_issue_168_parsing_invalid_calendars_no_warning.pyc
${PYSITELIB}/icalendar/tests/test_issue_168_parsing_invalid_calendars_no_warning.pyo
+${PYSITELIB}/icalendar/tests/test_issue_187_type_and_value_do_not_match.py
+${PYSITELIB}/icalendar/tests/test_issue_187_type_and_value_do_not_match.pyc
+${PYSITELIB}/icalendar/tests/test_issue_187_type_and_value_do_not_match.pyo
${PYSITELIB}/icalendar/tests/test_issue_218_parse_calendar.py
${PYSITELIB}/icalendar/tests/test_issue_218_parse_calendar.pyc
${PYSITELIB}/icalendar/tests/test_issue_218_parse_calendar.pyo
+${PYSITELIB}/icalendar/tests/test_issue_279_decoding_categories.py
+${PYSITELIB}/icalendar/tests/test_issue_279_decoding_categories.pyc
+${PYSITELIB}/icalendar/tests/test_issue_279_decoding_categories.pyo
${PYSITELIB}/icalendar/tests/test_issue_27_period.py
${PYSITELIB}/icalendar/tests/test_issue_27_period.pyc
${PYSITELIB}/icalendar/tests/test_issue_27_period.pyo
${PYSITELIB}/icalendar/tests/test_issue_301_add_rrule_as_string.py
${PYSITELIB}/icalendar/tests/test_issue_301_add_rrule_as_string.pyc
${PYSITELIB}/icalendar/tests/test_issue_301_add_rrule_as_string.pyo
+${PYSITELIB}/icalendar/tests/test_issue_315_uid_required.py
+${PYSITELIB}/icalendar/tests/test_issue_315_uid_required.pyc
+${PYSITELIB}/icalendar/tests/test_issue_315_uid_required.pyo
${PYSITELIB}/icalendar/tests/test_issue_318_skip_default_parameters.py
${PYSITELIB}/icalendar/tests/test_issue_318_skip_default_parameters.pyc
${PYSITELIB}/icalendar/tests/test_issue_318_skip_default_parameters.pyo
+${PYSITELIB}/icalendar/tests/test_issue_321_dst_offset.py
+${PYSITELIB}/icalendar/tests/test_issue_321_dst_offset.pyc
+${PYSITELIB}/icalendar/tests/test_issue_321_dst_offset.pyo
${PYSITELIB}/icalendar/tests/test_issue_322_single_strings_characters_split_into_multiple_categories.py
${PYSITELIB}/icalendar/tests/test_issue_322_single_strings_characters_split_into_multiple_categories.pyc
${PYSITELIB}/icalendar/tests/test_issue_322_single_strings_characters_split_into_multiple_categories.pyo
@@ -267,15 +586,24 @@ ${PYSITELIB}/icalendar/tests/test_issue_
${PYSITELIB}/icalendar/tests/test_issue_348_exception_parsing_value.py
${PYSITELIB}/icalendar/tests/test_issue_348_exception_parsing_value.pyc
${PYSITELIB}/icalendar/tests/test_issue_348_exception_parsing_value.pyo
+${PYSITELIB}/icalendar/tests/test_issue_349_value_parameter.py
+${PYSITELIB}/icalendar/tests/test_issue_349_value_parameter.pyc
+${PYSITELIB}/icalendar/tests/test_issue_349_value_parameter.pyo
${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_355_url_escaping.py
+${PYSITELIB}/icalendar/tests/test_issue_355_url_escaping.pyc
+${PYSITELIB}/icalendar/tests/test_issue_355_url_escaping.pyo
${PYSITELIB}/icalendar/tests/test_issue_500_vboolean_for_parameter.py
${PYSITELIB}/icalendar/tests/test_issue_500_vboolean_for_parameter.pyc
${PYSITELIB}/icalendar/tests/test_issue_500_vboolean_for_parameter.pyo
${PYSITELIB}/icalendar/tests/test_issue_557_encode_native_parameters.py
${PYSITELIB}/icalendar/tests/test_issue_557_encode_native_parameters.pyc
${PYSITELIB}/icalendar/tests/test_issue_557_encode_native_parameters.pyo
+${PYSITELIB}/icalendar/tests/test_issue_596_calendar_with_attributes.py
+${PYSITELIB}/icalendar/tests/test_issue_596_calendar_with_attributes.pyc
+${PYSITELIB}/icalendar/tests/test_issue_596_calendar_with_attributes.pyo
${PYSITELIB}/icalendar/tests/test_issue_662_component_properties.py
${PYSITELIB}/icalendar/tests/test_issue_662_component_properties.pyc
${PYSITELIB}/icalendar/tests/test_issue_662_component_properties.pyo
@@ -294,18 +622,57 @@ ${PYSITELIB}/icalendar/tests/test_issue_
${PYSITELIB}/icalendar/tests/test_issue_802.py
${PYSITELIB}/icalendar/tests/test_issue_802.pyc
${PYSITELIB}/icalendar/tests/test_issue_802.pyo
+${PYSITELIB}/icalendar/tests/test_issue_821_stdin_parse.py
+${PYSITELIB}/icalendar/tests/test_issue_821_stdin_parse.pyc
+${PYSITELIB}/icalendar/tests/test_issue_821_stdin_parse.pyo
${PYSITELIB}/icalendar/tests/test_issue_828.py
${PYSITELIB}/icalendar/tests/test_issue_828.pyc
${PYSITELIB}/icalendar/tests/test_issue_828.pyo
${PYSITELIB}/icalendar/tests/test_issue_836_do_not_quote_tzid.py
${PYSITELIB}/icalendar/tests/test_issue_836_do_not_quote_tzid.pyc
${PYSITELIB}/icalendar/tests/test_issue_836_do_not_quote_tzid.pyo
+${PYSITELIB}/icalendar/tests/test_issue_843_new_method_for_components.py
+${PYSITELIB}/icalendar/tests/test_issue_843_new_method_for_components.pyc
+${PYSITELIB}/icalendar/tests/test_issue_843_new_method_for_components.pyo
+${PYSITELIB}/icalendar/tests/test_issue_844_timezone_placement.py
+${PYSITELIB}/icalendar/tests/test_issue_844_timezone_placement.pyc
+${PYSITELIB}/icalendar/tests/test_issue_844_timezone_placement.pyo
+${PYSITELIB}/icalendar/tests/test_issue_857_enhanced_api.py
+${PYSITELIB}/icalendar/tests/test_issue_857_enhanced_api.pyc
+${PYSITELIB}/icalendar/tests/test_issue_857_enhanced_api.pyo
+${PYSITELIB}/icalendar/tests/test_issue_860_improved_setters.py
+${PYSITELIB}/icalendar/tests/test_issue_860_improved_setters.pyc
+${PYSITELIB}/icalendar/tests/test_issue_860_improved_setters.pyo
+${PYSITELIB}/icalendar/tests/test_issue_864_examples.py
+${PYSITELIB}/icalendar/tests/test_issue_864_examples.pyc
+${PYSITELIB}/icalendar/tests/test_issue_864_examples.pyo
+${PYSITELIB}/icalendar/tests/test_issue_867_todo_duration_fix.py
+${PYSITELIB}/icalendar/tests/test_issue_867_todo_duration_fix.pyc
+${PYSITELIB}/icalendar/tests/test_issue_867_todo_duration_fix.pyo
+${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_898_todo_end.py
+${PYSITELIB}/icalendar/tests/test_issue_898_todo_end.pyc
+${PYSITELIB}/icalendar/tests/test_issue_898_todo_end.pyo
+${PYSITELIB}/icalendar/tests/test_issue_899_copy_component.py
+${PYSITELIB}/icalendar/tests/test_issue_899_copy_component.pyc
+${PYSITELIB}/icalendar/tests/test_issue_899_copy_component.pyo
+${PYSITELIB}/icalendar/tests/test_issue_950.py
+${PYSITELIB}/icalendar/tests/test_issue_950.pyc
+${PYSITELIB}/icalendar/tests/test_issue_950.pyo
+${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_multiple.py
${PYSITELIB}/icalendar/tests/test_multiple.pyc
${PYSITELIB}/icalendar/tests/test_multiple.pyo
${PYSITELIB}/icalendar/tests/test_oss_fuzz_errors.py
${PYSITELIB}/icalendar/tests/test_oss_fuzz_errors.pyc
${PYSITELIB}/icalendar/tests/test_oss_fuzz_errors.pyo
+${PYSITELIB}/icalendar/tests/test_parameter_access.py
+${PYSITELIB}/icalendar/tests/test_parameter_access.pyc
+${PYSITELIB}/icalendar/tests/test_parameter_access.pyo
${PYSITELIB}/icalendar/tests/test_parsing.py
${PYSITELIB}/icalendar/tests/test_parsing.pyc
${PYSITELIB}/icalendar/tests/test_parsing.pyo
@@ -327,6 +694,9 @@ ${PYSITELIB}/icalendar/tests/test_rfc_68
${PYSITELIB}/icalendar/tests/test_rfc_7529.py
${PYSITELIB}/icalendar/tests/test_rfc_7529.pyc
${PYSITELIB}/icalendar/tests/test_rfc_7529.pyo
+${PYSITELIB}/icalendar/tests/test_rfc_7953.py
+${PYSITELIB}/icalendar/tests/test_rfc_7953.pyc
+${PYSITELIB}/icalendar/tests/test_rfc_7953.pyo
${PYSITELIB}/icalendar/tests/test_rfc_7986.py
${PYSITELIB}/icalendar/tests/test_rfc_7986.pyc
${PYSITELIB}/icalendar/tests/test_rfc_7986.pyo
@@ -345,6 +715,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_type_hints.py
+${PYSITELIB}/icalendar/tests/test_type_hints.pyc
+${PYSITELIB}/icalendar/tests/test_type_hints.pyo
${PYSITELIB}/icalendar/tests/test_unit_cal.py
${PYSITELIB}/icalendar/tests/test_unit_cal.pyc
${PYSITELIB}/icalendar/tests/test_unit_cal.pyo
@@ -354,9 +727,6 @@ ${PYSITELIB}/icalendar/tests/test_unit_c
${PYSITELIB}/icalendar/tests/test_unit_parser_tools.py
${PYSITELIB}/icalendar/tests/test_unit_parser_tools.pyc
${PYSITELIB}/icalendar/tests/test_unit_parser_tools.pyo
-${PYSITELIB}/icalendar/tests/test_unit_tools.py
-${PYSITELIB}/icalendar/tests/test_unit_tools.pyc
-${PYSITELIB}/icalendar/tests/test_unit_tools.pyo
${PYSITELIB}/icalendar/tests/test_with_doctest.py
${PYSITELIB}/icalendar/tests/test_with_doctest.pyc
${PYSITELIB}/icalendar/tests/test_with_doctest.pyo
@@ -367,6 +737,7 @@ ${PYSITELIB}/icalendar/tests/timezones/i
${PYSITELIB}/icalendar/tests/timezones/issue_53_tzid_parsed_properly.ics
${PYSITELIB}/icalendar/tests/timezones/issue_55_parse_error_on_utc_offset_with_seconds.ics
${PYSITELIB}/icalendar/tests/timezones/pacific_fiji.ics
+${PYSITELIB}/icalendar/tests/todos/example.ics
${PYSITELIB}/icalendar/timezone/__init__.py
${PYSITELIB}/icalendar/timezone/__init__.pyc
${PYSITELIB}/icalendar/timezone/__init__.pyo
Index: pkgsrc/time/py-icalendar/distinfo
diff -u pkgsrc/time/py-icalendar/distinfo:1.46 pkgsrc/time/py-icalendar/distinfo:1.47
--- pkgsrc/time/py-icalendar/distinfo:1.46 Mon Nov 10 09:38:25 2025
+++ pkgsrc/time/py-icalendar/distinfo Mon Feb 16 11:15:47 2026
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.46 2025/11/10 09:38:25 wiz Exp $
+$NetBSD: distinfo,v 1.47 2026/02/16 11:15:47 wiz Exp $
-BLAKE2s (icalendar-6.3.2.tar.gz) = 714e8a785915f036831a7344db1a80ed01fbbfcecc14001065775504d964ea0c
-SHA512 (icalendar-6.3.2.tar.gz) = a74067a527d46e26a8c50c6ef1ec9a264534349fae624df75388c9167b509d829f6a60340975b6aaeff1f7544bf5318ab24cc33e2bf7189fb8f57c00fea44bd8
-Size (icalendar-6.3.2.tar.gz) = 178422 bytes
+BLAKE2s (icalendar-7.0.0.tar.gz) = 37faa6625ec171a641b38f73a705504736fcb81e8af073bdc53de6714704b96c
+SHA512 (icalendar-7.0.0.tar.gz) = c920cf6f16178d7425e469dc299aad7a903b0c0066a4d811b19ecdeb2863e0e2f19bdcb65f91068c19bcbacac94d8657f4bb7f8e605db26ecd016625743cfb44
+Size (icalendar-7.0.0.tar.gz) = 436350 bytes
Home |
Main Index |
Thread Index |
Old Index