Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,15 @@ Note: The `tag-release` script will fail if it does not find a matching version
section here.

---

## [1.4.0] Unreleased

- Add support for `WinARM64EC` as Delphi 13.1 just started supporting this new platform
Schema + Data versions bumped from `1.0.0` to `1.1.0` due to new platform support.
Latest schema becomes 1.1.0: `https://continuous-delphi.github.io/schemas/delphi-compiler-versions.schema.json`
Added `schemas/1.0.0` and `schemas/1.1.0` to capture version-specific schemas
[#22](https://github.com/continuous-delphi/delphi-compiler-versions/issues/22)

## [1.3.0] - 2026-03-15

- Corrected iOS+iOSSimulator platforms, will now have iOS32 + iOS64 and
Expand Down
11 changes: 6 additions & 5 deletions data/delphi-compiler-versions.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"schemaVersion": "1.0.0",
"dataVersion": "1.0.0",
"schemaVersion": "1.1.0",
"dataVersion": "1.1.0",
"meta": {
"generatedUtcDate": "2026-03-05",
"generatedUtcDate": "2026-03-21",
"scope": {
"includeFromVer": "VER90",
"excluded": [
Expand Down Expand Up @@ -347,10 +347,11 @@
"packageVersion": "370",
"regKeyRelativePath": "\\Software\\Embarcadero\\BDS\\37.0",
"supportedBuildSystems": ["DCC", "MSBuild"],
"supportedPlatforms": ["Win32", "Win64", "macOS64", "macOSARM64", "iOS64", "iOSSimulator64", "Android32", "Android64", "Linux64"],
"supportedPlatforms": ["Win32", "Win64", "macOS64", "macOSARM64", "iOS64", "iOSSimulator64", "Android32", "Android64", "Linux64", "WinARM64EC"],
"aliases": ["Delphi 13", "Florence", "13 Florence"],
"notes": [
"RAD Studio 13 unifies internal version numbers to 37 (registry, RTL, packages)."
"RAD Studio 13 unifies internal version numbers to 37 (registry, RTL, packages).",
"Update 1 for RAD Studio 13 Florence added support for WinARM64EC"
]
}
]
Expand Down
10 changes: 7 additions & 3 deletions generated/DELPHI_COMPILER_VERSIONS.inc
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
Metadata
--------------------------------------------------------------------------- }

{$DEFINE CD_DELPHI_SCHEMA_1_0_0}
{$DEFINE CD_DELPHI_DATA_1_0_0}
{$DEFINE CD_DELPHI_GENERATED_2026_03_05}
{$DEFINE CD_DELPHI_SCHEMA_1_1_0}
{$DEFINE CD_DELPHI_DATA_1_1_0}
{$DEFINE CD_DELPHI_GENERATED_2026_03_21}

{ ---------------------------------------------------------------------------
Unknown version detection
Expand Down Expand Up @@ -485,3 +485,7 @@
{$DEFINE CD_DELPHI_SUPPORTS_PLATFORM_WIN64}
{$ENDIF}

{$IFDEF CD_DELPHI_13_OR_LATER}
{$DEFINE CD_DELPHI_SUPPORTS_PLATFORM_WINARM64EC}
{$ENDIF}

9 changes: 5 additions & 4 deletions generated/DelphiCompilerVersions.pas
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@ interface
MacOS64Target,
MacOSARM64Target,
Win32Target,
Win64Target
Win64Target,
WinARM64ECTarget
);

TDelphiPlatforms = set of TDelphiPlatform;
Expand All @@ -41,8 +42,8 @@ TDelphiVersion = record
PDelphiVersion = ^TDelphiVersion;

const
CD_SCHEMA_VERSION = '1.0.0';
CD_DATA_VERSION = '1.0.0';
CD_SCHEMA_VERSION = '1.1.0';
CD_DATA_VERSION = '1.1.0';

DelphiVersions: array[0..26] of TDelphiVersion =
(
Expand Down Expand Up @@ -312,7 +313,7 @@ TDelphiVersion = record
ProductName: 'Delphi 13 Florence';
PackageVersion: '370';
RegKeyRelativePath: '\Software\Embarcadero\BDS\37.0';
SupportedPlatforms: [Android32Target, Android64Target, IOS64Target, IOSSimulator64Target, Linux64Target, MacOS64Target, MacOSARM64Target, Win32Target, Win64Target];
SupportedPlatforms: [Android32Target, Android64Target, IOS64Target, IOSSimulator64Target, Linux64Target, MacOS64Target, MacOSARM64Target, Win32Target, Win64Target, WinARM64ECTarget];
SupportedBuildSystems: [DCCSystem, MSBuildSystem];
AliasesCsv: 'Delphi 13;Florence;13 Florence';
)
Expand Down
4 changes: 2 additions & 2 deletions generated/PlatformSupport.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<!-- Generated from data/delphi-compiler-versions.json -- do not edit manually -->
<!-- SchemaVersion: 1.0.0 DataVersion: 1.0.0 Generated: 2026-03-05 -->

# Platform Support by Delphi Version

Expand All @@ -14,6 +13,7 @@
|:--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
| Win32 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓⁺ |
| Win64 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓⁺ | | | | | | | | | | | | |
| WinARM64EC | ✓⁺ | | | | | | | | | | | | | | | | | | | | | | | | | | |
| macOS32 | | | | | | ✓⁻ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓⁺ | | | | | | | | | | | | |
| macOS64 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓⁺ | | | | | | | | | | | | | | | | | | |
| macOSARM64 | ✓ | ✓ | ✓⁺ | | | | | | | | | | | | | | | | | | | | | | | | |
Expand All @@ -28,4 +28,4 @@
---

_Generated from data/delphi-compiler-versions.json --
dataVersion 1.0.0, schemaVersion 1.0.0._
dataVersion 1.1.0, schemaVersion 1.1.0._
212 changes: 212 additions & 0 deletions schemas/1.0.0/delphi-compiler-versions.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,212 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://continuous-delphi.github.io/delphi-compiler-versions/schemas/1.0.0/delphi-compiler-versions.schema.json"
"title": "Continuous Delphi - Canonical List of Compiler Versions",
"type": "object",
"additionalProperties": false,
"required": [
"schemaVersion",
"dataVersion",
"versions"
],
"properties": {
"schemaVersion": {
"type": "string",
"description": "Schema version for this document (semantic versioning).",
"pattern": "^\\d+\\.\\d+\\.\\d+$",
"examples": [
"1.0.0"
]
},
"dataVersion": {
"type": "string",
"description": "Dataset version for the contents of this file (semantic versioning). Independent of schemaVersion.",
"pattern": "^\\d+\\.\\d+\\.\\d+$",
"examples": [
"0.3.0"
]
},
"meta": {
"type": "object",
"description": "Optional metadata about the dataset generation and scope.",
"additionalProperties": true,
"properties": {
"generatedUtcDate": {
"type": "string",
"description": "UTC date (YYYY-MM-DD) when this file was generated or last updated.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"examples": [
"2026-03-01"
]
},
"scope": {
"type": "object",
"description": "Scope rules for inclusion/exclusion.",
"additionalProperties": true
}
}
},
"versions": {
"type": "array",
"description": "Ordered list of Delphi compiler version entries.",
"minItems": 1,
"items": {
"$ref": "#/$defs/versionEntry"
}
}
},
"$defs": {
"buildSystem": {
"type": "string",
"enum": ["DCC", "MSBuild"],
"description": "A supported build system identifier."
},
"platform": {
"type": "string",
"enum": [
"Win32",
"Win64",
"macOS32",
"macOS64",
"macOSARM64",
"Linux64",
"iOS32",
"iOS64",
"iOSSimulator32",
"iOSSimulator64",
"Android32",
"Android64"
],
"description": "A supported target platform identifier."
},
"versionEntry": {
"type": "object",
"additionalProperties": false,
"required": [
"verDefine",
"productName",
"aliases",
"compilerVersion",
"supportedBuildSystems",
"supportedPlatforms"
],
"properties": {
"verDefine": {
"type": "string",
"description": "Canonical Delphi compiler conditional define symbol.",
"pattern": "^VER\\d+$",
"examples": [
"VER370"
]
},
"compilerVersion": {
"type": "string",
"description": "CompilerVersion value preserving original notation (e.g., \"37.0\"). Stored as string to retain the decimal form exactly as Embarcadero defines it.",
"pattern": "^\\d+\\.\\d+$",
"examples": [
"37.0"
]
},
"productName": {
"type": "string",
"description": "Official product name for this Delphi release.",
"minLength": 1,
"examples": [
"Delphi 13 Florence"
]
},
"packageVersion": {
"type": [
"string",
"null"
],
"description": "Package version identifier.",
"examples": [
"370"
]
},
"regKeyRelativePath": {
"type": [
"string",
"null"
],
"description": "Relative registry key path beneath HKCU or HKLM.",
"examples": [
"\\Software\\Embarcadero\\BDS\\37.0"
]
},
"supportedBuildSystems": {
"type": "array",
"description": "Build systems supported by this version. DCC = direct command-line compiler invocation. MSBuild = .dproj-based builds via MSBuild. Represents the union of all support across all point releases within this version family.",
"minItems": 1,
"items": {
"$ref": "#/$defs/buildSystem"
},
"examples": [
["DCC", "MSBuild"]
]
},
"supportedPlatforms": {
"type": "array",
"description": "Target platforms supported by this version family. Represents the union of all platforms supported across all point releases. See notes for any sub-version platform introductions.",
"minItems": 1,
"items": {
"$ref": "#/$defs/platform"
},
"examples": [
["Win32", "Win64", "macOS64", "macOSARM64", "iOS64", "Android32", "Android64", "Linux64"]
]
},
"aliases": {
"type": "array",
"description": "Identifiers that resolve to this entry. The properties verDefine and productName are automatically used as aliases.",
"minItems": 1,
"items": {
"type": "string"
},
"examples": [
[
"Delphi 13",
"Delphi13",
"BDS 37.0",
"CompilerVersion 37.0"
]
]
},
"notes": {
"type": "array",
"description": "Optional notes for special cases, including sub-version platform introductions.",
"items": {
"type": "string"
},
"default": []
}
}
}
},
"examples": [
{
"schemaVersion": "1.0.0",
"dataVersion": "0.3.0",
"versions": [
{
"verDefine": "VER370",
"compilerVersion": "37.0",
"productName": "Delphi 13 Florence",
"packageVersion": "370",
"regKeyRelativePath": "\\Software\\Embarcadero\\BDS\\37.0",
"supportedBuildSystems": ["DCC", "MSBuild"],
"supportedPlatforms": ["Win32", "Win64", "macOS64", "macOSARM64", "iOS64", "iOSSimulator64", "Android32", "Android64", "Linux64"],
"aliases": [
"Delphi 13",
"BDS 37.0",
"CompilerVersion 37.0"
],
"notes": [
"RAD Studio 13 unifies internal version numbers to 37 (registry, RTL, packages)."
]
}
]
}
]
}
Loading