Skip to content

Commit 93504d2

Browse files
authored
Merge pull request #117 from erkanyildiz/master
For 18.01
2 parents fd8fe22 + 072707b commit 93504d2

31 files changed

+833
-375
lines changed

CHANGELOG.md

Lines changed: 261 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,261 @@
1+
## 18.01
2+
3+
- Added `attribution` config
4+
- Added recording city and country for GeoLocation
5+
- Added recording explicit IP address for GeoLocation
6+
- Added disabling GeoLocation
7+
- Updated `recordLocation` method to override inital `location` config
8+
- Fixed reserved key for IP address query string
9+
- Fixed a `CoreTelephony` related crash due to an iOS bug
10+
- Replaced `NSUserDefaults` with `NSCachesDirectory` on tvOS for persistency
11+
- Improved auto dSYM uploader script
12+
- Improved performance on stored request limit execution
13+
14+
- Other various improvements
15+
- Fixed a placeholder type specifier for `NSNumber`
16+
- Deleted unnecessary `CLYMessaging` definition
17+
- Deleted unnecessary strong ownership qualifiers
18+
- Added Hindu translation for star rating dialog
19+
- Added change log file
20+
- Updated user details and star rating reserved keys as constants
21+
- Updated `OpenGLESVersion` method return type as `NSString`
22+
- Updated time related types as `NSTimeInterval`
23+
- Updated HeaderDocs
24+
25+
26+
27+
## 17.09
28+
29+
- Updated for Xcode 9 and iOS 11
30+
- Added symbolication support for crash reports
31+
- Added Automatic dSYM Uploading script
32+
- Added extension subspec for integrating Rich Push Notifications with CocoaPods
33+
- Added nullability specifiers for better Swift compatibility
34+
- Added 28 new system UIViewController subclass exception for Auto View Tracking
35+
- Added convenience method for recording action event for manually handled notifications
36+
- Added convenience method for recording handled exception with stack trace
37+
- Added precaution for invalid event keys
38+
- Added precaution for corrupt request strings
39+
- Made Zero-IDFA fix optional
40+
- Fixed a view tracking duration problem where duration being reported as timestamp
41+
- Replaced `crashLog` method with `recordCrashLog` and added deprecated warning
42+
- Changed dispatch queue type for opening external URLs
43+
44+
- Other various improvements
45+
- Added Bengali translation for star rating dialog
46+
- Updated metric, event, view tracking and crash report reserved keys as constants
47+
- Deleted unnecessary gitattributes file
48+
- Deleted duplicate Zero-IDFA const
49+
- Rearranged file imports
50+
- Updated HeaderDocs
51+
- Cleaned whitespace
52+
53+
54+
55+
## 17.05
56+
57+
- Added Rich Push Notifications support (attachments and custom action buttons)
58+
- Added manual session handling
59+
- Added URL escaping for custom device ID and other user defined properties
60+
- Added support for accidental extra slash in host
61+
- Added architecture, executable name and load address for crash reporting
62+
- Added IP optional parameter
63+
- Added SDK metadata to all request
64+
- Switched to SHA256 for parameter tampering protection
65+
- Discarded `recordUserDetails` method and combined it with `save` method
66+
- Improved `AutoViewTracking` active duration calculation
67+
- Improved Countly payload check in notification dictionary
68+
- Fixed inner event timestamp for 32 bit devices
69+
- Fixed token cleaning when user's permission changes
70+
- Fixed checksum calculation for `zero-IDFA` fix case
71+
- Fixed OS version metric for `tvOS`
72+
- Fixed double `suspend` method call when user kills the app using App Switcher
73+
- Fixed a compiler warning for `macOS` targets
74+
- Fixed `AutoViewTracking` for `macOS` targets
75+
- Fixed showing of multiple alerts in succession
76+
77+
- Other various improvements
78+
- Refactored picture upload data preparation from request string using `NSURLComponents`
79+
- Refactored `zero-IDFA` check
80+
- Refactored additional info to be sent with begin session request
81+
- Refactored checksum appending
82+
- Refactored URLSession generation
83+
- Refactored opening external URLs on main thread
84+
- Refactored device model identifier method
85+
- Refactored sending crash report into connection manager
86+
- Replaced `__OPTIMIZED__` flag with `DEBUG` flag for push notification test mode detection
87+
- Replaced boundary method with constant string
88+
- Replaced text based dismiss button with cross dismiss button for star-rating
89+
- Redefined request query string keys as constants
90+
- Redefined push notification reserved keys as constants
91+
- Redefined GET request max length as a constant
92+
- Redefined server input endpoint as a constant
93+
- Redefined push notification test mode values as enum
94+
- Standardized some integer types
95+
- Standardized target checking preprocessor macro usage
96+
- Deleted unnecessary `init` override in push manager
97+
- Deleted unnecessary `updateSessionPeriod` property in connection manager
98+
- Deleted unnecessary `starRatingDismissButtonTitle` config property
99+
- Deleted internal crash test methods
100+
- Added Czech and Latvian localization for star-rating dialog
101+
- Changed example host URL for rebranding compatibility
102+
- Updated handling of notification on `iOS9` and older
103+
- Updated alert key handling in push notification payload
104+
- Updated HeaderDocs
105+
- Cleaned whitespace
106+
107+
108+
109+
## 16.12
110+
111+
- Refactored push notifications
112+
- Made integration more easy
113+
- Added iOS10 push notifications handling
114+
- Added convenience method for asking push notifications permission covers all iOS versions
115+
- Renamed feature name from `CLYMessaging` to `CLYPushNotifications`
116+
- Added configuration option `doNotShowAlertForNotifications` to disable push triggered alerts
117+
- Discarded complicated `UIUserNotificationCategory` actions
118+
- Added configuration option `sendPushTokenAlways` to record push token always (for sending silent notification to users without notification permission)
119+
- Discarded App Store URL fetching with `NSURLConnection`
120+
- Discarded iOS7 support and deprecated method calls
121+
- Switched to runtime controlled internal logging instead of preprocessor flag
122+
- Added AutoViewTracking support for tvOS
123+
- Added view controller title and custom titleView support for AutoViewTracking
124+
- Improved AutoViewTracking performance and Swift compatibility
125+
- Refactored suspending for crash reporting
126+
- Switched to async file save for suspending
127+
- Added user login and logout convenience methods
128+
- Added configuration option to enable Apple Watch related features
129+
- Moved archiving of queued request into sync block to prevent a very rare occurring crash
130+
- Refactored unsent session duration
131+
- Added completion callback for automatically displayed star-rating dialog
132+
- Partially fixed but temporarily disabled APM feature until server completely supports it
133+
- Fixed too long exception name in crash reports on iOS10
134+
- Other various improvements
135+
- Refactored starting method
136+
- Switched to separate window based alert controller displaying for push notifications and star-rating dialogs
137+
- Renamed constant kCountlyStarRatingButtonSize to prevent compile time conflicts
138+
- Renamed server input endpoint variable for white label SDK renamer script compatibility
139+
- Updated star-rating reserved event key
140+
- Added internal log for successful initialization with SDK name and version
141+
- Fixed unused `UIAlertViewAssociatedObjectKey` warning for macOS
142+
- Removed old deviceID zero-IDFA fixer redundant request
143+
- Added internal logging for connection type retrieval exception
144+
- Added exception type info to crash reports
145+
- Fixed duplicate exception adding for AutoViewTracking
146+
- Prevented Countly internal view controllers from being tracked by AutoViewTracking
147+
- Prefixed all category methods to prevent possible conflicts
148+
- Changed timer's runloop mode
149+
- Updated timestamp type specifier (thanks to @scottlaw)
150+
- Changed SDK metadata sending to begin_session only
151+
- Replaced empty string checks with length checks
152+
- Cleared nullability specifiers
153+
- Updated HeaderDocs
154+
- Cleaned whitespace
155+
156+
157+
158+
## 16.06.4
159+
160+
- Fixed iOS10 zero-IDFA problem
161+
- Fixed TARGET_OS_OSX warning for iOS10 SDK on Xcode 8.
162+
- Fixed ending of background tasks.
163+
- Added parameter tampering protection.
164+
- Added density metric.
165+
- Added alwaysUsePOST config property for using POST method for all requests regardless of the data size.
166+
- Added timezone.
167+
- Switched to millisecond timestamp.
168+
- Disabled server response dictionary check.
169+
- Other minor improvements like better internal logging, standardization, whitespacing, code cleaning, commenting, pragma marking and HeaderDocing
170+
171+
172+
173+
## 16.06.3
174+
175+
- Fixed a persistency related crash
176+
- Improved thread safety of request queue and events
177+
- Added Star-Rating, the simplest form of feedback from users, both automatically and manually.
178+
- Improved event recording performance and safety for APM and Auto View Tracking.
179+
- Added custom HTTP header field support for requests, both on initial configuration and later.
180+
- Standardized internal logging grammar and formatting for easier debugging
181+
- Improved headerdocs grammar and formatting for easier integration and usage
182+
- Fixed some static analyzer warnings
183+
184+
185+
186+
## 16.06.2
187+
188+
- Added Star-Rating, the simplest form of feedback from users, both automatically and manually.
189+
- Improved event recording performance and safety for APM and Auto View Tracking.
190+
- Added custom HTTP header field support for requests, both on initial configuration and later.
191+
- Standardized internal logging grammar and formatting for easier debugging
192+
- Improved headerdocs grammar and formatting for easier integration and usage
193+
- Fixed some static analyzer warnings
194+
195+
196+
197+
## 16.06.1
198+
199+
- Added support for certificate pinning.
200+
- Added deleting of user details properties on server by setting them as NSNull.
201+
- Implemented switching between GET and POST depending on data size on requests.
202+
- Fixed a URL encoding issue which causes problems for Asian languages and some JSON payloads.
203+
- Fixed custom crash log formatter.
204+
205+
206+
207+
## 16.06
208+
209+
- Fixed a problem with changing device ID (for system generated device IDs)
210+
- Added isTestDevice flag to mark test devices for Push Notifications
211+
- Improved Auto View Tracking by ignoring non-visible foundation UIViewController subclasses
212+
- Implemented manually adding exception UIViewController subclasses for Auto View Tracking
213+
- Changed default device ID type for tvOS from IDFA to NSUUID
214+
- Added stored requests limit
215+
- Added optional parameters ISOCountryCode, city and location for advanced segmentation
216+
- Discarded timed events persistency
217+
- Added buildUUID and build number to Crash Reports
218+
- Added SDK name (language-origin-platform) to all requests
219+
- Changed default alert title for push messages
220+
- Other minor improvements like better internal logging, standardization, whitespacing, code cleaning, commenting, pragma marking and HeaderDocing
221+
222+
223+
224+
# 16.02.01
225+
226+
- Swithed to POST method for all requests by default
227+
- Fixed some issues with Crash Reporting persistency
228+
- Fixed some issues with CocoaPods v1.0.0
229+
- Other minor fixes and improvements
230+
231+
232+
233+
## 16.02
234+
235+
Completely re-written iOS SDK with watchOS, tvOS & OSX support
236+
- APM
237+
- Manual/Auto ViewTracking
238+
- UserDetails modifiers
239+
- watchOS 2 support
240+
- tvOS support
241+
- Configurable starting
242+
- Custom or system provided (IDFA, IDFV, OpenUDID) device ID
243+
- Changing/merging device ID on runtime
244+
- Persistency without CoreData
245+
- Various performance improvements and minor bugfixes
246+
247+
248+
249+
## 15.06.01
250+
251+
Updated CocoaPods spec
252+
253+
254+
255+
## 15.06
256+
257+
- Added WatchKit support
258+
- Added CrashReporting support
259+
- Fixed minor problems with Messaging
260+
- Added manually ending sessions on background fetch
261+
- Switched to Ubuntu version numbering

0 commit comments

Comments
 (0)