Skip to content

Conversation

@hanzi
Copy link
Contributor

@hanzi hanzi commented Jan 5, 2020

In vCard 3.0, TEL value should be of type PHONE-NUMBER (Section 2.4.3 / Section 3.3.1).

So the following should be a valid vCard:

BEGIN:VCARD
VERSION:3.0
TEL;TYPE=HOME;VALUE=PHONE-NUMBER:+123456789
END:VCARD

vObject currently throws an Exception when trying to parse that.

This PR adds the value type, and also throws it out when converting to vCard 4 (which expects URI type).

@hanzi hanzi force-pushed the phone-number-value-type branch from a561c1e to c73deaf Compare January 5, 2020 19:56
@staabm staabm requested review from DeepDiver1975 and evert January 5, 2020 19:57
@codecov
Copy link

codecov bot commented Jan 5, 2020

Codecov Report

Merging #486 into master will increase coverage by <.01%.
The diff coverage is 100%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master     #486      +/-   ##
============================================
+ Coverage     98.86%   98.86%   +<.01%     
- Complexity     1808     1811       +3     
============================================
  Files            65       66       +1     
  Lines          5177     5179       +2     
============================================
+ Hits           5118     5120       +2     
  Misses           59       59
Impacted Files Coverage Δ Complexity Δ
lib/Component/VCard.php 100% <ø> (ø) 53 <0> (ø) ⬇️
lib/Property/VCard/PhoneNumber.php 100% <100%> (ø) 1 <1> (?)
lib/VCardConverter.php 98.97% <100%> (+0.01%) 72 <0> (+2) ⬆️
lib/Cli.php 97.89% <0%> (-0.01%) 121% <0%> (ø)
lib/Property.php 98.96% <0%> (-0.01%) 70% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 82d2d6a...fe2423a. Read the comment docs.

@hanzi hanzi force-pushed the phone-number-value-type branch from c73deaf to fe2423a Compare January 5, 2020 20:09
Copy link
Member

@evert evert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A+ PR. Well done

@staabm staabm merged commit 17e6eea into sabre-io:master Jan 6, 2020
@staabm
Copy link
Member

staabm commented Jan 6, 2020

Thx guys, great job!

@hanzi hanzi deleted the phone-number-value-type branch January 6, 2020 07:59
@phil-davis phil-davis mentioned this pull request Jan 14, 2020
bcaller pushed a commit to ProtonMail/vobject that referenced this pull request Jul 27, 2020
valentinbonneaud pushed a commit to ProtonMail/vobject that referenced this pull request Jul 28, 2020
* fix  Bad file descriptor (7.4) (sabre-io#469)

* travis: allow failure for phpstan for now (sabre-io#470)

* travis: add php 7.4snapshot build (sabre-io#471)

* Fixed typo in vobject CLI help (sabre-io#477)

* Run phpstan on PHP >= 7.1 (sabre-io#483)

* Add TZ in iTip REPLY messages

* Added phpstan for tests folder (sabre-io#485)

* Add PHONE-NUMBER value type (used for TEL in vCard 3.0) (sabre-io#486)

Signed-off-by: Christian Kraus <[email protected]>

* use latest phpstan 0.12.5 in CI

* Add PHPstorm .idea to .gitignore

* Fix various typos

* Prepare next iteration

* Apply php-cs-fixer code style changes

* Use phpunit8 where possible

* Fixed phpstan level 1 errors

* Make sure there is no logic change

* Prevent setting foreach key beforehand

* Refactored fqcn strings to ::class to allow checking with phpstan (sabre-io#495)

* Added convenient development commands

* Decoupled cs-fixer command from chosen tool

* Use phpunit 9 where possible

* Replace assertRegExp with assertMatchesRegularExpression in unit test

* fix an incomplete phpdoc type annotation

* php-cs-fixer fixes

* Ignore phpdoc_summary check

Seriously you want me to put a full stop directly after a link??

* Drop php < 7.1, pull composer / travis changes

from upstream

* Release 4.3.4

Co-authored-by: Remi Collet <[email protected]>
Co-authored-by: Markus Staab <[email protected]>
Co-authored-by: Dominik <[email protected]>
Co-authored-by: Jeroen van Oort <[email protected]>
Co-authored-by: Renaud BOYER <[email protected]>
Co-authored-by: Christian Kraus <[email protected]>
Co-authored-by: Phil Davis <[email protected]>
Co-authored-by: Michael Stilkerich <[email protected]>
valentinbonneaud added a commit to ProtonMail/vobject that referenced this pull request Nov 18, 2020
* fix  Bad file descriptor (7.4) (sabre-io#469)

* travis: allow failure for phpstan for now (sabre-io#470)

* travis: add php 7.4snapshot build (sabre-io#471)

* reduce phpstan level back to 0, as level 1 is failing right now (sabre-io#472)

* reduce phpstan level back to 0, as level 1 is failing right now

* travis: no longer allow failures for phpstan

* Fixed typo in vobject CLI help (sabre-io#477)

* Release 4.2.1 (sabre-io#479)

* Release 4.2.1

* Update CHANGELOG.md

* Prepare next iteration (sabre-io#480)

* Run phpstan on PHP >= 7.1 (sabre-io#483)

* Add TZ in iTip REPLY messages

* Added phpstan for tests folder (sabre-io#485)

* Add PHONE-NUMBER value type (used for TEL in vCard 3.0) (sabre-io#486)

Signed-off-by: Christian Kraus <[email protected]>

* use latest phpstan 0.12.5 in CI

* Add PHPstorm .idea to .gitignore

* Fix various typos

* Release 4.2.2 (sabre-io#490)

* Release 4.2.2

* Update CHANGELOG.md

* Prepare next iteration

* Update dependencies and code style tools

* Remove unneeded 'bootstrap' line from phpstan.neon

* Apply php-cs-fixer code style changes

* run php-cs-fixer in CI

* php-cs-fixer must be at least 2.16.1 for PHP 7.4

* Use phpunit8 where possible

* Fixed phpstan level 1 errors

* Make sure there is no logic change

* Prevent setting foreach key beforehand

* Refactored fqcn strings to ::class to allow checking with phpstan (sabre-io#495)

* Release 4.3.0 (sabre-io#497)

* Update CHANGELOG.md

* Update Version.php

* Added phpstan to dev dependencies

* Reset bin-dir config

* Added convenient development commands

* Cleaned up .gitignore
These entries should be in the developer's global .gitignore

* cs-fixer: don't check only the lib folder

* Decoupled cs-fixer command from chosen tool

* Standardize CI

* Use phpunit 9 where possible

* Only upload coverage when it has been collected

* Replace assertRegExp with assertMatchesRegularExpression in unit test

* fix an incomplete phpdoc type annotation

* Release 4.3.1

* Adjust boolean vars in .travis.yml to prepare for PHP8.0

* Run unit tests on PHP8

* Fixup calendar parameter to Broker parseEvent

* Release 4.3.2

* Remove Pacific-New obsolete timezone

* Do composer remove --no-update in Travis

* Use min php-cs-fixer 2.16.7

* Release 4.3.3

Co-authored-by: Remi Collet <[email protected]>
Co-authored-by: Markus Staab <[email protected]>
Co-authored-by: Dominik <[email protected]>
Co-authored-by: Jeroen van Oort <[email protected]>
Co-authored-by: Renaud BOYER <[email protected]>
Co-authored-by: Christian Kraus <[email protected]>
Co-authored-by: Thomas Müller <[email protected]>
Co-authored-by: Phil Davis <[email protected]>
Co-authored-by: Michael Stilkerich <[email protected]>
valentinbonneaud pushed a commit to ProtonMail/vobject that referenced this pull request Dec 15, 2021
* fix  Bad file descriptor (7.4) (sabre-io#469)

* travis: allow failure for phpstan for now (sabre-io#470)

* travis: add php 7.4snapshot build (sabre-io#471)

* reduce phpstan level back to 0, as level 1 is failing right now (sabre-io#472)

* reduce phpstan level back to 0, as level 1 is failing right now

* travis: no longer allow failures for phpstan

* Fixed typo in vobject CLI help (sabre-io#477)

* Release 4.2.1 (sabre-io#479)

* Release 4.2.1

* Update CHANGELOG.md

* Prepare next iteration (sabre-io#480)

* Run phpstan on PHP >= 7.1 (sabre-io#483)

* Add TZ in iTip REPLY messages

* Added phpstan for tests folder (sabre-io#485)

* Add PHONE-NUMBER value type (used for TEL in vCard 3.0) (sabre-io#486)

Signed-off-by: Christian Kraus <[email protected]>

* use latest phpstan 0.12.5 in CI

* Add PHPstorm .idea to .gitignore

* Fix various typos

* Release 4.2.2 (sabre-io#490)

* Release 4.2.2

* Update CHANGELOG.md

* Prepare next iteration

* Update dependencies and code style tools

* Remove unneeded 'bootstrap' line from phpstan.neon

* Apply php-cs-fixer code style changes

* run php-cs-fixer in CI

* php-cs-fixer must be at least 2.16.1 for PHP 7.4

* Use phpunit8 where possible

* Fixed phpstan level 1 errors

* Make sure there is no logic change

* Prevent setting foreach key beforehand

* Refactored fqcn strings to ::class to allow checking with phpstan (sabre-io#495)

* Release 4.3.0 (sabre-io#497)

* Update CHANGELOG.md

* Update Version.php

* Added phpstan to dev dependencies

* Reset bin-dir config

* Added convenient development commands

* Cleaned up .gitignore
These entries should be in the developer's global .gitignore

* cs-fixer: don't check only the lib folder

* Decoupled cs-fixer command from chosen tool

* Standardize CI

* Use phpunit 9 where possible

* Only upload coverage when it has been collected

* Replace assertRegExp with assertMatchesRegularExpression in unit test

* fix an incomplete phpdoc type annotation

* Release 4.3.1

* Adjust boolean vars in .travis.yml to prepare for PHP8.0

* Run unit tests on PHP8

* Fixup calendar parameter to Broker parseEvent

* Release 4.3.2

* Remove Pacific-New obsolete timezone

* Do composer remove --no-update in Travis

* Use min php-cs-fixer 2.16.7

* Release 4.3.3

* Add .gitattributes

* Explicitly select PHP 8.0 in CI

* Use latest php-cs-fixer 2.17.1

* Update windowszones timezone data to 2020-12-13

* Fix typos

* Reassign modified date in yearly rrule

* Add test

* Code style

* Add test for calendar expand

* adjust unit test settings for time limits

Some tests were testing a bug that caused an infinite loop.

Annotate those tests with large, small annotations.

Turn on enforceTimeLimit, failOnWarning and failOnRisky so that the
annotations are enforced when unit tests are run.

Add phpunit/php-invoker to the composer require-dev becaause this is
required to make the enforceTimeLimit setting effective.

* Release 4.3.4

* Make use of until parameter in nextMonthly function

* CS FIX

* CS FIX

* Fix breaking tests

* create testMonthlyByDayUntil

* create testMonthlyByDayUntilWithImpossibleNextOccurrence

* Fix setting properties with group assignment

* Unit test for adding properties with group for a VCard

* Adapt style

* Release 4.3.5

* tests: migrate from Travis to gh-actions

* Removed travis config

* Minor edit to README

* Run phpunit with coverage in CI

* Fix deprecated usages and return types on PHP 8.1

* sync ci.yml to match other repos

* Changes that should have happened for 4.3.6

* changelog and VERSION bump for 4.3.7

* EventIterator returns wrong endTime (sabre-io#534)

* Reordering of the attendees should not be a signitifcant change (sabre-io#540)

* Reordering of vevent should not be a significant change (sabre-io#542)

* Prepare release 4.3.8

* Allow easier extension of the timezone guessing

This will ease customization of timezone-guessing as it is now gets easier
to extend that process with own implementations (as long as they
implement the appropriate interface)

This is espechially necessary when wanting to actually guess a timezone
via the rules defined in the VTIMEZONE-entry (which is currently not
done)

* testEmptyTimeZone

* Changelog for 4.4.0

* Fix Changelog

* Merge github actions

Co-authored-by: Remi Collet <[email protected]>
Co-authored-by: Markus Staab <[email protected]>
Co-authored-by: Dominik <[email protected]>
Co-authored-by: Jeroen van Oort <[email protected]>
Co-authored-by: Renaud BOYER <[email protected]>
Co-authored-by: Christian Kraus <[email protected]>
Co-authored-by: Thomas Müller <[email protected]>
Co-authored-by: Phil Davis <[email protected]>
Co-authored-by: Michael Stilkerich <[email protected]>
Co-authored-by: Stéphane <[email protected]>
Co-authored-by: Allon Moritz <[email protected]>
Co-authored-by: Jair Cueva Junior <[email protected]>
Co-authored-by: Parajuli Kiran <[email protected]>
Co-authored-by: Cédric Anne <[email protected]>
Co-authored-by: Holger Floerke <[email protected]>
Co-authored-by: Andreas Heigl <[email protected]>
valentinbonneaud added a commit to ProtonMail/vobject that referenced this pull request Dec 15, 2021
* fix  Bad file descriptor (7.4) (sabre-io#469)

* travis: allow failure for phpstan for now (sabre-io#470)

* travis: add php 7.4snapshot build (sabre-io#471)

* reduce phpstan level back to 0, as level 1 is failing right now (sabre-io#472)

* reduce phpstan level back to 0, as level 1 is failing right now

* travis: no longer allow failures for phpstan

* Fixed typo in vobject CLI help (sabre-io#477)

* Release 4.2.1 (sabre-io#479)

* Release 4.2.1

* Update CHANGELOG.md

* Prepare next iteration (sabre-io#480)

* Run phpstan on PHP >= 7.1 (sabre-io#483)

* Add TZ in iTip REPLY messages

* Added phpstan for tests folder (sabre-io#485)

* Add PHONE-NUMBER value type (used for TEL in vCard 3.0) (sabre-io#486)

Signed-off-by: Christian Kraus <[email protected]>

* use latest phpstan 0.12.5 in CI

* Add PHPstorm .idea to .gitignore

* Fix various typos

* Release 4.2.2 (sabre-io#490)

* Release 4.2.2

* Update CHANGELOG.md

* Prepare next iteration

* Update dependencies and code style tools

* Remove unneeded 'bootstrap' line from phpstan.neon

* Apply php-cs-fixer code style changes

* run php-cs-fixer in CI

* php-cs-fixer must be at least 2.16.1 for PHP 7.4

* Use phpunit8 where possible

* Fixed phpstan level 1 errors

* Make sure there is no logic change

* Prevent setting foreach key beforehand

* Refactored fqcn strings to ::class to allow checking with phpstan (sabre-io#495)

* Release 4.3.0 (sabre-io#497)

* Update CHANGELOG.md

* Update Version.php

* Added phpstan to dev dependencies

* Reset bin-dir config

* Added convenient development commands

* Cleaned up .gitignore
These entries should be in the developer's global .gitignore

* cs-fixer: don't check only the lib folder

* Decoupled cs-fixer command from chosen tool

* Standardize CI

* Use phpunit 9 where possible

* Only upload coverage when it has been collected

* Replace assertRegExp with assertMatchesRegularExpression in unit test

* fix an incomplete phpdoc type annotation

* Release 4.3.1

* Adjust boolean vars in .travis.yml to prepare for PHP8.0

* Run unit tests on PHP8

* Fixup calendar parameter to Broker parseEvent

* Release 4.3.2

* Remove Pacific-New obsolete timezone

* Do composer remove --no-update in Travis

* Use min php-cs-fixer 2.16.7

* Release 4.3.3

* Add .gitattributes

* Explicitly select PHP 8.0 in CI

* Use latest php-cs-fixer 2.17.1

* Update windowszones timezone data to 2020-12-13

* Fix typos

* Reassign modified date in yearly rrule

* Add test

* Code style

* Add test for calendar expand

* adjust unit test settings for time limits

Some tests were testing a bug that caused an infinite loop.

Annotate those tests with large, small annotations.

Turn on enforceTimeLimit, failOnWarning and failOnRisky so that the
annotations are enforced when unit tests are run.

Add phpunit/php-invoker to the composer require-dev becaause this is
required to make the enforceTimeLimit setting effective.

* Release 4.3.4

* Make use of until parameter in nextMonthly function

* CS FIX

* CS FIX

* Fix breaking tests

* create testMonthlyByDayUntil

* create testMonthlyByDayUntilWithImpossibleNextOccurrence

* Fix setting properties with group assignment

* Unit test for adding properties with group for a VCard

* Adapt style

* Release 4.3.5

* tests: migrate from Travis to gh-actions

* Removed travis config

* Minor edit to README

* Run phpunit with coverage in CI

* Fix deprecated usages and return types on PHP 8.1

* sync ci.yml to match other repos

* Changes that should have happened for 4.3.6

* changelog and VERSION bump for 4.3.7

* EventIterator returns wrong endTime (sabre-io#534)

* Reordering of the attendees should not be a signitifcant change (sabre-io#540)

* Reordering of vevent should not be a significant change (sabre-io#542)

* Prepare release 4.3.8

* Allow easier extension of the timezone guessing

This will ease customization of timezone-guessing as it is now gets easier
to extend that process with own implementations (as long as they
implement the appropriate interface)

This is espechially necessary when wanting to actually guess a timezone
via the rules defined in the VTIMEZONE-entry (which is currently not
done)

* testEmptyTimeZone

* Changelog for 4.4.0

* Fix Iterator method signatures

This avoids warnings under PHP>=8.1
Real return types should be added before PHP 9

Signed-off-by: Côme Chilliet <[email protected]>

* Avoid passing null as separator for implode

Signed-off-by: Côme Chilliet <[email protected]>

* Prepare release 4.4.1

* Rebase fix

* Add PHP8.1 CI

* Remove PHPUnit update

* Fix PHP8.1 tests

Co-authored-by: Remi Collet <[email protected]>
Co-authored-by: Markus Staab <[email protected]>
Co-authored-by: Dominik <[email protected]>
Co-authored-by: Jeroen van Oort <[email protected]>
Co-authored-by: Renaud BOYER <[email protected]>
Co-authored-by: Christian Kraus <[email protected]>
Co-authored-by: Thomas Müller <[email protected]>
Co-authored-by: Phil Davis <[email protected]>
Co-authored-by: Michael Stilkerich <[email protected]>
Co-authored-by: Stéphane <[email protected]>
Co-authored-by: Allon Moritz <[email protected]>
Co-authored-by: Jair Cueva Junior <[email protected]>
Co-authored-by: Parajuli Kiran <[email protected]>
Co-authored-by: Cédric Anne <[email protected]>
Co-authored-by: Holger Floerke <[email protected]>
Co-authored-by: Andreas Heigl <[email protected]>
Co-authored-by: Côme Chilliet <[email protected]>
valentinbonneaud pushed a commit to ProtonMail/vobject that referenced this pull request May 26, 2022
* fix  Bad file descriptor (7.4) (sabre-io#469)

* travis: allow failure for phpstan for now (sabre-io#470)

* travis: add php 7.4snapshot build (sabre-io#471)

* reduce phpstan level back to 0, as level 1 is failing right now (sabre-io#472)

* reduce phpstan level back to 0, as level 1 is failing right now

* travis: no longer allow failures for phpstan

* Fixed typo in vobject CLI help (sabre-io#477)

* Release 4.2.1 (sabre-io#479)

* Release 4.2.1

* Update CHANGELOG.md

* Prepare next iteration (sabre-io#480)

* Run phpstan on PHP >= 7.1 (sabre-io#483)

* Add TZ in iTip REPLY messages

* Added phpstan for tests folder (sabre-io#485)

* Add PHONE-NUMBER value type (used for TEL in vCard 3.0) (sabre-io#486)

Signed-off-by: Christian Kraus <[email protected]>

* use latest phpstan 0.12.5 in CI

* Add PHPstorm .idea to .gitignore

* Fix various typos

* Release 4.2.2 (sabre-io#490)

* Release 4.2.2

* Update CHANGELOG.md

* Prepare next iteration

* Update dependencies and code style tools

* Remove unneeded 'bootstrap' line from phpstan.neon

* Apply php-cs-fixer code style changes

* run php-cs-fixer in CI

* php-cs-fixer must be at least 2.16.1 for PHP 7.4

* Use phpunit8 where possible

* Fixed phpstan level 1 errors

* Make sure there is no logic change

* Prevent setting foreach key beforehand

* Refactored fqcn strings to ::class to allow checking with phpstan (sabre-io#495)

* Release 4.3.0 (sabre-io#497)

* Update CHANGELOG.md

* Update Version.php

* Added phpstan to dev dependencies

* Reset bin-dir config

* Added convenient development commands

* Cleaned up .gitignore
These entries should be in the developer's global .gitignore

* cs-fixer: don't check only the lib folder

* Decoupled cs-fixer command from chosen tool

* Standardize CI

* Use phpunit 9 where possible

* Only upload coverage when it has been collected

* Replace assertRegExp with assertMatchesRegularExpression in unit test

* fix an incomplete phpdoc type annotation

* Release 4.3.1

* Adjust boolean vars in .travis.yml to prepare for PHP8.0

* Run unit tests on PHP8

* Fixup calendar parameter to Broker parseEvent

* Release 4.3.2

* Remove Pacific-New obsolete timezone

* Do composer remove --no-update in Travis

* Use min php-cs-fixer 2.16.7

* Release 4.3.3

* Add .gitattributes

* Explicitly select PHP 8.0 in CI

* Use latest php-cs-fixer 2.17.1

* Update windowszones timezone data to 2020-12-13

* Fix typos

* Reassign modified date in yearly rrule

* Add test

* Code style

* Add test for calendar expand

* adjust unit test settings for time limits

Some tests were testing a bug that caused an infinite loop.

Annotate those tests with large, small annotations.

Turn on enforceTimeLimit, failOnWarning and failOnRisky so that the
annotations are enforced when unit tests are run.

Add phpunit/php-invoker to the composer require-dev becaause this is
required to make the enforceTimeLimit setting effective.

* Release 4.3.4

* Make use of until parameter in nextMonthly function

* CS FIX

* CS FIX

* Fix breaking tests

* create testMonthlyByDayUntil

* create testMonthlyByDayUntilWithImpossibleNextOccurrence

* Fix setting properties with group assignment

* Unit test for adding properties with group for a VCard

* Adapt style

* Release 4.3.5

* tests: migrate from Travis to gh-actions

* Removed travis config

* Minor edit to README

* Run phpunit with coverage in CI

* Fix deprecated usages and return types on PHP 8.1

* sync ci.yml to match other repos

* Changes that should have happened for 4.3.6

* changelog and VERSION bump for 4.3.7

* EventIterator returns wrong endTime (sabre-io#534)

* Reordering of the attendees should not be a signitifcant change (sabre-io#540)

* Reordering of vevent should not be a significant change (sabre-io#542)

* Prepare release 4.3.8

* Allow easier extension of the timezone guessing

This will ease customization of timezone-guessing as it is now gets easier
to extend that process with own implementations (as long as they
implement the appropriate interface)

This is espechially necessary when wanting to actually guess a timezone
via the rules defined in the VTIMEZONE-entry (which is currently not
done)

* testEmptyTimeZone

* Changelog for 4.4.0

* Fix Iterator method signatures

This avoids warnings under PHP>=8.1
Real return types should be added before PHP 9

Signed-off-by: Côme Chilliet <[email protected]>

* Avoid passing null as separator for implode

Signed-off-by: Côme Chilliet <[email protected]>

* Prepare release 4.4.1

* Component/select: Before uppercasing $child->group, make sure it isn't null

Signed-off-by: Gergely Nagy <[email protected]>

* fix php 8.1 null string deprecation in built-in functions

* drop duplicated workflow config

Co-authored-by: Remi Collet <[email protected]>
Co-authored-by: Markus Staab <[email protected]>
Co-authored-by: Dominik <[email protected]>
Co-authored-by: Jeroen van Oort <[email protected]>
Co-authored-by: Renaud BOYER <[email protected]>
Co-authored-by: Christian Kraus <[email protected]>
Co-authored-by: Thomas Müller <[email protected]>
Co-authored-by: Phil Davis <[email protected]>
Co-authored-by: Michael Stilkerich <[email protected]>
Co-authored-by: Stéphane <[email protected]>
Co-authored-by: Allon Moritz <[email protected]>
Co-authored-by: Jair Cueva Junior <[email protected]>
Co-authored-by: Parajuli Kiran <[email protected]>
Co-authored-by: Cédric Anne <[email protected]>
Co-authored-by: Holger Floerke <[email protected]>
Co-authored-by: Andreas Heigl <[email protected]>
Co-authored-by: Côme Chilliet <[email protected]>
Co-authored-by: Gergely Nagy <[email protected]>
Co-authored-by: Thomas Müller <[email protected]>
Co-authored-by: Christopher Szu <[email protected]>
kesselb added a commit to nextcloud/contacts that referenced this pull request Jul 20, 2025
There was a bug in sabre/vobject that stopped us from storing URIs with phone numbers. So, we had to use a workaround and not include them.[^1]

The fix for sabre/vobject is merged and included in stable31 and stable30.[^2]

It seems like this problem started after updating to ical.js 2.2.0 because of fixes in how vcard3 design sets were detected.[^3][^4]

Now it seems to work, but I don't understand why removing the tel property from the vcard3 design set worked when detecting the design set wasn't working before.

^[1]: #1393 (comment)
^[2]: sabre-io/vobject#486
^[3]: kewisch/ical.js#680
^[4]: kewisch/ical.js#363

Signed-off-by: Daniel Kesselberg <[email protected]>
kesselb added a commit to nextcloud/contacts that referenced this pull request Jul 20, 2025
There was a bug in sabre/vobject that stopped us from storing URIs with phone numbers. So, we had to use a workaround and not include them.[^1]

The fix for sabre/vobject is merged and included in stable31 and stable30.[^2]

It seems like this problem started after updating to ical.js 2.2.0 because of fixes in how vcard3 design sets were detected.[^3][^4]

Now it seems to work, but I don't understand why removing the tel property from the vcard3 design set worked when detecting the design set wasn't working before.

[^1]: #1393 (comment)
[^2]: sabre-io/vobject#486
[^3]: kewisch/ical.js#680
[^4]: kewisch/ical.js#363

Signed-off-by: Daniel Kesselberg <[email protected]>
backportbot bot pushed a commit to nextcloud/contacts that referenced this pull request Jul 21, 2025
There was a bug in sabre/vobject that stopped us from storing URIs with phone numbers. So, we had to use a workaround and not include them.[^1]

The fix for sabre/vobject is merged and included in stable31 and stable30.[^2]

It seems like this problem started after updating to ical.js 2.2.0 because of fixes in how vcard3 design sets were detected.[^3][^4]

Now it seems to work, but I don't understand why removing the tel property from the vcard3 design set worked when detecting the design set wasn't working before.

[^1]: #1393 (comment)
[^2]: sabre-io/vobject#486
[^3]: kewisch/ical.js#680
[^4]: kewisch/ical.js#363

Signed-off-by: Daniel Kesselberg <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants