Skip to content

Commit b196133

Browse files
committed
Merge branch 'main' into feature/perf
2 parents 9f0c459 + 8d2248d commit b196133

File tree

19 files changed

+17001
-161
lines changed

19 files changed

+17001
-161
lines changed

.github/workflows/pull_request.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
name: Pull request
22

3+
permissions:
4+
contents: read
5+
36
on:
47
pull_request:
58
types: [opened, reopened, synchronize]

CMakeLists.txt

Lines changed: 0 additions & 17 deletions
This file was deleted.

README.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ See [Declarative String Processing Overview][decl-string]
88

99
## Requirements
1010

11-
- [Swift Trunk Development Snapshot](https://www.swift.org/download/#snapshots) DEVELOPMENT-SNAPSHOT-2022-04-20 or later.
11+
- Currently tested with [Swift Trunk Development Snapshot](https://www.swift.org/download/#snapshots) DEVELOPMENT-SNAPSHOT-2025-09-14 or later.
1212

1313
## Trying it out
1414

@@ -27,7 +27,7 @@ For example, in a `Package.swift` file's target declaration:
2727

2828
## Integration with Swift
2929

30-
`_RegexParser` and `_StringProcessing` are specially integrated modules that are built as part of apple/swift.
30+
`_RegexParser` and `_StringProcessing` are specially integrated modules that are built as part of [apple/swift](https://github.com/apple/swift).
3131

3232
Specifically, `_RegexParser` contains the parser for regular expression literals and is built both as part of the compiler and as a core library. `_CUnicode` and `_StringProcessing` are built together as a core library named `_StringProcessing`.
3333

@@ -39,17 +39,14 @@ Specifically, `_RegexParser` contains the parser for regular expression literals
3939

4040
### Branching scheme
4141

42-
#### Development branch
43-
4442
The `main` branch is the branch for day-to-day development. Generally, you should create PRs against this branch.
4543

46-
#### Swift integration branches
47-
4844
Branches whose name starts with `swift/` are Swift integration branches similar to those in [apple/llvm-project](https://github.com/apple/llvm-project). For each branch, dropping the `swift/` prefix is the corresponding branch in [apple/swift](https://github.com/apple/swift).
4945

46+
This package's `main` branch automatically integrates with Swift's `main` branch.
47+
5048
| apple/swift branch | apple/swift-experimental-string-processing branch |
5149
| ------------------- | ----------------------------------------------------- |
52-
| main | swift/main |
5350
| release/5.7 | swift/release/5.7 |
5451
| ... | swift/... |
5552

@@ -59,11 +56,13 @@ A pair of corresponding branches are expected to build successfully together and
5956

6057
To integrate the latest changes in apple/swift-experimental-string-processing to apple/swift, carefully follow the workflow:
6158

62-
- Create pull requests.
63-
- Create a branch from a commit on `main` that you would like to integrate into `swift/main`.
64-
- Create a pull request in apple/swift-experimental-string-processing from that branch to `swift/main`, e.g. "[Integration] main (<commit>) -> swift/main".
65-
- If apple/swift needs to be modified to work with the latest `main` in apple/swift-experimental-string-processing, create a pull request in apple/swift. **Note:** Since CI in apple/swift-experimental-string-processing has not yet been set up to run full toolchain tests, you should create a PR in apple/swift regardless; if the integartion does not require changing apple/swift, create a dummy PR in apple/swift by changing the README and just not merge it in the end.
66-
- Trigger CI.
59+
- Run package CI
60+
- In the pull request, trigger package CI using
61+
```
62+
@swift-ci please test
63+
```
64+
- Run full Swift CI for any changes to public or SPI interfaces or the `_RegexParser` module.
65+
- If apple/swift needs to be modified to work with the latest `main` in apple/swift-experimental-string-processing, create a pull request in apple/swift. **Note:** Since CI in apple/swift-experimental-string-processing has not yet been set up to run full toolchain tests, you should create a PR in apple/swift regardless; if the integration does not require changing apple/swift, create a dummy PR in apple/swift by changing the README and close it in the end instead of merging.
6766
- In the apple/swift-experimental-string-processing pull request, trigger CI using the following command (replacing `<PR NUMBER>` with the apple/swift pull request number, if any):
6867
```
6968
apple/swift#<PR NUMBER> # use this line only if there is an corresponding apple/swift PR
@@ -75,7 +74,9 @@ To integrate the latest changes in apple/swift-experimental-string-processing to
7574
@swift-ci please test
7675
```
7776
- Merge when approved.
78-
- Merge the pull request in apple/swift-experimental-string-processing as a **merge commit**.
77+
- Merge the PR in apple/swift-experimental-string-processing:
78+
- as a squash or rebase if against main (the development branch).
79+
- as a merge commit if it's a merge from main to swift/release/x.y.
7980
- Merge the pull request in apple/swift (if any).
8081
8182
### Development notes

Sources/CMakeLists.txt

Lines changed: 0 additions & 5 deletions
This file was deleted.

Sources/RegexBenchmark/BenchmarkRegistration.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ extension BenchmarkRunner {
2323
// self.addHTML() // Disabled due to \b being unusably slow
2424
self.addEmail()
2525
self.addCustomCharacterClasses()
26+
self.addDna()
2627
self.addBuiltinCC()
2728
self.addUnicode()
2829
self.addLiteralSearch()
@@ -32,6 +33,10 @@ extension BenchmarkRunner {
3233

3334
self.addURLWithWordBoundaries()
3435
self.addFSPathsRegex()
36+
37+
// Register community benchmarks
38+
self.addCommunityBenchmark_sspringerURL()
39+
3540
// -- end of registrations --
3641
}
3742
}

0 commit comments

Comments
 (0)