Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

calendar-contacts-server: Fix build; Migrate to postgresql17 #27227

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

essandess
Copy link
Contributor

Description

Type(s)
  • bugfix
  • enhancement
  • security fix
Tested on

macOS 15.2 24C101 x86_64
Xcode 16.2 16C5032a

Verification

Have you

  • followed our Commit Message Guidelines?
  • squashed and minimized your commits?
  • checked that there aren't other open pull requests for the same change?
  • referenced existing tickets on Trac with full URL in commit message?
  • checked your Portfile with port lint?
  • tried existing tests with sudo port test?
  • tried a full install with sudo port -vst install?
  • tested basic functionality of all binary files?
  • checked that the Portfile's most important variants haven't been broken?

Copy link
Contributor

@reneeotten reneeotten left a comment

Choose a reason for hiding this comment

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

@essandess so this fails everywhere on the CI - how did you get this to build locally?

net/calendar-contacts-server/Portfile Outdated Show resolved Hide resolved
@essandess
Copy link
Contributor Author

@essandess so this fails everywhere on the CI - how did you get this to build locally?

@reneeotten This port does build locally, and I’ve been actively using it for years since Apple discontinued macOS Server. Even push notifications still work, and Apple’s server to update the required certificates is still operative, so long as one hits it with an old version of macOS Server. I’ve investigated alternate opensource caldav options, but Apple’s discontinued calendar-contacts-server is still the best one available.

Here’s what’s going on with the CI:

  • The upstream bash/python install scripts are the ones that Apple used to deploy Calendar and Contacts Server services within macOS Server. These scripts create a python venv that is used to run these services by downloading very specific python package versions from pypi. Many of these python requirements of old package versions are not compatible with the “latest” versions provided by MacPorts.
  • As I understand it, the CI breaks because of these necessary downloads.
  • There appears to be two options to this situation:
  1. Ignore the CI issues, and simply run port install calendar-contacts-server, which in turn runs Apple’s original install script. This is what I’ve done for years.
  2. Figure out some way to tell MacPorts to download the required python package versions, then refactor Apple’s install scripts to use the ones that MacPorts downloaded. I don’t know how to do either of these, and especially refactoring code is a great deal of work to achieve the very same outcome that Apple’s install script does right now.

I recommend option 1. Anyone that uses the port will find that it works fine to install an operative Calendar and Contacts Server.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

3 participants