-
Notifications
You must be signed in to change notification settings - Fork 3k
/
Changelog
106 lines (83 loc) · 4.02 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
WebViewJavascriptBridge Changelog
=================================
Release Checklist
-----------------
- gitu-update
- Note Changelog
- Bump `WebViewJavascriptBridge.podspec` version "X.Y.Z"
- gitm-commit "vX.Y.Z"
- gitt-tag "vX.Y.Z"
- pod trunk push
Version History
---------------
v5.1.1
+ Swift unit tests and examples
+ Implement removeHandler
v5.1.0
+ A single instantiation function for all webview types.
+ Improved test runner.
+ New instructions & templates for github issues and pull requests.
v5.0.5
+ Run all tests for both UIWebView and WKWebView webviews/bridges.
+ Allow for calling handlers from JS with just a handler name and responseCallback function (#184).
v5.0.3 & v5.0.4
+ Recalled builds :)
v5.0.2
+ Fix bug that could cause a crash if the webview loads a new page immediately after JS sends a message.
v5.0.1
+ Removed `WebViewJavascriptBridge -reset`. It should never have been exposed as a public API.
+ Fixed compilation in C99 mode
+ Inline JS source code. WVJB no longer requires `WebViewJavascriptBridge.js.txt` to be included as a resource.
+ Automated testing: see `make test`
+ Added Makefile with common commands
+ Significantly simplified and improved wvjb load detection
+ Simplify API by focusing on explicitly named handlers instead of a default handler and plain `send`.
v4.1.4
+ Improve how WVJB handles the case when there is no ObjC handler for a message received from js.
+ If an objc handler throws and exception, let it bubble up to the webkit engine instead of catching it in WVJB.
v4.1.3
+ Update podspec file with tag
v4.1.2
+ Fix bug: webViewDidStart/FinishLoad were called twice and isLoading was always true (#86)
v4.1.1
+ Better JS initialization script (thank @refractalize!)
+ When passing nil to an objc response callback, replace it with [NSNull null] (becomes null in js)
v4.1.0
+ Allow for sending null/nil data packets
+ Drop support for JSONKit
+ Clean up internal represenation of messages
v4.0.2
+ Fix NSInvalidArgumentException: "attempt to insert nil object" when using shorthand -callHandler:
+ Fix sending messages including __WVJB_MESSAGE_SEPERATOR__ string
v4.0.1
+ Fix detection of arc_weak support
v4.0.0
+ Consolidate platform-specific code into a single WebViewJavascriptBridge.m/h using macros (57ee322a4c5310eadd28b28f4d8522cd54123301)
+ Bugfix: Don't make navigation decisions for webviews we don't control (254ea00267f8c1e03727885f4e1e0fd5f5c78be8)
v3.1.0
+ Dont inject the WVJB bridge until all requests have finished loading (61b853)
+ Add podspec file (818d49cfc)
+ Memory leaks fixed (b06988f1, 20ce1b0b)
+ New major contributor @peyton!
v3.0.0
+ OSX Support
+ New major contributor @oakho!
v2.1.2
+ Copy handler and response blocks
v2.1.1
+ Handle edge cases gracefully (e.g. don't crash on unknown command or unexpected response)
v2.1.0
+ Remove WVJBResponse object and the notion of responding with an error. See 4ab41bb4d7.
v2.0.0
+ Messages are objects instead of strings. Supports NSDictionary*/Objects, NSArray*/Arrays, NSNumber*/Number & NSString*/String.
+ Messages are encoded with NSJSONSerialization. Optional fallback to JSONKit for iOS 4 support.
+ Messages can expect responses. A message received with an expected response is accompanied by a WVJBResponse* object.
+ Handlers can be registered by name, and called with data and an optional expected response.
+ Responses expect either an error or data (`-(void)respond:(id)data`, -(void)respondWithError:(id)error)
v0.0.1
+ ObjC: A WebViewJavascriptBridge class (a UIWebViewDelegate) that enables message passing to and from the JS
+ ObjC: A protocol called WebViewJavascriptBridgeDelegate that lets you handle messages received from the JS
+ JS: Event when the bridge is ready - document.addEventListener('WebViewJavascriptBridgeReady', function() {}, false)
+ JS: Ability to set your message handler - WebViewJavascriptBridge.setMessageHandler(function() {})
+ JS: Function to send messages - WebViewJavascriptBridge.sendMessage('a message');
+ All messages are strings. Use JSON in your js and e.g. JSONKit in iOS to send structured messages