diff --git a/DXFeedFramework.xcodeproj/project.pbxproj b/DXFeedFramework.xcodeproj/project.pbxproj index 522640138..6a3b1f3be 100644 --- a/DXFeedFramework.xcodeproj/project.pbxproj +++ b/DXFeedFramework.xcodeproj/project.pbxproj @@ -3118,7 +3118,7 @@ HEADER_SEARCH_PATHS = ""; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "@loader_path/Frameworks", @@ -3132,7 +3132,7 @@ "$(PROJECT_DIR)/graal_builds/osx_universal", "$(PROJECT_DIR)/graal_builds/ios", ); - MACOSX_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MARKETING_VERSION = 1.0; OTHER_LDFLAGS = ""; "OTHER_LDFLAGS[sdk=iphoneos*]" = ( @@ -3180,7 +3180,7 @@ HEADER_SEARCH_PATHS = ""; INFOPLIST_KEY_NSHumanReadableCopyright = ""; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 14.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; LD_RUNPATH_SEARCH_PATHS = ( "@executable_path/Frameworks", "@loader_path/Frameworks", @@ -3194,7 +3194,7 @@ "$(PROJECT_DIR)/graal_builds/osx_universal", "$(PROJECT_DIR)/graal_builds/ios", ); - MACOSX_DEPLOYMENT_TARGET = 12.0; + MACOSX_DEPLOYMENT_TARGET = 10.13; MARKETING_VERSION = 1.0; "OTHER_LDFLAGS[sdk=iphoneos*]" = ( "-lc++", diff --git a/README.md b/README.md index a880c8bc6..39fcfd5b4 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,9 @@ and [dxFeed Java API](https://docs.dxfeed.com/dxfeed/api/overview-summary.html) * [Future Development](#future-development) * [Implementation Details](#implementation-details) - [Documentation](#documentation) +- [Requirements](#requirements) - [Usage](#usage) +- [Tools](#tools) - [Current State](#current-state) ## Overview @@ -98,19 +100,60 @@ Find useful information in our self-service dxFeed Knowledge Base or Swift API d * [Order Book reconstruction](https://kb.dxfeed.com/en/data-model/dxfeed-order-book/order-book-reconstruction.html) * [Symbology Guide](https://kb.dxfeed.com/en/data-model/symbology-guide.html) +## Requirements + +### Windows + +Only x64 versions are supported. + +| OS | Version | Architectures | +|---------------------------------------|----------------|---------------| +| [Windows][Windows-client] | 8, 8.1 | x64 | +| [Windows 10][Windows-client] | Version 1607+ | x64 | +| [Windows 11][Windows-client] | Version 22000+ | x64 | +| [Windows Server][Windows-Server] | 2012+ | x64 | +| [Windows Server Core][Windows-Server] | 2012+ | x64 | +| [Nano Server][Nano-Server] | Version 1809+ | x64 | + +#### Requirements + +### macOS + +| OS | Version | Architectures | +|---------------------|---------|---------------| +| [macOS][macOS] | 10.13+ | x64 | +| [macOS][macOS] | 11+ | Arm64 | + +Is supported in the Rosetta 2 x64 emulator. + +[macOS]: https://support.apple.com/macos + +### iOS + +| OS | Version | Architectures | +|---------------------|---------|---------------| +| [iOS][iOS] | 12+ | Arm64 | +| [iOS Simulator] | 12+ | x64, Arm64 | + +[iOS]: https://support.apple.com/ios ## Usage -```csharp +```swift +class Listener: DXEventListener { + func receiveEvents(_ events: [MarketEvent]) { + events.forEach { + print($0.toString()) + } + } +} + let endpoint = DXEndpoint.builder() .withPropery("dxfeed.address", "demo.dxfeed.com:7300") .build() -let subscription = endpoint.getFeed().createSubscription(EventType.Quote) -subscription.addListener { events in - for e in events { - print(e) - } -} +let subscription = endpoint.getFeed().createSubscription(EventCode.quote) +let eventListener = Listener() +subscription.add(observer: eventListener} subscription.addSymbols("AAPL") ``` @@ -134,6 +177,30 @@ Quote{AAPL, eventTime=0, time=20221219-223312.000, timeNanoPart=0, sequence=0, b +## Tools + +[Tools](https://github.com/dxFeed/dxfeed-graal-swift-api/tree/swift/Samples/PerfTestCL/) +is a collection of tools that allow you to subscribe to various market events for the specified symbols. The tools can +be +downloaded +from [Release](https://github.com/dxFeed/dxfeed-graal-swift-api/releases) (tools.zip includes self-contained versions) + +* [Connect](https://github.com/dxFeed/dxfeed-graal-swift-api/blob/swift/Samples/PerfTestCL/ConnectTool.swift) + connects to the specified address(es) and subscribes to the specified events with the specified symbol +* [Dump](https://github.com/dxFeed/dxfeed-graal-swift-api/blob/swift/Samples/PerfTestCL/DumpTool.swift) + dumps all events received from address. This was designed to retrieve data from a file +* [PerfTest](https://github.com/dxFeed/dxfeed-graal-swift-api/blob/swift/Samples/PerfTestCL/PerfTestTool.swift) + connects to the specified address(es) and calculates performance counters (events per second, memory usage, CPU usage, + etc.) +* [LatencyTest](https://github.com/dxFeed/dxfeed-graal-swift-api/blob/swift/Samples/PerfTestCL/LatencyTestTool.swift) + connects to the specified address(es) and calculates latency. + +To run tools on macOs, it may be necessary to unquarantine them: + +``` +sudo /usr/bin/xattr -r -d com.apple.quarantine +``` + ## Current State ### Endpoint Roles