1ChangeLog
2============
3
4- 0.41.0
5
6  - move to repository to https://github.com/websocket-client/websocket-client.git
7  - _send_ping warning fails due to missing reference in _logging.__all__ (#294)
8
9- 0.40.0
10  - Fix opcode -> op_code (#286)
11
12- 0.39.0
13  - Shuffled around example code (#256)
14  - _send_ping graceful error handling (#262)
15  - Allow closing WebSocketApp with status/reason/timeout (#265)
16  - Support universal wheels (#267)
17  - _url: Added subnet IP address matching in no_proxy host detection (#270)
18  - fixed Incorrect encoding in continued messages python3 (#261)
19  - Pass headers for websocket handshake (#271)
20  - setup.py: Import `logging` before calling it. (#272)
21  - Implemented close code 1014 (#273)
22  - Support CA bundle specified by environment variable (#279)
23  - Response header values should not be converted to lower case (#264)
24
25- 0.38.0
26  - Exclude port 443 from host http header (#248)
27  - Cleanup code (#249)
28  - Modify a code block directive in README (#250)
29  - fixed ping/pong timeouet (#253)
30
31- 0.37.0
32  - fixed failure that `websocket.create_connection` does not accept `origin` as a parameter (#246 )
33
34- 0.36.0
35  - added support for using custom connection class (#235)
36  - use Named logger (#238)
37  - implement ping/pong timeout (#241)
38  - Corrects the syntax highlight code (#243)
39  - fixed failure to join thread before it is started (#242)
40
41- 0.35.0
42  - Prints timings in console (#217)
43  - use inspect.getfullargspec with Python 3.x (#219)
44  - Check that exception message is actually a string before trying for substring check (#224)
45  - Use pre-initialized stream socket (#226)
46  - fixed TypeError: cafile, capath and cadata cannot be all omitted (#227)
47
48- 0.34.0
49
50  - Change import style (#203)
51  - fix attribute error on the older python. (#215)
52
53- 0.33.0
54
55  - fixed timeout+ssl error handling bug  on python 2.7.10 (#190)
56  - add proxy support to wsdump.py (#194)
57  - use wsaccel if available (#193)
58  - add support for ssl cert chains to support client certs (#195)
59  - fix string formatting in exception (#196)
60  - fix typo in README.rst (#197)
61  - introduce on_data callback to pass data type. (#198)
62  - WebSocketBadStatusException for Handshake error (#199)
63  - set close timeout (#192)
64  - Map dict to headers list (#204)
65  - support client certification (#207)
66  - security improvement during handshake (#211)
67  - improve logging of error from callback (#212)
68
69- 0.32.0
70
71  - fix http proxy bug (#189)
72
73- 0.31.0
74
75  - Avoid deprecated BaseException.message (#180)
76  - Add travis builds (#182)
77  - fixed wsdump to work with piped input (#183)
78  - fixed output of wsdump.py with python3 (#185)
79  - add raw mode to wsdump.py (#186)
80
81- 0.30.0
82
83  - fixed if client is behind proxy (#169)
84  - support SNI for python 2.7.9+ and 3.2+ (#172)
85  - update Host HTTP header by user. (#171)
86  - fix typo for isEnabledFor (#173)
87  - can set verify_mode to CERT_NONE when check_hostname is enabled.(#175)
88  - make websockets iterable (#178)
89
90- 0.29.0
91
92  - fixed ssl socket bug
93
94- 0.28.0
95
96  - Fix erroneous argument shadowing(#168)
97
98- 0.27.0
99
100  - remove unittest2 requirements for python 2.6 (#156)
101  - fixed subprotocol case during header validation (#158)
102  - get response status and headers (#160)
103  - fix out-of-memory due to fragmentation when receiving a very large frame(#163)
104  - fix error if the payload data is nothing.(#166)
105  - refactoring.
106
107- 0.26.0
108
109  - all WebSocketException provide message string (#152)
110  - fixed tests fail when not connected to the network (#155)
111  - Add command line options and handle closed socket to wsdump.py (#153)
112
113- 0.25.0
114
115  - fixed for Python 2.6(#151)
116
117- 0.24.0
118
119  - Supporting http-basic auth in WebSocketApp (#143)
120  - fix failure of test.testInternalRecvStrict(#141)
121  - skip utf8 validation by skip_utf8_validation argument (#137)
122  - WebsocketProxyException will be raised if we got error about proxy.(#138)
123
124- 0.23.0
125
126  - Remove spurious print statement. (#135)
127
128- 0.22.0
129
130  - Fix not thread-safe of Websocket.close() (#120)
131  - Try to get proxy info from environment if not explicitly provided (#124)
132  - support proxy basic authentication. (#125)
133  - Fix NoneType exception at WebsocketApp.send (#126)
134  - not use proxy for localhost (#132)
135
136- 0.21.0
137
138  - Check for socket before attempting to close (#115)
139  - Enable turning off SSL verification in wsdump.py(#116)
140  - Enable to set subprotocol(#118)
141  - Better support for Autobahn test suite (http://autobahn.ws/testsuite) (#117)
142
143- v0.20.0
144
145  - fix typo.
146
147- v0.19.0
148
149  - suppress close event message(#107)
150  - detect socket connection state(#109)
151  - support for code and reason in on_close callback(#111)
152  - continuation frame handling seems suspicious(#113)
153
154- v0.18.0
155
156  -  allow override of match_hostname usage on ssl (#105)
157
158- v0.17.0
159
160  - can't set timeout on a standing websocket connection (#102)
161  - fixed local variable 'error' referenced before assignment (#102, #98)
162
163- v0.16.0
164
165  - lock some method for multithread. (#92)
166  - disable cert verification. (#89)
167
168- v0.15.0
169
170  - fixed exception when send a large message (#84)
171
172- v0.14.1
173
174  - fixed to work on Python2.6 (#83)
175
176- v0.14.0
177
178  - Support python 3(#73)
179  - Support IPv6(#77)
180  - Support explicit web proxy(#57)
181  - specify cookie in connect method option(#82)
182
183- v0.13.0
184
185  - MemoryError when receiving large amount of data (~60 MB) at once(ISSUE#59)
186  - Controlling fragmentation(ISSUE#55)
187  - server certificate validation(ISSUE#56)
188  - PyPI tarball is missing test_websocket.py(ISSUE#65)
189  - Payload length encoding bug(ISSUE#58)
190  - disable Nagle algorithm by default(ISSUE#41)
191  - Better event loop in WebSocketApp(ISSUE#63)
192  - Skip tests that require Internet access by default(ISSUE#66)
193
194- v0.12.0
195
196  - support keep alive for WebSocketApp(ISSUE#34)
197  - fix some SSL bugs(ISSUE#35, #36)
198  - fix "Timing out leaves websocket library in bad state"(ISSUE#37)
199  - fix "WebSocketApp.run_with_no_err() silently eats all exceptions"(ISSUE#38)
200  - WebSocketTimeoutException will be raised for ws/wss timeout(ISSUE#40)
201  - improve wsdump message(ISSUE#42)
202  - support fragmentation message(ISSUE#43)
203  - fix some bugs
204
205- v0.11.0
206
207  - Only log non-normal close status(ISSUE#31)
208  - Fix default Origin isn't URI(ISSUE#32)
209  - fileno support(ISSUE#33)
210
211- v0.10.0
212
213  - allow to set HTTP Header to WebSocketApp(ISSUE#27)
214  - fix typo in pydoc(ISSUE#28)
215  - Passing a socketopt flag to the websocket constructor(ISSUE#29)
216  - websocket.send fails with long data(ISSUE#30)
217
218
219- v0.9.0
220
221  - allow to set opcode in WebSocketApp.send(ISSUE#25)
222  - allow to modify Origin(ISSUE#26)
223
224- v0.8.0
225
226  - many bug fix
227  - some performance improvement
228
229- v0.7.0
230
231  - fixed problem to read long data.(ISSUE#12)
232  - fix buffer size boundary violation
233
234- v0.6.0
235
236  - Patches: UUID4, self.keep_running, mask_key (ISSUE#11)
237  - add wsdump.py tool
238
239- v0.5.2
240
241  - fix Echo App Demo Throw Error: 'NoneType' object has no attribute 'opcode  (ISSUE#10)
242
243- v0.5.1
244
245  - delete invalid print statement.
246
247- v0.5.0
248
249  - support hybi-13 protocol.
250
251- v0.4.1
252
253  - fix incorrect custom header order(ISSUE#1)
254