-
-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Specifying firefox_profiles_ini_path
causes unexpected behaviour
#130
Comments
Hi, does it happen with all kinds of profile, let's say even a clean one? Or is it that some of your plugins don't really like Jupynium? |
Now I feel sorry for not testing that. Empty default profile indeed causes no problems. But what really surprised me - none of the plugins seem to be related! It appears that the root cause was Firefox's offline translation dictionaries (sounds like a good feature, so I casually asked it to "Download all" and moved on). Apparently, the more are downloaded, the longer it would take jupynium-launched browser to start (manual launch is always instant). "Remove all" seems to solve the problem, so you may close the issue. Also I've observed behavior mentioned in the original |
Don't worry, it's good that you left the reference so it helps others when they face similar problems. Maybe the translation stuff doesn't like selenium in general, or it could really be Jupynium's problem. So should you or should you not use the custom theme? I don't really have crazy settings on my firefox so I'm not understanding it well.. |
Custom theme caused no problems. I suggested using one, if you're not comfortable with the default light theme (as jupynium-launched Firefox always used it, even if it was configured to use default dark in the settings). |
Okay, thanks for sharing this! |
Specifying
firefox_profiles_ini_path
as/home/dzu/.mozilla/firefox/profiles.ini
(location of Firefox profiles for my user) causes server starting for a full minute, then suddenly allocating the entire system's RAM, before eventually exiting with 137.During my testing, server managed to actually start and successfully open Firefox with proper profile a couple of times, but I'm not sure what that's correlated to.
To Reproduce
Steps to reproduce the behavior:
firefox_profiles_ini_path
option duringjupynium
plugin setup*.ju.py
file:JupyniumStartAndAttachToServerInTerminal
Expected behavior
For server to start instantly (as it usually does!), opening Firefox with my
Default=1
profile.Logs
infrom the terminal/tmp/jupynium/logs/
There are three sets of logs produced in kinda-random order.
First one corresponds to
jupynium
asking for too much RAM and killed by the system:jupynium.pynvim_helpers: 15 - INFO - nvim addr: /run/user/1000/nvim.2 2442.0 jupynium.pynvim_helpers: 34 - INFO - nvim attached jupynium.pynvim_helpers: 38 - INFO - Initialising.. jupynium.pynvim_helpers: 39 - INFO - Communicating with channel_id 9 jupynium.cmds.jupynium: 100 - INFO - Using firefox profile: /home/dzu/.mozilla/firefox/7l5t4nem.default-release-1721230317039
[Process exited 137]
Second produced while
jupynium
allocated all the RAM, but seemingly failed for different reason:jupynium.pynvim_helpers: 15 - INFO - nvim addr: /run/user/1000/nvim.5436.0
jupynium.pynvim_helpers: 34 - INFO - nvim attached
jupynium.pynvim_helpers: 38 - INFO - Initialising..
jupynium.pynvim_helpers: 39 - INFO - Communicating with channel_id 9
jupynium.cmds.jupynium: 100 - INFO - Using firefox profile: /home/dzu/.mozilla/firefox/7l5t4nem.default-release-1721230317039
jupynium.cmds.jupynium: 618 - ERROR - Exception occurred
Traceback (most recent call last):
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse
response.begin()
File "/usr/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/dzu/.local/lib/python3.12/site-packages/jupynium/cmds/jupynium.py", line 521, in main
with webdriver_firefox(
^^^^^^^^^^^^^^^^^^
File "/home/dzu/.local/lib/python3.12/site-packages/jupynium/cmds/jupynium.py", line 109, in webdriver_firefox
return webdriver.Firefox(options=options, service=service)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/firefox/webdriver.py", line 71, in init
super().init(command_executor=executor, options=options)
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 212, in init
self.start_session(capabilities)
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 299, in start_session
response = self.execute(Command.NEW_SESSION, caps)["value"]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/remote/webdriver.py", line 352, in execute
response = self.command_executor.execute(driver_command, params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/remote/remote_connection.py", line 302, in execute
return self._request(command_info[0], url, body=data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/dzu/.local/lib/python3.12/site-packages/selenium/webdriver/remote/remote_connection.py", line 322, in _request
response = self._conn.request(method, url, body=body, headers=headers)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/request.py", line 81, in request
return self.request_encode_body(
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/request.py", line 173, in request_encode_body
return self.urlopen(method, url, **extra_kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/poolmanager.py", line 376, in urlopen
response = conn.urlopen(method, u.request_uri, **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 799, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/util/retry.py", line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/packages/six.py", line 769, in reraise
raise value.with_traceback(tb)
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 467, in _make_request
six.raise_from(e, None)
File "", line 3, in raise_from
File "/usr/lib/python3.12/site-packages/urllib3/connectionpool.py", line 462, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 1428, in getresponse
response.begin()
File "/usr/lib/python3.12/http/client.py", line 331, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/http/client.py", line 300, in _read_status
raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
[Process exited 0]
Third one would correspond to successfully launched Firefox, but they are very rare to occur and
nvim
cut them for some reason. These are basically the same as the first set, but with message about writing log to some random file in/tmp
in place of exit code.Output of
jupynium --version
Output of
nvim --version
Additional context
Arch Linux user here. Since
pip
won't allow installing any packages globally by default, I allowed it to do so with--break-system-packages
flag forjupynium
specifically (since it has no pacman-managed alternative). Rest of the dependencies were installed systemwide viapacman
(the intended way).Every time server is let to run with
firefox_profiles_ini_path
specified, system seems to "lose" RAM: less free RAM is reported by htop. Eventually, most of the RAM gets marked as shared, and I was not able to find process responsible for that. That persists between user sessions.My firewall rules are relatively strict, so if there are any ports need to be open (apart from 8888 in the default url), it would be helpful to know.
Rest of plugin's functions seem to work just fine, and I really enjoy it!
The text was updated successfully, but these errors were encountered: