Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 866503 - app-misc/khal-0.10.4-r1 version bump
Summary: app-misc/khal-0.10.4-r1 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Amy Liffey
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2022-08-25 09:27 UTC by Leonard Gomez
Modified: 2022-10-18 04:15 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
output of emerge --info (khal_and_tzlocal.info,15.87 KB, text/plain)
2022-08-25 09:27 UTC, Leonard Gomez
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Leonard Gomez 2022-08-25 09:27:54 UTC
Created attachment 800971 [details]
output of emerge --info

Right now the the current khal version is not compatible with it's dependency dev-python/tzlocal. This leads to errors and ikhal crashing when adding new events. The solution would be to either downgrade tzlocal to v2.1 or bump khal to a newer release that supports newer tzlocal versions.

Here is more information about this issue:

https://github.com/pimutils/khal/issues/1092
https://github.com/pimutils/khal/pull/1126

The errors khal throws:

/usr/lib/python3.10/site-packages/khal/khalendar/khalendar.py:153: PytzUsageWarning: The localize method is no longer necessary, as this time zone supports the fold attribute (PEP 495). For more details on migrating to a PEP 495-compliant implementation, see https://pytz-deprecation-shim.readthedocs.io/en/latest/migration.html
  localized_events = self.get_localized(localize(start), localize(end))
/usr/lib/python3.10/site-packages/khal/khalendar/event.py:546: PytzUsageWarning: The localize method is no longer necessary, as this time zone supports the fold attribute (PEP 495). For more details on migrating to a PEP 495-compliant implementation, see https://pytz-deprecation-shim.readthedocs.io/en/latest/migration.html
  day_start = self._locale['local_timezone'].localize(
/usr/lib/python3.10/site-packages/khal/khalendar/event.py:549: PytzUsageWarning: The localize method is no longer necessary, as this time zone supports the fold attribute (PEP 495). For more details on migrating to a PEP 495-compliant implementation, see https://pytz-deprecation-shim.readthedocs.io/en/latest/migration.html
  day_end = self._locale['local_timezone'].localize(
/usr/lib/python3.10/site-packages/khal/khalendar/event.py:541: PytzUsageWarning: The localize method is no longer necessary, as this time zone supports the fold attribute (PEP 495). For more details on migrating to a PEP 495-compliant implementation, see https://pytz-deprecation-shim.readthedocs.io/en/latest/migration.html
  start_local_datetime = self._locale['local_timezone'].localize(
/usr/lib/python3.10/site-packages/khal/khalendar/event.py:543: PytzUsageWarning: The localize method is no longer necessary, as this time zone supports the fold attribute (PEP 495). For more details on migrating to a PEP 495-compliant implementation, see https://pytz-deprecation-shim.readthedocs.io/en/latest/migration.html
  end_local_datetime = self._locale['local_timezone'].localize(

emerge --info khal attached

emerge --info tzlocal attached
Comment 1 hfk22 2022-09-15 01:40:50 UTC
I wanted to echo that I've receiving the same issues as the bug reporter.  Locally, I installed khal-0.10.5, which I believe incorporates the bug fixes listed above and have not had issues.

I'll also mention that the current version crashes on new event creation and the crash disappears on 0.10.5:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/khal/ui/__init__.py", line 1359, in start_pane
    loop.run()
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 287, in run
    self._run()
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 385, in _run
    self.event_loop.run()
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 790, in run
    self._loop()
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 827, in _loop
    self._watch_files[fd]()
  File "/usr/lib/python3.10/site-packages/urwid/raw_display.py", line 416, in <lambda>
    wrapper = lambda: self.parse_input(
  File "/usr/lib/python3.10/site-packages/urwid/raw_display.py", line 515, in parse_input
    callback(processed, processed_codes)
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 412, in _update
    self.process_input(keys)
  File "/usr/lib/python3.10/site-packages/urwid/main_loop.py", line 513, in process_input
    k = self._topmost_widget.keypress(self.screen_size, k)
  File "/usr/lib/python3.10/site-packages/urwid/wimp.py", line 651, in keypress
    return self._current_widget.keypress(size, key)
  File "/usr/lib/python3.10/site-packages/urwid/container.py", line 1135, in keypress
    return self.body.keypress( (maxcol, remaining), key )
  File "/usr/lib/python3.10/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
  File "/usr/lib/python3.10/site-packages/urwid/container.py", line 1626, in keypress
    key = self.focus.keypress(tsize, key)
  File "/usr/lib/python3.10/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
  File "/usr/lib/python3.10/site-packages/khal/ui/editor.py", line 530, in keypress
    return super().keypress(size, key)
  File "/usr/lib/python3.10/site-packages/khal/ui/widgets.py", line 376, in keypress
    key = super().keypress(size, key)
  File "/usr/lib/python3.10/site-packages/urwid/listbox.py", line 968, in keypress
    key = focus_widget.keypress((maxcol,),key)
  File "/usr/lib/python3.10/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
  File "/usr/lib/python3.10/site-packages/urwid/wimp.py", line 543, in keypress
    self._emit('click')
  File "/usr/lib/python3.10/site-packages/urwid/widget.py", line 461, in _emit
    signals.emit_signal(self, name, self, *args)
  File "/usr/lib/python3.10/site-packages/urwid/signals.py", line 265, in emit
    result |= self._call_callback(callback, user_arg, user_args, args)
  File "/usr/lib/python3.10/site-packages/urwid/signals.py", line 295, in _call_callback
    return bool(callback(*args_to_pass))
  File "/usr/lib/python3.10/site-packages/khal/ui/editor.py", line 503, in save
    self.collection.new(self.event)
  File "/usr/lib/python3.10/site-packages/khal/khalendar/khalendar.py", line 208, in new
    event.href, event.etag = self._storages[calendar].upload(event)
  File "/usr/lib/python3.10/site-packages/khal/khalendar/vdir.py", line 212, in upload
    if not isinstance(item.raw, str):
  File "/usr/lib/python3.10/site-packages/khal/khalendar/event.py", line 382, in raw
    timezone = create_timezone(tzinfo, self.start)
  File "/usr/lib/python3.10/site-packages/khal/khalendar/event.py", line 858, in create_timezone
    for one, two in iter(tz._tzinfos.items())
AttributeError: '_PytzShimTimezone' object has no attribute '_tzinfos'

Mostly, that's to say that a version bump would likely fix our issues.
Comment 2 Marcel Schilling 2022-10-18 03:57:25 UTC
Me and at least one more user (see https://github.com/pimutils/khal/issues/1196) can reproduce this issue as well. Crashes also occur when modififying the time stamps of existing events with ikhal. Downgrading dev-python/tzlocal until the app-misc/khal version bump isn't an option either anymore, since no ebuild for <dev-python/tzlocal-4.1 remain in the portage tree. Practically, this renders app-misc/khal mostly unusable on Gentoo with the fix available upstream via a new release. Would providing a patch for the ebuild speed up the process of getting >=app-misc/khal-0.10.5 into the portage tree?
Comment 3 Larry the Git Cow gentoo-dev 2022-10-18 04:04:58 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6ac5de45acd9dfa874d3cdfb607a644ff9b7c323

commit 6ac5de45acd9dfa874d3cdfb607a644ff9b7c323
Author:     Nils Freydank <holgersson@posteo.de>
AuthorDate: 2022-10-16 17:42:22 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-10-18 04:02:19 +0000

    app-misc/khal: add 0.10.5
    
    - Add DISTUTILS_USE_PEP517 entry
    - Change quoting style for deps
    - Drop some obsolete version pinnings for deps
    - Drop obsolete custom src_install()
    - Drop obsolete patch
    
    Closes: https://bugs.gentoo.org/866503
    Signed-off-by: Nils Freydank <holgersson@posteo.de>
    Closes: https://github.com/gentoo/gentoo/pull/27809
    Signed-off-by: Sam James <sam@gentoo.org>

 app-misc/khal/Manifest           |  1 +
 app-misc/khal/khal-0.10.5.ebuild | 41 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 42 insertions(+)
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-10-18 04:08:25 UTC
(In reply to Marcel Schilling from comment #2)
> Me and at least one more user (see
> https://github.com/pimutils/khal/issues/1196) can reproduce this issue as
> well. Crashes also occur when modififying the time stamps of existing events
> with ikhal. Downgrading dev-python/tzlocal until the app-misc/khal version
> bump isn't an option either anymore, since no ebuild for
> <dev-python/tzlocal-4.1 remain in the portage tree. Practically, this
> renders app-misc/khal mostly unusable on Gentoo with the fix available
> upstream via a new release. Would providing a patch for the ebuild speed up
> the process of getting >=app-misc/khal-0.10.5 into the portage tree?

It would normally, but someone else did it & your comment made me notice their PR. Thanks all!
Comment 5 Marcel Schilling 2022-10-18 04:15:23 UTC
I noticed the PR after commenting and tested it via a local overlay. Came here to let you know it works for me just to find it merged already. :-)
Thank you for the fast response.