- Smarter ifb0 handling on Linux #93.
- Dropped support for NodeJS 12 since it's unmaintaned.
- Code cleanup using eslint-plugin-unicorn.
- Fixed
--version
so it actually shows the version again #75.
- The E6 Module convertion in 4.0 broke version check (
--version
) making installs failed. PR #74 is a temporaty fix for that.
- Removed the dependecy of route. Using
ip route
instead and we already haveip
as a requirement.
- Converting the project to ES6 module. If you run Throttle by command line it will work exactly as before except that we dropped support for NodeJS 10 #67. You can read Sindre Sorhus ESM package guide.
- Updated dev dependencies to latest versions #68
- Updated minimist dependency.
- Add support for setting packet loss. Add
--packetLoss
and set the loss in percentage.
- When you run on Mac OS we changed so localhost traffic is not throttled by default. To throttle on localhost use
--localhost
. This makes sence if you use WebDriver to drive your browser on your local machine. And Mac OS now works the same as Linux.
- Fix breakage when multiple default routes are declared , thank you Andy Richardson for PR #62.
- Added support for config files. Use
--config config.json
to read configuration setup from a file.
- Make the install as small as possible.
- Removed the execa dependency to make sure we have minimal dependencies #53.
- You can now set one of up/down/rtt if you like as introduced by Iñaki Baz Castillo - thank you! Implemented in #46. This also remove the default profile meaning there's a change in behavior if you run throttle without any parameters. Before a default profile was used but now you get an error (you know need to set a profile or set up/down or rtt).
- You can use
--log
to log all networks commands #45. - Added support to add delay on for localhost on OS X. Use
--rtt 100 --localhost
#51.
- Add missing await when removing the ingress if removing root fails for tc #47.
- Better error handling in the CLI #48. Make sure that the exit code is > 0 if setting the throttling fails.
- Removed configuration file for pfctl to make it easier to set up dynamic dummynet #49
- Updated execa to 4.0.3.
- Removed log message "using default profile"
- You can log all the commands that sets up the throttling by setting
LOG_THROTTLE=true
#44.
- Updated minimist
- Fixed dependency tree and npm-shrinkwrap to only hold dependencies for production.
- Another fix to 2g to get that right, thank you Matt! #37.
- 2g speed was updated to become more usable and follow WPT #36 - thank you Matt Hobbs for the PR.
- More pre-made profiles: dsl, 3gem, 4g, lte, edge, dial, fois #36 - thank you Matt Hobbs for the PR.
- Another execa fix, hopefully fixing the last thing + added more tests in Travis.
- Over optimistic Execa upgraded caused Throttle to stop working #32.
- Updated dependencies #31.
- Calling stop on Linux throwed error see #20 and fixed by Iñaki Baz Castillo, thank you!
- Simplified profile/stop/help. You can now start with:
throttle $profile
and stop withthrottle stop
- Catching when ifb has already been setup.
- Another go at trying to try/catch failing settings.
- Rewrite to async/await from promises
- Ensure setup has completed fully before returning when starting throttling with tc.
- Always return Promises from start() and stop(), even in case of errors.
- Typo in the CLI help
- Simpler way to set connectivity with tc
- You can now see the version with --version
- You can now use pre defined profiles.
- Always remove filters before we try to set them.