Commit Graph
424 Commits
Author SHA1 Message Date
Sergej Jaskiewicz 94de7bae46 Update the list of supported platforms 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz ed1b06ba51 Test with Swift 5.5.1 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 4b2c87a0bb Update Future implementation 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 0243fd063d Enable concurrency only since Swift 5.5 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 4fed5e9a5a Simplify a helper in Package.swift 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 80a4915715 Enable testing with Swift 5.4 on WASM 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 4716805f12 Make it compile 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 5490ff9be9 Enable testing with Swift 5.5 on Windows 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz c911862a24 [Xcode 13] Implement async/await support for publishers (no tests yet) 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz f823f7b18c Introduce take() helper method 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 02d1494ce9 [Xcode 13] Fix implementation so tests pass 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz f69bf6af64 [Xcode 13] Update tests so they pass in Combine compatibility mode 2022-02-01 18:58:40 +03:00
Sergej Jaskiewicz 866d837cdf [Xcode 13] Add new APIs to RemainingSwiftInterface.swift 2022-02-01 18:58:40 +03:00
Marcus Ficner 7d0a8cd6f8 Fix typo in Publishers.FlatMap.swift (#228) 2022-01-23 12:37:12 +00:00
Max Desiatov dfd3cdf890 Migrate SwiftLint checks from CircleCI to GHA (#226)
SwiftLint integration with Danger no longer works on CircleCI. I'm migrating it to GitHub Actions in a way that's known to work in other repositories.

* Create swiftlint.yml

* Update config.yml
2021-11-29 16:56:32 +01:00
ef0288e075 Implement Zip operator (#222)
Co-authored-by: Eric Patey <eric@patey.com>
Co-authored-by: Max Desiatov <max@desiatov.com>
Co-authored-by: ArthurChi <chijie@bytedance.com>
Co-Authored-By: Sergej Jaskiewicz <broadwaylamb@users.noreply.github.com>
2021-11-22 00:29:57 +01:00
Max Desiatov f219d6f6a5 Fix Slack invite link in README.md (#224)
Resolves #223.
2021-11-03 21:37:18 +01:00
Sergej Jaskiewicz 710dfa2715 Mention Windows in README.md 2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz 791625ff3b Disable running tests on iOS 9.3
CircleCI have deprecated the image :(
2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz 7e4cdde419 "Fix" Publishers.Breakpoint tests on Windows 2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz 096e245d02 Support Windows threads in tests 2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz 1879860f35 I'm so tired of the Swift team breaking things on non-Darwin platforms
https://forums.swift.org/t/formalizing-the-unavailability-of-core-foundation/40216
2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz ace5778817 Support Windows in Package.swift 2021-09-24 16:26:09 +03:00
Sergej Jaskiewicz 12700a0500 Make COpenCombineHelpers buildable on Windows 2021-09-24 16:26:09 +03:00
Max Desiatov 6c8108f9dc Test with Windows on GitHub Actions 2021-09-24 16:26:09 +03:00
ArthurChiandVassilyChi b27b2c31ce Subscribers reentrancy bugs fix (#211)
Co-authored-by: VassilyChi <chijie@bytedance.com>
2021-07-29 01:48:45 +03:00
Sergej Jaskiewicz 3d3adb564b Release the Suffix publisher in Concatenate's Inner 2021-07-29 01:48:45 +03:00
Sergej Jaskiewicz 925bee4af9 Fix reentrancy bugs in Subscribers.Assign 2021-07-29 01:48:45 +03:00
Sergej Jaskiewicz adcee8c14d Fix reentrancy bugs in Subscribers.Sink 2021-07-29 01:48:45 +03:00
dependabot[bot] 29126ac259 Bump addressable from 2.7.0 to 2.8.0 (#212) 2021-07-13 07:54:20 +00:00
Sergej Jaskiewicz bab8e08d2f Work around SwiftLint nested configuration bug
There is a bug introduced in SwiftLint 0.43.0 (?) when nested configurations don't work.
Nested configurations let us place additional .swiftlint.yml files in subdirectories that
specify rules that should only apply to that subdirectory. This is broken now.
2021-06-21 17:38:33 +03:00
Sergej Jaskiewicz 4060ee9f57 Fix compatibility with Xcode 12.5 toolchain and SDKs 2021-06-21 17:38:33 +03:00
Sergej Jaskiewicz 5996772433 Bump Xcode version for compatibility testing 2021-02-22 20:47:35 +03:00
Sergej Jaskiewicz cd45c77fac Implement Publishers.PrefixUntilOutput 2021-02-22 20:47:35 +03:00
Stuart Austin e618d179fe Add Publishers.Throttle implementation (#195)
* Publishers.Throttle implementation with tests

* Fix Throttle lint errors and removed expectation from throttle tests. Add additional test for cancelling a subscription before a scheduled value is emitted

* Fix VirtualTimeScheduler's executeSchedulesActions default deadline not being far enough into the future on 32-bit platforms.

* Fixed multiple lint errors

* Improve Publishers.Throttle code coverage by removing enum for pending emissions

* Additional Throttle test for cancelling a Subscriber when an output has been scheduled

* ThrottleTests now run on WASI
2021-02-18 13:56:55 +00:00
Marcus Scherer 4fa5f48c19 Fix typo (#204) 2021-02-08 19:41:49 +03:00
Max Desiatov 28993ae57d Add CHANGELOG.md, bump version to 0.12.0 (#202)
* Add CHANGELOG.md, bump version to 0.12.0

* Mention the timer bug fix in `CHANGELOG.md`
0.12.0
2021-01-29 15:05:56 +00:00
Grigory Entin 3d61bf87e7 Fixed Timer(timeInterval:,repeats:,block:) not accounting timeInterval for the first fire date. (#196)
https://github.com/OpenCombine/OpenCombine/blob/master/Sources/OpenCombineFoundation/Helpers/Portability.swift#L58-L64

It looks like this was a typo/something overlooked, but basically, this `fire: Date()` breaks at least every timer publisher like `Timer.publish(every: timeInterval, on: .main, in: .default)`, as it basically results in the *first* event fired immediately vs in timeInterval. (Just in case, no, Combine does not fire that extra event).

* Fixed Timer(timeInterval:,repeats:,block:) not accounting timeInterval for the first fire date.

* Fixed Danger warning about line length.
2021-01-29 13:42:17 +00:00
Max Desiatov 911a4e1aa3 Add OpenCombineShim product for easier importing (#197) 2021-01-25 17:25:28 +03:00
Yuta Saito beb38dec0e Implementation for ObservableObject with Mirror (#201)
A temporary implementation until we implement the proper type metadata introspection.
2021-01-25 17:24:19 +03:00
Nomo Nomad 1fbf688897 Update README.md (#199) 2020-12-11 16:41:20 +03:00
Sergej Jaskiewicz 5436868053 Fix some lock acquiring in Publishers.FlatMap (#194) 2020-11-08 17:44:33 +03:00
Sergej Jaskiewicz 4977ca158f Update DispatchQueue scheduler to match iOS 14.2 behavior 2020-11-07 17:28:08 +03:00
Sergej Jaskiewicz 96214ac5f9 Run compatibility tests on iOS 14.2 2020-11-07 17:28:08 +03:00
Sergej Jaskiewicz 21fda909f5 Implement Publishers.Retry 2020-11-07 17:28:08 +03:00
Sergej Jaskiewicz 8438d09b82 Increase time intervals in OperationQueue tests
The test is sporadically failing on iOS 9.3.
2020-11-03 17:21:34 +03:00
Sergej Jaskiewicz 30a60b52cc Add missing availability annotations in tests
Fixes #192
2020-11-03 17:21:34 +03:00
Sergej Jaskiewicz a93ed143fb Add more supported platforms to Package.swift 2020-11-03 17:21:34 +03:00
Max Desiatov e054a884ef Add support for SwiftWasm with CI and tests (#191)
WebAssembly support for atomics and multi-threading isn't fully standardized yet, and it not supported in SwiftWasm at the moment. Because of this Dispatch is unavailable, and all Combine-related Foundation stuff is unavailable too. Tests related to this are disabled. Locking functions are replaced with no-op shims.
2020-11-02 22:02:39 +00:00
Sergej Jaskiewicz 9bba508134 Bump the version to 0.11.0 0.11.0 2020-10-30 00:53:48 +03:00