apple-version-history 1.6.85 → 1.6.86
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -53
- package/index.d.ts +18 -0
- package/index.js +37 -1
- package/ios-version-history.d.ts +2 -0
- package/ios-version-history.js +4 -2
- package/macos-version-history.d.ts +1 -0
- package/macos-version-history.js +2 -1
- package/package.json +3 -10
- package/types.d.ts +1 -1
- package/util.js +3 -0
- package/visionos-version-history.d.ts +70 -0
- package/visionos-version-history.js +72 -0
- package/watchos-version-history.d.ts +1 -0
- package/watchos-version-history.js +2 -1
package/README.md
CHANGED
|
@@ -1,80 +1,136 @@
|
|
|
1
1
|
[](https://github.com/gordey4doronin/apple-version-history/actions/workflows/node-ci-cd.yml)
|
|
2
2
|
[](https://github.com/gordey4doronin/apple-version-history/actions/workflows/schedule-pull-rss.yml)
|
|
3
|
+
[](https://www.npmjs.com/package/apple-version-history)
|
|
3
4
|
|
|
4
5
|
# apple-version-history
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm run build
|
|
9
|
-
```
|
|
7
|
+
An automatically maintained list of Apple OS releases and their build numbers, running since 2018.
|
|
10
8
|
|
|
11
|
-
|
|
9
|
+
Covers iOS (back to iPhone OS 1.0), macOS (back to Mac OS X 10.0), tvOS, watchOS and visionOS.
|
|
10
|
+
**JSON first:** the data is plain JSON, so services in any language can use it directly.
|
|
11
|
+
It's also published as a dependency-free npm package for JS/TS.
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
npm run build && node examples/examples.js
|
|
15
|
-
```
|
|
13
|
+
## Why
|
|
16
14
|
|
|
17
|
-
###
|
|
15
|
+
### Origin: crash symbolication at App Center
|
|
18
16
|
|
|
19
|
-
|
|
17
|
+
I started this in 2018, while working on [Visual Studio App Center](https://appcenter.ms/), Microsoft's service for building, testing and monitoring mobile apps.
|
|
18
|
+
To [symbolicate](https://developer.apple.com/documentation/xcode/adding-identifiable-symbol-names-to-a-crash-report) an iOS crash log, you need the system symbols for the exact OS build the device was running.
|
|
19
|
+
So we had to know every build Apple shipped, and notice new ones quickly.
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
appleVersionHistory.listIosVersionsBuilds().forEach(group => {
|
|
24
|
-
group.forEach(x => console.log(x));
|
|
25
|
-
console.log(); // newline
|
|
26
|
-
});
|
|
21
|
+
Apple doesn't publish this data in a machine-readable form.
|
|
22
|
+
Keeping the list up to date by hand was tedious, so I built something that maintains it automatically.
|
|
27
23
|
|
|
28
|
-
|
|
29
|
-
// ...
|
|
24
|
+
### Today: kept running for fun, and as a testbed
|
|
30
25
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
App Center has since been [retired by Microsoft](https://learn.microsoft.com/en-us/appcenter/retirement), and I've moved on, but the project keeps running.
|
|
27
|
+
Partly because it's fun.
|
|
28
|
+
Mostly because it's a small, real, always-on workload, which makes it a handy way to try new technologies and dogfood the products I work on:
|
|
34
29
|
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
- **npm.** While I was at npm, I used it to dogfood npm features, since the package is published there.
|
|
31
|
+
- **GitHub.** While I was at GitHub, it dogfooded GitHub features. The repo, CI and the scheduled updater all run on GitHub Actions.
|
|
32
|
+
- **Codesphere.** Nowadays I also use it privately on [Codesphere](https://codesphere.com),
|
|
33
|
+
to test features such as the [Cloud IDE](https://docs.codesphere.com/workspace-toolkit/development/cloud-ide) and [running Landscapes](https://docs.codesphere.com/workspace-toolkit/deployment/landscape-lifecycle).
|
|
37
34
|
|
|
38
|
-
|
|
35
|
+
The data is accurate and updated daily, so it's still useful if you need Apple OS builds.
|
|
39
36
|
|
|
40
|
-
|
|
41
|
-
const appleVersionHistory = require('./../dist/index');
|
|
42
|
-
appleVersionHistory.listMacosVersionsBuilds().forEach(group => {
|
|
43
|
-
group.forEach(x => console.log(x));
|
|
44
|
-
console.log(); // newline
|
|
45
|
-
});
|
|
37
|
+
## Data
|
|
46
38
|
|
|
47
|
-
|
|
48
|
-
|
|
39
|
+
The `*-version-history.json` files in the repo root are the source of truth.
|
|
40
|
+
You can use them directly from any language, without the npm package.
|
|
49
41
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
42
|
+
| File | Starts at |
|
|
43
|
+
| ------------------------------ | ----------------- |
|
|
44
|
+
| `ios-version-history.json` | iPhone OS 1.0 |
|
|
45
|
+
| `macos-version-history.json` | Mac OS X 10.0 |
|
|
46
|
+
| `tvos-version-history.json` | tvOS 9.0 |
|
|
47
|
+
| `watchos-version-history.json` | watchOS 7.0 |
|
|
48
|
+
| `visionos-version-history.json` | visionOS 1.0 |
|
|
53
49
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
// ...
|
|
50
|
+
There is also `audioos-version-history.json`, an early draft for HomePod.
|
|
51
|
+
I never ended up needing audioOS, so it's unmaintained and stops at audioOS 14.3.
|
|
57
52
|
|
|
58
|
-
|
|
59
|
-
|
|
53
|
+
Each file groups versions by minor line, then maps each version to its build numbers:
|
|
54
|
+
|
|
55
|
+
```json
|
|
56
|
+
{
|
|
57
|
+
"iOS 26.6.x": {
|
|
58
|
+
"26.6": [ "23G71" ],
|
|
59
|
+
"26.6.1": [ "23G82", "23G83" ],
|
|
60
|
+
"26.6.2": [ "23G90" ]
|
|
61
|
+
}
|
|
62
|
+
}
|
|
60
63
|
```
|
|
61
64
|
|
|
62
|
-
|
|
65
|
+
Some details:
|
|
66
|
+
|
|
67
|
+
- A version can have several builds, for example one per device family.
|
|
68
|
+
- An empty array means the version is known, but its build number isn't recorded.
|
|
69
|
+
- Entries are in the order they were added, not sorted by version.
|
|
70
|
+
When Apple ships an update to an older line after a new major release, it appears after the new major.
|
|
71
|
+
- Betas are skipped.
|
|
72
|
+
Release candidates are kept, because the RC build is often the one that ships.
|
|
73
|
+
- iPadOS releases are merged into iOS.
|
|
74
|
+
Apple ships them separately, but they share version numbers and almost always build numbers.
|
|
75
|
+
|
|
76
|
+
## Using the npm package
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npm install apple-version-history
|
|
80
|
+
```
|
|
63
81
|
|
|
64
82
|
```js
|
|
65
|
-
const
|
|
66
|
-
appleVersionHistory.listTvosVersionsBuilds().forEach(group => {
|
|
67
|
-
group.forEach(x => console.log(x));
|
|
68
|
-
console.log(); // newline
|
|
69
|
-
});
|
|
83
|
+
const avh = require('apple-version-history');
|
|
70
84
|
|
|
71
|
-
|
|
72
|
-
//
|
|
85
|
+
avh.flatlistIosVersionsBuilds();
|
|
86
|
+
// [ 'iPhone OS 1.0.1 (1C25)', 'iPhone OS 1.0.2 (1C28)', ..., 'iOS 26.7 (23H24)' ]
|
|
73
87
|
|
|
74
|
-
|
|
75
|
-
//
|
|
76
|
-
// ...
|
|
88
|
+
avh.listMacosVersions();
|
|
89
|
+
// [ 'Mac OS X 10.0.x', ..., 'macOS 27.0.x' ]
|
|
77
90
|
|
|
78
|
-
//
|
|
79
|
-
// tvOS 11.4 (15L577)
|
|
91
|
+
avh.iosVersionHistory; // the raw JSON object
|
|
80
92
|
```
|
|
93
|
+
|
|
94
|
+
Every helper exists for `Ios`, `Macos`, `Tvos`, `Watchos` and `Visionos`:
|
|
95
|
+
|
|
96
|
+
| Function | Returns |
|
|
97
|
+
| ---------------------- | ------------------------------------------------ |
|
|
98
|
+
| `list*Versions` | Minor lines: `iOS 26.6.x` |
|
|
99
|
+
| `list*VersionsNumbers` | Versions, grouped by minor line: `iOS 26.6.1` |
|
|
100
|
+
| `list*VersionsBuilds` | Versions with builds, grouped: `iOS 26.6.1 (23G82)` |
|
|
101
|
+
| `list*Builds` | Build numbers only, grouped: `23G82` |
|
|
102
|
+
| `flatlist*…` | The same lists, flattened into one array |
|
|
103
|
+
|
|
104
|
+
## How it works
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
Apple Developer releases RSS
|
|
108
|
+
│ pulled at 18:00 and 21:00 UTC
|
|
109
|
+
▼
|
|
110
|
+
pull-rss.ts
|
|
111
|
+
│ keeps OS releases, skips betas, merges new builds
|
|
112
|
+
▼
|
|
113
|
+
*-version-history.json
|
|
114
|
+
│ if changed: npm version patch, commit, push
|
|
115
|
+
▼
|
|
116
|
+
CI workflow
|
|
117
|
+
│ sees the version bump
|
|
118
|
+
▼
|
|
119
|
+
npm + GitHub Packages
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
The schedule lives in [`schedule-pull-rss.yml`](.github/workflows/schedule-pull-rss.yml),
|
|
123
|
+
and publishing in [`node-ci-cd.yml`](.github/workflows/node-ci-cd.yml).
|
|
124
|
+
The source is the [Apple Developer releases feed](https://developer.apple.com/news/releases/).
|
|
125
|
+
|
|
126
|
+
## Development
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
npm ci
|
|
130
|
+
npm run build # generates TS modules from the JSON, compiles to dist/
|
|
131
|
+
npm test
|
|
132
|
+
node dist/src/pull-rss.js # pulls the feed and updates the JSON files, with verbose logging
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Running `npm publish` from the repo root is blocked on purpose.
|
|
136
|
+
CI publishes the package from `dist/src`.
|
package/index.d.ts
CHANGED
|
@@ -3,27 +3,45 @@ export { listVersions, listVersionNumbers, listVersionBuilds, flatlistVersionNum
|
|
|
3
3
|
export { default as iosVersionHistory } from './ios-version-history';
|
|
4
4
|
export { default as macosVersionHistory } from './macos-version-history';
|
|
5
5
|
export { default as tvosVersionHistory } from './tvos-version-history';
|
|
6
|
+
export { default as watchosVersionHistory } from './watchos-version-history';
|
|
7
|
+
export { default as visionosVersionHistory } from './visionos-version-history';
|
|
6
8
|
export declare function listIosVersions(): string[];
|
|
7
9
|
export declare function listMacosVersions(): string[];
|
|
8
10
|
export declare function listTvosVersions(): string[];
|
|
11
|
+
export declare function listWatchosVersions(): string[];
|
|
12
|
+
export declare function listVisionosVersions(): string[];
|
|
9
13
|
export declare function flatlistIosVersions(): string[];
|
|
10
14
|
export declare function flatlistMacosVersions(): string[];
|
|
11
15
|
export declare function flatlistTvosVersions(): string[];
|
|
16
|
+
export declare function flatlistWatchosVersions(): string[];
|
|
17
|
+
export declare function flatlistVisionosVersions(): string[];
|
|
12
18
|
export declare function listIosVersionsNumbers(): string[][];
|
|
13
19
|
export declare function listMacosVersionsNumbers(): string[][];
|
|
14
20
|
export declare function listTvosVersionsNumbers(): string[][];
|
|
21
|
+
export declare function listWatchosVersionsNumbers(): string[][];
|
|
22
|
+
export declare function listVisionosVersionsNumbers(): string[][];
|
|
15
23
|
export declare function flatlistIosVersionsNumbers(): string[];
|
|
16
24
|
export declare function flatlistMacosVersionsNumbers(): string[];
|
|
17
25
|
export declare function flatlistTvosVersionsNumbers(): string[];
|
|
26
|
+
export declare function flatlistWatchosVersionsNumbers(): string[];
|
|
27
|
+
export declare function flatlistVisionosVersionsNumbers(): string[];
|
|
18
28
|
export declare function listIosVersionsBuilds(): string[][];
|
|
19
29
|
export declare function listMacosVersionsBuilds(): string[][];
|
|
20
30
|
export declare function listTvosVersionsBuilds(): string[][];
|
|
31
|
+
export declare function listWatchosVersionsBuilds(): string[][];
|
|
32
|
+
export declare function listVisionosVersionsBuilds(): string[][];
|
|
21
33
|
export declare function flatlistIosVersionsBuilds(): string[];
|
|
22
34
|
export declare function flatlistMacosVersionsBuilds(): string[];
|
|
23
35
|
export declare function flatlistTvosVersionsBuilds(): string[];
|
|
36
|
+
export declare function flatlistWatchosVersionsBuilds(): string[];
|
|
37
|
+
export declare function flatlistVisionosVersionsBuilds(): string[];
|
|
24
38
|
export declare function listIosBuilds(): string[][];
|
|
25
39
|
export declare function listMacosBuilds(): string[][];
|
|
26
40
|
export declare function listTvosBuilds(): string[][];
|
|
41
|
+
export declare function listWatchosBuilds(): string[][];
|
|
42
|
+
export declare function listVisionosBuilds(): string[][];
|
|
27
43
|
export declare function flatlistIosBuilds(): string[];
|
|
28
44
|
export declare function flatlistMacosBuilds(): string[];
|
|
29
45
|
export declare function flatlistTvosBuilds(): string[];
|
|
46
|
+
export declare function flatlistWatchosBuilds(): string[];
|
|
47
|
+
export declare function flatlistVisionosBuilds(): string[];
|
package/index.js
CHANGED
|
@@ -1,30 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.tvosVersionHistory = exports.macosVersionHistory = exports.iosVersionHistory = exports.flatlistBuilds = exports.listBuilds = exports.flatlistVersionBuilds = exports.flatlistVersionNumbers = exports.listVersionBuilds = exports.listVersionNumbers = exports.listVersions = void 0;
|
|
3
|
+
exports.visionosVersionHistory = exports.watchosVersionHistory = exports.tvosVersionHistory = exports.macosVersionHistory = exports.iosVersionHistory = exports.flatlistBuilds = exports.listBuilds = exports.flatlistVersionBuilds = exports.flatlistVersionNumbers = exports.listVersionBuilds = exports.listVersionNumbers = exports.listVersions = void 0;
|
|
4
4
|
exports.listIosVersions = listIosVersions;
|
|
5
5
|
exports.listMacosVersions = listMacosVersions;
|
|
6
6
|
exports.listTvosVersions = listTvosVersions;
|
|
7
|
+
exports.listWatchosVersions = listWatchosVersions;
|
|
8
|
+
exports.listVisionosVersions = listVisionosVersions;
|
|
7
9
|
exports.flatlistIosVersions = flatlistIosVersions;
|
|
8
10
|
exports.flatlistMacosVersions = flatlistMacosVersions;
|
|
9
11
|
exports.flatlistTvosVersions = flatlistTvosVersions;
|
|
12
|
+
exports.flatlistWatchosVersions = flatlistWatchosVersions;
|
|
13
|
+
exports.flatlistVisionosVersions = flatlistVisionosVersions;
|
|
10
14
|
exports.listIosVersionsNumbers = listIosVersionsNumbers;
|
|
11
15
|
exports.listMacosVersionsNumbers = listMacosVersionsNumbers;
|
|
12
16
|
exports.listTvosVersionsNumbers = listTvosVersionsNumbers;
|
|
17
|
+
exports.listWatchosVersionsNumbers = listWatchosVersionsNumbers;
|
|
18
|
+
exports.listVisionosVersionsNumbers = listVisionosVersionsNumbers;
|
|
13
19
|
exports.flatlistIosVersionsNumbers = flatlistIosVersionsNumbers;
|
|
14
20
|
exports.flatlistMacosVersionsNumbers = flatlistMacosVersionsNumbers;
|
|
15
21
|
exports.flatlistTvosVersionsNumbers = flatlistTvosVersionsNumbers;
|
|
22
|
+
exports.flatlistWatchosVersionsNumbers = flatlistWatchosVersionsNumbers;
|
|
23
|
+
exports.flatlistVisionosVersionsNumbers = flatlistVisionosVersionsNumbers;
|
|
16
24
|
exports.listIosVersionsBuilds = listIosVersionsBuilds;
|
|
17
25
|
exports.listMacosVersionsBuilds = listMacosVersionsBuilds;
|
|
18
26
|
exports.listTvosVersionsBuilds = listTvosVersionsBuilds;
|
|
27
|
+
exports.listWatchosVersionsBuilds = listWatchosVersionsBuilds;
|
|
28
|
+
exports.listVisionosVersionsBuilds = listVisionosVersionsBuilds;
|
|
19
29
|
exports.flatlistIosVersionsBuilds = flatlistIosVersionsBuilds;
|
|
20
30
|
exports.flatlistMacosVersionsBuilds = flatlistMacosVersionsBuilds;
|
|
21
31
|
exports.flatlistTvosVersionsBuilds = flatlistTvosVersionsBuilds;
|
|
32
|
+
exports.flatlistWatchosVersionsBuilds = flatlistWatchosVersionsBuilds;
|
|
33
|
+
exports.flatlistVisionosVersionsBuilds = flatlistVisionosVersionsBuilds;
|
|
22
34
|
exports.listIosBuilds = listIosBuilds;
|
|
23
35
|
exports.listMacosBuilds = listMacosBuilds;
|
|
24
36
|
exports.listTvosBuilds = listTvosBuilds;
|
|
37
|
+
exports.listWatchosBuilds = listWatchosBuilds;
|
|
38
|
+
exports.listVisionosBuilds = listVisionosBuilds;
|
|
25
39
|
exports.flatlistIosBuilds = flatlistIosBuilds;
|
|
26
40
|
exports.flatlistMacosBuilds = flatlistMacosBuilds;
|
|
27
41
|
exports.flatlistTvosBuilds = flatlistTvosBuilds;
|
|
42
|
+
exports.flatlistWatchosBuilds = flatlistWatchosBuilds;
|
|
43
|
+
exports.flatlistVisionosBuilds = flatlistVisionosBuilds;
|
|
28
44
|
const core_1 = require("./core");
|
|
29
45
|
Object.defineProperty(exports, "listVersions", { enumerable: true, get: function () { return core_1.listVersions; } });
|
|
30
46
|
Object.defineProperty(exports, "listVersionNumbers", { enumerable: true, get: function () { return core_1.listVersionNumbers; } });
|
|
@@ -40,34 +56,54 @@ var macos_version_history_1 = require("./macos-version-history");
|
|
|
40
56
|
Object.defineProperty(exports, "macosVersionHistory", { enumerable: true, get: function () { return macos_version_history_1.default; } });
|
|
41
57
|
var tvos_version_history_1 = require("./tvos-version-history");
|
|
42
58
|
Object.defineProperty(exports, "tvosVersionHistory", { enumerable: true, get: function () { return tvos_version_history_1.default; } });
|
|
59
|
+
var watchos_version_history_1 = require("./watchos-version-history");
|
|
60
|
+
Object.defineProperty(exports, "watchosVersionHistory", { enumerable: true, get: function () { return watchos_version_history_1.default; } });
|
|
61
|
+
var visionos_version_history_1 = require("./visionos-version-history");
|
|
62
|
+
Object.defineProperty(exports, "visionosVersionHistory", { enumerable: true, get: function () { return visionos_version_history_1.default; } });
|
|
43
63
|
// listVersions
|
|
44
64
|
function listIosVersions() { return (0, core_1.listVersions)('ios'); }
|
|
45
65
|
function listMacosVersions() { return (0, core_1.listVersions)('macos'); }
|
|
46
66
|
function listTvosVersions() { return (0, core_1.listVersions)('tvos'); }
|
|
67
|
+
function listWatchosVersions() { return (0, core_1.listVersions)('watchos'); }
|
|
68
|
+
function listVisionosVersions() { return (0, core_1.listVersions)('visionos'); }
|
|
47
69
|
function flatlistIosVersions() { return (0, core_1.listVersions)('ios'); }
|
|
48
70
|
function flatlistMacosVersions() { return (0, core_1.listVersions)('macos'); }
|
|
49
71
|
function flatlistTvosVersions() { return (0, core_1.listVersions)('tvos'); }
|
|
72
|
+
function flatlistWatchosVersions() { return (0, core_1.listVersions)('watchos'); }
|
|
73
|
+
function flatlistVisionosVersions() { return (0, core_1.listVersions)('visionos'); }
|
|
50
74
|
// listVersionNumbers
|
|
51
75
|
function listIosVersionsNumbers() { return (0, core_1.listVersionNumbers)('ios'); }
|
|
52
76
|
function listMacosVersionsNumbers() { return (0, core_1.listVersionNumbers)('macos'); }
|
|
53
77
|
function listTvosVersionsNumbers() { return (0, core_1.listVersionNumbers)('tvos'); }
|
|
78
|
+
function listWatchosVersionsNumbers() { return (0, core_1.listVersionNumbers)('watchos'); }
|
|
79
|
+
function listVisionosVersionsNumbers() { return (0, core_1.listVersionNumbers)('visionos'); }
|
|
54
80
|
// flatlistVersionNumbers
|
|
55
81
|
function flatlistIosVersionsNumbers() { return (0, core_1.flatlistVersionNumbers)('ios'); }
|
|
56
82
|
function flatlistMacosVersionsNumbers() { return (0, core_1.flatlistVersionNumbers)('macos'); }
|
|
57
83
|
function flatlistTvosVersionsNumbers() { return (0, core_1.flatlistVersionNumbers)('tvos'); }
|
|
84
|
+
function flatlistWatchosVersionsNumbers() { return (0, core_1.flatlistVersionNumbers)('watchos'); }
|
|
85
|
+
function flatlistVisionosVersionsNumbers() { return (0, core_1.flatlistVersionNumbers)('visionos'); }
|
|
58
86
|
// listVersionBuilds
|
|
59
87
|
function listIosVersionsBuilds() { return (0, core_1.listVersionBuilds)('ios'); }
|
|
60
88
|
function listMacosVersionsBuilds() { return (0, core_1.listVersionBuilds)('macos'); }
|
|
61
89
|
function listTvosVersionsBuilds() { return (0, core_1.listVersionBuilds)('tvos'); }
|
|
90
|
+
function listWatchosVersionsBuilds() { return (0, core_1.listVersionBuilds)('watchos'); }
|
|
91
|
+
function listVisionosVersionsBuilds() { return (0, core_1.listVersionBuilds)('visionos'); }
|
|
62
92
|
// flatlistVersionBuilds
|
|
63
93
|
function flatlistIosVersionsBuilds() { return (0, core_1.flatlistVersionBuilds)('ios'); }
|
|
64
94
|
function flatlistMacosVersionsBuilds() { return (0, core_1.flatlistVersionBuilds)('macos'); }
|
|
65
95
|
function flatlistTvosVersionsBuilds() { return (0, core_1.flatlistVersionBuilds)('tvos'); }
|
|
96
|
+
function flatlistWatchosVersionsBuilds() { return (0, core_1.flatlistVersionBuilds)('watchos'); }
|
|
97
|
+
function flatlistVisionosVersionsBuilds() { return (0, core_1.flatlistVersionBuilds)('visionos'); }
|
|
66
98
|
// listBuilds
|
|
67
99
|
function listIosBuilds() { return (0, core_1.listBuilds)('ios'); }
|
|
68
100
|
function listMacosBuilds() { return (0, core_1.listBuilds)('macos'); }
|
|
69
101
|
function listTvosBuilds() { return (0, core_1.listBuilds)('tvos'); }
|
|
102
|
+
function listWatchosBuilds() { return (0, core_1.listBuilds)('watchos'); }
|
|
103
|
+
function listVisionosBuilds() { return (0, core_1.listBuilds)('visionos'); }
|
|
70
104
|
// flatlistBuilds
|
|
71
105
|
function flatlistIosBuilds() { return (0, core_1.flatlistBuilds)('ios'); }
|
|
72
106
|
function flatlistMacosBuilds() { return (0, core_1.flatlistBuilds)('macos'); }
|
|
73
107
|
function flatlistTvosBuilds() { return (0, core_1.flatlistBuilds)('tvos'); }
|
|
108
|
+
function flatlistWatchosBuilds() { return (0, core_1.flatlistBuilds)('watchos'); }
|
|
109
|
+
function flatlistVisionosBuilds() { return (0, core_1.flatlistBuilds)('visionos'); }
|
package/ios-version-history.d.ts
CHANGED
package/ios-version-history.js
CHANGED
|
@@ -507,9 +507,11 @@ exports.default = {
|
|
|
507
507
|
"26.6.2": ["23G90"]
|
|
508
508
|
},
|
|
509
509
|
"iOS 27.0.x": {
|
|
510
|
-
"27.0": ["24A435", "24A437"]
|
|
510
|
+
"27.0": ["24A435", "24A437"],
|
|
511
|
+
"27.0.1": ["24A446"]
|
|
511
512
|
},
|
|
512
513
|
"iOS 26.7.x": {
|
|
513
|
-
"26.7": ["23H24"]
|
|
514
|
+
"26.7": ["23H24"],
|
|
515
|
+
"26.7.1": ["23H30"]
|
|
514
516
|
}
|
|
515
517
|
};
|
package/macos-version-history.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apple-version-history",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.86",
|
|
4
4
|
"description": "List of released Apple operating system versions and builds.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"prebuild": "./.build/prebuild.sh",
|
|
11
11
|
"build": "rm -rf dist && tsc",
|
|
12
12
|
"postbuild": "./.build/postbuild.sh",
|
|
13
|
-
"test": "
|
|
13
|
+
"test": "node --test --test-reporter=./test/reporter/index.mjs 'dist/test/**/*.test.js' 'test/reporter/**/*.test.mjs'"
|
|
14
14
|
},
|
|
15
15
|
"repository": {
|
|
16
16
|
"type": "git",
|
|
@@ -29,15 +29,8 @@
|
|
|
29
29
|
},
|
|
30
30
|
"homepage": "https://github.com/gordey4doronin/apple-version-history#readme",
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@types/chai": "^4.2.6",
|
|
33
|
-
"@types/mocha": "^10.0.0",
|
|
34
32
|
"@types/node": "^25.0.3",
|
|
35
|
-
"chai": "^4.2.0",
|
|
36
|
-
"mocha": "^11.7.3",
|
|
37
|
-
"nock": "^13.0.11",
|
|
38
|
-
"node-fetch": "^2.6.1",
|
|
39
33
|
"typescript": "^5.0.3",
|
|
40
34
|
"xml2js": "^0.6.0"
|
|
41
|
-
}
|
|
42
|
-
"dependencies": {}
|
|
35
|
+
}
|
|
43
36
|
}
|
package/types.d.ts
CHANGED
package/util.js
CHANGED
|
@@ -9,6 +9,7 @@ const ios_version_history_1 = require("./ios-version-history");
|
|
|
9
9
|
const macos_version_history_1 = require("./macos-version-history");
|
|
10
10
|
const tvos_version_history_1 = require("./tvos-version-history");
|
|
11
11
|
const watchos_version_history_1 = require("./watchos-version-history");
|
|
12
|
+
const visionos_version_history_1 = require("./visionos-version-history");
|
|
12
13
|
function pickJson(os) {
|
|
13
14
|
switch (os) {
|
|
14
15
|
case 'ios':
|
|
@@ -19,6 +20,8 @@ function pickJson(os) {
|
|
|
19
20
|
return tvos_version_history_1.default;
|
|
20
21
|
case 'watchos':
|
|
21
22
|
return watchos_version_history_1.default;
|
|
23
|
+
case 'visionos':
|
|
24
|
+
return visionos_version_history_1.default;
|
|
22
25
|
default:
|
|
23
26
|
throw `Unexpected os value: ${os}`;
|
|
24
27
|
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
"visionOS 1.0.x": {
|
|
3
|
+
"1.0.3": string[];
|
|
4
|
+
};
|
|
5
|
+
"visionOS 1.1.x": {
|
|
6
|
+
"1.1.1": string[];
|
|
7
|
+
"1.1.2": string[];
|
|
8
|
+
};
|
|
9
|
+
"visionOS 1.2.x": {
|
|
10
|
+
"1.2": string[];
|
|
11
|
+
};
|
|
12
|
+
"visionOS 1.3.x": {
|
|
13
|
+
"1.3": string[];
|
|
14
|
+
};
|
|
15
|
+
"visionOS 2.0.x": {
|
|
16
|
+
"2.0": string[];
|
|
17
|
+
"2.0.1": string[];
|
|
18
|
+
};
|
|
19
|
+
"visionOS 2.1.x": {
|
|
20
|
+
"2.1": string[];
|
|
21
|
+
"2.1.1": string[];
|
|
22
|
+
};
|
|
23
|
+
"visionOS 2.2.x": {
|
|
24
|
+
"2.2": string[];
|
|
25
|
+
};
|
|
26
|
+
"visionOS 2.3.x": {
|
|
27
|
+
"2.3": string[];
|
|
28
|
+
"2.3.1": string[];
|
|
29
|
+
"2.3.2": string[];
|
|
30
|
+
};
|
|
31
|
+
"visionOS 2.4.x": {
|
|
32
|
+
"2.4": string[];
|
|
33
|
+
"2.4.1": string[];
|
|
34
|
+
};
|
|
35
|
+
"visionOS 2.5.x": {
|
|
36
|
+
"2.5": string[];
|
|
37
|
+
};
|
|
38
|
+
"visionOS 2.6.x": {
|
|
39
|
+
"2.6": string[];
|
|
40
|
+
};
|
|
41
|
+
"visionOS 26.0.x": {
|
|
42
|
+
"26.0": string[];
|
|
43
|
+
"26.0.1": string[];
|
|
44
|
+
};
|
|
45
|
+
"visionOS 26.1.x": {
|
|
46
|
+
"26.1": string[];
|
|
47
|
+
};
|
|
48
|
+
"visionOS 26.2.x": {
|
|
49
|
+
"26.2": string[];
|
|
50
|
+
};
|
|
51
|
+
"visionOS 26.3.x": {
|
|
52
|
+
"26.3": string[];
|
|
53
|
+
"26.3.1": string[];
|
|
54
|
+
};
|
|
55
|
+
"visionOS 26.4.x": {
|
|
56
|
+
"26.4": string[];
|
|
57
|
+
};
|
|
58
|
+
"visionOS 26.5.x": {
|
|
59
|
+
"26.5": string[];
|
|
60
|
+
};
|
|
61
|
+
"visionOS 26.6.x": {
|
|
62
|
+
"26.6": string[];
|
|
63
|
+
"26.6.1": string[];
|
|
64
|
+
};
|
|
65
|
+
"visionOS 27.0.x": {
|
|
66
|
+
"27.0": string[];
|
|
67
|
+
"27.0.1": string[];
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
export default _default;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
// This file is autogenerated. DO NOT MODIFY IT DIRECTLY.
|
|
4
|
+
exports.default = {
|
|
5
|
+
"visionOS 1.0.x": {
|
|
6
|
+
"1.0.3": ["21N333"]
|
|
7
|
+
},
|
|
8
|
+
"visionOS 1.1.x": {
|
|
9
|
+
"1.1.1": ["21O224"],
|
|
10
|
+
"1.1.2": ["21O231"]
|
|
11
|
+
},
|
|
12
|
+
"visionOS 1.2.x": {
|
|
13
|
+
"1.2": ["21O589"]
|
|
14
|
+
},
|
|
15
|
+
"visionOS 1.3.x": {
|
|
16
|
+
"1.3": ["21O771"]
|
|
17
|
+
},
|
|
18
|
+
"visionOS 2.0.x": {
|
|
19
|
+
"2.0": ["22N320"],
|
|
20
|
+
"2.0.1": ["22N342"]
|
|
21
|
+
},
|
|
22
|
+
"visionOS 2.1.x": {
|
|
23
|
+
"2.1": ["22N580", "22N581"],
|
|
24
|
+
"2.1.1": ["22N591"]
|
|
25
|
+
},
|
|
26
|
+
"visionOS 2.2.x": {
|
|
27
|
+
"2.2": ["22N840", "22N841", "22N842"]
|
|
28
|
+
},
|
|
29
|
+
"visionOS 2.3.x": {
|
|
30
|
+
"2.3": ["22N896"],
|
|
31
|
+
"2.3.1": ["22N900"],
|
|
32
|
+
"2.3.2": ["22N906"]
|
|
33
|
+
},
|
|
34
|
+
"visionOS 2.4.x": {
|
|
35
|
+
"2.4": ["22O237", "22O238"],
|
|
36
|
+
"2.4.1": ["22O251"]
|
|
37
|
+
},
|
|
38
|
+
"visionOS 2.5.x": {
|
|
39
|
+
"2.5": ["22O473"]
|
|
40
|
+
},
|
|
41
|
+
"visionOS 2.6.x": {
|
|
42
|
+
"2.6": ["22O783", "22O785"]
|
|
43
|
+
},
|
|
44
|
+
"visionOS 26.0.x": {
|
|
45
|
+
"26.0": ["23M336"],
|
|
46
|
+
"26.0.1": ["23M341", "23M8340"]
|
|
47
|
+
},
|
|
48
|
+
"visionOS 26.1.x": {
|
|
49
|
+
"26.1": ["23N48", "23N49"]
|
|
50
|
+
},
|
|
51
|
+
"visionOS 26.2.x": {
|
|
52
|
+
"26.2": ["23N301"]
|
|
53
|
+
},
|
|
54
|
+
"visionOS 26.3.x": {
|
|
55
|
+
"26.3": ["23N619", "23N620"],
|
|
56
|
+
"26.3.1": ["23N630"]
|
|
57
|
+
},
|
|
58
|
+
"visionOS 26.4.x": {
|
|
59
|
+
"26.4": ["23O244", "23O247"]
|
|
60
|
+
},
|
|
61
|
+
"visionOS 26.5.x": {
|
|
62
|
+
"26.5": ["23O471"]
|
|
63
|
+
},
|
|
64
|
+
"visionOS 26.6.x": {
|
|
65
|
+
"26.6": ["23O770"],
|
|
66
|
+
"26.6.1": ["23O780"]
|
|
67
|
+
},
|
|
68
|
+
"visionOS 27.0.x": {
|
|
69
|
+
"27.0": ["24M362"],
|
|
70
|
+
"27.0.1": ["24M372"]
|
|
71
|
+
}
|
|
72
|
+
};
|