forked from snowplow/snowplow-android-tracker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG
148 lines (137 loc) · 7.18 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
Version 0.5.3 (2015-11-22)
--------------------------
Core: fixed session context fails on first session (#176)
Core: fixed adding STM to events is not in order (#169)
Added comments to demo-app's build.gradle to explain why it shouldn't be copied (#158)
Removed chmod +x ./ci/wait_for_emulator from README (#157)
Version 0.5.2 (2015-10-07)
--------------------------
Core: Timing event field is incorrectly converted to a String (#168)
Version 0.5.1 (2015-09-04)
--------------------------
Core: fixed eid and dtm being incorrectly added to screen_view and timing context (#163)
Common: fixed test environment imposter path (#161)
Version 0.5.0 (2015-07-28)
--------------------------
App: bumped version to 0.2.0 (#145)
Common: added release and license buttons to README (#129)
Common: updated build.gradle to also publish javadoc (#100)
Common: renamed session pause and resume functions (#154)
Core: added ability to set event ID in Event builder (#59)
Core: added in-client sessionization (#37)
Core: created an option to opt-out of data collection (#6)
Core: emitter sometimes fails to timeout in certain scenarios (#138)
Core: made session checking interval a Tracker option (#137)
Core: deviceManufacturer not getting set if it is unavailable (#135)
Core: added an event builder to simplify making events (#133)
Core: fixed issue with Events sharing one context object (#143)
Core: enabled writeAheadLogging for the SQLite database (#141)
Core: made sessionization optional (#147)
Core: ensured that ThreadPool is minimum of 2 in size (#150)
Core: fixed event required fields preconditions (#149)
Core: added TimeUnit builder argument to define all time based measurements upon (#151)
Core: added varargs argument as overloaded option for `.items` in EcommerceTransaction builder (#152)
Core: renamed opt in/out functions (#153)
Core: ensured the emitter is stopped before updating emitter settings (#155)
Core: resumeSessionChecking should not take any arguments (#156)
RxJava: stopped using scheduler.io() in favour of a controlled thread pool (#140)
RxJava: fixed emitter not using correct thread pool (#136)
RxJava/Classic: updated event sending tests to use okhttp mocks over mountebank (#62)
RxJava/Classic: reduced memory footprint of emitter by setting large variables to null after use (#144)
Core/RxJava/Classic: converted event sending & event removal into asynchronous tasks (#139)
Version 0.4.0 (2015-06-21)
--------------------------
Fixed ti_qu being converted from an int to a double (#127)
Converted all Tracker.trackXXX functions into runnables (#125)
Converted all Tracker.trackXXX functions into RxJava Observables (#86)
Fixed classic emitter status reporting (#124)
Added emitter flush function (#123)
Added emitter setter functions to update URI (#122)
Added method to get the Idfa (#121)
Gracefully handling lack of getAdvertisingIdInfo (#118)
Added batching based on payload size (#110)
Bumped payload_data version to 1-0-3 (#109)
Added device sent time on outbound events (#108)
Fixed trackStructuredEvent() misleading docs (#106)
Fixed trackStructuredEvent value should be a Float or Double, not int (#101)
Created SubjectBuilder to make creating a new subject easier (#98)
Added builder option to Emitter which allows the EMITTER_EMPTY_EVENTS_LIMIT to be set (#97)
Added builder option to Emitter which allows the EMITTER_SEND_LIMIT to be set (#96)
Added builder option to Emitter which allows the EMITTER_TICK to be set (#95)
Added builder option to Tracker which allows custom logging modes to be set (#94)
Moved mountebank imposter into a static file in test/resources (#90)
Added user timings event (#63)
Added test app (#56)
Using Google Play Services' analytic-specific library (6.5+) (#34)
Version 0.3.1 (2015-06-02)
--------------------------
Can now process immutable lists of custom contexts (#115)
Changed Debug mode to be off by default (#112)
Fixed NullPointerException when subject is null (#107)
Fixed java.lang.IllegalStateException in setAdvertisingID (#105)
Version 0.3.0 (2014-02-18)
--------------------------
Added new BufferOption for heavier event sending (#85)
Added function for users to update the DevicePlatform after Tracker creation (#82)
Added Logger class to easily handle debug messages for Logcat (#81)
Added new dependencies to gradle.build scripts (#77)
Added Mountebank Testing support (#75)
Added setUseragent to Subject class (#70)
Added setIpAddress to Subject class (#69)
Added setDomainUserId to Subject class (#68)
Added setNetworkUserId to Subject class (#67)
Added Emitter option to use either HTTP or HTTPS for event sending (#66)
Added permission to AndroidManifest for checking online status (#73)
Added function to check if the device is online before attempting to send (#72)
Removed potential memory leak from SQLite database implementation (#76)
Removed obsolete dependencies from gradle.build scripts (#74)
Removed dependency on Java Tracker Core (#57)
Updated contexts schema to 1-0-1 (#65)
Updated payload data schema to 1-0-2 (#64)
Replaced Base64.java with Android Base64 implementation (#58)
Fixed Uri.Builder implementation to allow for Port Keys (#71)
Cleaned-up and Refactored Tracker (#84)
Refactored AsyncTask to RxJava (#49)
Refactored HttpClient to OkHttp (#48)
Made the default Emitter method POST for Android (#27)
Ensured old Emitter is shutdown before appending new Emitter to Tracker (#83)
Extended Android Test Suite (#80)
Reordered package/class structure to be simpler (#78)
Changed package from com.snowplowanalytics.snowplow.tracker.android to com.snowplowanalytics.snowplow.tracker(#61)
Moved Version.java into gitignored sub-package(#60)
Emitter.addToBuffer was doing a sync write to database (#53)
Emitter.addToBuffer was leading to network on UI thread if set to immediately flush (#52)
Advertising ID was not being fetched before events sent (#51)
Advertising ID retrieval was creating new thread (#50)
Refactored SchemaPayload to make the API easier to use and understand (#89)
Version 0.2.0 (2014-12-27)
--------------------------
Added dedicated Vagrant setup (#40)
Bumped Core version to 0.2.0 (#42)
Added warning that Version.java is auto-generated (#45)
Updated to latest gradle tools and plugin, thanks @hamidp! (#39)
Added GET and POST logging in the Emitter, thanks @lixiaoyi! (#38)
Fixed Gradle Dynamic Version linting warning (#46)
Targeted latest SDK version (21) (#47)
Added Quickstart section to README (#43)
Updated CHANGELOG with missing tickets (#41)
Version 0.1.3 (2014-11-25)
--------------------------
Updated Java Tracker Core to 0.1.4 (#33)
Updated completePayload to take timestamp as a long (#35)
Fixed Emitter NPE when device is not connected (#32)
Version 0.1.2 (2014-09-19)
--------------------------
Fixed Emitter encoding the slash in /tp2 (#28)
Changed SLF4J logging to use Android logger (#19)
Version 0.1.1 (2014-09-11)
--------------------------
Bumped Core version to 0.1.3 (#22)
Fixed sending a flushBuffer twice stops the database from removing pending flags on events (#24)
Fixed addToBuffer doesn't always hit flushBuffer (#20)
Fixed data types for geolocation_context (#17)
Fixed tracker failing to retrieve Advertising ID if Play Services isn't available (#16)
Fixed library dependency warnings in Android Studio (#15)
Version 0.1.0 (2014-09-01)
--------------------------
Initial release