Releases: swiftlang/swift-driver
Releases · swiftlang/swift-driver
Swift 6.1 Release
What's Changed
- [ExplicitModule] Support direct cc1 flag for all explicit module build job by @cachemeifyoucan in #1550
- [BridgingHeader] Provide a deterministic unique pch file path by @cachemeifyoucan in #1567
- [ExplicitModuleBuilds][NFC] Remove lazy module loading check in explicit module tests by @artemcm in #1569
- Always apply working-directory in the swift-driver by @cachemeifyoucan in #1568
- Stop adding '-external-plugin-path' to SDK directories by @rintaro in #1573
- build: add the ability to build tools with CMake by @compnerd in #1564
- [Explicit Module Builds] Specify which Clang module dependencies are bridging header dependencies by @artemcm in #1571
- [Explicit Module Builds] When '-explain-module-dependency' encounters the target Swift module, continue enumerating other possible paths by @artemcm in #1565
- Implement basic
xtensa
architecture triple parsing by @MaxDesiatov in #1576 - Support for binary module validation in scanner by @cachemeifyoucan in #1563
- Introduce visionOS Platform by @artemcm in #1577
- Mark
Triple
and its nested types asSendable
by @MaxDesiatov in #1579 - Decrease the number of padding bytes in the Node Struct so it fits a lower quanta by @aliyevaa in #1580
- Remove swiftmodule from linker filelist input by @etcwilde in #1581
- Resolve main executable symlink when looking up driver-adjacent subcommand binaries by @artemcm in #1583
- [Caching] Remove the error for creating multiple CAS at same location by @cachemeifyoucan in #1586
- Schedule an emit-module-separately job even if an input is not compilable by @xymus in #1588
- Prefer toolchain's plugins to SDK plugins if the toolchain has stdlib by @rintaro in #1590
- [CAS] Fix task continuation misuse when CAS error happens by @cachemeifyoucan in #1591
- Update Generic Unix linker selection by @etcwilde in #1545
- Revert "Update Generic Unix linker selection" by @etcwilde in #1596
- Fix parsed name of the newly-added
SDKPlatformKind
to use raw toolchain name by @artemcm in #1598 - Do not warn on failure to in-process query target info or supported features by @artemcm in #1597
- [Caching] Handle emit module job correctly for swift caching by @cachemeifyoucan in #1602
- Fallback on
swift-frontend -scan-dependencies ...
fallback path in caselibSwiftScan
shared library cannot be loaded. by @artemcm in #1601 - Add additional valid args to sanitize-coverage flag by @thetruestblue in #1604
- [Option] Support MultiArg options by @cachemeifyoucan in #1609
- [Explicit Module Builds] Get source locations from the dependency scanner and emit diagnostics with them by @artemcm in #1610
- Allow setting the clang++ environment variable by @etcwilde in #1605
- Revert "Revert "Update Generic Unix linker selection"" by @etcwilde in #1608
- Update Options.swift by @nkcsgexi in #1615
- [NFC] Fix diagnostic message query formatting for compatibility with existing tests, and fix additional tests by @artemcm in #1614
- Android: add the stdlib RPATH when natively building on Android with Termux by @finagolfin in #1561
- Fix dash count to fuse-ld by @etcwilde in #1624
- Suppress warning about missing SDKSettings.json for non-Darwin platforms by @kateinoigakukun in #1619
- Pass through
-compiler-assertions
to the compiler by @tbkka in #1623 - Improve performance of precompiled module invalidation in incremental builds by @owenv in #1626
- [Explicit Module Builds] Adopt dependency scanner Link Libraries support by @artemcm in #1622
- [Explicit Module Builds][Incremental Builds] Re-compile module dependencies whose dependencies are up-to-date themselves but are themselves newer by @artemcm in #1628
- [Tests][Explicit Module Builds] Fix per-test state in incremental explicitly-built module tests to avoid conflicts on parallel test runs by @artemcm in #1632
- [SwiftScan] Fix headerDependencies in SwiftPrebuiltExternalModuleDetails by @cachemeifyoucan in #1633
- Bump the DWARF version number to 5 on Darwin. by @adrian-prantl in #1630
- Fix spurious warning by @rauhul in #1637
- Response files should be named using the hash of the command line arguments only by @owenv in #1636
- Update links for repositories moved to the swiftlang org on GitHub by @ahoppen in #1640
- Add In-process plugin server path by @rintaro in #1616
- Update README.md by @parispittman in #1644
- Ignore prebuilt module cache when building the prebuilt module cache by @DougGregor in #1649
- [PrebuiltModuleGen] Ensure the dependency scanner always ignores existing prebuilt modules by @artemcm in #1651
- [Explicit Module Builds] Remove dead/incorrect code for handling header inputs of binary module dependencies by @artemcm in #1653
- Bump
swift-argument-parser
to 1.4.0 by @MaxDesiatov in #1578 - Pass
-lld-allow-duplicate-weak
for coverage on Windows by @hamishknight in #1655 - Import new Android overlay or Bionic module by @finagolfin in #1647
- [Test Only] Make
CachingBuildTests.testDependencyScanning
be adaptable to scanner diagnostic revisions by @artemcm in #1658 - SwiftDriver: initial work to properly handle android cross-compilation by @compnerd in #1560
- Revert "SwiftDriver: initial work to properly handle android cross-compilation" by @artemcm in #1662
- Pass
-enable-cmo-everything
to frontend jobs by @tshortli in #1663 - Allow enabling embedded Swift without WMO when not generating SIL by @owenv in #1513
- Reinstate: SwiftDriver: initial work to properly handle android cross-compilation by @hyp in #1667
- [Linux] Add build-id support. by @al45tair in #1641
- Pass through
-module-abi-name
to frontend by @hamishknight in #1665 - [Test Only] Adapt
testExplicitLinkLibraries
to use opt-in scanner validation mechanism on supporting compilers by @artemcm in #1673 - [Incremental Builds][Explicit Module Builds] Treat Binary-only Swift module dependencies as up-to-date by @artemcm in #1674
- Don't plan compileJob if emitModule is all that is needed in a separate job by @cachemeifyoucan in #1675
- [Dependency Scanning] Enable scanner-side up-to-date binary module validation on supporting compilers by @artemcm in #1677
- [Explicit Module Builds] Simplify
-explain-module-dependency
behavior and introduce-explain-module-dependency-detailed
by @artemcm in #1676 - PrebuiltModuleGen: fail prebuilt module generation job when critical modules failed to build by @nkcsgexi in #1668
- Add a C (
@_cdecl
) API for the driver'sgetSingleFrontendInvocationFromDriverArguments
by @artemcm in #1679 - Fix ExplicitModuleBuildTests:
testExplicitLinkLibraries
&testDependencyGraphDotSerialization
& CachingBuildTests:testSeparateModuleJob
&testModuleOnlyJob
by @artemcm in #1680 - SwiftDriver: forward
-sysroot
provided by the user by @compnerd in https://github.com/swif...
Swift 6.0.3 Release
What's Changed
- [6.0 🍒] Fix CachingBuildTests: testSeparateModuleJob & testModuleOnlyJob by @artemcm in #1689
- [6.0] Only pass a versioned prebuilt-modules for Mac Catalyst if it exists. by @cwakamo in #1697
- 🍒[Swift 6.0] Allow overriding clang++ with an environment variable by @etcwilde in #1638
- 🍒[Swift 6.0]: Update Generic Unix linker selection by @etcwilde in #1595
- [🍒 Swift-6.0.x] fuse-ld only takes one dash by @etcwilde in #1725
- [6.0] Disable in-process target-info and supported-features queries using
libSwiftScan
by @artemcm in #1745
Full Changelog: swift-6.0.2-RELEASE...swift-6.0.3-RELEASE
Swift 6.0.2 Release
swift-6.0.2-RELEASE Resolve main executable symlink when looking up driver-adjacent subco…
Swift 6.0.1 Release
Full Changelog: swift-6.0-RELEASE...swift-6.0.1-RELEASE
Swift 6.0 Release
What's Changed
- Fix handling of the '--' argument followed by inputs for the immediate compilation mode ('swift') by @artemcm in #1439
- Make
--ld-path
option consistently use single dash by @MaxDesiatov in #1441 - Add test conveniences to SwiftDriverTests by @tshortli in #1443
- Add
.vscode/launch.json
to.gitignore
by @MaxDesiatov in #1445 - Replace deprecated uses of
<<<
withsend
by @MaxDesiatov in #1444 - [NFC] Remove unused constant in
FirstWaveComputer.swift
by @MaxDesiatov in #1446 - Remove remaining appearences of deprecated 'AbsolutePath' initializer in tests by @artemcm in #1231
- Remove more appearences of deprecated 'AbsolutePath' and 'RelativePath' intitializers in source and tests by @artemcm in #1450
- Replace remaining uses of
<<<
operator with.send
by @MaxDesiatov in #1451 - Fix forwarding of
-ld-path
to Clang by @kabiroberai in #1447 - [embedded] A number of changes to support embedded Swift. by @zoecarver in #1455
- Prebuilt-module-generation: support a mode that aggregates broken interfaces as a JSON output for easy comparision by @nkcsgexi in #1457
- Introduce -emit-api-descriptor-path option by @tshortli in #1460
- [ExplicitModuleBuilds][Tests] Remove test of prior approach at handling dependency PCH by @artemcm in #1463
- Add -experimental-skip-non-exportable-decls to lazy typechecking emit module jobs by @tshortli in #1465
- [Build Script Helper] Use new SwiftPM flag to remove
$ORIGIN
from installed ELF executable runpaths by @finagolfin in #1462 - Remove special handling of the -experimental-lazy-typecheck flag by @tshortli in #1468
- Make the DWARF version configurable. by @adrian-prantl in #1467
- Revert "Make the DWARF version configurable." by @adrian-prantl in #1473
- Revert "Revert "Make the DWARF version configurable."" by @adrian-prantl in #1475
- Update 'Package.resolved' by @artemcm in #1476
- Adjust 'makeOptions' to new TableGen format of Swift's 'Options.inc' by @artemcm in #1474
- Fix typos and warnings in
SwiftDriver
module and its tests by @MaxDesiatov in #1461 - Add support for automatically emit API descriptor files by @zixu-w in #1478
- Don't add an autolink-extract job unless actually linking ELF/Wasm objects, matching the original C++ driver by @finagolfin in #1479
- Add workaround for 5.8 host swift-driver bug by @hamishknight in #1484
- [SwiftDriver] PathRemapping and Cache Replay Support by @cachemeifyoucan in #1453
- Revert "[SwiftDriver] PathRemapping and Cache Replay Support" by @artemcm in #1486
- Ensure supplementary output file maps associate Swift Source inputs with expected outputs in WMO by @artemcm in #1459
- build: simplify the build rules (NFC) by @compnerd in #1489
- Add support for swift caching with path remapping and builtin cache replay by @cachemeifyoucan in #1488
- Support package interface gen and verification in driver by @elsh in #1487
- Update Options.swift for '-disable-sandbox' by @rintaro in #1490
- Do not perform dependency scanning when no source inputs are specified by @artemcm in #1492
- Remove dependency on swift-system by @neonichu in #1494
- Avoid generating an interface verification job for a package interface when no such interface is emitted by @artemcm in #1497
- Revert 'Add missing dependency (#1414)' by @finagolfin in #1481
- [Caching] Fix incremental cache build with bridging header by @cachemeifyoucan in #1498
- [Caching] SwiftDriver Caching API refinement for build system by @cachemeifyoucan in #1491
- build: enable building in Debug mode on Windows by @compnerd in #1496
- Port over missing debug info driver functionality from the C++ implem… by @adrian-prantl in #1500
- [SwiftCaching] Don't drop
-Xcc
during dependency scanning by @cachemeifyoucan in #1501 - Only specify -dwarf-version if the frontend supports it by @tshortli in #1502
- build: support building swift-driver outside of the toolchain by @compnerd in #1499
- [Test] Remap test should be guarded by caching feature by @cachemeifyoucan in #1504
- Disable CachingBuildTests on windows by @cachemeifyoucan in #1508
- tests: repair the test suite on Windows by @compnerd in #1506
- SwiftDriver: repair the generation of CodeView debug info by @compnerd in #1505
- [Sanitizer] Add new flag -sanitize-stable-abi flag to link against the by @wrotki in #1509
- Revert "[Driver] For immediate mode prefer using the default SDK over the
SDKROOT
variable" by @akyrtzi in #1510 - Don't pass
-rpath
and-lswiftCore
in embedded mode by @MaxDesiatov in #1516 - Add
m68k
toTriple.swift
by @MaxDesiatov in #1514 - [CAS] Don't create the same CAS multiple times from the same Oracle by @cachemeifyoucan in #1511
- [NFC] Add
Decodable
conformance toTriple.Arch
by @MaxDesiatov in #1512 - [Embedded] correct link paths when building for embedded to avoid stray response file paths by @phausler in #1517
- [Dependency Scanning] Upon scan failure, ensure scanner diagnostics are emitted by @artemcm in #1518
- Pass down the -no-verify-emitted-module-interface flag to the frontend by @xymus in #1519
- Add fallback to auxiliary legacy driver executable on '--disallow-use-new-driver' by @artemcm in #1485
- Update Options.swift by @tshortli in #1521
- [Explicit Module Builds] Do not specify Clang dependency
module.modulemap
files as task inputs by @artemcm in #1522 - Prefer
llvm-ar
overar
on WebAssembly by @kateinoigakukun in #1523 - Remove references to deleted lit-tests of the Legacy driver by @artemcm in #1334
- [Caching] Adopt new APIs from libSwiftScan for key computation by @cachemeifyoucan in #1503
- Only run testSanitizeStableAbi on Apple platforms by @wrotki in #1524
- Fix explicit modules incremental build failure when only the clang module of a mixed-source module requires rebuild by @owenv in #1527
- For scripts, use DYLD_FRAMEWORK/LIBRARY_PATH to find frameworks / run… by @lhames in #1525
- Make DependencyScanningError conform to LocalizedError by @cachemeifyoucan in #1528
- [Caching] Issue a warning when caching build without explicit module by @cachemeifyoucan in #1526
- When terminating because a subprocess failed, don't print
error: fatalError
by @DougGregor in #1532 - Embedded: don't link
swiftrt.o
for bare metal by @MaxDesiatov in #1533 - [Explicit Module Builds] Add an instance of
InterModuleDependencyGraph
to the DriverExecutorWorkload by @artemcm in #1530 - [SwiftScan] Add APIs to load/check libSwiftScan directly by @cachemeifyoucan in #1529
- [Explicit Module Builds] Cache explicit dependency additions to main module command-lines by @artemcm in #1535
- [Cac...
Swift 5.10.1 Release
Merge pull request #1483 from finagolfin/dep [5.10] Revert 'Add missing dependency (#1414)'
Swift 5.10 Release
What's Changed
- NFC: Fix comment header in SwiftDriverExecutor.swift by @MaxDesiatov in #1316
- Allow clients of
Driver
to passDiagnosticsHandler
by @MaxDesiatov in #1317 - [Explicit Modules] Have
-clang-target
on Darwin platforms set to the SDK version by-default by @artemcm in #1274 - Update the Swift help message to include
swift --version
by @shahmishal in #1321 - SwiftDriver: add support for baremetal targets (to reflect swiftlang/swift#35970) by @kubamracek in #1313
- Propagate sanitizer arguments to the clang-linker-driver invocations for dynamic libraries by @artemcm in #1325
- [Dependency Scanning] Remove coarse-grained synchronization on all dependency scan queries by @artemcm in #1319
- Find blocklist files from toolchain dir and feed them to compiler by @nkcsgexi in #1329
- Add
-gcc-toolchain
flag to swift-driver by @etcwilde in #1307 - Add generated file note to Options.swift by @etcwilde in #1330
- Support building this repo for more platforms, by checking the build triple by @finagolfin in #1294
- [Explicit Module Builds] Remove logic for Swift-client-specific Clang module dependency jobs by @artemcm in #1332
- Always quote path arguments when resolving command-lines for libSwiftScan queries by @artemcm in #1335
- Use DarwinToolchain for apple-none targets by @rauhul in #1331
- [Macros] Set -external-plugin-path when the toolchain is not Xcode by @rintaro in #1320
- Use system-appropriate method when quoting path arguments on command-lines by @artemcm in #1343
- Do not attempt to create compilation jobs when no Swift source files are specified as inputs by @artemcm in #1347
- In WMO, make sure the dummy "primary" compilation input is a Swift source file by @artemcm in #1346
- Revert "In WMO, make sure the dummy "primary" compilation input is a Swift source file" by @DougGregor in #1348
- Avoid quoting paths for dependencies scanning jobs by @nkcsgexi in #1351
- In WMO, make sure the dummy "primary" compilation input is a Swift source file by @artemcm in #1350
- [Dependency Scanning] Unify path-escaping handling using TSC's spm_shellEscaped by @artemcm in #1354
- build-script-helper.py: remove unused
distutils
import by @MaxDesiatov in #1353 - Disable adding '-external-plugin-path' in integrated driver mode by @rintaro in #1356
- Specify encoding when running a ninja invocation by @ahoppen in #1358
- Revert "[Macros] Set -external-plugin-path when the toolchain is not Xcode" by @rintaro in #1359
- Add support for compatibility shims that we don't want to -force-load by @slavapestov in #1361
- Update requirements in
Package.swift
to match SwiftPM by @MaxDesiatov in #1338 - [NFC] Package.swift: fix deprecated dependency initializers by @MaxDesiatov in #1366
- [Dependency Scanning] Add support for Swift Overlay dependencies as a separate dependency details field by @artemcm in #1365
- Add option
-explain-module-dependency
to explain a given direct or transitive module dependency by @artemcm in #1363 - Add ignorable private flag to driver to match changes in frontend by @elsh in #1344
- Allow unicode chars in package-name in driver by @elsh in #1367
- Parse additional armv6 and armv7 subarchs by @rauhul in #1369
- [cxx-interop] make -emit-clang-header-path a driver flag by @hyp in #1371
- Formatting: remove trailing whitespaces by @MaxDesiatov in #1370
- SwiftDriver: mark bitcode interfaces as
internal
by @compnerd in #1376 - Android: look in lib/linux/ for the LLVM sanitizers instead by @finagolfin in #1372
- [Explicit Module Builds] Add support for header dependencies of binary Swift module dependencies by @artemcm in #1375
- Add SDK and platform paths to plugin executables by @DougGregor in #1377
- Remove unused runtime library path on non-Darwin platforms by @finagolfin in #1374
- Triple.swift: fix typos in local and private names by @MaxDesiatov in #1384
- Add support for Musl libc by @MaxDesiatov in #1385
- Add
repl
to swift-help topics by @bitjammer in #1382 - Tweak testWMOWithJustObjectInputs test to not count autolink-extract jobs by @artemcm in #1388
- Fix a non-deterministic failure in testPrintingExplicitDependencyGraph by @cachemeifyoucan in #1389
- Driver: allow static executables when using Musl by @MaxDesiatov in #1383
- Fix Wasm capitalization in code comments by @MaxDesiatov in #1391
- [Driver] For immediate mode prefer using the default SDK over the
SDKROOT
variable by @akyrtzi in #1390 - Set Explicit Incremental Module Build tests to use own module cache by @artemcm in #1392
- [Explicit Modules] Handle re-mapped platform versions when specifying SDK-aligned
-clang-target
on Darwin platforms by @artemcm in #1394 - Downgrade priors version mismatch warning by @keith in #1396
- [Macros on Darwin] Use device platform paths when building for the simulator by @DougGregor in #1400
- Support Swift CompileJob Caching by @cachemeifyoucan in #1393
- swift-help: use the executable suffix on Windows by @compnerd in #1405
- Update Options.swift for '-load-plugin-executable' update by @rintaro in #1409
- Teach version requests to include the version of the separately installed blocklist by @nkcsgexi in #1411
- [Dependency Scanning] Add option to specify a separate Clang Dependency scanner module cache. by @artemcm in #1408
- Add missing dependency by @neonichu in #1414
- [Explicit Module Builds][Incremental Builds] Only re-build module dependencies which have changed or whose dependencies have changed. by @artemcm in #1413
- [Explain Dependency] Fix 'testTraceDependency' to account for Swift Overlay dependencies being separate from direct import dependencies. by @artemcm in #1417
- Deprecate -warn-on-potentially-unavailable-enum-case option by @tshortli in #1418
- Add -experimental-lazy-typecheck option by @tshortli in #1419
- Tests: Address warnings about unused results and variables by @tshortli in #1421
- Pass -experimental-lazy-typecheck to -emit-module jobs by @tshortli in #1423
- Fix comment typo in
Triple+Platforms.swift
by @MaxDesiatov in #1425 - NFC: Consolidate the code for adding symbol graph related options to a job by @tshortli in #1426
- Jobs: support multiple lookup paths by @compnerd in #1428
- [Caching] Fix caching tests on windows hosts by @cachemeifyoucan in #1427
- [Options] Fix makeOptions after upstream Option TableGen change by @cachemeifyoucan in #1429
- Disable '-static' flag check on the executable against MUSL test by @artemcm in #1432
- Forward --ld-path to linker driver by @kabiroberai in #1416
- SwiftDriver: speculative changes to support Windows macros by @compnerd in #1433
- Improve swift-driver test cases to avoid fatal crash by @cachemeifyoucan in #1434
- [makeOptions] Add new enum from swift Options by @cachemeifyoucan in #1437
- [Caching] Supp...