Comments (9)
I see. I expected you'd store the data in a database. After all, aren't the relevant RFCs primarily designed for data transmission? I'm certain that Google doesn't store contact data in VCF form on its servers, for instance.
The data is stored in a database, but the storage format just looks like iCal (more or less). And if the parameters you ask for cannot be synchronized or even transmitted, what use does it have to store them in whatever database. No CalDAV client (and the Tasks app is just a CalDAV client as well) would be able to show the data. I don't care in whatever format Google stores its data, if they cannot serve it via a common format, no standard client will show it.
It's FRs like this which to me demonstrate the problems inherent with your current design. I'd like to file an issue requesting that the entire storage framework be restructured, but it seems like you only keep feasibly actionable (rather than merely potentially desirable) issues open, so I suppose I can't, and thus this shall need to remain closed. Thanks for the explanation, @raimund-schluessler.
I am happy that someone finally found what makes Nextcloud CalDAV and Tasks so terrible and looking forward to you fixing it. This is OpenSource software, pull requests and working code are always welcome. But please bear in mind, this is a CalDAV client and we will only implement what the CalDAV standard supports. If you are not happy about that, feel free to use another software of your choice.
By the way, the CalDAV server Nextcloud uses (hence, the one with the "problems inherent with our current design") is sabre/dav. I am sure they are happy to hear your complains about their insufficient design decisions.
from tasks.
@raimund-schluessler, I can only estimate from your second paragraph that you believe that I meant to imply some sort of passive aggression in my text. I meant not. Although I didn't protect what I stated against incorrectness which utilizing "potentially" in some cases would have done, I regardless consider you the more competent user here, so if you tell me how the database is managed is is ideal, I shall believe that. I thank you for the explanations. I hope I've dissuaded any possibility of such inference in the future, if I am correct. Apologies.
Sorry if I misinterpreted this. Dealing with users can be frustrating as an OpenSource developer, because much is demanded and usually only little is rewarded or even contributed.
I don't know if the database management is ideal, but it gets the job done. The entries are stored in a way that they can be directly served via CalDAV and don't need to be constructed from different database fields. Of course, this limits what can be stored in the database to what can be synced by CalDAV / iCal. But that is ok, since we aim to be a CalDAV client, nothing more or less.
Regardless, I do still disagree on the singular point that merely because a feature cannot be federated, it should not be implemented. Why do you appear to disagree on that point? Considering how most ActivityPub servers (for instance) allow their clients to consume usually solely a portion of the functionality available due to each server type's differing purposes and APs reasonable current limitations, I don't see why a CalDAV client would differ. It's not like it would be vendor lock-in were it in good faith?
If there was a newer CalDAV version allowing to do this (potentially not offering the feature to older clients), it would be one thing. But there simply is none. We could only implement or own solution on top of what CalDAV offers, not compatible with any other client and prone to break due to what other clients might do with the CalDAV data. Given the niche that this feature would be used in, it is simply not worth the effort. Especially compared to other features, or just simply keeping the app running with newer Nextcloud version. After all, I am the only one working on Tasks, and my freetime is limited.
from tasks.
We use the iCalendar standard defined in RFC5545 and this does not implement a description for categories, see https://datatracker.ietf.org/doc/html/rfc5545#section-3.8.1.2. Hence, we have no way of implementing a description for categories / tags in a standard conformant way.
Also, no other part of Nextcloud offers a description for tags.
from tasks.
@raimund-schluessler, it's not like you store the actual calendar data in an iCal file - that's merely for transmission, surely? I'm only asking for it to be available on NextCloud Tasks if it can't be reliably synchronized. I understand adhering to a standard for functionality which is standardized, but I find it very difficult to believe that there is any desire within NextCloud to limit itself to solely providing what certain RFCs define.
from tasks.
Well, this is exactly how the CalDAV server provided by Nextcloud server, and basically every CalDAV server works. The VTODOs are stored in the iCal format and we have no way to sync or store parameters not supported by it.
We could of course add or own backend managing tags, but this would run outside the CalDAV protocol and would not be synced to other CalDAV clients.
from tasks.
-
Well, this is exactly how the CalDAV server provided by Nextcloud server, and basically every CalDAV server works. The VTODOs are stored in the iCal format and we have no way to sync or store parameters not supported by it.
I see. I expected you'd store the data in a database. After all, aren't the relevant RFCs primarily designed for data transmission? I'm certain that Google doesn't store contact data in VCF form on its servers, for instance. It's FRs like this which to me demonstrate the problems inherent with your current design. I'd like to file an issue requesting that the entire storage framework be restructured, but it seems like you only keep feasibly actionable (rather than merely potentially desirable) issues open, so I suppose I can't, and thus this shall need to remain closed. Thanks for the explanation, @raimund-schluessler.
-
We could of course add or own backend managing tags, but this would run outside the CalDAV protocol and would not be synced to other CalDAV clients.
As aforementioned, that wouldn't whatsoever prevent synchronization. Usually, data transferral formats, be they vCard, iCal, JSON or XML, are independently converted to when necessary rather than utilized as a method of storage, not least because of how slow manipulating such data usually is. To my knowledge, anyway.
from tasks.
Regardless, @raimund-schluessler, you should re-close this as unplanned rather than completed.
from tasks.
@raimund-schluessler, I can only estimate from your second paragraph that you believe that I meant to imply some sort of passive aggression in my text. I meant not. Although I didn't protect what I stated against incorrectness which utilizing "potentially" in some cases would have done, I regardless consider you the more competent user here, so if you tell me how the database is managed is is ideal, I shall believe that. I thank you for the explanations. I hope I've dissuaded any possibility of such inference in the future, if I am correct. Apologies.
Regardless, I do still disagree on the singular point that merely because a feature cannot be federated, it should not be implemented. Why do you appear to disagree on that point? Considering how most ActivityPub servers (for instance) allow their clients to consume usually solely a portion of the functionality available due to each server type's differing purposes and APs reasonable current limitations, I don't see why a CalDAV client would differ. It's not like it would be vendor lock-in were it in good faith?
from tasks.
@raimund-schluessler, I understand. If I were to ever propose a PR to add this attribute, would it be rejected on that basis? If so, I suppose I better start learning how to write RFCs!
from tasks.
Related Issues (20)
- blank task list HOT 2
- degree colour of priority HOT 1
- add discussion on task HOT 1
- Remove extra css margin for URL in task title
- Three dots menu button on task details sidebar always looks selected HOT 2
- Imported from Deck Tasks shows wrong time (shows in UTC Time Zone) HOT 1
- Right sidebar (infobox / details) automatically closes when you click most places
- Can we have relevance sort also sort by created?
- Progressive Web App (PWA) support
- [bug] Sidebar does not open for new tasks
- smart add HOT 3
- LoadCompleteButton does not decode HTML codes
- Make Tasks Nextcloud Hub 8 (v 29) compatible HOT 12
- Wrong time for cards displayed in "Tasks" in GMT+2 HOT 2
- Support selecting multiple tasks simultaneously for bulk actions. HOT 1
- Show all subtasks at once HOT 3
- Dragging a task to another task list (shared) ist not possible HOT 1
- [bug] task input field loses focus when sidebar is opened for new task
- [bug] dragging a task into the left sidebar does not work HOT 2
- Customizable Default Task Duration for Calendar Events HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tasks.