Ubuntu 14.04

(Ian Partridge) #1

Currently, snapshots of master are produced for Ubuntu 14.04, 16.04 and 18.04 - the three current LTS versions of Ubuntu. End-of-life for Ubuntu 14.04 is scheduled for April 2019.

Although to my knowledge there has not been a public announcement of Swift 5's planned release date, historically Swift has released in March (Swift 2.2 was March 2016 and Swift 3.1 was March 2017).

If Swift 5 is released around March 2019 that would be only a month before the end-of-life of Ubuntu 14.04. I don't believe it would be worth releasing an Ubuntu 14.04 package in that case.

Proposal: we should stop building master on Ubuntu 14.04 now, do not release any swift-5.0 convergence snapshots for Ubuntu 14.04, and do not release Swift 5 for Ubuntu 14.04.

Tagging a few folks who might have views: @millenomi, @Tony_Parker, @spevans, @tanner0101, @weissi, @tkremenek

(Simon Evans) #3

I wonder if it is possible to get some download stats for the .tar.gz to see if anyone actually downloads it?

I guess if we support if for Swift5 that would mean supporting it until the last 5.x release which could be the end of 2019. Although from my perspective the biggest problem with 14.04 has always been that it is in the wrong place in the CI chain. Code and tests only fail after merging to master because 14.04 tests only run post-merge. If this was fixed it would catch issues at the PR test stage.

If it is being used in sufficient numbers I have no problem supporting it, but if it was removed I wouldn't miss it.

(Ian Partridge) #4

Thanks, Simon. I'm not sure what it would mean for us to support Swift 5 running on an unsupported operating system.

Download stats would be interesting, as you say.

By the way, do you know what is stopping us being distribution agnostic? Go and Rust just offer x86_86 tarballs that install into /usr/local regardless of distribution. It would be nice if Swift could do the same, then all this becomes history.

(Tanner) #5

+1 from me.

(Pedro José Pereira Vieito) #6

I think we should start thinking what is needed to compile Swift on Linux so the resulting toolchain and binaries are distribution- and version-agnostic as other languages do. If we embed libicu and any other distribution or version dependent library on the toolchain this should be relatively easy.

(Guillaume Lessard) #7

travis-ci, who cannot be accused of being too cutting-edge, have just recently made 14.04 their default deployment environment. 16.04 was made available weeks ago. In other words, it seems early to drop 14.04 support from the perspective of any Travis user. A version-agnostic release, if possible, would be the best situation.

(Thomas Krajacic) #8

Is this only tied to dependencies from the OS? I read about libicu being a specific requirement that begs for trouble and that we might build it along the swift toolchain now. I agree that a version-agnostic release would be the most desirable solution.

(Guillaume Lessard) #9

For what it's worth, I've successfully/painlessly transitioned my scripts from travis's 14.04 environment to their 16.04 environment. Other people who use travis for Swift testing would probably have success as well. Maybe dropping 14.04 won't be a problem from this point of view.