Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
Signed-off-by: Tim Müller-Seydlitz <[email protected]>
  • Loading branch information
timbms committed Oct 4, 2019
2 parents 89d73f5 + 69096e8 commit 45ccb3d
Show file tree
Hide file tree
Showing 31 changed files with 822 additions and 189 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ git-template
fastlane/README.md
fastlane/report.xml
fastlane/screenshots/
fastlane/test_output

openHAB.app.dSYM.zip
openHAB.ipa
81 changes: 37 additions & 44 deletions Changes.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,50 +4,43 @@
* It supports the beautiful Dark Mode

* Improvements relevant to users
* Haptic feedback when buttons. This is available as of iPhone 7
* Throttling the flow of events from colorpicker to max once every 0.3 s
* Better screen space usage with fixed layout constraints and doubled slider width depending on size class
* Rollershutter button order changed
* Handling of many variants on server side for instance http/https connections to servers still on 1.x
* Video element: Added mjpeg support
* Label for state value for rollershutter
* Changed the Basic Auth challenge handler to check against the tracked URL rather than the remote/local URL from the settings. This should ensure Basic Auth works in cases where the URL is discovered via Bonjour.
* Fix for parsing of string to number without the locale setup
* Fix for app always showing SSL certificate warning
* Handling the case where only one default sitemap is returned in a sitemappage
* Implemented haptic feedback when buttons are pressed. Note, this is only available from iPhone 7 onwards
* Enhanced the colorpicker, so that it is easier to select the desired color
* Optimized screen usage, so that more information can be displayed
* Changed order of the rollershutter button
* Fixed backwards compatibility with OpenHAB 1.x connections
* Enhanced video component by adding mjpeg support
* Improved the representation of the rollershutter component
* Enhanced authentication process for remote and local connections. This should ensure Basic Auth works in cases where the URL is discovered via Bonjour.
* Fixed data parsing issue
* Changed logic regards showing SSL certificate warning
* Improved handling of sitemaps
* Improved video URL handling on cell reuse

* Behind the scenes
* URLSession wrapped in Alamofire for network access, AFNetworking completely removed
* Improved handling of SSL certificate warning
* Display of icons when connected via https
* Setting authorization header also for icons
* Caching of icons with Kingfisher - SDWebImage purged from code base
* Converted direct URLSession usage in OpenHABTracker to use NetworkConnection.shared.manager instead to ensure that auth handling is handled properly - in particular when a 401 is returned from the server.
* Refactored HTTP Basic Auth to use the taskDidReceiveChallenge delegate so it only includes the Authorization header if requested by the server.
* Completed migration from AFNetworking to Alamofire: purged AlamofireRememberingSecurityPolicy.swift: init(policies: [String: ServerTrustPolicy]) to override ancestor, uncommented evaluateClientTrust and handleAuthenticationChallenge Reworked NetworkManager to it compile successfully with AlamofireRememberingSecurityPolicy Removed main.m, openHAB-Prefix.pch files, openHAB-Bridging-Header.h, openHABTests-Bridging-Header.h
* Fixed retain cycle in setWillSendRequestForAuthenticationChallenge closure
* SFSymbols as source of icons for iOS 13 to eventually replace DynamicButton
* Build improvements
* Swift Package Manager to replace CocoaPod where possible
* Improved fastlane
* Improved test coverage for instance for large JSON files, XML trimming whitespace, improved logic
* Many bug fixes: correct recognition of labelValue
* Refactoring:
* Completed onReceiveSessionTaskChallenge and onReceiveSessionChallenge for image download
* Recursive traversal of widgets data structure
* Refinement of swiftlint, usage of swiftformat
* Update to recent versions of SideMenu: clearing widgets to ensure cell invalidation on sitemap change
* Access to UserDefaults via Preferences to avoid typing errors and improve consistency
* Migrated from responseJSON to responseData
* Reworked XML parsing: now completely based on Fuzi framework
* Setting the FrameUITableViewCell font and color to match Apple's Guidelines
* Retain cycle in loadPage fixed
* Cache invalidation on sitemap change fixed

## Trademark Disclaimer

Product names, logos, brands and other trademarks referred to within the openHAB website are the
property of their respective trademark holders. These trademark holders are not affiliated with
openHAB or our website. They do not sponsor or endorse our materials.

* URLSession wrapped in Alamofire for network access, AFNetworking completely removed
* Improved handling of SSL certificate warning
* Display of icons when connected via https
* Setting authorization header also for icons
* Caching of icons with Kingfisher - SDWebImage purged from code base
* Converted direct URLSession usage in OpenHABTracker to use NetworkConnection.shared.manager instead to ensure that auth handling is handled properly - in particular when a 401 is returned from the server.
* Refactored HTTP Basic Auth to use the taskDidReceiveChallenge delegate so it only includes the Authorization header if requested by the server.
* Completed migration from AFNetworking to Alamofire: purged AlamofireRememberingSecurityPolicy.swift: init(policies: [String: ServerTrustPolicy]) to override ancestor, uncommented evaluateClientTrust and handleAuthenticationChallenge Reworked NetworkManager to it compile successfully with AlamofireRememberingSecurityPolicy Removed main.m, openHAB-Prefix.pch files, openHAB-Bridging-Header.h, openHABTests-Bridging-Header.h
* Fixed retain cycle in setWillSendRequestForAuthenticationChallenge closure
* SFSymbols as source of icons for iOS 13 to eventually replace DynamicButton
* Build improvements
* Swift Package Manager to replace CocoaPod where possible
* Improved fastlane
* Improved test coverage for instance for large JSON files, XML trimming whitespace, improved logic
* Many bug fixes: correct recognition of labelValue
* Refactoring:
* Completed onReceiveSessionTaskChallenge and onReceiveSessionChallenge for image download
* Recursive traversal of widgets data structure
* Refinement of swiftlint, usage of swiftformat
* Update to recent versions of SideMenu: clearing widgets to ensure cell invalidation on sitemap change
* Access to UserDefaults via Preferences to avoid typing errors and improve consistency
* Migrated from responseJSON to responseData
* Reworked XML parsing: now completely based on Fuzi framework
* Setting the FrameUITableViewCell font and color to match Apple's Guidelines
* Retain cycle in loadPage fixed
* Cache invalidation on sitemap change fixed
16 changes: 8 additions & 8 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ GEM
addressable (2.7.0)
public_suffix (>= 2.0.2, < 5.0)
atomos (0.1.3)
babosa (1.0.2)
babosa (1.0.3)
claide (1.0.3)
colored (1.2)
colored2 (3.1.2)
Expand All @@ -18,7 +18,7 @@ GEM
unf (>= 0.0.5, < 1.0.0)
dotenv (2.7.5)
emoji_regex (1.0.1)
excon (0.66.0)
excon (0.67.0)
faraday (0.15.4)
multipart-post (>= 1.2, < 3)
faraday-cookie_jar (0.0.6)
Expand All @@ -27,7 +27,7 @@ GEM
faraday_middleware (0.13.1)
faraday (>= 0.7.4, < 1.0)
fastimage (2.1.7)
fastlane (2.131.0)
fastlane (2.133.0)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.3, < 3.0.0)
babosa (>= 1.0.2, < 2.0.0)
Expand All @@ -37,9 +37,9 @@ GEM
dotenv (>= 2.1.1, < 3.0.0)
emoji_regex (>= 0.1, < 2.0)
excon (>= 0.45.0, < 1.0.0)
faraday (~> 0.9)
faraday (< 0.16.0)
faraday-cookie_jar (~> 0.0.6)
faraday_middleware (~> 0.9)
faraday_middleware (< 0.16.0)
fastimage (>= 2.1.0, < 3.0.0)
gh_inspector (>= 1.1.2, < 2.0.0)
google-api-client (>= 0.21.2, < 0.24.0)
Expand All @@ -52,7 +52,7 @@ GEM
multipart-post (~> 2.0.0)
plist (>= 3.1.0, < 4.0.0)
public_suffix (~> 2.0.0)
rubyzip (>= 1.2.2, < 2.0.0)
rubyzip (>= 1.3.0, < 2.0.0)
security (= 0.1.3)
simctl (~> 1.6.3)
slack-notifier (>= 2.0.0, < 3.0.0)
Expand Down Expand Up @@ -114,7 +114,7 @@ GEM
uber (< 0.2.0)
retriable (3.1.2)
rouge (2.0.7)
rubyzip (1.2.4)
rubyzip (1.3.0)
security (0.1.3)
signet (0.11.0)
addressable (~> 2.3)
Expand Down Expand Up @@ -156,4 +156,4 @@ DEPENDENCIES
fastlane

BUNDLED WITH
1.16.4
2.0.2
1 change: 1 addition & 0 deletions MainLaunchScreen.xib
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
<rect key="frame" x="20" y="20" width="440" height="440"/>
</imageView>
</subviews>
<color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
<constraints>
<constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="6mK-Cu-wT1" secondAttribute="trailing" constant="20" id="RlS-jR-qFk"/>
<constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="6mK-Cu-wT1" secondAttribute="bottom" constant="20" id="SkV-vS-gMw"/>
Expand Down
15 changes: 13 additions & 2 deletions Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,20 @@ target 'openHAB' do
pod 'SwiftMessages'
pod 'FlexColorPicker'
pod 'Fuzi', '~> 3.1'

target 'openHABTestsSwift' do
inherit! :search_paths
end
end

target 'openHABTestsSwift' do
target 'openHABUITests' do
inherit! :search_paths
pod 'Fuzi', '~> 3.1'
end

# Note: `pod install --clean-install` must be used if the post_install hook is changed
# temporary workaround for base language setting
post_install do |installer|
installer.generated_projects.each do |project|
project.root_object.known_regions = ["en", "Base"]
end
end
2 changes: 1 addition & 1 deletion Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,6 @@ SPEC CHECKSUMS:
SwiftLint: 5553187048b900c91aa03552807681bb6b027846
SwiftMessages: b577dc7043be8b299857ab35bb663dbff6483bd0

PODFILE CHECKSUM: 5e31c858063487afb7c7888d7cc69a00d397d559
PODFILE CHECKSUM: 878cf7e3a5c2323b18a742dcb70e60f2f1d543a5

COCOAPODS: 1.8.1
2 changes: 1 addition & 1 deletion fastlane/Deliverfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# The Deliverfile allows you to store various App Store Connect metadata
# For more information, check out the docs
# https://docs.fastlane.tools/actions/deliver/
app_version("2.1.6")
app_version("2.2.1")
copyright("#{Time.now.year} openHAB Foundation e.V.")
overwrite_screenshots("true")
30 changes: 22 additions & 8 deletions fastlane/Fastfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,31 @@
# update_fastlane

default_platform(:ios)

platform :ios do
desc "Generate new localized screenshots"
lane :screenshots do
capture_screenshots(workspace: "openHAB.xcworkspace", scheme: "openHABUITests")
capture_screenshots(workspace: "openHAB.xcworkspace",
scheme: "openHABUITests",
dark_mode: false)
end

desc 'Run unit tests.'
lane :unittests do
run_tests(
workspace: 'openHAB.xcworkspace',
scheme: 'openHABTestsSwift',
devices: ['iPhone 11 Pro']
)
end

desc "Build beta"
lane :beta do |lane|

ensure_git_branch(
branch: "(master|develop|release\\S+|hotfix\\S+)"
branch: "(master|develop|release\\S+|hotfix\\S+)"
)

# ensure that master branch is clean
ensure_git_status_clean

Expand All @@ -36,6 +47,9 @@ platform :ios do
raise "No bump type defined! Use one of: patch | minor | major".red
end

# run unit tests
unittests

# get the last commit comments from Git history
# and creates our changelog
comments = changelog_from_git_commits(
Expand All @@ -54,19 +68,19 @@ platform :ios do
)
increment_build_number(xcodeproj: "openHAB.xcodeproj")
commit_version_bump(xcodeproj: "openHAB.xcodeproj")

# push bump commit
push_to_git_remote

# create a local tag with the new version
add_git_tag(
message: comments,
tag: "v#{version}")

# publish a new release into Github
github_release = set_github_release(
api_token: ENV["GITHUB_TOKEN"],
repository_name: "openhab/openhab-ios",
api_token: ENV["GITHUB_TOKEN"],
repository_name: "openhab/openhab-ios",
name: "#{type.capitalize} version v#{version}",
tag_name: "v#{version}",
description: comments,
Expand Down
Loading

0 comments on commit 45ccb3d

Please sign in to comment.