Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

This adds generating VTIMEZONE components from tzinfo objects #741

Open
wants to merge 38 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
ac3ccd6
Add timezone generation
niccokunzmann Nov 2, 2024
574c1da
Generate one STANDARD and one DAYLIGHT timezone in Europe/Berlin
niccokunzmann Nov 4, 2024
af51200
todo test
niccokunzmann Nov 4, 2024
5d52304
speed up computation
niccokunzmann Nov 9, 2024
3c035a6
Use timezones by zoneinfo/pytz in case they exist
niccokunzmann Nov 10, 2024
40263d0
isulate pytz error
niccokunzmann Nov 10, 2024
f372e83
Use provided timezone in Timezone.to_tz() if possible and wished for
niccokunzmann Nov 10, 2024
ef238c6
Remove timezone test failure
niccokunzmann Nov 10, 2024
7f25e3a
skip pytz conversion tests
niccokunzmann Nov 10, 2024
4ff0df4
Check actual datetime values and their offset
niccokunzmann Nov 11, 2024
cc62b34
Check that the dates are in range
niccokunzmann Nov 11, 2024
c944541
Test fixed offset UTC
niccokunzmann Nov 11, 2024
3cd9980
log changes
niccokunzmann Nov 11, 2024
57f8a57
Document functionality
niccokunzmann Nov 11, 2024
3c4ce10
improve examples
niccokunzmann Nov 11, 2024
215bda0
fix tests for timezone ambiguity
niccokunzmann Nov 11, 2024
8e07f72
Correct tests
niccokunzmann Nov 11, 2024
acb6d40
Improve documentation
niccokunzmann Nov 11, 2024
825abe1
Find a set of missing tzids
niccokunzmann Nov 11, 2024
9b7c3fb
Make repr(vUTCOffset) nicer
niccokunzmann Nov 11, 2024
ee7e4fe
Add missing timezones
niccokunzmann Nov 11, 2024
b7bba44
Improve docs and add tests
niccokunzmann Nov 11, 2024
ff49220
Skip test for newly introduced file.
niccokunzmann Nov 12, 2024
5a3a54e
Start identifying dateutil and other timezones based on tzname()
niccokunzmann Nov 12, 2024
436c384
Generate lookup table for timezone ids
niccokunzmann Nov 13, 2024
1b7e23f
Create tzid module to identify timezones
niccokunzmann Nov 13, 2024
86360ed
Add tests for pytz, zoneinfo and dateutil timezone indentification
niccokunzmann Nov 13, 2024
10a6a40
generate with zoneinfo and dateutil and pytz
niccokunzmann Nov 13, 2024
27636c5
Print remaining computation time
niccokunzmann Nov 13, 2024
45fa50c
add link to stackoverflow
niccokunzmann Nov 13, 2024
d514f7d
use multiprocessing to speed up computation
niccokunzmann Nov 13, 2024
200cb41
Run with all timezones
niccokunzmann Nov 13, 2024
30ea2fe
Update src/icalendar/tests/test_issue_722_generate_vtimezone.py
niccokunzmann Nov 14, 2024
c723950
Update src/icalendar/tests/test_issue_722_generate_vtimezone.py
niccokunzmann Nov 14, 2024
04bf007
Update src/icalendar/cal.py
niccokunzmann Nov 14, 2024
28308bc
failed to identify 420 dateutil timezones
niccokunzmann Nov 15, 2024
2a639dd
Properly map dateutil timezones to tzid
niccokunzmann Nov 15, 2024
368ae94
correct ci errors
niccokunzmann Nov 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ Changelog

Minor changes:

- Added ``end``, ``start``, ``duration``, ``DTSTART``, ``DUE``, and ``DURATION`` attributes to ``Todo`` components. See `Issue 662`_.
- Add ``end``, ``start``, ``duration``, ``DTSTART``, ``DUE``, and ``DURATION`` attributes to ``Todo`` components. See `Issue 662`_.
- Add ``DTSTART``, ``TZOFFSETTO`` and ``TZOFFSETFROM`` properties to ``TimezoneStandard`` and ``TimezoneDaylight``. See `Issue 662`_.
- Format test code with Ruff. See `Issue 672 <https://github.com/collective/icalendar/issues/672>`_.
- Document the Debian package. See `Issue 701 <https://github.com/collective/icalendar/issues/701>`_.
- Document component classes with description from :rfc:`5545`.
Expand All @@ -19,11 +20,15 @@ New features:

- Add ``VALARM`` properties for :rfc:`9074`. See `Issue 657 <https://github.com/collective/icalendar/issues/657>`_
- Test compatibility with Python 3.13
- Add ``Timezone.from_tzinfo()`` and ``Timezone.from_tzid()`` to create a ``Timezone`` component from a ``datetime.tzinfo`` timezone. See `Issue 722`_.
- Add ``icalendar.prop.tzid_from_tzinfo``.

Bug fixes:

- Add ``icalendar.timezone`` to the documentation.

.. _`Issue 722`: https://github.com/collective/icalendar/issues/722

6.0.1 (2024-10-13)
------------------

Expand Down
Loading