Looking for info on how Swift package developers handle breaking changes with other packages


(Chris Bogart) #1

Hi, I'm looking for some help from developers who write Swift packages
and/or Cocoapods. My research group is interested in the different choices
new package managers and repositories are making when designing their
ecosystems. Platforms like the Swift package manger, Node.js/NPM, Google's
go, and Rust/Cargo, are making somewhat different design choices from each
other, and they are very different from older packaging systems like CPAN.
We'd like to know what the impact of those design choices are on how
developers deal with breaking changes among packages when they depend on
each other. We're particularly interested in contrasting the experiences of
people who use Cocoapods, and people who use the Swift package manager.

Could I ask people to take ~20 minutes of your time and fill out our survey
athttp://breakingapis.org/survey? I'll report back here when we've analyzed
the results (or there's a sign up link to be notified when results are out
at http://breakingapis.org).

(If you don't develop Swift packages, but do use Cocoapods for other Apple
languages, or use other ecosystems entirely like NPM, PyPI, Hackage, we're
still interested -- just make a different "software ecosystem" choice on
the first page. The study is a comparison among ecosystems; Swift is one
point of comparison).

Thank you,

Chris Bogart

Institute for Software Research

Carnegie Mellon University

cbogart@cs.cmu.edu