Comments (8)
Correcting for this issue would be trivial. But does the upstream project want to have this particular condition handled?
Thank you
from nyx.
I'd be delighted to merge a patch if it's correct. On first glance nyx's split()
call should be fine with tabs...
>>> "hello world".split()
['hello', 'world']
>>> "hello\tworld".split()
['hello', 'world']
from nyx.
May have been too hasty in pinning it as the wrong delimiter with string-splitting. That is not the issue.
It appears when nyx retrieves the log path using the stem library functions get_conf/get_conf_map the value gets mangled when tab-delimited in torrc
notice\\tfile\\t/var/log/tor
This is why splitting of the tokens fail.
Raw ControlPort access with the GETCONF command shows the response is normally escaped so I suspect the issue involves string handling when the response is already escaped.
Thank you
from nyx.
Thanks, makes sense. I'd be delighted to merge a patch that addresses it.
from nyx.
Did some more tracing.
When the message is received by stem the string-formatting of Python double-escapes any escaped tabs in the response so the issue probably could be fixed by un-escaping the value. The question is if to fix it when retrieving the log path or globally for all messages received using stem. Only caveat with suggesting the latter is that the concern with unforeseen breakage exists.
Thank you.
from nyx.
Thanks h3xagonal! Sorry for the long delay.
Performing the conversion within nyx is a bit of a hack but I merged this because...
- Your patch will certainly do the trick.
- The proper solution would be to look into tor's codebase, see how it handles tabs, if it changed recently, then either adjust tor or normalize in stem's get_conf_map.
I no longer work with tor so opting for the simple approach and merged this. ;)
from nyx.
Happy to have provided assistance.
I no longer work with tor so opting for the simple approach and merged this. ;)
Off-topic question but is the status of nyx unmaintained or will others be able to merge pull-requests for correction of issues or new features and issue new releases?
Good luck to other ventures.
Thank you.
from nyx.
is the status of nyx unmaintained or will others be able to merge pull-requests for correction of issues or new features and issue new releases?
I continue to merge pull requests for Nyx and Stem but my chief reason for leaving tor was their disinterest in my projects so nope, further releases aren't presently in the cards. Sorry to disappoint.
from nyx.
Related Issues (20)
- nyx fails to build with Python 3.11.0a2 HOT 2
- Nyx has glichty text if using zsh, ohmyzsh and the zshrc from kali linux with a login shell. HOT 10
- Nyx shows 2500 inbound connections and 1500 outbound, but there's almost zero traffic. HOT 2
- Needs more than two gigabyte RAM if running for two days HOT 22
- Figured you'd want to know that I've got Nyx to run natively on Windows (mostly) HOT 1
- Does Nyx modify/remove/add any files to /var/lib/tor? HOT 3
- By default Nyx cant run without sudo on Debain HOT 1
- list index out of range HOT 2
- Ubuntu 18.04 - import distutils.spawn ModuleNotFoundError: No module named 'distutils.spawn' HOT 1
- Gentoo python issues HOT 2
- Nothing in Connections tab HOT 2
- Nyx incompatible with Python 3.11+ (getargspec error) HOT 4
- ipv6 addresses show no consensus data found in connections tab
- High CPU, polling frequency HOT 1
- Nyx doesn't tolerate lack of debian-tor account
- pip install nyx [RegataOS - Opensuse] HOT 2
- Dependency: Stem is unmaintained! HOT 4
- ARM64 'AttributeError' with debian-tor user HOT 1
- Space missing between PID and UPTIME (when PID > 6 digits) displayed
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nyx.