Commit graph

28 commits

Author SHA1 Message Date
rhysd
d47482fcd9 fix crash at setting empty values to HTTP proxies
with this patch `https_proxy=` and `http_proxy=` will work well.
2020-01-20 17:17:24 +09:00
rhysd
b68624f2f3 support HTTP and HTTPS proxies (fix #103) 2020-01-20 17:02:43 +09:00
rhysd
4e4ebe9c98 refactor main to address several issues
Addressed issues:

- when specified URL is invalid, it exited successfully with doing
  nothing. There was no way why it does not work for users
- it exited successfully even if invalid User-Agent value is specified
- it created file twice on `--output` option specified. It may cause an
  issue when some file watcher (e.g. FsEvents on macOS) is watching

Improvements:
- handle errors with `Result::expect` consistently it correctly exits
  with non-zero status on error
- define `Output` enum for handling both stdout and file outputs
2020-01-15 16:52:20 +09:00
rhysd
6e99ad13e7 upgrade reqwest to v0.10.0
This will improve build time and binary size as follows:

* Before

- **Compile targets**: 220
- **Build time**: `cargo build --release  1264.95s user 39.72s system 335% cpu 6:29.14 total`
- **Binary size**: 6578568 bytes

* After

- **Compile targets**: 170
- **Build time**: `cargo build --release  1130.64s user 32.15s system 359% cpu 5:23.69 total`
- **Binary size**: 6107088 bytes

* Differences

- **Compile targets**: 1.29x smaller
- **Build time**: 1.23x faster
- **Binary size**: 1.07x smaller
2020-01-07 14:22:32 +09:00
rhysd
75fb6961ed migrate to Rust 2018 2020-01-03 00:33:49 +09:00
Sunshine
bfb97bd062 add option for saving output to file 2019-12-26 00:45:20 -05:00
Emi Simpson
65d0eab793
Use a shared client initialized in main.rs 2019-12-09 22:17:54 -05:00
voila
1ff5e91087 Use HashMap as cache to minimize the number of HTTP requests (#75)
Use HashMap as cache to minimize the number of HTTP requests
2019-10-22 18:33:22 -04:00
robatipoor
2e48ea90e1 move argument parser section to args mod 2019-10-10 08:58:12 +03:30
Sunshine
0896f2e214 Properly handle 30x redirects 2019-09-30 23:58:09 -04:00
Vincent Flyson
3948ea3aa0 Improve code structure 2019-09-29 17:15:49 -04:00
Vincent Flyson
eec05767cf Add support for poster attribute 2019-09-22 12:57:50 -04:00
Vincent Flyson
88a230872c Add CSP isolation, no CSS, and no iframe options 2019-09-21 22:59:03 -04:00
Vincent Flyson
02b717ae54 Add flag to ignore errors related to TLS certificates 2019-08-26 23:17:36 -04:00
Vincent Flyson
2b96f9a32a Add flag for silent mode 2019-08-25 11:41:30 -04:00
Vincent Flyson
d8d6437a15
Merge branch 'master' into author-robatipoor 2019-08-23 23:24:07 -04:00
Vincent Flyson
c34d77d5d8 Revamp resolve_url() and improve code format 2019-08-23 23:06:14 -04:00
Vincent Flyson
2be5b1c235 Add support for iframes 2019-08-23 20:16:16 -04:00
Vincent Flyson
13429e32d3 Allow HTTP redirects and preserve email links 2019-08-23 16:00:05 -04:00
Vincent Flyson
d3497b5db1
Merge branch 'master' into author-robatipoor 2019-08-23 15:09:46 -04:00
Vincent Flyson
7e298b0b02 Add -u flag for custom User-Agent 2019-08-23 15:00:56 -04:00
Vincent Flyson
7b326ee9f5 Add robatipoor to list of authors 2019-08-23 14:44:16 -04:00
mahdi
14e9e6facc cargo clippy 2019-08-23 22:54:45 +04:30
Vincent Flyson
54fdd890f9 Parse Cargo.toml for strings 2019-08-23 05:49:14 -04:00
Vincent Flyson
fde715a27e Increase request timeout to 10 seconds 2019-08-23 05:08:38 -04:00
Vincent Flyson
a891782ce4 Add option to exclude images 2019-08-23 04:33:30 -04:00
Vincent Flyson
ffa60a0ce2 Convert action attribute to full URL for FORM tags 2019-08-23 03:28:55 -04:00
Vincent Flyson
143c396c71 Rewrite program in Rust 2019-08-22 23:17:15 -04:00