SmartProxy icon indicating copy to clipboard operation
SmartProxy copied to clipboard

No way to define a global, catch-all, rule.

Open ndrzej opened this issue 4 years ago • 6 comments

Forgive me, but there is no documentation about what all the options in SmartProxy do and how it works. There are also not tool-tips anywhere to find out what anything does.

And it is practically impossible to know what Host/URL Pattern/RegEx means. I followed the guide on mozilla.org page but it has little to no relevance to the "Proxy Rules" page.

There seems also no way to define a catch all rule, since the "Rule Source Domain" is always required, cannot be empty, cannot be a '*', and it does not match the '.' default domain root either.

Defaulting to direct connection is a bad choice IMHO.

For me the extension seems broken. I have tried in the modes: SmartProxy and AlwaysEnable.

"Always Enable" does NOT mean that (some) proxy is always enabled. It means that you have to click additional check-box for each domain.

Also, what does "[General]" mean in proxy rule creation dialog?

ndrzej avatar Jan 18 '21 03:01 ndrzej

Also, there seems no way to sort the rules and it is unclear which ones take precedence.

ndrzej avatar Jan 18 '21 03:01 ndrzej

In the "Always Enable" mode the proxy rules are not honored. It will just route through the current active proxy.

IMHO this is also a bad choice.

ndrzej avatar Jan 18 '21 03:01 ndrzej

Proxy Rules will not adapt to changes in the Proxy List.

If I change the IP or port number of a proxy, the proxy rule I have created earlier will still keep using the old config for that proxy.

ndrzej avatar Jan 18 '21 04:01 ndrzej

Thank you for your feedback.

Even though I agree with some of your points but here is my take on them:

1- Most options are self-descriptive, and if the user has the basic knowledge of what proxy server is then no more description is needed. (although you will have #140 sometime in future)

2- AS for “Host/URL Pattern/RegEx means.” there is link in the rules page to describe them as a starting point to learn.

3- Catch all rule type of rules are prevented deliberately as it is against the goal of this project. (yet they are still possible if you know regex)

4- "Always Enable" mean proxy is always enabled unless some whitelisted. No rules applied.

5- No sorting is required for the rules as there should be one for each domain/subdomain.

6- “Proxy List Subscription” does not magically read your file when it is changed. You either refresh the subscription manually or schedule it to read after some time.

Please note that this extension is targeted for advanced users, this is not some one-click VPN extensions you get on extensions store.

And you got this extension with the spare time I have, so it needs any help it can get, so get your hands dirty and contribute to the code if you can.

salarcode avatar Jan 18 '21 06:01 salarcode

Thank you, for your response. I really appreciate the work you have done on this extension, and it is still my preferred one.

1- Most options are self-descriptive, and if the user has the basic knowledge of what proxy server is then no more description is needed. (although you will have #140 sometime in future) Please note that this extension is targeted for advanced users, this is not some one-click VPN extensions you get on extensions store.

Salar, things seem self-explanatory for the author, at least for few months. For users it is difficult to understand the modes, the options, and the interactions between all of the aspects of the software. I would consider myself an "advanced" user with an high degree in CS, distributed systems, and AI. I have also over 25 years of industry experience, designing systems, writing software, and leading teams. Documentation is always necessary. Also, I have tested almost every proxy-extension in the Firefox store and this one was on the difficult side to comprehend.

2- AS for “Host/URL Pattern/RegEx means.” there is link in the rules page to describe them as a starting point to learn.

Thank you for providing the links for the users as there are many different pattern-matchers and regex versions. As hinted in my original comment, I had difficulty to make it work and understand due to the interaction with other options like: "source", and "mode".

3- Catch all rule type of rules are prevented deliberately as it is against the goal of this project. (yet they are still possible if you know regex)

It may make you smile, but I have now 27 rules. One that catches ".onion", and one for every letter of the alphabet. This is because, I have to deal with the "source" option that cannot be empty. I don't use subscription.

4- "Always Enable" mean proxy is always enabled unless some whitelisted. No rules applied.

Maybe a better name would be: "No Rules". The user may ask what it is that is "enabled" as the subject is missing.

And you got this extension with the spare time I have, so it needs any help it can get, so get your hands dirty and contribute to the code if you can.

I wish I could contribute, but my current employer owns any code I write (even in spare time). And they are pretty good at indexing literally everything on the net. Hence my interest in proxies. So, all I have left is to "complain" or give feedback.

ndrzej avatar Feb 26 '21 14:02 ndrzej

I was expecting to be able to set a catch-all rule that goes to my default proxy and then set more specific rules for other domains that go to other proxies, but this doesn't seem possible.

God-damnit-all avatar Sep 01 '22 13:09 God-damnit-all

This is indeed what would anybody in the first glance expect. A mode to define advanced rules to exclude or include, from the user decision. Why you would forbid that? What if I want to route all my traffic through a proxy except for downloads? Support of using smart mode in this way is exactly what most users need. Thank you very much.

radiumatic avatar Oct 12 '22 12:10 radiumatic

@nimagp In version 1.0 of SmartProxy which is in alpha at the moment there is a new revamped Always Enabled profile that will allow rules and much flexibility. It should support the features requested in here. #213

salarcode avatar Oct 17 '22 10:10 salarcode

Thanks

radiumatic avatar Oct 18 '22 14:10 radiumatic

Most of items here are addressed in version 1.0 please try it and let me know if this is still an issue

salarcode avatar Jan 22 '23 01:01 salarcode