PicoTorrent

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Message
Author
User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

PicoTorrent

#1 Post by smaragdus »

PicoTorrent is a new BitTorrent client for Windows written in C++.

PicoTorrent about:
PicoTorrent is designed to be a tiny, easy-to-use BitTorrent client with low memory usage.

We made PicoTorrent to go back to the basics of what is needed from a BitTorrent client. No ads, carefully selected features, and a native user interface integrating seamlessly with your desktop.

PicoTorrent is built directly on the Windows APIs which means that it is native looking on all Windows versions. We designed it to be as simple as possible to use, and all torrent controls are hidden in context menus.
PicoTorrent features:
PicoTorrent is a brand new BitTorrent client for Windows (Vista and above), written in modern C++14. We made PicoTorrent to bring BitTorrent clients back to basics, carefully introducing features while keeping memory usage low. We are currently in the early early stages of something we believe in, however it is already usable and its features should support day-to-day usage.

Highlighted features

- Windows shell integration. Magnet links and torrent files will open with PicoTorrent.
- Low memory usage. The ‘Pico’ in PicoTorrent is something we take seriously, and we always try to keep memory usage low.
- Fast startups.
- High performance. PicoTorrent is built on libtorrent which is a high performance BitTorrent library used by several of the most popular BitTorrent clients.
PicoTorrent links:
http://www.picotorrent.org/ - web-site
https://github.com/picotorrent/picotorrent/ - project page
http://www.picotorrent.org/download/ - download page
https://github.com/picotorrent/picotorrent/releases - download page
http://www.picotorrent.org/get-started/ - about
http://www.picotorrent.org/blog/introdu ... cotorrent/ - introduction
http://www.picotorrent.org/blog/ - blog
https://twitter.com/picotorrent - Twitter
http://codecpack.co/download/PicoTorrent.html - PicoTorrent at CodecPack
http://alternativeto.net/software/picotorrent/ - PicoTorrent at AlternativeTo

PicoTorrent downloads:
http://www.picotorrent.org/download/ - latest release
https://github.com/picotorrent/picotorrent/releases - all releases

PicoTorrent screen-shots:
- program window:
PicoTorrent 0.6.0 - 2016-02-18 - 003.png
PicoTorrent 0.6.0 - 2016-02-18 - 003.png (9.27 KiB) Viewed 42166 times
- preferences:
PicoTorrent 0.6.0 - 2016-02-18 - 004.png
PicoTorrent 0.6.0 - 2016-02-18 - 004.png (5.17 KiB) Viewed 42166 times
PicoTorrent portable:
PicoTorrent seems to be natively portable and stealth- download either x86 or x64 archive, extract and run PicoTorrent.exe, all data and settings are stored in program folder (settings are saved in a Json file- PicoTorrent.json).

PicoTorrent license:
PicoTorrent is open-source and it is released under the MIT License (the license can be found here), the source code can be downloaded from GitHub.

PicoTorrent note:
PicoTorrent is still a bare bones BitTorrent client which lacks many features available in other BitTorrent clients. I didn't find a way to add a magnet link in the portable version. There is a lot to be desired but the project seems promising having in mind that it is quite young- PicoTorrent was born on Nov 8, 2015.

Update:
PicoTorrent requires msvcp140.dll in order to run. Thanks to tactictoe for the observation.
Last edited by smaragdus on Fri Feb 19, 2016 2:20 pm, edited 3 times in total.

User avatar
tactictoe
Posts: 283
Joined: Thu Dec 10, 2015 10:56 am
Location: A galaxy far far downunder
Contact:

Re: PicoTorrent

#2 Post by tactictoe »

Cool torrent if you need a minimalist one. However when I tried to run the portable version I have this error message:
PICTORRENT ERROR.png
PICTORRENT ERROR.png (7.47 KiB) Viewed 42066 times
I guess 'msvcp140.dll' is part of Microsoft Visual C++ runtime library not included into the release. It is going to be a hassle for most of us if not included in the portable release.

:arrow: If the developer ever come here, please read this link:

http://stackoverflow.com/questions/3299 ... ll-missing

JohnW
Posts: 386
Joined: Wed Apr 19, 2006 9:18 am
Location: London, UK

Re: PicoTorrent

#3 Post by JohnW »

I don't really have any interest in this product but I thought tictactoe's comment was useful.
I also felt that it was fairly unusual for such a program not to also require vcruntime140.dll.
Sure enough it did need the other dll.
It then tries to run but fails with an unhandled exception error.
Another strange thing ...
smaragdus is one of the best posters on TPFC. Did this one get through the net or has he got a setup which works?

User avatar
tactictoe
Posts: 283
Joined: Thu Dec 10, 2015 10:56 am
Location: A galaxy far far downunder
Contact:

Re: PicoTorrent

#4 Post by tactictoe »

Solution to this problem could of course to have INCLUDE the DLL inside the exe, but sounds like not an options as they want it as light as possible. At least they should refer to a link to download the Visual C++ runtime library but not provided on their download page.
:arrow: So here is the link: https://www.microsoft.com/en-us/downloa ... x?id=48145. Please be aware of the system requirement before installing, read also the installation note; all on the same page of the provided link.

Link where I downloaded the file for test purpose:
https://github.com/picotorrent/picotorrent/releases
And the download link:
https://github.com/picotorrent/picotorr ... .0-x64.zip which is for 64bits Window OS.

Note: the PicoTorrent-xxxx.EXE is the installer version (Replace the x by your OS version) on github and probably everywhere else.

Maybe it's only the github download link that does not include this dll. Did not try from somewhere else.

Other stuff: Very cool idea to create JSON file numbered for localization. A single function call to that number and here you go the GUI is now talking to you in another language. No, I am not talking funny, I talk geek here. :wink:

That is it.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: PicoTorrent

#5 Post by smaragdus »

@tactictoe & @JohnW
I downloaded PicoTorrent from GitHub. The downloads offered at program's web-site also point at GitHub. To my knowledge PicoTorrent is only available for download at GitHub for the time being. Bug reports, feature requests and suggestions can be submitted at PicoTorrent issues page at GitHub. PicoTorrent was mentioned at Hacker News, where the developer explained that "one of the inspirations for PicoTorrent came from" this blog entry.

Update:
I submitted the issue with msvcp140.dll at GitHub.

Update:
The developer responded that msvcp140.dll will be included in the portable packages in the next version (0.7).

vktr
Posts: 2
Joined: Fri Feb 19, 2016 2:41 pm

Re: PicoTorrent

#6 Post by vktr »

Hi! I'm the author of PicoTorrent - @smaragdus linked this thread from the issue he opened.

@tactictoe, @JohnW, I'm aware of the issue with the missing MSVC14 runtime for the portable packages and solving it is quite simple. It just hasn't been prioritized enough since most of the installs are either via the installer directly or through Chocolatey. Either way, I'll sort it out for the upcoming release!

The official sources for PicoTorrent are GitHub (where I host the installer and portable package for each release) and Chocolatey (which in turn only points to a GitHub release). I sign all our releases (the installer and the executable), so if you download PicoTorrent from anywhere else, make sure it is signed with the correct certificate. The correct certificate has the thumbprint ‎ab766abe262cc8ee4fca7e05e20a58e4e47d3603.

Anyways, let me know if you run into an problems!

User avatar
webfork
Posts: 10818
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: PicoTorrent

#7 Post by webfork »

Hi and welcome to the forum.
vktr wrote:The correct certificate has the thumbprint ‎ab766abe262cc8ee4fca7e05e20a58e4e47d3603
Meaning the SHA1 hash.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: PicoTorrent

#8 Post by smaragdus »

@vktr
Welcome to the forum.
Do you have some to-do list so that I won't request features that have already been included in it?

Specular
Posts: 443
Joined: Sun Feb 16, 2014 10:54 pm

Re: PicoTorrent

#9 Post by Specular »

Will have to try this, love me a minimalist UI.

vktr
Posts: 2
Joined: Fri Feb 19, 2016 2:41 pm

Re: PicoTorrent

#10 Post by vktr »

@smaragdus
Yes, the GitHub issue list is it! :)

User avatar
tactictoe
Posts: 283
Joined: Thu Dec 10, 2015 10:56 am
Location: A galaxy far far downunder
Contact:

Re: PicoTorrent

#11 Post by tactictoe »

Glad to see the developer on board. For my part I just report a attempt to test and why it did fail. Also I provided a temporary solution. I am not on defensive here, just wanted to be clear and not misunderstood. That is all.
On the other hand glad you are aware of this problem and you choose to fix it in a future release.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: PicoTorrent

#12 Post by smaragdus »

PicoTorrent version 0.7 has been released, changes:
Since the previous version we have gotten a few languages as well as features and fixes! German, Latvian and Russian are now included :smile: Other than that, we have fixed a few issues such as validating settings in the torrent overview page, and the x86 stack walking which crashed.

The biggest feature this release is that you can now add magnet links directly from the UI, and it supports pre-loading the torrent so after pasting or entering a magnet link or info hash, PicoTorrent will search for and download the torrent file before presenting the normal add torrent dialog :star:

Features

- German translation. (#131)
- Latvian translation. (#132)
- Russian translation. (#135)
- Allow setting global DL/UL rate limit. (#145)
- Adding magnet links directly from the application. (#155)
- Add option to start PicoTorrent with Windows (on login). (#156)
- Add option to start PicoTorrent normal, hidden, or minimized. (#159)

Fixes

- Fixed a bug in the torrent details file list where the context menu did not work. (#133)
- The x86 stack walking did not work correctly. (#139)
- PicoTorrent crashed if the language directory did not exist. (#141)
- PicoTorrent crashed when pasting a malformed file path in the open torrent dialog. (#143)
- Validate settings in the torrent overview page. (#144)
- Make use of the libtorrent set_load_function to allow dynamic loading of torrent files. (#150)
- Removed the specialized torrent list view and instead made use of the list view class which is used everywhere else. (#151)
The developer has chosen not to include msvcp140.dll in the portable packages:
After some investigation, it seems non-trivial to distribute the correct DLL files alongside PicoTorrent for the portable package. I think it's better to not distribute the runtime and instead have the user install it, just as it is now. Perhaps in the future we can link statically against the runtime, but that has downsides as well...

Specular
Posts: 443
Joined: Sun Feb 16, 2014 10:54 pm

Re: PicoTorrent

#13 Post by Specular »

So I'm testing it in Sandboxie and RegFromApp for portability and notice that it's already written two logs to the app directory without any preference to disable the behavior. Anyone else seeing this, or is it just me?

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: PicoTorrent

#14 Post by smaragdus »

PicoTorrent at version 0.9.0, changes since version 0.7.0:
PicoTorrent 0.8

Version 0.8 of PicoTorrent brings lots of new goodies, such as new languages, smaller distributable files and experimental IPv6 support. You can now also add and remove trackers from the tracker view.

Languages

· Catalan. (#154)
· Italian. (#161)
· Romanian. (#199)
· Spanish. (#199)
· Georgian. (#201)
· Portuguese. (#205)

Features

· Peer speeds in the details dialog are now ignored (showing -) if below 1KB/s. (#167)
· Updated taskbar to only show progress for active torrents, and also added a paused state. (#168)
· Added a basic status bar to the main application window which shows torrent count and DL/UL speeds. (#173)
· Torrents can now be sorted in the queue. The context menu for a torrent contains actions to move a torrent up, down, to the bottom and to the top. (#176)
· Debug symbols now live in their own package. This reduces file size for both the installer bundle and the portable zip package. (#178)
· Trackers can now be added and removed from the tracker view in the torrent details dialog. (#180)
· Removed a timer in PicoTorrentCore which should reduce memory usage and also simplify the threading model. (#181)
· Added a new portable zip package which bundles the runtime DLLs. (#196)
· The taskbar now shows a red overlay when a torrent has an error. The torrent list will also reflect the error message in the status column. (#206)
· Drag-and-drop now supported for torrent files. (#208)
· Logging is now optional. To enable - start PicoTorrent with the --enable-logging command line argument. (#211)
· Experimental IPv6 support added. PicoTorrent will now try to listen on the unspecified IPv6 interface as well as the IPv4 one. (#212)
· The torrent list view now shows current and total numbers for seeds and peers. (#213)

Fixes

· Separated uploading and uploading_stalled for English translation. (#175)
· Torrent and file size were shown wrong in the add torrent dialog. (#179)
· The unhandled exception handler is now working and will post the stack trace to a GitHub Gist. (#183)
· Fixed a bug where torrents were lost if PicoTorrent crashed. This affected only torrents which was added that particular session and had no resume data. (#207)


PicoTorrent 0.9

PicoTorrent 0.9 contains mostly bug fixes but also updates Rasterbar-libtorrent to the latest version as well as removing OpenSSL to bring down file size. OpenSSL can be used in conjunction with Rasterbar-libtorrent to support SSL torrents, however PicoTorrent did not provide the means to actually use SSL torrents so the dependency was removed.

The release also links statically against the MSVC runtime, removing the need to install the runtime separately. This greatly improves portability and users running the portable version should be pleasantly surprised! :smile:

Features

· Remove OpenSSL dependency. (#224)
· Link statically against the MSVC runtime. (#224)
· Updated to the latest Rasterbar-libtorrent version. (#224)

Fixes

· The peers and trackers view did not remove items when needed. (#215)
· Actually include all languages in the installer bundle. (#217)
· Removed a dependency on a HWND in the BitTorrent session, improving portability later on. (#216)
· Fixed an issue with the single instance detection. (#219)
· Fixed an issue with DPI scaling. (#223)
PicoTorrent 0.8.0 couldn't run on my system (error messages on program's start) but PicoTorrent 0.9.0 runs just fine

@Specular
So I'm testing it in Sandboxie and RegFromApp for portability and notice that it's already written two logs to the app directory without any preference to disable the behavior. Anyone else seeing this, or is it just me?
I am using the portable version of PicoTorrent and all the logs are stored in Logs sub-folder inside the program folder.

User avatar
smaragdus
Posts: 2120
Joined: Sat Jun 22, 2013 3:24 am
Location: Aeaea

Re: PicoTorrent

#15 Post by smaragdus »

PicoTorrent at version 0.10, changes:
A month in the works, this release of PicoTorrent brings a whole lot to the table. Most notably the WebSocket API which allows developers to write remote clients to monitor PicoTorrent. The API is read-only for now, which means you cannot pause/resume/add/remove torrents, just observe.

Other features includes a cross-platform core, which is always nice to have. This means we get warnings and validation from another compiler, in this case GCC.

To run the portable version of PicoTorrent v0.10, you will need the Visual C++ 2015 runtime.

Features

- PicoTorrentCore now successfully builds on GCC. (#230)
- PicoTorrent now has a permanent peer ID (-PI-). (#234)
- Show warning if a user tries to add a torrent already in the session. (#235)
- All dialogs are now centered horizontally on their parent. (#237)
- Add an overview page to the torrent details dialog. (#239)
- Add a WebSocket API. (#238)
- Add a storage mode option to the add torrent dialog. (#244)
- Add a ratio column to the torrent list view. (#245)

Fixes

- Updated German translation. (#225)
- Center text in progress bar display. (#229)
- Restore OpenSSL to support HTTPS trackers. (#236)
- Refactored how PicoTorrent is initialized with default values and paths. (#247, #251)
- Refactored configuration. (#252)
- Use dynamic linking for all dependencies. (#250)

Languages

- Add Finnish translation. (#241)

Post Reply