-
-
Notifications
You must be signed in to change notification settings - Fork 488
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
RFC 9253 reltypes get overwritten as reltype=parent #2527
Comments
The code is supposed to ignore other reltypes, and only treat explicit parent or missing reltypes as parent. Can you send me an example ics file and I'll write a unit test? |
nevermind, don't need a test. this is actually an issue in ical4android: https://github.com/bitfireAT/ical4android/blob/76e30b7ebd9660d0cbd1849f50a5003ae498374c/lib/src/main/kotlin/at/bitfire/ical4android/AndroidTask.kt#L294 Anything that is not a |
Can you try Tasks.org's CalDAV sync and see if you have the same issue? |
Thanks for the fast answer. Don’t have the same issue there, so that’s a viable workaround. So this seems to be an issue of DAVx5 (or its libraries)? |
Yeah, ical4android is provided by the DAVx5 devs as well. Tasks uses ical4android for its direct CalDAV sync, but doesn't use the line of code I linked earlier. That code does get used somehow during DAVx5 sync. |
How should DAVx⁵ store such a RELTYPE for tasks.org? There's no possibility in the current OpenTasks contract. Is there be a separate contract to directly access tasks.org and advanced fields like a custom relation type? |
Ah so does the open tasks content provider only allow these two values? I didn't look that deeply Tasks only uses the parent reltype, the issue seems to be another client is setting other reltypes. Would it be enough if I updated the content provider to allow arbitrary values? |
Yes, that should help. There could be new constants for the RFC 9253 values, and optionally a field for custom values. However I think it should be compatible to OpenTasks so that OpenTasks at least doesn't crash with these values. On long term, the question is whether tasks.org will "fork" and modify the OpenTasks contract over time (or whether there will be a completely new, different tasks.org contract), and how compatibility will be handled. Anyway, OpenTasks seems to not be developed anymore. |
RFC 9253 specifies new
RELTYPE
which are not known nor supported by Tasks. Tasks seems to interpret the new relation types (and the other new as well) asRELTYPE=PARENT
, which was correct behavior following RFC 5545.EDIT: I thought at first that Tasks only displays an example todo of mine with
RELTYPE=DEPENDS-ON
as a subtask. However, it seems to overwrite theRELTYPE
. This makes Tasks fully incompatible to other calendar implementations wanting using the new relation types.I’m sure that Tasks overwrites this as:
DEPENDS-ON
is pushed to Nextcloud & retrieved afterwards, it still has the correctRELTYPE
.RELTYPE
suddenly changes.I want to help in verifying this with logcat from Tasks, but I’m unsure if & how that would be logged.
(This issue relates to #1202 as some new relation types might be used to represent the use cases described there.)
APPENDIX: I think that this might be relevant: I’m using DAVx5 for synchronization, not the integrated CalDAV synchronization engine.
EDIT: Text before discovering Tasks overwrites the other types
However, when using Tasks together with other systems supporting the new RFC 9253, behavior occurs which is unexpected for users: E.g. a task with
RELTYPE=DEPENDS-ON
is shown as a subtask of the task it depends on. This may seem correct in the first glance, however, when completing the super task, Tasks automatically completes the dependent task as well. However, IMODEPENDS-ON
is added for cases where the dependent task is a separate thing to do which can only be completed after the other task was completed.I don’t know the code base (so please correct me if I’m wrong here), but it should be relatively easy to ignore the new
RELTYPE
s until they are supported properly. This should increase UX by a little bit.The text was updated successfully, but these errors were encountered: