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

bug: RANGE parameter of recurring events not recognized #75

Closed
4 tasks done
niccokunzmann opened this issue Jan 10, 2022 · 20 comments · Fixed by #171
Closed
4 tasks done

bug: RANGE parameter of recurring events not recognized #75

niccokunzmann opened this issue Jan 10, 2022 · 20 comments · Fixed by #171
Labels
bug Something isn't working good first issue Good for newcomers help wanted Extra attention is needed

Comments

@niccokunzmann
Copy link
Owner

niccokunzmann commented Jan 10, 2022

Describe the bug

The RECURRENE-ID can have a RANGE parameter, see RFC 5545 page 114.

This parameter is not recognized by his module.

To Reproduce

We need an example!

Expected behavior

The expectation is that the future events can be modified using this parameter.

Suggested implementation

  • add an ICS file, example: help!
  • add a test, example:
  • implement the test
  • fix the test

To progress in this Issue, please find a calendar example which uses the range parameter.
If you can, also make screen shots of what the events look like in the software.


We're using [Polar.sh](https://polar.sh/niccokunzmann) so you can upvote and help fund this issue. We receive the funding once the issue is completed & confirmed by you. Thank you in advance for helping prioritize & fund our work. Fund with Polar
@niccokunzmann niccokunzmann added bug Something isn't working good first issue Good for newcomers help wanted Extra attention is needed labels Jan 10, 2022
@jabiertxof
Copy link
Contributor

jabiertxof commented Aug 31, 2024

Hi Nicco.

I thin I know you in a Inkscape hackfest. Great to contact you again.

Im interested in use this project, looks amazing, so I attach a small test ICS;
So I attach a ICS small to test:
test.bug.ical.txt

@niccokunzmann
Copy link
Owner Author

Hi @jabiertxof thanks! Yes, I have been to one Inkscape Hackfest!

I modified the file a little bit to include RDATE and also overriding the modification in a later one.

Thunderbird seems to not understand this RANGE parameter:

grafik
grafik

Could you import the calendar file from #175 and show the screen shots of how the interpret the RANGE parameter?

jabiertxof added a commit to jabiertxof/python-recurring-ical-events that referenced this issue Sep 1, 2024
@niccokunzmann
Copy link
Owner Author

Something to consider from the RFC:

When the given recurrence instance is
rescheduled, all subsequent instances are also rescheduled by the
same time difference. For instance, if the given recurrence
instance is rescheduled to start 2 hours later, then all
subsequent instances are also rescheduled 2 hours later.
Similarly, if the duration of the given recurrence instance is
modified, then all subsequence instances are also modified to have
this same duration.
Note: The "RANGE" parameter may not be appropriate to
reschedule specific subsequent instances of complex recurring
calendar component. Assuming an unbounded recurring calendar
component scheduled to occur on Mondays and Wednesdays, the
"RANGE" parameter could not be used to reschedule only the
future Monday instances to occur on Tuesday instead. [...]

To close this also:

  • move subsequent events
  • change the length of subsequent events
  • test: move events several days backwards

@jabiertxof
Copy link
Contributor

Hi Niko, thanks for reopening. Added comment into the test. regards.

jabiertxof added a commit to jabiertxof/python-recurring-ical-events that referenced this issue Sep 15, 2024
@jabiertxof
Copy link
Contributor

Hi Niko I just rebase the MR code and make a fix that time is not updated in recurring-id with range.
Thanks for get into.

@jabiertxof
Copy link
Contributor

jabiertxof commented Sep 15, 2024

Here are a small ICS to example:
test.ics.txt

@jabiertxof
Copy link
Contributor

jabiertxof commented Sep 15, 2024

anyway range is must ignore in evolution and google calendar as say here:
(also put the way to make a hack)
https://stackoverflow.com/questions/30327800/ics-recurrence-id-range-thisandfuture-not-changing-later-events

Anyway is not compatible with current calendars is good to have to deploy a calendar client (easier and faster) you can provide the compatible ics export as option but use in your own UI faster using it

@jabiertxof
Copy link
Contributor

JUst update to allow also range changes outside start/end

@jabiertxof
Copy link
Contributor

addet test from #170

@niccokunzmann
Copy link
Owner Author

niccokunzmann commented Sep 18, 2024

To close:

@jabiertxof
Copy link
Contributor

Updated with your feedback! thanks.

@niccokunzmann
Copy link
Owner Author

niccokunzmann commented Sep 29, 2024

I merged #182. There are two skipped tests for special edge cases in the test file.

Thanks to @jabiertxof for getting us so far!

@niccokunzmann
Copy link
Owner Author

I think, the test file from https://stackoverflow.com/questions/30327800/ics-recurrence-id-range-thisandfuture-not-changing-later-events can be skipped.

I will open a new issue for someone with Lotus Notes to provide us with feedback. #184

@niccokunzmann
Copy link
Owner Author

This is released in v3.3.1

@jabiertxof
Copy link
Contributor

Hi Niko thanks so much for your cool work and congrats for the release.
I'm a bit disconected lately, Im changhig home. I add new release to my proyect and ping you if found a issue.

@niccokunzmann
Copy link
Owner Author

Sure! If you like, you can add your project in a related projects section in the readme.

@jabiertxof
Copy link
Contributor

Is not floss, sorry, maybe some day split the calendar into a component and open it, I ping you.

@niccokunzmann
Copy link
Owner Author

Still, you need to obey the LGPL.

@jabiertxof
Copy link
Contributor

I couldent use you code in propietary software? I can add license files

@niccokunzmann
Copy link
Owner Author

niccokunzmann commented Sep 30, 2024

You can use it but you must mention the license and also allow people to change the library (access the recurring_ical_events.py file) if the code is on their computer.

https://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License#Differences_from_the_GPL

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants