Skip to content

Add a document about porting to new platforms. #711

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 4 commits into from
Sep 20, 2024
Merged

Conversation

grynspan
Copy link
Contributor

@grynspan grynspan commented Sep 18, 2024

This PR adds a new Porting.md file including information for developers who want to port Swift Testing to new platforms. The document uses Classic Mac OS as a strawman/example platform. That was fun. Shoutout to @belkadan.

It also adds a SWT_NO_TIMESPEC conditional because I realized that there are platforms that don't have C11's struct timespec. (Because Classic Mac OS should obviously have C types standardized 2011.)

Formatted version here.

Checklist:

  • Code and documentation should follow the style of the Style Guide.
  • If public symbols are renamed or modified, DocC references should be updated.

This PR adds a new Porting.md file including information for developers who want
to port Swift Testing to new platforms. The document uses Classic Mac OS as a
strawman/example platform. That was fun. Shoutout to @belkadan.

It also adds a `SWT_NO_TIMESPEC` conditional because I realized that there are
platforms that don't have C11's `struct timespec`. (Because Classic Mac OS
should obviously have C types standardized 2011.)

Formatted version [here]().
@grynspan grynspan added documentation 📚 Improvements or additions to documentation enhancement New feature or request labels Sep 18, 2024
@grynspan grynspan self-assigned this Sep 18, 2024
@grynspan grynspan requested a review from iamleeg September 18, 2024 18:08
@grynspan
Copy link
Contributor Author

@swift-ci test

@grynspan
Copy link
Contributor Author

@swift-ci test

@grynspan
Copy link
Contributor Author

@swift-ci test

> must build and (minimally) function before you will be able to successfully
> build Swift Testing regardless of which platform you are porting to.

### Swift or C++?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps reorder this section later in the document? Reading through it as a step-by-step, this paragraph feels a little bit out of place. What changes would I even be making, where the choice of programming language is applicable?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I'm reading along, I want to know "you should be using Swift" before I get into the technical details, I think? It would read oddly to be two sections in and see "oh by the way don't use C++ unless you absolutely have to." I've already started writing code by then!

I think.

I dunno. Where do you want to move it to?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Going to merge this as-is, but we can revise.

@grynspan grynspan merged commit 0bad002 into main Sep 20, 2024
3 checks passed
@grynspan grynspan deleted the jgrynspan/porting-doc branch September 20, 2024 17:29
@grynspan grynspan added this to the Swift 6.1 milestone Sep 20, 2024
@grynspan grynspan added the discovery 🔎 test content discovery label Mar 12, 2025
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
discovery 🔎 test content discovery documentation 📚 Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants