|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "pimsync: a successor to vdirsyncer" |
| 4 | +date: 2025-01-08 |
| 5 | +categories: blog |
| 6 | +params: |
| 7 | + author: WhyNotHugo |
| 8 | +--- |
| 9 | + |
| 10 | +I previously posted about alpha and beta releases of the upcoming vdirsyncer |
| 11 | +rewrite. My intention was to call this re-implementation "vdirsyncer v2". |
| 12 | + |
| 13 | +I have since renamed this rewrite to `pimsync`. The main reasons for renaming |
| 14 | +are to better disambiguate between the previous project and this project, |
| 15 | +especially when in the context of issues, tutorials, and discussions in general. |
| 16 | + |
| 17 | +# Which one to choose |
| 18 | + |
| 19 | +`pimsync` is still missing some features from `vdirsyncer`, so the former is not |
| 20 | +yet deprecated. Users relying on features that haven't been ported there should |
| 21 | +use `vdirsyncer`. Otherwise, it is recommended to use `pimsync` instead. |
| 22 | + |
| 23 | +Features missing from pimsync that were present in vdirsyncer are covered in |
| 24 | +[the migration guide](https://pimsync.whynothugo.nl/pimsync-migration.7.html). |
| 25 | + |
| 26 | +Pimsync's main advantages are: |
| 27 | + |
| 28 | +- If synchronising a single item fails, it is skipped and `pimsync` continues |
| 29 | + to process all other items. `vdirsyncer` aborts the rest of operation. |
| 30 | +- A new `daemon` command runs `pimsync` continuously in background, keeping |
| 31 | + calendars and address books in sync. Currently it relies on polling the |
| 32 | + storages, but work is ongoing to react to events instead. |
| 33 | +- `pimsync` can automatically create new collections without any intervention. |
| 34 | +- Dry runs are now possible. These allow inspecting which actions `pimsync` |
| 35 | + would take without making any changes. |
| 36 | +- A lot of edge cases with regards to URL encoding are better handled. |
| 37 | + |
| 38 | +There are a lot of corner cases which `vdirsyncer` won't handle well but were |
| 39 | +kept in mind from the start for `pimsync`. Efforts are currently focused on the |
| 40 | +latter, and the former shall be deprecated eventually (once all key features |
| 41 | +have been ported). |
| 42 | + |
| 43 | +# Following development |
| 44 | + |
| 45 | +I post mostly status updates on [my personal blog][blog], which include more |
| 46 | +insight into the development process for this and other projects. For those |
| 47 | +only interested in new releases, I intend to continue publishing release notes |
| 48 | +here. |
| 49 | + |
| 50 | +[blog]: https://whynothugo.nl/ |
0 commit comments