Moving packaging and installers to macOS 10.13 as a minimum

Thanks a lot for documenting how you’ve done this – I never got around to trying this out myself, but was tempted to try because you made it so easy. :pray:

I wanted to take a slightly broader sample – pillow is amazing, but not everyone does image manipulation; in contrast, requests ends up being installed almost everywhere, and I also lifted the version restriction. After managing to set up pypinfo myself (thanks @ofek for the thorough documentation!), I ran

pypinfo --all --days 28 --limit 10000 --json "requests" system distro-version > requests.json

Dropping Upping --limit was important to actually get all relevant combinations. After some light munging

import json
import pandas as pd
with open("path/to/requests.json", "r") as f:
    d = json.load(f)
df = pd.DataFrame(d["rows"])
mac = df.loc[df.system_name == "Darwin"]
# create column for consolidated version
mac = mac.assign(version=mac.distro_version.astype("str"))
# remove minor/patch versions from macos 1x.y.z, x!=0
mac.version = mac.version.str.replace(r"^(1[^0])(\.\d+)*", r"\1", regex=True)
# remove patch versions from macos 10.x.y
mac.version = mac.version.str.replace(r"^(10\.\d+)(\.\d+)*", r"\1", regex=True)
mac.groupby("version").sum("download_count")
# copy to google sheets; rest done there

The result is

version downloads percentage cumulative percentage users >=version
10.4 3 0.0001% 3 0.0001% 100.0000%
10.5 6 0.0001% 9 0.0002% 99.9999%
10.6 19 0.0003% 28 0.0005% 99.9998%
10.7 2 0.0000% 30 0.0005% 99.9995%
10.8 2 0.0000% 32 0.0006% 99.9995%
10.9 13 0.0002% 45 0.0008% 99.9994%
10.10 26 0.0005% 71 0.0012% 99.9992%
10.11 89 0.0016% 160 0.0028% 99.9988%
10.12 179 0.0031% 339 0.0060% 99.9972%
10.13 58,141 1.02% 58,480 1.03% 99.9940%
10.14 31,749 0.56% 90,229 1.59% 98.97%
10.15 26,091 0.46% 116,320 2.04% 98.41%
10.16 305,672 5.37% 421,992 7.42% 97.96%
11 20,617 0.36% 442,609 7.78% 92.58%
12 141,727 2.49% 584,336 10.27% 92.22%
13 873,061 15.34% 1,457,397 25.61% 89.73%
14 3,260,588 57.30% 4,717,985 82.92% 74.39%
15 798,499 14.03% 5,516,484 96.95% 17.08%
None 173,608 3.05% 5,690,092 100.00% 3.05%

Note that I ignored the following versions, which I consider spurious

version downloads comment
16 428 perhaps alpha version?
17 2,227 max released macOS is v15
18 6,155 max released macOS is v15
19 71 max released macOS is v15
22 1 max released macOS is v15
20.04 237 Looks like Ubuntu
22.04 484 Looks like Ubuntu
24.04 32 Looks like Ubuntu
2024.4 1 ???
8.1 74 No macOS version below 10.0 exists
8.6 1 No macOS version below 10.0 exists
9.4 4 No macOS version below 10.0 exists
9.5 1 No macOS version below 10.0 exists

What’s remarkable is the huge cliff between 10.12 and 10.13, indicating indeed that anything below 10.13 is effectively dead/unusable…

Finally, comparing the 339 downloads on macOS <10.12 with all downloads (not just on macOS), i.e. with df.download_count.sum(), which ends up being 562’304’532, we see that this affects roughly 1 in 1.65 million users.

Using this broader sample, the numbers look ever so slightly different:

  • 99.994% of mac users are on 10.13+
  • 98.97% are on 10.14+
  • 97.96% are on 11.0+ (10.16 is a misreported version)
2 Likes