-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changing Page Limits Does Not Work #37
Comments
Using the latest version from git
If the first line is missing from your output, this would pretty clearly be a bug. If not, and I'm open to suggestions here. Parler is very clearly struggling to maintain adequate performance, and the authors were genuinely worried about disrupting service in violation of the TOS. On the other hand, options to remove these default limits could probably be better-documented. Do you think an option like |
It's probably also worth mentioning that Parler doesn't always listen to the page size / limit options. Some API endpoints will likely ignore these options and return fewer results per page. Not great, not terrible, but ultimately outside of the authors' control. |
❯ /usr/local/Cellar/node/15.2.1/bin/parlance --version From what I am seeing it is not honoring the page limit option, the delay seems to be working when I tell it to be off with or without page limits. I agree with not fully opening the floodgates on Parler. In my experience barrier to entry would eliminate a lot of potential spam. Even just supplying build flags to allow the building of a version of parlance without the limits may be enough. I am not very familiar with node so I can't say for sure that this is possible but I imagine it has to be. |
Sorry, I've removed my previous comment, as it was based on me completely misreading your comment. I see the bugs. The argument parsing code appears to be: (i) Failing to properly handle cases where both the (ii) Failing to change the This is likely a combination of an original argument-parsing bug and one or more regressions. I've just added a ratelimit log message for client-initiated randomized delays (visible in As a temporary workaround, Apologies again for the misread and rather-irrelevant response; I'll fix the above as soon as possible and get a couple unit tests added to guard against future regressions. |
Ouch; looks like there's a third issue here that's causing the long-form options to be treated differently than the single-letter options:
(Edit: this portion should now be resolved in a73b832) I'll go ahead and review everything in Thanks for the report; this is definitely a major usability issue and barrier to use. |
As mentioned in yargs/yargs#1011, the `yargs` argument parsing library contains code that attempts to intelligently handle negation of boolean arguments via a `--no-` prefix. Disable this behavior; it's undesirable given the set of options we currently provide, and easy enough to deal with manually should the need arise. This issue was causing one or more long-form options to be incorrectly ignored by the CLI interface.
This should now issue HTTPS requests with the proper `limit` parameter, although most Parler API endpoints appear to ignore the option now. Which I guess is good; it's a baby step toward learning that they've made a very bad decision re: their choice of datastore. There are probably more argument parsing issues; I was expecting a behavior from the `yargs` argument-parsing library that's documented but doesn't currently seem to work. If Parler's actually going to be a thing in 2021, it's probably time to prioritize issue #10, and get this stuff unit tested to the extent possible.
I think I've fixed this. This should now issue HTTPS requests with the proper Although this probably won't let you pull thousand-result pages in practice, it did point out a bunch of argument parsing bugs. I'll mark this as resolved for now but feel free to reopen if you run into any additional weird behavior; I'll do the same. |
When trying to change the page limit rate I get the following message
❯ /usr/local/Cellar/node/15.2.1/bin/parlance followers -u --no-delay -p 100 -g 100
[warn] You are responsible for deciding if this is allowed
[warn] The authors bear no responsibility for your actions
[fatal] You have been warned; refusing to continue as-isjjjk
The text was updated successfully, but these errors were encountered: