As discussed in https://github.com/whatwg/url/issues/344, Chrome has aligned its URL fragment encoding algorithm with Firefox's. Tests for this behavior landed in https://github.com/w3c/web-platform-tests/commit/cb0662be1599d7f82e8d8572e8b43c3176863a63, and the spec change landed in https://github.com/whatwg/url/commit/7a3c69f8a1583b33e730c3fea85141a618e7c697. It would be lovely to see WebKit implement the same behavior.