FossifyOrg / Calendar

A simple calendar with events, customizable widgets and no ads.
https://www.fossify.org
GNU General Public License v3.0
659 stars 53 forks source link

Nonrecurring events aren't shown anymore - Error input string 2 FREQ #268

Open PanderMusubi opened 2 months ago

PanderMusubi commented 2 months ago

Checklist

Affected app version

1.0.3

Affected Android/Custom ROM version

Android 11 / LineageOS 18.1 20220821 instantnoodlep

Affected device model

OnePlus 8 Pro

How did you install the app?

F-Droid / IzzyOnDroid

Steps to reproduce the bug

  1. Have a DAViCal service running
  2. Fill the calender with recurring and nonrecurring events via Thunderbird
  3. Connect to DAViCal with DAVx⁵
  4. Use the calendar in Fossify Calendar

Expected behavior

Recurring and nonrecurring events should be shown and no error should be reported.

Actual behavior

Until recently, recurring and nonrecurring events were shown, reminders appeared as notifications, etc. All worked fine.

Now, when the calendar in the app is refreshed, only recurring events are shown and the following error is reported:

Error: java.lang.NumberFormatException:
For input string: " 2
FREQ"

I know I did not add any new recurring events, so I assume the error is caused by a nonrecurring event. Nevertheless, it could also originate from a recurring event, but I doubt that.

I have another device that still runs https://github.com/SimpleMobileTools/Simple-Calendar and here the recurring and nonrecurring events and notifications are working.

Screenshots/Screen recordings

Screenshot_20240708-233638_Calendar

Additional information

Since the calendar is working fine in Thunderbird and in Etar, this issue is very specific.

I have exported the DAViCal to an ICS file and validated it with https://icalendar.org/validator.html which doesn't report any errors.

(To export to an ICS file, log in on https://HOSTNAME/davical/ and then go to https://HOSTNAME/davical/caldav.php/USERNAME/home )

I also don't see anything wrong with:

$ grep FREQ  home.ics |sort|uniq -c|sort -nr
     14 RRULE:FREQ=MONTHLY
     12 RRULE:FREQ=MONTHLY;INTERVAL=3;BYMONTHDAY=2
      7 RRULE:FREQ=YEARLY
      4 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
      4 RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
      3 RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
      3 RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
      2 RRULE:FREQ=YEARLY;WKST=MO
      1 RRULE:FREQ=YEARLY;WKST=SU
      1 RRULE:FREQ=YEARLY;WKST=MO;UNTIL=20221221T085959Z
      1 RRULE:FREQ=WEEKLY;UNTIL=20190312T090000Z
      1 RRULE:FREQ=WEEKLY;UNTIL=20161207T160000Z
      1 RRULE:FREQ=WEEKLY;UNTIL=20161205T160000Z
      1 RRULE:FREQ=MONTHLY;INTERVAL=3;BYMONTHDAY=15
      1 RRULE:FREQ=MONTHLY;INTERVAL=2;BYMONTHDAY=23
      1 RRULE:FREQ=DAILY;INTERVAL=20

In order to pin down the problem, I would like to request the following:

  1. For this error, please report more context, e.g. the SUMMARY and DTSTART of the event causing it. Preferably also CREATED and LAST-MODIFIED.
  2. When the error occurs, please try to continue processing the rest of the events. If the same error occurs more than three times, stop reporting the error in a popup as it might flood the screen/CPU.
  3. Allow to easily export a log file from the app with all errors.
PanderMusubi commented 1 month ago

Anybody has some pointers on how to analyze this further?