Commit graph

333 commits

Author SHA1 Message Date
daijro
d279ed0cf0 Add font spacing seed #38
Adds fonts:spacing_seed to control the spacing of rendered text.
2024-11-03 23:04:20 -06:00
daijro
68216153f3 Add Playwright tests
Adds Playwright's async tests to ensure that functionality is not broken.
2024-11-03 06:14:39 -06:00
daijro
1adc258fd8 Allow Playwright's defaultViewportSize 2024-11-03 05:08:09 -06:00
daijro
e6beecb3a9 pythonlib: Bump to 0.3.7 2024-11-03 04:16:09 -06:00
daijro
ca7c3e3aa8 No progress bar on addon download #65
- Removed progress bars on addon download (shows as percent instead)
- Default addons are downloaded on `camoufox fetch`
2024-11-03 04:01:17 -06:00
daijro
3a5c47d3dd
Merge pull request #68 from D4Vinci/patch-3
Make browserforge update both headers and fingerprints
2024-11-03 03:46:59 -06:00
Karim shoair
18b1d222e6
Make browserforge update both headers and fingerprints 2024-11-03 11:27:37 +02:00
daijro
956a384ef7 Disable BPC by default
BPC is not always necessary, and increases the memory footprint of Camoufox.
2024-11-03 01:42:35 -05:00
daijro
81fb672eaa Merge remote-tracking branch 'origin/main' 2024-11-03 01:38:59 -05:00
daijro
8ed8a97ae9 Don't block setViewport
When window.innerWidth or window.innerHeight is not provided, allow Juggler's setViewport to still work.
2024-11-03 01:38:44 -05:00
daijro
ddcffce0ac
Merge pull request #66 from D4Vinci/patch-2
Adding the option to update browserforge database with `camoufox fetch`
2024-11-02 19:14:49 -05:00
Karim shoair
e0dd73b6bb
Adding the option to update browserforge database with camoufox fetch 2024-11-02 19:49:42 +02:00
daijro
c70886fbcd Fix typo in background tasks bugfix patch name 2024-11-02 06:31:22 -05:00
daijro
00f126729b Fix bug in FF132 that causes MacOS builds to fail
Without --enable-backgroundtasks, macOS fails seem to fail after this change:
https://phabricator.services.mozilla.com/D219834

This commit patches the broken code in nsAppRunner.
2024-11-02 03:34:41 -05:00
daijro
b5b00d650c Add dbus name patch 2024-11-01 00:54:22 -05:00
daijro
2539e60a79 Bump to FF132 beta.14
- Update upstream Firefox version to 132.0.
- Updated Playwright patches and Juggler to FF132 (+1 version above current parent Playwright branch)
- Removed upstream DNS leak patch (has been added natively)
- Added WebGL context attribute "forceSoftwareRendering"
2024-11-01 00:50:26 -05:00
daijro
33189cd5b4 pythonlib: Fully fix #61 0.3.6 2024-10-31 06:42:47 -05:00
daijro
a75a20bcdc
Merge pull request #62 from D4Vinci/patch-1
Complete fix for #61
2024-10-31 06:36:01 -05:00
Karim shoair
473d04ce13
Complete fix for #61
https://github.com/daijro/camoufox/issues/61
2024-10-31 14:13:13 +03:00
daijro
692e8a162c pythonlib: Support Python 3.8 #61 0.3.5 2024-10-31 05:09:17 -05:00
daijro
347885e9cb pythonlib: Default to http schema #57 0.3.4
Assume the proxy is using http schema when no other schema is specified.
2024-10-29 17:58:43 -05:00
daijro
f94452fa93 pythonlib: Error handling for invalid addon paths & proxies 0.3.3
Help prevent confusion with using Camoufox addons #55
2024-10-28 17:40:42 -05:00
daijro
732d7bac8d Hotfix #51 0.3.2
Fixes missing VirtualDisplay import on non-Linux systems.
2024-10-27 20:26:00 -05:00
daijro
75ea7b0880 pythonlib: Set window size & kill Xvfb on browser close #49 #50
- Added window: Tuple[int, int] argument to set a fixed width and height #50
- Experimental fix to automatically terminate Xvfb on browser.close() #49
- Bump to 0.3.1
2024-10-27 20:03:11 -05:00
daijro
0040aadc05 README: Sponsorship segment
Removes outdated sponsorship
2024-10-25 18:04:01 -05:00
daijro
dc3c0bde16 Misc fixes beta.13
- Fixed some memory enhancement prefs not setting correctly.
- 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. This unlocks clearOnShutdown preferences. #47
- Added experimental memorysaver property that clears all of the memory after each page.goto navigation. Helpful for datacenters running Camoufox, but could potentially break things.
- Cursor now starts in a random position on the screen
- Fixed screenshots not capturing the full window when a viewport is set by window.innerWidth and window.innerHeight.
2024-10-24 01:32:47 -05:00
daijro
711b5b4550 Backwards compatibility with <0.3.0
Change ALL webgl keys to webGl. This keeps backwards compatibility with <0.3.0 versions of the Python library.
2024-10-20 00:46:53 -05:00
daijro
0ff90fc750 Version range control, multi locale usage, etc
- Python library now constrains the supported Camoufox version, and will force an update if you are out of date.
- Added support patch for multiple accepted languages #37
- Added pysocks #43
- Added README deprecation notices
- Added public launch_options command
- Bumped python library to 0.3.0
- Full support for beta.12
2024-10-19 23:10:51 -05:00
daijro
216718845c pythonlib: Add dict expected type 0.2.15
Adds support for beta.12.
2024-10-15 06:57:48 -05:00
daijro
ad3b3f04fe Add extra parameters to test site
Added the following parameters to the WebGL testing site:
TIMESTAMP_EXT, GPU_DISJOINT_EXT, MAX_VIEWS_OVR
2024-10-15 05:37:59 -05:00
daijro
5bfc3ee026 Further improved WebGL spoofing beta.12
- Added ability to spoof webgl2 supported extensions
- Added ability to block parameters that aren't defined in config
- Passing null in config will block the value
- Added more parameters to the demo site
2024-10-14 20:31:58 -05:00
daijro
1532d7bb31 Consistent naming of webgl properties
Always use "webgl:" instead of "webGl:"
2024-10-14 04:36:01 -05:00
daijro
41bc102216 README: Update for beta.12 2024-10-14 04:31:03 -05:00
daijro
02bc15161a feat: WebGL fingerprint spoofing
Experimental WebGL fingerprint injection.
- Allows the ability to set all WebGL parameters, supported extension list, shader precision formats, & context attributes.
- Added a demo website under scripts/examples/webgl.html that can be used to generate Camoufox config data
2024-10-14 02:12:13 -05:00
daijro
df755def7f feat: AudioContext spoofing
Added the following properties:
- AudioContext:sampleRate
- AudioContext:outputLatency
- AudioContext:maxChannelCount
2024-10-12 03:21:55 -05:00
daijro
3b996534d8 feat: Add humanize:minTime
Set the minimum time of the cursor movement.
2024-10-12 00:21:38 -05:00
daijro
c448ec81ab More warnings & reformat README to avoid confusion/misuse 0.2.14
- Warns the user if they try to manually set the geolocation and locale.
- Move manual config documentation to the bottom of the README to discourage use.
- Make the parameters list more obvious.
2024-10-11 22:09:42 -05:00
daijro
deddba00c3 Allow passing in a region or language into locale 0.2.13
- Passing in a region like `locale='US'` will generate a language based on the region, "US".
- Passing in a language like `locale='en'` will generate a region based on the language, "en".
- Fix locale parsing errors when generating using territoryInfo.xml #36
2024-10-11 21:36:19 -05:00
daijro
5bb274ddc8 README: Update test sites
Add DataDome bot bounty sites.
2024-10-10 16:09:55 -05:00
daijro
3e2551e65b pythonlib: Fix geolocation domain detection #31 0.2.12 2024-10-10 15:44:25 -05:00
daijro
a8e9ffaa64 README: Add debug flow chart
Added more information for anyone interested in building/debugging Camoufox.
2024-10-10 05:07:13 -05:00
daijro
595828a446 Update Makefile & add navigation debugging 2024-10-09 20:48:58 -05:00
daijro
2101330754 Add issue template for reporting leaks 2024-10-09 20:28:26 -05:00
daijro
76bedb5251 pythonlib: Hotfix screen property out of bounds 0.2.11
Adds back handling for when Browserforge screen properties are out of bounds.
2024-10-09 06:30:41 -05:00
daijro
b2f74a24f3 Update pythonlib & README for beta.11
- Removed warnings for using headless mode
- Xvfb is now activated with headless='virtual'
- Correctly pass window.screenX & calculate window.screenY
- Update documentation on main README and pythonlib README
- Bumped pythonlib to 0.2.10
2024-10-09 05:49:22 -05:00
daijro
49cea6eca8 Fix headless leak #26 beta.11
Forces the default pointer value to a mouse-type pointer, fixing the detection issues on headless browsers.
2024-10-09 04:16:37 -05:00
daijro
bd59304481 pythonlib: Add Xvfb integration #26 0.2.9
- Automatically uses virtual displays on Linux
- Update documentation on README
2024-10-08 05:10:12 -05:00
daijro
351e99ed18 pythonlib: Add more leak warnings 0.2.8
Warns the user for when the passed parameters are likely to cause a leak.
2024-10-06 23:32:50 -05:00
daijro
4a1cd7ec64 pythonlib: Add headless detection warning #26 0.2.7
Raises a warning when headless mode is enabled in Camoufox.
This will be reverted once #26 is resolved.
2024-10-06 20:05:11 -05:00
daijro
f3b68ab355 pythonlib: Assert OS is valid 0.2.6
- Removed mobile OS support due to detection issues
- Validate the passed os name & that its lowercase
2024-10-05 02:10:43 -05:00