Skip to content

Commit

Permalink
v2.0.0 (#69)
Browse files Browse the repository at this point in the history
* feat: add decoding capability in case of failure caused due to HTTP status code

Resolves: none.

* feat: override User-Agent HTTP header in session configuration (#26)

Resolves: none.

* Add macOS example (#27)

* feat: move iOS example project into new sub folder

Resolves: none.

* fix: update framework search paths

Resolves: none.

* feat: add empt macOS example project to workspace

Resolves: none.

* fix: update framework scheme name

Resolves: none.

* feat: add files to macOS example directory

Resolves: none.

* fix: apply public access modifier to DefaultHTTPErrorBody and DefaultNetworkAPIError

Resolves: none.

* refactor: add description comment for ProcessInfo extension

Resolves: none.

* fix: add RxNetworkKit bridging header reference

Resolves: none.

* refactor: apply project recommended settings

Resolves: none.

* feat: connect viewModel to tableview UI

Resolves: none.

* feat: complete ViewController class in macOS Example

Resolves: none.

* refactor: remove old un-needed file

Resolves: none.

* fix: apply correct image scale for error view

Resolves: none.

* Apply new version (0.0.2) (#28)

* fix: remove tinted button warning

Resolves: none.

* version: 0.0.2

Resolves: none.

* fix: update version for podSpec file

Resolves: none.

* fix: remove RxDataSources import statement (#31)

Resolves: none.

* Add CI Workflows For Repository (#33)

* feat: add iOS workflow

Resolves: none.

* fix: update build-ios.yml

Resolves: none.

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Create build-macos.yml

* Update build-ios.yml + build-macos.yml

* fix error 65

* Update build-ios.yml

* update build-ios.yml + build-macos.yml

* Update build-macos.yml

* Update project.pbxproj

* add publish-podspec.yml

* add workflow files outside of folders

* Update publish-podspec.yml

* Update publish-podspec.yml

* Update publish-podspec.yml

* Create pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* test container workflow

* Update build.yml

* Update build.yml

* add some changes

* Update build.yml

* add some changes

* Update build.yml

* refactor: update names + remove comments

Resolves: none.

* add trigger for trunk push workflow

* add dummy project to test SPM integration

* add spm-lint.yml

* Update spm-lint.yml

* Update spm-lint.yml

* Update spm-lint.yml

* Update spm-lint.yml

* update dummy project

* update workspace dependencies versions

* Update CI Workflows

* update CI workflows

* Update CI Workflow

* Update Dependency Version Rules (#45)

* fix: update version rules for SPM to upToNextMajor

Resolves: none.

* fix: update version rule for SPM in iOS Example project

Resolves: none.

* fix: update version rules for cocoapods in podspec file

Resolves: none.

* feat: add WebSocket capability to NetworkManager (#46)

Resolves: none.

* fix a typo

* update dependencies versions

Resolves: none.

* update Package.swift + podspec file

* change xcode version used in CI/CD to 14.3.1

Resolves: none.

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update build.yml

* Update build.yml

* update workflow files

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-trunk-push.yml

* Update spm-lint.yml

* Update build-macos.yml

* update Xcode version to 15.0.0 for CI workflows

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* Update pod-lib-lint.yml

* break: drop support for Cocoapods (cannot work with Xcode 15)

Resolves: none.

* [49][DocC][Update Documentation] (#50)

* feat: update overview for classes, structs, enums, typaliases and protocols

Resolves: none.

* feat: add docs catalog

Resolves: none.

* update CI workflows to build docs

Resolves: none.

* update CI workflows

Resolves: none.

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* Update build-ios.yml

* fix: update corrupt ci workflow file

Resolves: none.

* Delete build-deploy-docs1.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* update CI workflows

* Update build.yml

* Update build-ios.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update build-deploy-docs.yml

* Update websocket error handling (#58)

* feature: bind send and ping errors to the error relay in WebSocket object

Resolves: none.

* fix: capture weak reference to self to avoid retain cycle in example viewModel

Resolves: none.

* feat: add WebSocketError

Resolves: none.

* Update NetworkManager.md

* Update build.yml

* Rename Types and Organize Project files (#61)

* feat: sort files by name inside Source folder

Resolves: none.

* feat: restructure framework project

Resolves: none.

* feat: update docs

Resolves: none.

* feat: update docs

Resolves: none.

* feat: update examples

Resolves: none.

* feat: update docs

Resolves: none.

* feat: move common http types to separate framework

Resolves: none.

* update ci

* update ci

* feat: add CoreHTTP as swift package

Resolves: none.

* Update Package.swift

* feat: add CoreHTTP as a remote Swift Package

Resolves: none.

* Update Package.swift

* Update Package.swift

* feat: update docs

Resolves: none.

* Update build-macos.yml

* Update build-macos.yml

* feat: add CoreExample framework

Resolves: none.

* feat: add CoreExample as a dependency

Resolves: none.

* feat: add CoreExample to macOS Example

Resolves: none.

* fix: update code signing for framework

Resolves: none.

* Update build-macos.yml

* Update build-macos.yml

* update frameworks flow

* Update build-ios.yml

* Update Package.resolved

* Update project.pbxproj

* Update project.pbxproj

* Update build-ios.yml

* update dependencies

* feat: add Session object that can be shared between RESTClient and HTTPClient

Resolves: none.

* refactor: remove reference to event monitor in RESTClient and HTTPClient

Resolves: none.

* feat: update ci workflows

Resolves: none.

* feat: update documentation

Resolves: none.

* Update build.yml

* Update build.yml

* feat: bump Xcode version to 15.1.0 for workflow files

Resolves: none.

* Feature/add watch os example (#62)

* feat: add watch os example

Resolves: none.

* Update ViewController.swift

* Update build.yml

* Update build-watchos.yml

* Update build-watchos.yml

* Update README.md

* Update README.md

* Update README.md

* feat: bump product version to 1.0.0

Resolves: none.

* fix: silence warnings

Resolves: none.

* feat: add watchOS platform to package manifest + sort files

Resolves: none.

* Feature/add tvos support (#63)

* feat: add tvOS support + example

Resolves: none.

* Update build.yml

* Update build.yml

* Update build-tvos.yml

* feat: update documentation

Resolves: none.

* Update README.md

* feat: update Dummy project used to verify SPM

Resolves: none.

* fix: update README.md + add missing initializers

Resolves: none.

* Update RxNetworkKit.md

* Update spm-lint.yml

* fix: update ci file + remove typo

Resolves: none.

* Feature/add request logging (#67)

* feat: add HTTPRequestLogger and SessionConfiguration

Resolves: none.

* fix: update examples

Resolves: none.

* feat: remove un-needed files + update RequestRouter

Resolves: none

* Update Package.resolved

* Update README.md

* feat: update documentation

Resolves: none.

* feat: bump versions to 2.0.0

Resolves: none.
  • Loading branch information
loay-ashraf authored Jan 25, 2024
1 parent 956c797 commit 653ef76
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 19 deletions.
5 changes: 1 addition & 4 deletions Docs.docc/Pages/RxNetworkKit.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ It makes use of RxSwift's traits at request level to acheive a high level of spe
### Foundation

- ``Session``
- ``SessionConfiguration``
- ``RESTClient``
- ``HTTPClient``

Expand All @@ -45,10 +46,6 @@ It makes use of RxSwift's traits at request level to acheive a high level of spe
- ``HTTPRequestRetrier``
- ``HTTPRequestRetryPolicy``

### Event Monitor

- ``HTTPRequestEventMonitor``

### Network Reachability

- ``NetworkReachability``
Expand Down
4 changes: 2 additions & 2 deletions Examples/iOS/iOS Example.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
OTHER_CODE_SIGN_FLAGS = "--deep";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKitExample;
PRODUCT_NAME = "iOS Example";
Expand Down Expand Up @@ -367,7 +367,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
OTHER_CODE_SIGN_FLAGS = "--deep";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKitExample;
PRODUCT_NAME = "iOS Example";
Expand Down
4 changes: 2 additions & 2 deletions Examples/macOS/macOS Example.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -361,7 +361,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
OTHER_CODE_SIGN_FLAGS = "--deep";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKitMacOSExample;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand Down Expand Up @@ -394,7 +394,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
OTHER_CODE_SIGN_FLAGS = "--deep";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKitMacOSExample;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand Down
4 changes: 2 additions & 2 deletions Examples/tvOS/tvOS Example.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -372,7 +372,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.las.tvOSExample;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = YES;
Expand All @@ -398,7 +398,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.las.tvOSExample;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = YES;
Expand Down
4 changes: 2 additions & 2 deletions Examples/watchOS/watchOS Example.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -406,7 +406,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.las.watchOSExample.watchkitapp;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = watchos;
Expand Down Expand Up @@ -436,7 +436,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
PRODUCT_BUNDLE_IDENTIFIER = com.las.watchOSExample.watchkitapp;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = watchos;
Expand Down
4 changes: 2 additions & 2 deletions RxNetworkKit.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -657,7 +657,7 @@
"@loader_path/Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKit;
Expand Down Expand Up @@ -698,7 +698,7 @@
"@loader_path/Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu11 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = com.las.RxNetworkKit;
Expand Down
4 changes: 2 additions & 2 deletions Shared/CoreExample/CoreExample.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@
"@loader_path/Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = com.las.CoreExample;
Expand Down Expand Up @@ -411,7 +411,7 @@
"@loader_path/Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 11.0;
MARKETING_VERSION = 1.0.0;
MARKETING_VERSION = 2.0.0;
MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++";
MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20";
PRODUCT_BUNDLE_IDENTIFIER = com.las.CoreExample;
Expand Down
6 changes: 3 additions & 3 deletions Source/Session/Types/SessionConfiguration.swift
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ public class SessionConfiguration {
.init(urlSessionConfiguration: .default, setUserAgentHeader: true, logRequests: true)
}

/// `URLSessionConfiguration`object used to create `URLSession` object.
/// `URLSessionConfiguration` object used to create `URLSession` object.
let urlSessionConfiguration: URLSessionConfiguration
/// `Bool` flag that indicates wether a `URLSession` should add `User-Agent` header to outgoing requests.
let setUserAgentHeader: Bool
/// `Bool` flag that indicates wether a `URLSession` should print outgoing requests to the console.
let logRequests: Bool

/// Description
/// Creates a `SessionConfiguration` instance.
///
/// - Parameters:
/// - urlSessionConfiguration: `URLSessionConfiguration`object used to create `URLSession` object.
/// - urlSessionConfiguration: `URLSessionConfiguration` object used to create `URLSession` object.
/// - setUserAgentHeader: `Bool` flag that indicates wether a `URLSession` should add `User-Agent` header to outgoing requests.
/// - logRequests: `Bool` flag that indicates wether a `URLSession` should print outgoing requests to the console.
public init(urlSessionConfiguration: URLSessionConfiguration, setUserAgentHeader: Bool, logRequests: Bool) {
Expand Down

0 comments on commit 653ef76

Please sign in to comment.