33 * Fastfox *
44 * "Non ducor duco" *
55 * priority: speedy browsing *
6- * version: 116 *
6+ * version: 117 *
77 * url: https://github.com/yokoffing/Betterfox *
88 ***************************************************************************************/
99
@@ -71,7 +71,7 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
7171// false = reflow pages whenever new data is received
7272//user_pref("content.notify.ontimer", true); // DEFAULT
7373
74- // PREF: notification interval (in microseconds) ( to avoid layout thrashing)
74+ // PREF: notification interval (in microseconds) to avoid layout thrashing
7575// When Firefox is loading a page, it periodically reformats
7676// or "reflows" the page as it loads. The page displays new elements
7777// every 0.12 seconds by default. These redraws increase the total page load time.
@@ -87,13 +87,6 @@ user_pref("nglayout.initialpaint.delay_in_oopif", 0); // default=5
8787// [3] https://dev.opera.com/articles/efficient-javascript/?page=3#smoothspeed
8888user_pref ( "content.notify.interval" , 100000 ) ; // (.10s); default=120000 (.12s)
8989
90- // PREF: frequency switch threshold [HIDDEN]
91- // Raising the value will make the application more responsive at the expense of page load time.
92- // [1] http://kb.mozillazine.org/Content.switch.threshold
93- // [2] https://www.reddit.com/r/firefox/comments/11m2yuh/comment/jbjxp8s/?context=3
94- //user_pref("content.interrupt.parsing", true); // DEFAULT [HIDDEN]
95- //user_pref("content.switch.threshold", 750000); // DEFAULT [HIDDEN]
96-
9790// PREF: new tab preload
9891// [WARNING] Disabling this may cause a delay when opening a new tab in Firefox.
9992// [1] https://wiki.mozilla.org/Tiles/Technical_Documentation#Ping
@@ -118,16 +111,18 @@ user_pref("content.notify.interval", 100000); // (.10s); default=120000 (.12s)
118111//user_pref("browser.sessionstore.restore_tabs_lazily", true); // DEFAULT
119112
120113// PREF: disable preSkeletonUI on startup [WINDOWS]
121- user_pref ( "browser.startup.preXulSkeletonUI" , false ) ; // WINDOWS
114+ // user_pref("browser.startup.preXulSkeletonUI", false); // WINDOWS
122115
123116/****************************************************************************
124117 * SECTION: TAB UNLOAD *
125118****************************************************************************/
126119
127120// PREF: unload tabs on low memory
121+ // [ABOUT] about:unloads
128122// Firefox will detect if your computer’s memory is running low (less than 200MB)
129123// and suspend tabs that you have not used in awhile.
130- // [1] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/
124+ // [1] https://support.mozilla.org/en-US/kb/unload-inactive-tabs-save-system-memory-firefox
125+ // [2] https://hacks.mozilla.org/2021/10/tab-unloading-in-firefox-93/
131126//user_pref("browser.tabs.unloadOnLowMemory", true); // DEFAULT
132127
133128// PREF: determine when tabs unload [WINDOWS] [LINUX]
@@ -172,7 +167,7 @@ user_pref("layout.css.has-selector.enabled", true);
172167// PREF: HTML Sanitizer API [NIGHTLY]
173168// [1] https://developer.mozilla.org/en-US/docs/Web/API/Sanitizer
174169// [2] https://caniuse.com/mdn-api_sanitizer
175- // user_pref("dom.security.sanitizer.enabled", true);
170+ user_pref ( "dom.security.sanitizer.enabled" , true ) ;
176171
177172// PREF: Shadowrealms [NIGHTLY]
178173// [1] https://github.com/tc39/proposal-shadowrealm/blob/main/explainer.md#introduction
@@ -296,11 +291,11 @@ user_pref("layout.css.has-selector.enabled", true);
296291// More efficient to keep the browser cache instead of having to
297292// re-download objects for the websites you visit frequently.
298293// [1] https://www.janbambas.cz/new-firefox-http-cache-enabled/
299- // user_pref("browser.cache.disk.enable", true); // DEFAULT
294+ user_pref ( "browser.cache.disk.enable" , false ) ;
300295//user_pref("browser.cache.disk.smart_size.enabled", false); // force a fixed max cache size on disk
301- //user_pref("browser.cache.disk.capacity", 8192000 ); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB
302- //user_pref("browser.cache.disk.max_entry_size", 51200); // 51 MB; DEFAULT; maximum size of an object in disk cache
303- //user_pref("browser.cache.disk.metadata_memory_limit", 10000 ); // default=250; alt=15360 ; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool)
296+ //user_pref("browser.cache.disk.capacity", 5120000 ); // size of disk cache; default=256000; 1024000 = 1 GB, 2048000=2GB, 5120000=5GB, 8192000=8GB
297+ //user_pref("browser.cache.disk.max_entry_size", 51200); // 51.2 MB; DEFAULT; maximum size of an object in disk cache
298+ //user_pref("browser.cache.disk.metadata_memory_limit", 750 ); // default=250; increase size (in KB) of intermediate memory caching of frequently used metadata (disk cache memory pool)
304299//user_pref("browser.cache.max_shutdown_io_lag", 4); // default=2; number of seconds the cache spends writing pending data and closing files after shutdown has been signalled
305300
306301// PREF: specify how long pages are kept before being removed from cache (in hours)
@@ -310,7 +305,7 @@ user_pref("layout.css.has-selector.enabled", true);
310305// [1] https://bugzilla.mozilla.org/show_bug.cgi?id=913808
311306// [2] https://bugzilla.mozilla.org/show_bug.cgi?id=968101
312307// [3] https://rockridge.hatenablog.com/entry/2014/09/15/165501
313- //user_pref("browser.cache.frecency_half_life_hours", 24 ); // default=6
308+ //user_pref("browser.cache.frecency_half_life_hours", 18 ); // default=6
314309
315310// PREF: memory cache
316311// The "automatic" size selection (default) is based on a decade-old table
@@ -323,9 +318,9 @@ user_pref("layout.css.has-selector.enabled", true);
323318// [2] https://searchfox.org/mozilla-central/source/netwerk/cache2/CacheObserver.cpp#94-125
324319// [3] https://github.com/WaterfoxCo/Waterfox/commit/3fed16932c80a2f6b37d126fe10aed66c7f1c214
325320//user_pref("browser.cache.memory.capacity", -1); // DEFAULT; 1048576=1GB, 2097152=2GB
326- //user_pref("browser.cache.memory.max_entry_size", 5120); // DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached
321+ //user_pref("browser.cache.memory.max_entry_size", 5120); // 5 MB DEFAULT; alt=25600; -1=entries bigger than than 90% of the mem-cache are never cached
327322
328- // PREF: amount of pages stored in memory for Back/Forward
323+ // PREF: amount of Back/Forward cached pages stored in memory for each tab
329324// Pages that were recently visited are stored in memory in such a way
330325// that they don't have to be re-parsed. This improves performance
331326// when pressing Back and Forward. This pref limits the maximum
@@ -334,7 +329,7 @@ user_pref("layout.css.has-selector.enabled", true);
334329// is no reason for Firefox to keep memory for this.
335330// -1=determine automatically (8 pages)
336331// [1] https://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers#Possible_values_and_their_effects
337- //user_pref("browser.sessionhistory.max_total_viewers", 1 );
332+ //user_pref("browser.sessionhistory.max_total_viewers", 3 );
338333
339334/****************************************************************************
340335 * SECTION: MEDIA CACHE *
@@ -398,7 +393,7 @@ user_pref("network.http.max-connections", 1800); // default=900
398393user_pref ( "network.http.max-persistent-connections-per-server" , 10 ) ; // default=6; download connections; anything above 10 is excessive
399394 user_pref ( "network.http.max-urgent-start-excessive-connections-per-host" , 5 ) ; // default=3
400395 //user_pref("network.http.max-persistent-connections-per-proxy", 48); // default=32
401- user_pref ( "network.websocket.max-connections" , 400 ) ; // default=200
396+ // user_pref("network.websocket.max-connections", 200 ); // DEFAULT
402397
403398// PREF: pacing requests [FF23+]
404399// Controls how many HTTP requests are sent at a time.
@@ -413,47 +408,20 @@ user_pref("network.http.pacing.requests.enabled", false);
413408 //user_pref("network.http.pacing.requests.min-parallelism", 10); // default=6
414409 //user_pref("network.http.pacing.requests.burst", 14); // default=10
415410
416- // Connection Timeouts
417- // [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
418- // [2] https://www.catchpoint.com/blog/http-transaction-steps
419-
420- // PREF: timeout connections if an initial response is not received after
421- // a given number of seconds.
422- //user_pref("network.http.response.timeout", 60); // default=300 (5min)
423-
424- // PREF: close a connection if TLS handshake does not finish in a
425- // given number of seconds
426- //user_pref("network.http.tls-handshake-timeout", 6); // default=30
427-
428- // PREF: the number of seconds after sending initial SYN for an HTTP connection
429- // to give up if the OS does not give up first.
430- //user_pref("network.http.connection-timeout", 18); // default=90
431-
432411// PREF: how long to wait before trying a different connection when the initial one fails
433412// The number (in ms) after sending a SYN for an HTTP connection,
434413// to wait before trying again with a different connection.
435414// 0=disable the second connection
436- //user_pref("network.http.connection-retry-timeout", 0); // default=250ms
437-
438- // PREF: keep-alive request timeout
439- // Default timeout on IIS7 is 120 seconds. FF needs to reuse or drop the
440- // connection within this time. By default, FF sets the timeout a little shorter to
441- // keep a reserve for cases when the packet is lost or delayed on the route.
442- // [1] http://kb.mozillazine.org/Network.http.keep-alive.timeout
443- // [2] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1173-1178
444- //user_pref("network.http.keep-alive.timeout", 31); // default=115
445-
446- // PREF: the amount of time (in seconds) to suspend pending requests, before spawning a
447- // new connection, once the limit on the number of persistent connections per
448- // host has been reached. However, a new connection will not be created if
449- // max-connections or max-connections-per-server has also been reached.
450- //user_pref("network.http.request.max-start-delay", 10); // DEFAULT
415+ // [1] https://searchfox.org/mozilla-esr115/source/modules/libpref/init/all.js#1178
416+ // [2] https://www.catchpoint.com/blog/http-transaction-steps
417+ //user_pref("network.http.connection-retry-timeout", 0); // default=250
451418
452419// PREF: increase DNS cache
453420// [1] https://developer.mozilla.org/en-US/docs/Web/Performance/Understanding_latency
454- user_pref ( "network.dnsCacheEntries" , 10000 ) ; // default=400
421+ user_pref ( "network.dnsCacheEntries" , 1000 ) ; // default=400
455422
456423// PREF: adjust DNS expiration time
424+ // [ABOUT] about:networking#dns
457425// [NOTE] These prefs will be ignored by DNS resolver if using DoH/TRR.
458426user_pref ( "network.dnsCacheExpiration" , 86400 ) ; // keep entries for 1 day; alt=3600 (1 hour)
459427 //user_pref("network.dnsCacheExpirationGracePeriod", 240); // default=60; cache DNS entries for 4 minutes after they expire
@@ -463,7 +431,7 @@ user_pref("network.dns.max_high_priority_threads", 8); // default=5
463431//user_pref("network.dns.max_any_priority_threads", 5); // default=3
464432
465433// PREF: increase TLS token caching
466- user_pref ( "network.ssl_tokens_cache_capacity" , 20480 ) ; // default=2048; more TLS token caching (fast reconnects)
434+ user_pref ( "network.ssl_tokens_cache_capacity" , 10240 ) ; // default=2048; more TLS token caching (fast reconnects)
467435
468436/****************************************************************************
469437 * SECTION: SPECULATIVE CONNECTIONS *
@@ -494,7 +462,7 @@ user_pref("network.ssl_tokens_cache_capacity", 20480); // default=2048; more TLS
494462// [5] https://3perf.com/blog/link-rels/#prefetch
495463user_pref ( "network.http.speculative-parallel-limit" , 0 ) ;
496464// or
497- //user_pref("network.http.speculative-parallel-limit", 10 ); // default=6
465+ //user_pref("network.http.speculative-parallel-limit", 6 ); // DEFAULT
498466
499467// PREF: DNS pre-resolve <link rel="dns-prefetch">
500468// Resolve hostnames ahead of time. In order to reduce latency,
@@ -545,23 +513,6 @@ user_pref("browser.places.speculativeConnect.enabled", false);
545513// [9] https://web.dev/preload-critical-assets/
546514//user_pref("network.preload", true); // DEFAULT
547515
548- // PREF: enable early hints [NIGHTLY]
549- // [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
550- //user_pref("network.early-hints.enabled", false); // DEFAULT
551- // or
552- //user_pref("network.early-hints.enabled", true);
553-
554- // PREF: `Link: rel=preconnect` in 103 Early Hint response
555- //user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
556- // or
557- //user_pref("network.early-hints.preconnect.enabled", true);
558-
559- // PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
560- // When 0, this is limited by "network.http.speculative-parallel-limit".
561- //user_pref("network.early-hints.preconnect.max_connections", 0);
562- // or
563- //user_pref("network.early-hints.preconnect.max_connections", 15); // default=10
564-
565516// PREF: Link prefetching <link rel="prefetch">
566517// Firefox will prefetch certain links if any of the websites you are viewing uses the special prefetch-link tag.
567518// A directive that tells a browser to fetch a resource that will likely be needed for the next navigation.
@@ -580,6 +531,24 @@ user_pref("network.prefetch-next", false);
580531// or
581532//user_pref("network.prefetch-next", true); // DEFAULT
582533
534+ // PREF: enable early hints [NIGHTLY]
535+ // [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103
536+ // [2] https://developer.chrome.com/blog/early-hints/
537+ //user_pref("network.early-hints.enabled", false); // DEFAULT
538+ // or
539+ //user_pref("network.early-hints.enabled", true);
540+
541+ // PREF: `Link: rel=preconnect` in 103 Early Hint response
542+ //user_pref("network.early-hints.preconnect.enabled", false); // DEFAULT
543+ // or
544+ //user_pref("network.early-hints.preconnect.enabled", true);
545+
546+ // PREF: the number of speculative connections allowed for early hints `Link: rel=preconnect`
547+ // When 0, this is limited by "network.http.speculative-parallel-limit".
548+ //user_pref("network.early-hints.preconnect.max_connections", 0);
549+ // or
550+ //user_pref("network.early-hints.preconnect.max_connections", 10); // DEFAULT
551+
583552// PREF: Network Predictor (NP)
584553// Keeps track of components that were loaded during page visits so that the browser knows next time
585554// which resources to request from the server: It uses a local file to remember which resources were
0 commit comments