nextcloud / nextcloud/calendar

[Bug] Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME

Open
#8,396 10 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. to triage bug
Dominant language
JavaScript
Stars
1.2k
Forks
332
Avg merge
16h 13m
Merged PRs (30d)
137

Description

Steps to reproduce

Create an event in iOS

Expected behavior

No date parse errors from .ics calendars

Actual behavior

Date parse errors:

[webdav] Error: Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME
	PUT /remote.php/dav/calendars/username/personal/F9AA1871-B1DD-4599-AD25-67A26C557188.ics
	from 192.168.101.1 by username at 2026. gada 24. maijs 23:34:07
Calendar app version

6.4.1

CalDAV-clients used

No response

Browser

No response

Client operating system

No response

Server operating system

Fedora server 44

Web server

Apache

Database engine version

MySQL

PHP engine version

PHP 8.4

Nextcloud version

33.0.3

Updated from an older installed version or fresh install

None

List of activated apps

Nextcloud configuration

Web server error log
{"reqId":"ahNgv_ZvIp4BQk2zQFhCEgAAxRM","level":3,"time":"2026-05-24T20:34:07+00:00","remoteAddr":"192.168.101.1","user":"username","app":"webdav","method":"PUT","url":"/remote.php/dav/calendars/username/personal/F9AA1871-B1DD-4599-AD25-67A26C557188.ics","scriptName":"/remote.php","message":"Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME","userAgent":"python-caldav/2.1.2","version":"33.0.3.2","exception":{"Exception":"Sabre\\DAV\\Exception\\UnsupportedMediaType","Message":"Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME","Code":0,"Trace":[{"file":"/usr/share/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php","line":733,"function":"validateICalendar","class":"Sabre\\CalDAV\\Plugin","type":"->"},{"file":"/usr/share/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"beforeWriteContent","class":"Sabre\\CalDAV\\Plugin","type":"->"},{"file":"/usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":1133,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php","line":492,"function":"updateFile","class":"Sabre\\DAV\\Server","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/usr/share/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"httpPut","class":"Sabre\\DAV\\CorePlugin","type":"->"},{"file":"/usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":472,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/share/nextcloud/apps/dav/lib/Connector/Sabre/Server.php","line":212,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/share/nextcloud/apps/dav/lib/Server.php","line":428,"function":"start","class":"OCA\\DAV\\Connector\\Sabre\\Server","type":"->"},{"file":"/usr/share/nextcloud/apps/dav/appinfo/v2/remote.php","line":25,"function":"exec","class":"OCA\\DAV\\Server","type":"->"},{"file":"/usr/share/nextcloud/remote.php","line":151,"args":["/usr/share/nextcloud/apps/dav/appinfo/v2/remote.php"],"function":"require_once"}],"File":"/usr/share/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php","Line":873,"message":"Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME","exception":"{\"class\":\"Sabre\\DAV\\Exception\\UnsupportedMediaType\",\"message\":\"Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME\",\"code\":0,\"file\":\"/usr/share/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php:873\",\"trace\":\"#0 /usr/share/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php(733): Sabre\\CalDAV\\Plugin->validateICalendar()\\n#1 /usr/share/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php(89): Sabre\\CalDAV\\Plugin->beforeWriteContent()\\n#2 /usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php(1133): Sabre\\DAV\\Server->emit()\\n#3 /usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php(492): Sabre\\DAV\\Server->updateFile()\\n#4 /usr/share/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php(89): Sabre\\DAV\\CorePlugin->httpPut()\\n#5 /usr/share/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php(472): Sabre\\DAV\\Server->emit()\\n#6 /usr/share/nextcloud/apps/dav/lib/Connector/Sabre/Server.php(212): Sabre\\DAV\\Server->invokeMethod()\\n#7 /usr/share/nextcloud/apps/dav/lib/Server.php(428): OCA\\DAV\\Connector\\Sabre\\Server->start()\\n#8 /usr/share/nextcloud/apps/dav/appinfo/v2/remote.php(25): OCA\\DAV\\Server->exec()\\n#9 /usr/share/nextcloud/remote.php(151): require_once('...')\\n#10 {main}\"}","CustomMessage":"Validation error in iCalendar: The supplied value (20250930) is not a correct DATE-TIME"},"id":"6a13ebb333b04"}
Log file

Browser log

Additional info

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at 3rdparty/sabre/dav/lib/CalDAV/Plugin.php, especially the validation path around lines 733 and 873, using the reported PUT request and DATE-TIME value as the reproduction. Trace how the uploaded .ics content is validated and identify the appropriate regression coverage; done means the iOS-created event no longer produces this validation error.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.