OrbTorrent enforces these limits, and stops a hook that goes over one. A hook that’s stopped shows Didn’t finish, with which limit it hit. Before a download starts, that lets the download start.
|
Time |
CPU time |
Memory |
beforeStart hook |
15 s |
10 s |
512 MB |
afterFinish hook |
6 h |
2 min |
512 MB |
afterChecks hook |
6 h |
2 min |
512 MB |
verify |
15 s |
10 s |
512 MB |
CPU time is time spent computing. Waiting, for a response or with sleep, doesn’t count, and nor does files.sha256, which OrbTorrent computes itself. That’s how an afterFinish hook can pace itself for a rate limit for hours with 2 minutes of CPU time.
- Before a download starts, every extension’s
beforeStart hooks run at the same time.
- After a download finishes, each extension’s
afterFinish and afterChecks runs go one at a time, and up to 4 hooks run at once across all extensions. afterChecks hooks run once the afterFinish hooks are done.
|
|
| Addresses |
https:// only, on port 443, to hosts in permissions.network |
| Methods |
GET, HEAD, POST, PUT, PATCH and DELETE |
| Response size |
10 MB |
| Each request |
30 s |
| Redirects |
Followed only to listed hosts |
| Local addresses |
Refused: the Mac and its local network, checked again as it connects |
| Bodies |
Text, JSON or bytes |
|
|
| When |
afterFinish hooks, and afterChecks hooks once the download has finished, next to a file the user chose to download |
| Kinds |
Subtitles, text, images and checksums, by extension |
| A file |
10 MB |
| A run |
200 files and 50 MB |
| A suffix |
64 characters, starting with ., -, _ or a space |
| Replacing |
Only a file the same hook added to the same download before |
|
|
| All of an extension’s storage |
1 MB of JSON |
| A key |
200 characters |
|
|
summary |
300 characters, on one line |
details |
20,000 characters |
link.title |
60 characters |
link.url |
https:// or http:// |
files |
1,000 files, problems first, each summary 300 characters |
A progress message |
200 characters |
| A log entry |
10,000 characters |
Longer text is cut, not refused.
|
|
name, hook names, verify |
64 characters, of lowercase letters, digits and hyphens |
A host in permissions.network |
253 characters |
Each test may take 10 seconds of real time, unless it sets timeout. Timers run on a virtual clock, so waiting doesn’t use it up.