Skip to content

Conversation

@jeanbarrossilva
Copy link
Collaborator

@jeanbarrossilva jeanbarrossilva commented Sep 13, 2025

Compiling the project with a snapshot version of a Swift 6 toolchain has not been an experience I would blatantly call "delightful".

Sudden SourceKitService crashes

The _Differentiation module also seems unready for non-experimental usage, seen that even trivialities like extending one of its types (e.g., making a type differentiable) may (or may not!) crash SourceKitService. As explained in #40, which introduces fields into Deus and, therefore, requires differentiation:

https://github.com/project-deus/Deus/blob/59455693eb99556ff3b5eb8200e481339962b972/QuantumMechanics/Field/Space.swift#L34-L38

Possible SPM–toolchain incompatibility

On top of that, there seems to be an issue with SPM on such a version of the Swift toolchain: setting it as that with which xcbuild builds and tests the project errors with:

xcodebuild: error: Could not resolve package dependencies:
  fatalError
  <unknown>:0: warning: legacy driver is now deprecated; consider avoiding specifying '-disallow-use-new-driver'
<unknown>:0: error: unable to execute command: <unknown>

fatalError

(Which is rather funny: why is fatalError being output? Why is the warning being run as a shell command? 🥸)
(See #44 and https://github.com/project-deus/Deus/actions/runs/17702698250/job/50310350535.)


Because of these issues, which are halting advancements on the project, insisting on using differentiation implemented by Swift has proven to not be a good idea. The solution appears to be to do so manually.

@jeanbarrossilva jeanbarrossilva self-assigned this Sep 13, 2025
@jeanbarrossilva jeanbarrossilva added the roadmap Shift in direction of the project label Sep 14, 2025
@jeanbarrossilva jeanbarrossilva merged commit 361f62b into main Sep 14, 2025
2 checks passed
@jeanbarrossilva jeanbarrossilva deleted the ditch-swift-diff-impl branch September 14, 2025 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

roadmap Shift in direction of the project

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant