Open Adspectus opened 1 year ago
I noticed this is well, but had to time to dig further yet. However, I saw that tasks with at status set, e.g. 'Needs action' do show up, and that tasks created on iOS have this status set directly after creation.
However, this is a server issue, as the Tasks app is not involved in the sync process.
I can not confirm this. No matter which status set or any other setting - the task is not shown in an exported calendar. I have also tested this with .ics file export and import with the same result - no task is shown in calendar. When I look into the generated .ics file, the entries look quite different from "events" created in the calendar.
I do not have any insights in the technical details but I doubt that pointing to server issue won't help. I am quite sure that if I would create an issue there, it would be closed with pointing to as a tasks issue, since events created in the calendar are working well.
So, where should we go from here?
So, I tested this again with Nextcloud server 26.0.1 and Tasks 0.14.5. With this combination it works fine in both directions. A task created with the Tasks app shows up on iOS 16.4.1 and vice versa. Thunderbird works as well. I cannot test this with Nextcloud 25 anymore, because I don't have an environment at hand and downgrading would be a mess.
So I propose that you test this with Nextcloud 26.0.1 again.
I have also tested this with .ics file export and import with the same result - no task is shown in calendar. When I look into the generated .ics file, the entries look quite different from "events" created in the calendar.
What do you mean with that? Could you maybe show a redacted version of these ICS files?
I fear there is a misunderstanding about the issue. It is not about adding an account on iOS and using the app "Reminders" or however its called in english, this is working for me too. The issue is about the subscription link in ICS format and adding this URL into a calendar app: https://NEXTCLOUD/remote.php/dav/public-calendars/HASH?export
.
This is also possible with other tasks application, i.e. Toodledo. When I compare the generated ICS from Toodledo with that of the Tasks app in Nextcloud (resp. the calendar app where the tasks needs to appear to make that working), one can see that all tasks with a date are wrapped into a "VEVENT" in the ICS by Toodledo (tasks without a date are marked as VTODO), while in the ICS by Nextcloud, all tasks are wrapped into a "VTODO", regardless whether they have a date on it or not. However, tasks marked as VTODO are not included into the calendar of any app I tested with, not even in the iOS calendar app.
Ok, now I understand. You want the tasks to be shown as VEVENT
in the subscription, so that calendar apps that don't natively show VTODO
s properly just see events and show them anyway.
This is definitely a server feature. The Tasks app is absolutely not involved in this, as the CalDAV server providing the subscribed calendars is entirely located in the Nextcloud server.
Furthermore, what you ask for is to implement a new feature. The current behavior of the server to expose tasks as VTODO
s is absolutely correct and not a bug.
However, I am not really sure it's a desired behavior of Nextcloud server to kind of violate the CalDAV spec and show tasks as events just to deal with clients that lack a feature. VEVENT
supports different properties than VTODO
and mapping one to the other doesn't always match for a 100%. Anyway, if you could show such a wrapped VTODO
exported from e.g. Toodledo, it would be a good reference.
@nextcloud/calendar I move this issue to Nextcloud server, since it belongs there. But I tend to close it as not planned
, since in my opinion it violates the specification. Comments are welcome here!
However, tasks marked as VTODO are not included into the calendar of any app I tested with, not even in the iOS calendar app.
They are shown in the Nextcloud Calendar app, if you active this feature. It was implemented a while back.
Agreed, we shouldn't transform data when it's up to the calendar clients to handle VTODO
themselves. Apps that already support it would lose the added value from VTODO
(for instance, PERCENT-COMPLETE
or DUE
).
Anyway, if you could show such a wrapped
VTODO
exported from e.g. Toodledo, it would be a good reference.
I uploaded an obfuscated file which is the result when creating a subscription link in Toodledo. As you can see, tasks with a date are VEVENT, other tasks VTODO.
But I understand the problem and your remarks. It seems I have got accustomed to the way Toodledo export its data which might be non-standard. The only possible solution would be an export/subscription option directly from the tasks app, which uses the VEVENT but I assume this is not commonly wanted.
It seems not uncommon that clients don't understand VTODO, it seems there are a couple of well-known and popular clients in the list: Fastmail, iOS Calendar app, Google calendar. Is this something that could be solved with a config option? I'd love to see the tasks in Google Calendar, but can't, which is pretty cumbersome.
Remark: The link to issue template as shown in Contributing.md is throwing a 404 error.
Steps to reproduce
Expected behaviour
The calendar entries and the tasks should appear in the subscribed calendar
Actual behaviour
The calendar entries appear but the tasks are not shown
Server configuration
Operating system: Linux 5.4.0-144-generic nextcloud/tasks#161-Ubuntu SMP Fri Feb 3 14:49:04 UTC 2023 x86_64
Web server: nginx/1.18.0 (fpm-fcgi)
Database: mysql 10.5.19
PHP version: 8.0.28
Nextcloud version: (see Nextcloud admin page) 25.0.5 - 25.0.5.1
Tasks version: (see Nextcloud apps page) 0.14.5
Updated from an older Nextcloud or fresh install: Fresh install
Signing status: ???
List of activated apps:
Nextcloud configuration:
Are you using external storage, if yes which one: local/smb/sftp/... no
Are you using encryption: no
Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/... no
Client configuration
Browser: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0
CalDAV-clients: Fastmail iOS Calendar app Google calendar