Skip to content

Commit da93458

Browse files
committed
Add a basic set of docs.
1 parent 119de47 commit da93458

File tree

16 files changed

+869
-0
lines changed

16 files changed

+869
-0
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,5 @@ tests/testbed/iOS
1515
*.log
1616
*.gz
1717
*.DS_Store
18+
19+
_build

docs/Makefile

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Minimal makefile for Sphinx documentation
2+
#
3+
4+
# You can set these variables from the command line, and also
5+
# from the environment for the first two.
6+
SPHINXOPTS ?=
7+
SPHINXBUILD ?= sphinx-build
8+
SOURCEDIR = .
9+
BUILDDIR = _build
10+
11+
# Put it first so that "make" without argument is like "make help".
12+
help:
13+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14+
15+
.PHONY: help Makefile
16+
17+
# Catch-all target: route all unknown targets to Sphinx using the new
18+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19+
%: Makefile
20+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

docs/about/index.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.. _about:
2+
3+
==========================
4+
About Python Apple Support
5+
==========================
6+
7+
.. toctree::
8+
:maxdepth: 1
9+
10+
versions
11+
workings

docs/about/versions.rst

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
==================
2+
Supported Versions
3+
==================
4+
5+
Python Versions
6+
---------------
7+
8+
Python Apple Support currently supports Python versions 3.9 to 3.14, inclusive.
9+
10+
Operating Systems
11+
-----------------
12+
13+
The binaries support x86_64 and arm64 for macOS; arm64 for iOS and appleTV devices; arm64_32 for watchOS devices; and arm64 for visionOS devices. It also supports device simulators on both x86_64 and M1 hardware, except for visionOS, for which x86_64 simulators are officially unsupported. This should enable the code to run on:
14+
15+
- macOS 11 (Big Sur) or later, on:
16+
17+
- MacBook (including MacBooks using Apple Silicon)
18+
- iMac (including iMacs using Apple Silicon)
19+
- Mac Mini (including Apple Silicon Mac minis)
20+
- Mac Studio (all models)
21+
- Mac Pro (all models)
22+
23+
- iOS 13.0 or later, on:
24+
25+
- iPhone (6s or later)
26+
- iPad (5th gen or later)
27+
- iPad Air (all models)
28+
- iPad Mini (2 or later)
29+
- iPad Pro (all models)
30+
- iPod Touch (7th gen or later)
31+
32+
- tvOS 12.0 or later, on:
33+
34+
- Apple TV (4th gen or later)
35+
36+
- watchOS 4.0 or later, on:
37+
38+
- Apple Watch (4th gen or later)
39+
40+
- visionOS 2.0 or later, on:
41+
42+
- Apple Vision Pro
43+
44+
Historical support
45+
------------------
46+
47+
The following Python versions were supported in the past, but are no longer
48+
maintained:
49+
50+
* Python 2.7 (EOL January 2020)
51+
* Python 3.4 (EOL March 2019)
52+
* Python 3.5 (EOL February 2021)
53+
* Python 3.6 (EOL December 2021)
54+
* Python 3.7 (EOL September 2022)
55+
* Python 3.8 (EOL October 2024)

docs/about/workings.rst

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
======================
2+
How This Project Works
3+
======================
4+
5+
Python Apple Support works by downloading, patching, and building a fat binary
6+
of Python and selected pre-requisites, and packaging them as frameworks that can be
7+
incorporated into an Xcode project. The binary modules in the Python standard
8+
library are distributed as binaries that can be dynamically loaded at runtime.
9+
10+
The macOS package is a re-bundling of the official macOS binary, modified so that
11+
it is relocatable, with the IDLE, Tkinter and turtle packages removed, and the
12+
App Store compliance patch applied.
13+
14+
The iOS, tvOS, watchOS, and visionOS packages compiled by this project use the
15+
official `PEP 730 <https://peps.python.org/pep-0730/>`__ code that is part of
16+
Python 3.13 to provide iOS support; the relevant patches have been backported
17+
to 3.9-3.12. Additional patches have been applied to add tvOS, watchOS, and
18+
visionOS support.

0 commit comments

Comments
 (0)