CARVIEW |
Select Language
HTTP/2 200
date: Sun, 27 Jul 2025 08:51:42 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-repository-download: git clone https://github.com/gorhill/uBlock.git
etag: W/"cb6d9ab2f4bb3f0c174a62f109c05a7c"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=%2FS%2FRsYYYz3Xzwn1qOuONVPIn36QcvQHTZ3OSp1AeM1VpoEee8gn0bZjONiIkXbj2dqxB83DArhKHJ854j6Y3x9XkKXzFnmWiVrXgW0%2Baxeugqotk2XYyzWDy6OGypL%2FTB2dXm33EN%2ByqjQUdrWxWGWmLbWwpCLZWobVimtc%2B3FXpnvnuNnaN0hXtHxYcUboZwG089mcRaDsFOmFEVpRsDGv50xbDhtTtOaiJjHMdZ19zOCyaQKVTukOdmf%2FNLl52O1V6Cw3%2FfiZ2%2FyURqgufIw%3D%3D--QYtSowzFotDvr7YR--iEM1XzzV5UfjBq42sxbhIg%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.684199898.1753606302; Path=/; Domain=github.com; Expires=Mon, 27 Jul 2026 08:51:42 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Mon, 27 Jul 2026 08:51:42 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: DE2C:29054:2DE920:3E46B2:6885E89D
Use a sequence of base 64 numbers to encode array buffers · gorhill/uBlock@fa83744 · GitHub
Copy file name to clipboardExpand all lines: src/js/static-net-filtering.js
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
Commit fa83744
committed
Use a sequence of base 64 numbers to encode array buffers
The purpose of using a custom base128 encoder is to
convert array buffers into strings, to allow a direct
string-to-array buffer conversion at load time:
string => array buffer
Whereas a JSON array would require an extra step:
JSON array as string => JS array => array buffer
Turns out that the current use of a custom base128 encoding
results in a significantly larger selfie storage usage when
converting array buffers into strings.
Speculation: possibly the browser convert the strings to
save into JSON strings internally. Since the custom base128
encoder is likely to cause the resulting string to contain
a lot of unprintable ASCII characters, these will need to
be escaped when converted to JSON -- escaped characters
occupy more space than non-escaped ones.
Using a sequence of base 64 numbers means only printable
will be present in the output string, hence no escaping
necessary. I have observed significant reduction in
storage usage for selfie purpose.1 parent a0c4183 commit fa83744Copy full SHA for fa83744
File tree
Expand file treeCollapse file tree
6 files changed
+95
-172
lines changedFilter options
- src/js
Expand file treeCollapse file tree
6 files changed
+95
-172
lines changed+1-1Lines changed: 1 addition & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
138 | 138 |
| |
139 | 139 |
| |
140 | 140 |
| |
141 |
| - | |
| 141 | + | |
142 | 142 |
| |
143 | 143 |
| |
144 | 144 |
| |
|
+2-1Lines changed: 2 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
377 | 377 |
| |
378 | 378 |
| |
379 | 379 |
| |
| 380 | + | |
380 | 381 |
| |
381 |
| - | |
382 | 382 |
| |
383 | 383 |
| |
384 | 384 |
| |
| |||
396 | 396 |
| |
397 | 397 |
| |
398 | 398 |
| |
| 399 | + | |
399 | 400 |
| |
400 | 401 |
| |
401 | 402 |
| |
|
src/js/static-net-filtering.js
Copy file name to clipboardExpand all lines: src/js/static-net-filtering.js+18-19Lines changed: 18 additions & 19 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2246 | 2246 |
| |
2247 | 2247 |
| |
2248 | 2248 |
| |
2249 |
| - | |
| 2249 | + | |
2250 | 2250 |
| |
2251 | 2251 |
| |
2252 | 2252 |
| |
2253 |
| - | |
| 2253 | + | |
2254 | 2254 |
| |
2255 | 2255 |
| |
2256 | 2256 |
| |
2257 |
| - | |
| 2257 | + | |
2258 | 2258 |
| |
2259 | 2259 |
| |
2260 | 2260 |
| |
| |||
2276 | 2276 |
| |
2277 | 2277 |
| |
2278 | 2278 |
| |
2279 |
| - | |
| 2279 | + | |
2280 | 2280 |
| |
2281 | 2281 |
| |
2282 |
| - | |
2283 |
| - | |
2284 |
| - | |
2285 |
| - | |
2286 |
| - | |
| 2282 | + | |
| 2283 | + | |
| 2284 | + | |
| 2285 | + | |
2287 | 2286 |
| |
2288 | 2287 |
| |
2289 |
| - | |
2290 |
| - | |
2291 |
| - | |
2292 |
| - | |
2293 |
| - | |
| 2288 | + | |
| 2289 | + | |
| 2290 | + | |
| 2291 | + | |
2294 | 2292 |
| |
2295 | 2293 |
| |
2296 |
| - | |
2297 |
| - | |
2298 |
| - | |
2299 |
| - | |
| 2294 | + | |
| 2295 | + | |
| 2296 | + | |
2300 | 2297 |
| |
2301 | 2298 |
| |
2302 | 2299 |
| |
| |||
2869 | 2866 |
| |
2870 | 2867 |
| |
2871 | 2868 |
| |
2872 |
| - | |
| 2869 | + | |
| 2870 | + | |
| 2871 | + | |
2873 | 2872 |
| |
2874 | 2873 |
| |
2875 | 2874 |
| |
|
+2-2Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1036 | 1036 |
| |
1037 | 1037 |
| |
1038 | 1038 |
| |
1039 |
| - | |
| 1039 | + | |
1040 | 1040 |
| |
1041 | 1041 |
| |
1042 | 1042 |
| |
| |||
1054 | 1054 |
| |
1055 | 1055 |
| |
1056 | 1056 |
| |
1057 |
| - | |
| 1057 | + | |
1058 | 1058 |
| |
1059 | 1059 |
| |
1060 | 1060 |
| |
|
+2-1Lines changed: 2 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
252 | 252 |
| |
253 | 253 |
| |
254 | 254 |
| |
| 255 | + | |
255 | 256 |
| |
256 |
| - | |
257 | 257 |
| |
258 | 258 |
| |
259 | 259 |
| |
| |||
263 | 263 |
| |
264 | 264 |
| |
265 | 265 |
| |
| 266 | + | |
266 | 267 |
| |
267 | 268 |
| |
268 | 269 |
| |
|
+70-148Lines changed: 70 additions & 148 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
530 | 530 |
| |
531 | 531 |
| |
532 | 532 |
| |
533 |
| - | |
| 533 | + | |
534 | 534 |
| |
535 | 535 |
| |
536 | 536 |
| |
| |||
541 | 541 |
| |
542 | 542 |
| |
543 | 543 |
| |
544 |
| - | |
545 |
| - | |
546 |
| - | |
547 |
| - | |
548 |
| - | |
549 |
| - | |
550 |
| - | |
551 |
| - | |
552 |
| - | |
553 |
| - | |
554 |
| - | |
555 |
| - | |
556 |
| - | |
557 |
| - | |
558 |
| - | |
559 |
| - | |
560 |
| - | |
561 |
| - | |
562 |
| - | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
563 | 561 |
| |
564 |
| - | |
565 |
| - | |
566 |
| - | |
567 |
| - | |
568 |
| - | |
569 |
| - | |
570 |
| - | |
571 |
| - | |
572 |
| - | |
573 |
| - | |
574 |
| - | |
575 |
| - | |
576 |
| - | |
577 |
| - | |
578 |
| - | |
579 |
| - | |
580 |
| - | |
581 |
| - | |
582 |
| - | |
583 |
| - | |
584 |
| - | |
585 |
| - | |
586 |
| - | |
587 |
| - | |
588 |
| - | |
589 |
| - | |
590 |
| - | |
591 |
| - | |
592 |
| - | |
593 |
| - | |
594 |
| - | |
595 |
| - | |
596 |
| - | |
597 |
| - | |
598 |
| - | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
599 | 579 |
| |
600 | 580 |
| |
601 |
| - | |
602 |
| - | |
603 |
| - | |
604 |
| - | |
605 |
| - | |
606 |
| - | |
607 |
| - | |
608 |
| - | |
609 |
| - | |
610 |
| - | |
611 |
| - | |
612 |
| - | |
613 |
| - | |
614 |
| - | |
615 |
| - | |
616 |
| - | |
617 |
| - | |
618 |
| - | |
619 |
| - | |
620 |
| - | |
621 |
| - | |
622 |
| - | |
623 |
| - | |
624 |
| - | |
625 |
| - | |
626 |
| - | |
627 |
| - | |
628 |
| - | |
629 |
| - | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
630 | 587 |
| |
631 |
| - | |
632 |
| - | |
633 |
| - | |
634 | 588 |
| |
635 |
| - | |
636 |
| - | |
637 |
| - | |
638 |
| - | |
639 |
| - | |
640 |
| - | |
641 |
| - | |
642 |
| - | |
643 |
| - | |
644 |
| - | |
645 |
| - | |
646 |
| - | |
647 |
| - | |
648 |
| - | |
649 |
| - | |
650 |
| - | |
651 |
| - | |
652 |
| - | |
653 |
| - | |
654 |
| - | |
655 |
| - | |
656 |
| - | |
657 |
| - | |
658 |
| - | |
659 |
| - | |
660 |
| - | |
661 |
| - | |
662 |
| - | |
663 |
| - | |
664 |
| - | |
665 |
| - | |
666 |
| - | |
667 |
| - | |
668 |
| - | |
669 |
| - | |
670 |
| - | |
671 |
| - | |
672 | 589 |
| |
673 |
| - | |
| 590 | + | |
674 | 591 |
| |
675 |
| - | |
676 |
| - | |
677 |
| - | |
678 |
| - | |
679 |
| - | |
680 |
| - | |
681 |
| - | |
682 |
| - | |
683 |
| - | |
684 |
| - | |
685 |
| - | |
686 |
| - | |
687 |
| - | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
688 | 605 |
| |
| 606 | + | |
689 | 607 |
| |
690 |
| - | |
691 |
| - | |
692 |
| - | |
693 |
| - | |
694 |
| - | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
695 | 619 |
| |
696 |
| - | |
697 |
| - | |
698 |
| - | |
699 |
| - | |
700 |
| - | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
701 | 623 |
| |
702 | 624 |
| |
703 | 625 |
| |
|
You can’t perform that action at this time.
0 commit comments