The pytz and tzlocal libraries are deprecated, in modern python versions timezone handling is included in the embedded libraries - so we should remove all dependencies on pytz. I think I sort of did this already, but then I got into problems. The task is basically to look into the code and search for all instances of pytz and tzlocal and ensure that it's either removed or only used as a fallback should timezones not be available. I vaguely remember that I already did this but had to comment out the work due to problems with the icalendar library.
We need the library to be backwards-compatible. For python version 3.x this may be fixed by adding a dependency on backports.timezone - see https://pypi.org/project/backports.zoneinfo/. With python2, I guess we still has to rely on pytz. Arguably, we should drop support for python2, but I have some comments on that at https://github.com/python-caldav/caldav/pull/228.
The pytz and tzlocal libraries are deprecated, in modern python versions timezone handling is included in the embedded libraries - so we should remove all dependencies on pytz. I think I sort of did this already, but then I got into problems. The task is basically to look into the code and search for all instances of pytz and tzlocal and ensure that it's either removed or only used as a fallback should timezones not be available. I vaguely remember that I already did this but had to comment out the work due to problems with the icalendar library.
Problems: