8/26/2023 0 Comments Bittorrent web based python![]() ![]() The client can disconnect, but the daemon continues to run, transferring the torrent files in the queue. The server is referred to as the daemon and runs in the background, waiting for a client (console, gtk, or web-based) to connect. Be sure to read and install the optional dependencies for the gtk client deluge-gtk to enable desktop notifications and appindicator notifications.ĭeluge works with a client/server model. Install deluge and optionally install deluge-gtk. A full list of features can be viewed here. When the server daemon is running, users can connect to it via a console client, a GTK-based GUI, or a Web-based UI. It has a variety of features, including but not limited to: a client/server model, DHT support, magnet links, a plugin system, UPnP support, full-stream encryption, proxy support, and three different client applications. We do use the repo to self-host our own dependencies in the CI though and it can take anywhere from a few seconds to a few minutes for a freshly spawn IPFS node to find the packages it needs.Deluge is a full-featured BitTorrent application written in Python 3. In other words, it’s like a chicken and egg issue where it’s only fast when there are multiple people using it and it’s unlikely to be used if it’s slow. The downside of a P2P network is that the latency is depending on how popular a piece of content is, so organizations using our repository will need pin the contents locally. (it’s preferable to use a local gateway for security reasons, but I suppose most readers of this comment don’t have one installed). Instead of BitTorrent, we use IPFS which has HTTP gateways builtin for use as a drop-in replacement for PyPI, e.g. ![]() I am also working on a distributed repository called floating cheeses, although the scope is a bit different: it only accept wheels and dependencies are resolved to one single version. Just firing off ideas here and trying to learn why this could (not) work. – Businesses with spare bandwidth to support Python by simply seeding package torrents.ĭisclaimer: I have almost no knowledge of how package management/distribution or PyPI works. Including packages with huge binaries such as cadquery. – It would allow creators/maintainers of packages to seed torrents for their own packages. ![]() The barrier to entry for hosting python packages right now is pretty much infinitely larger than seeding a torrent? Unless I’m missing something. – Volunteers who know how to seed a torrent to start hosting Python packages. – PyPI to start saving bandwidth costs, because little by little more and more packages will be downloaded through the torrent network instead of 100% from PyPI servers. – Users of pip to experience 0 difference in how pip is used (except now old/obscure/large data packages are more likely to still be seeded by someone somewhere and to be downloaded through a torrent which requires no extra user interaction). So instead of (just) hosting packages PyPI could offer the option to host magnet links, torrents and/or links to other indexes/repositories of torrents that contain package(s). Why not build a torrent client into PyPI as one of the repo download channels? So: you keep PyPI the way it is (including the hosting, hard coded repo URL’s, “normal” way of downloading) but you add the option to find packages through torrent indexes and download them from within pip. Not allowing large binaries to be distributed with Python packages, because bandwidth is limited and expensive.Spending 1,5 million USD on hosting per year (and growing), which is not sustainable regardless of the large binary distribution discussion.So I feel like 2 challenges that PyPI has could be solved. ![]() PyPI spends about 1,5 million USD on hosting alone apparently (according to the comment linked above). So apparently one big reason why large binaries aren’t allowed to be distributed through PyPI is that hosting is expensive. Without significant movement from the official PyPI community on those issues (which seems unlikely, because there’s no consensus as to at what the high-level solutions to those issues even are), it’s unclear whether CadQuery can meaningfully do anything here. API to get dependencies without full download.Distributing large binary payloads as separate downloads.Unfortunately, the core issues here are all on PyPI’s side: e.g., We’d all love to see PyPI-hosted packages for CadQuery. I’ll just quote the explanation they gave: Inspired by a discussion on github on why cadquery (Python package) isn’t available through PyPI. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |