This allows the system to properly encode the '|', instead of passing the '|' on in the URL, which is not allowed and breaks proxies such as Authelia. Then, for the purpose of generalization, I pushed this pattern through to all places where we join items with a '|'. This comes with the caveat that when we have individual components which contain a '|' or any other character that is not allowed per the HTTP standard, we still like to encode the individual components, for example in the case of 3 strings, separated by a '|'. If we don't do this we run into the risk that upon decoding URI finds '|' in our original strings, which is something we don't want. For example: Sender: ````javascript const arr = ["foo|1", "bar|2"]; const uri = new URI("test.html").setData(arr.join("|")); ```` Then on the receiving window, when it receives the uri and splits it, it looks like this: ````javascript const arr = new URI().getData('hashes').split('|'); // arr is now ["foo", "1", "bar", "2"] ```` This is why when we want to send a literal "|" we need to do `encodeURIComponent` and `decodeURIComponent` manually on each item, and THEN we join. For example: Sender: ````javascript const arr = ["foo|1", "bar|2"]; const uri = new URI("test.html").setData(arr.map(encodeURIComponent).join("|")); ```` Receiver: ````javascript const arr = new URI().getData('hashes').split('|').map(decodeURIComponent); // arr is now ["foo|1", "bar|2"] ```` We don't need to with hashes as they are HEX, so no risk of any weird characters in there.
qBittorrent - A BitTorrent client in Qt
Description:
qBittorrent is a bittorrent client programmed in C++ / Qt that uses libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.
It aims to be a good alternative to all other bittorrent clients out there. qBittorrent is fast, stable and provides unicode support as well as many features.
The free IP to Country Lite database by DB-IP is used for resolving the countries of peers. The database is licensed under the Creative Commons Attribution 4.0 International License.
Installation:
For installation, follow the instructions from INSTALL file, but simple:
./configure
make && make install
qbittorrent
will install and execute qBittorrent hopefully without any problem.
Public key:
Starting from v3.3.4 all source tarballs and binaries are signed.
The key currently used is 4096R/5B7CC9A2 with fingerprint D8F3DA77AAC6741053599C136E4A2D025B7CC9A2
.
You can also download it from here.
PREVIOUSLY the following key was used to sign the v3.3.4 source tarballs and v3.3.4 Windows installer only: 4096R/520EC6F6 with fingerprint F4A5FD201B117B1C2AB590E2A1ACCAE4520EC6F6
.
Misc:
For more information please visit: https://www.qbittorrent.org
or our wiki here: http://wiki.qbittorrent.org
Use the forum for troubleshooting before reporting bugs: http://forum.qbittorrent.org
Please report any bug (or feature request) to: http://bugs.qbittorrent.org
You can also meet me (sledgehammer_999) on IRC:
#qbittorrent on irc.freenode.net
sledgehammer999 sledgehammer999@qbittorrent.org