v130.0.1-beta.13

daijro/camoufoxv130.0.1-beta.13Oct 24, 2024by github-actions[bot]

AI Summary

This release focuses on memory management improvements and UI fixes. It disables bfcache to reduce memory usage but impacts navigation history, introduces an experimental memory saver, and fixes screenshot capture issues.

Key Highlights

  • Fixed Firefox memory leaks by discarding cache after navigation
  • Disabled bfcache to improve memory usage (breaks go_back/go_forward)
  • Introduced experimental memorysaver property
  • Mouse position now starts at a random location
  • Fixed screenshots not capturing the full window

Breaking Changes

  • Bfcache is completely disabled; page.go_back() and page.go_forward() will not work unless browser.sessionhistory.max_entries is set.

New Features

  • Moved SanitizeOnShutdown policy to preferences
  • Experimental memorysaver property for datacenters
  • browser.sessionhistory.max_entries configuration option

Full Release Notes

**Full Changelog**: https://github.com/daijro/camoufox/compare/v130.0.1-beta.12...v130.0.1-beta.13

---

Keep in mind that Camoufox is in active development and not production ready.

If you experience any issues, please report them [here](https://github.com/daijro/camoufox/issues).

---

### Changes:

- Fixes Firefox's memory leaks. Camoufox discards the cache after each navigation.
- Bfcache is now completely disabled. This should improve memory, but kills Playwright's page.go_back() and page.go_forward(). To re-enable this, set `browser.sessionhistory.max_entries` to the amount of pages you want to remember.
- Moved SanitizeOnShutdown policy to preferences instead to unlock the clearOnShutdown preferences. [#47](https://github.com/daijro/camoufox/discussions/47)
- Added experimental `memorysaver` property that clears the JS heap after each page.goto navigation. Helpful for datacenters running Camoufox, but could potentially break things. Won't be officially documented as it is experimental.
- The mouse position will now start in a random location on the screen instead of at (0, 0).
- Fixed screenshots not capturing the full window when a viewport is set by window.innerWidth and window.innerHeight.