Commit Graph

418 Commits

Author SHA1 Message Date
Jakub Roztocil
2078ece95a Cleanup 2014-10-20 14:41:48 +02:00
Dennis Brakhane
f1cd289d51 Fallback to JSON highlighting if subtype contains json
Some JSON based formats like JSON Home Documents[1] don't
use a '+json' suffix, but simply contain json in their
MIME type. Also, some servers might use (outdated)
types like 'application/x-json'.

The JSON formatter can already handle those cases,
but the highlighter was ignoring them.

This commit will let the highlighter choose the JSON
lexer if no other lexer could be found and the MIME subtype
contains 'json'

[1] http://tools.ietf.org/html/draft-nottingham-json-home-03
2014-09-25 00:10:06 +02:00
Jakub Roztocil
58b51a8277 Improved terminal color depth detection via curses
Closes #244
2014-09-08 07:46:53 +02:00
Jakub Roztocil
b0effe07d9 Fixed --output=/dev/null on Linux
Closes #252
2014-09-07 10:22:21 +02:00
Jakub Roztocil
5084f18568 '\' only escapes separator characters in req-items
It makes easier to work with Windows paths.

Closes #253, #254
2014-09-05 18:36:23 +02:00
Jakub Roztocil
1035710956 Added RequestItems named tuple for convenience. 2014-09-05 07:51:35 +02:00
Jakub Roztocil
ca36f1de04 Handle empty passwords in URL credentials
Closes #242
2014-07-18 13:39:47 +02:00
Jakub Roztocil
0f96348fd1 Cleanup 2014-07-18 13:39:47 +02:00
Jakub Roztocil
2a72ae23d5 Run tests against local httpbin instance via pytest-httpbin. 2014-06-28 16:38:41 +02:00
Jakub Roztocil
040d981f00 Fixed custom Host
Closes #235
2014-06-28 13:24:14 +02:00
Jakub Roztocil
8e170b059c Fixed tests. 2014-06-03 19:45:57 +02:00
Jakub Roztocil
e4c68063b9 Converted built-in formatters to formatter plugins.
Still work in progress and the API should be considered private for now.
2014-05-12 19:12:39 +02:00
Jakub Roztocil
858555abb5 Make sure session and default headers play nice
Before: headers = default + args + session
Now:    headers = default + session + args

Fixes #180
2014-05-08 12:27:50 +01:00
Jakub Roztocil
d9eca19b8f New URL. 2014-05-05 21:17:23 +02:00
Jakub Roztocil
faec00fd99 Improve support for 'type/subtype+suffix' mime types in the colors output formatter.
E.g.:
* application/ld+json
* application/hal+json

Closes #189, #206
2014-04-28 10:08:03 +02:00
Jakub Roztocil
0e6875bf83 Handle HTTP 0.9 in response when formatting version.
Closes #170
2014-04-28 00:08:20 +02:00
Jakub Roztocil
bd50a6adb1 Moved .directory from BaseConfigDict to Config.
Closes #200
2014-04-27 23:12:48 +02:00
Jakub Roztocil
05db75bdb1 Modularized output, refactoring
Making it ready for output formatting plugin API.
2014-04-27 21:58:00 +02:00
Jakub Roztocil
c06598a0c4 Cleanup 2014-04-27 18:27:44 +02:00
Jakub Roztocil
87806acc56 Cleanup 2014-04-26 23:06:39 +02:00
Jakub Roztocil
43bc6d0c98 Fixed and added tests for --verbose with unicode headers. 2014-04-26 20:10:15 +02:00
Jakub Roztocil
0bd218eab0 Cleanup 2014-04-26 19:32:08 +02:00
Jakub Roztocil
a3352af1d4 Added support and tests for unicode support in sessions. 2014-04-26 18:16:30 +02:00
Jakub Roztocil
467d126b6c Python 3 unicode fixes. 2014-04-26 17:35:26 +02:00
Jakub Roztocil
282cc455e3 Avoid "TypeError: keyword arguments must be strings" on Python 3.3. 2014-04-26 15:18:38 +02:00
Jakub Roztocil
56d33a8e51 Fix Windows branch. 2014-04-26 15:10:39 +02:00
Jakub Roztocil
15e62ad26d Implemented more robust unicode handling.
* Immediatelly convert all args from `bytes` to `str`.
* Added `Environment.stdin_encoding` and `Environment.stdout_encoding`
* Allow unicode characters in HTTP headers and basic auth credentials
  by encoding them using UTF8 instead of latin1 (#212).
2014-04-26 15:07:31 +02:00
Jakub Roztocil
b10d973019 Removed unused import. 2014-04-25 12:53:02 +02:00
Jakub Roztocil
af4aa3a761 Test improvements. 2014-04-25 12:18:35 +02:00
Jakub Roztocil
f02169ea71 Added Python 2.6 compatible OrderedDict
To preserver ordr of headers, parameters, etc.
2014-04-24 19:57:19 +02:00
Jakub Roztocil
e5d758e4ce More tests. 2014-04-24 19:32:55 +02:00
Jakub Roztocil
bdea7be456 Added tests for --debug and --help. 2014-04-24 19:32:55 +02:00
Jakub Roztocil
3d079942f4 Finished pytest migration. 2014-04-24 19:32:55 +02:00
Jakub Roztocil
6071fff4af Refactored tests into smaller modules. 2014-04-24 14:07:31 +02:00
Jakub Roztočil
733771fd9e Merge pull request #172 from unsignedint/master
process XML data before pretty-printing to trim whitespace
2014-03-18 19:44:16 +01:00
Jakub Roztocil
29877bc8ad Updated installation instructions. 2014-03-04 18:24:32 +01:00
Jakub Roztocil
b01906a45c Fixed ZeroDivisionError in download summary.
Closes #202
2014-02-18 13:06:18 +01:00
Matthias Lehmann
a3aae12d9c rename -ssl-cert and --ssl-key to --cert and --certkey 2014-02-05 12:50:40 +01:00
Matthias Lehmann
d4363a560d rename existing_file to readable_file_arg and move to input 2014-01-29 18:02:06 +01:00
Matthias Lehmann
b9d7220b10 check --ssl-cert and --ssl-key to be files 2014-01-29 15:54:19 +01:00
Matthias Lehmann
14583a2efa add support for client SSL certificate and key 2014-01-28 16:16:48 +01:00
Jakub Roztocil
f1224da526 v0.8.0 2014-01-25 15:11:38 +01:00
Jakub Roztocil
e0cc63c7eb Cleanup 2014-01-25 15:09:28 +01:00
Jakub Roztocil
52dd6adaa3 Updated README. 2014-01-25 15:04:15 +01:00
Jakub Roztocil
1aa77017d5 Catch UnicodeDecodeError when embedding file via =@ or :=@. 2014-01-25 14:57:19 +01:00
Jakub Roztočil
b1074ccb4f Merge pull request #191 from solidsnack/wip-no-auth-in-host-header
Expunge user:pass@... from Host header.
2014-01-08 02:28:19 -08:00
Thomas LÉVEIL
a31d552d1c fix typo 2014-01-07 14:04:13 +01:00
Jason Dusek
5a037b2e13 Expunge user:pass@... from Host header.
In verbose mode, the basic auth user and password would show up in colored
output reporting the Host header, as reported in
https://github.com/jkbr/httpie/issues/169
2014-01-06 19:12:33 +00:00
Rav Chandra
bee10e5eed replace XML processor with ElementTree with custom indentation 2013-10-16 13:07:53 +13:00
Rav Chandra
bcdf194bae process XML data before pretty-printing to trim whitespace 2013-10-16 12:33:19 +13:00
Nathan LaFreniere
4fe3deb9d9 add self to authors, update changelog, and mention shorthand in --help output 2013-10-09 13:21:14 -07:00
Nathan LaFreniere
8a52bef559 make shorthand parsing more robust, add unit tests and documentation 2013-10-09 11:32:41 -07:00
Nathan LaFreniere
711168a899 allow :port style shorthand 2013-10-08 22:41:38 -07:00
Jakub Roztocil
81c99886fd Update --proxy examples to include URLs to work with Requests v2.0.0.. 2013-09-25 22:02:29 +02:00
Jakub Roztocil
2e535d8345 Fixed password prompt. 2013-09-25 00:17:50 +02:00
Jakub Roztocil
0bcd4d2fb0 Fixed a bytes/str issue for Python 3. 2013-09-25 00:00:17 +02:00
Jakub Roztocil
d5bc564e4f Allow embeding text (=@) and JSON (:=@) files content into request data fields. 2013-09-24 23:41:18 +02:00
Jakub Roztocil
54c5c3d82b 0.7.1 2013-09-24 21:57:29 +02:00
Jakub Roztocil
2a6514eb5d Update to requests 2.0.0
Closes #140.
2013-09-24 21:49:43 +02:00
Jakub Roztocil
22c2cc6465 Removed unused import. 2013-09-24 20:30:54 +02:00
Jakub Roztocil
2265edf05e Cleanup 2013-09-24 20:15:19 +02:00
Jakub Roztocil
29f6b6a2a9 Improved Content-Disposition parsing for --download mode
Closes #168.
2013-09-24 19:50:37 +02:00
Jakub Roztocil
2acb303552 Added support for auth plugins. 2013-09-21 23:46:15 +02:00
Jakub Roztocil
f7b703b4bf Added --ignore-stdin
Closes #150
2013-08-23 10:57:17 +02:00
Jakub Roztocil
00de49f4c3 Cleanup 2013-08-18 00:59:10 +02:00
Jakub Roztocil
67496162fa Improved --help output. 2013-08-10 11:56:19 +02:00
Jakub Roztocil
383dba524a Print error when download is interrupted by server
Close #147
2013-07-07 17:00:03 +02:00
Jakub Roztocil
809a461a26 v0.6.0 2013-06-03 12:19:43 +02:00
Jakub Roztocil
172df162b3 Added XML formatting to CHANGELOG. 2013-06-02 20:27:58 +02:00
Jakub Roztocil
1bad62ab0e Handle unicode when formatting XML. 2013-06-02 20:25:36 +02:00
Jakub Roztocil
8d302f91f9 Merge branch 'master' of git://github.com/jargonjustin/httpie into jargonjustin-master 2013-06-02 20:14:51 +02:00
Jakub Roztocil
5af88756a6 Fixed download ETA for Python 2.6. 2013-05-14 12:49:29 +02:00
Jakub Roztocil
7f624e61b5 Use Thread instead of Timer for progress reporting. 2013-05-14 12:49:03 +02:00
Jakub Roztocil
6e848b3203 cleanup 2013-05-14 12:14:08 +02:00
Jakub Roztocil
87c59ae561 Added anonymous sessions (--session=/file/path.json). 2013-05-13 14:47:44 +02:00
Jakub Roztocil
76eebeac2a 0.6.0-dev 2013-05-13 12:42:16 +02:00
Jakub Roztocil
5b9cbcb530 v0.5.1 2013-05-13 12:40:25 +02:00
Jakub Roztocil
e09b74021c Ignore Content-* and If-* request headers.
Those headers are not stored in sessions anymore.

Closes #141.
2013-05-13 11:54:49 +02:00
Jakub Roztocil
71e7061014 v0.5.0 2013-04-27 12:03:38 -03:00
Jakub Roztocil
bc756cb6a2 Cleanup 2013-04-27 11:57:13 -03:00
Jakub Roztocil
1fc8396c4b Stop the progres reporter thread on error. 2013-04-16 04:55:45 -03:00
Jakub Roztocil
6c3b983c18 Tests 2013-04-15 00:56:47 -03:00
Jakub Roztocil
cfa7199f0b Added a simple download test. 2013-04-13 15:34:31 -03:00
Jakub Roztocil
5a1177d57e Fixed downloads with no Content-Length. 2013-04-13 14:50:46 -03:00
Jakub Roztocil
c63a92f9b7 Cleanup 2013-04-12 22:02:34 -03:00
Jakub Roztocil
d17e02792b Fixed length progress bar. 2013-04-12 21:49:27 -03:00
Jakub Roztocil
fc4f70a900 Colorize stderr on Windows. 2013-04-12 17:15:21 -03:00
Jakub Roztocil
1681a4ddd0 TODOs 2013-04-12 15:27:26 -03:00
Jakub Roztocil
289e9b844e Fixed Content-Type retrieval for Python 3. 2013-04-12 14:07:21 -03:00
Jakub Roztocil
4d84d77851 Cleanup 2013-04-12 13:09:57 -03:00
Jakub Roztocil
1b98505537 Validate download options before setting up streams. 2013-04-12 11:59:23 -03:00
Jakub Roztocil
d32acfe2fa Only use Range when already have a partial download. 2013-04-12 11:56:05 -03:00
Jakub Roztocil
38206e9e92 Cleanup 2013-04-12 11:26:42 -03:00
Jakub Roztocil
341272db1e Added support for output redirection with --download (#104). 2013-04-12 11:04:14 -03:00
Jakub Roztocil
9d043eb745 Used Content-Disposition filename (#104). 2013-04-12 10:19:49 -03:00
Jakub Roztocil
40bd8f65af Handle KeyboardInterrupt while --download'ing (#104). 2013-04-12 09:08:19 -03:00
Jakub Roztocil
347653b369 Performance and progress bar improvements.
#104
2013-04-12 08:59:33 -03:00
Jakub Roztocil
ebfce6fb93 Improved progress bar (#104). 2013-04-11 18:51:21 -03:00
Jakub Roztocil
674acfe2c2 Cleanup 2013-04-11 16:23:15 -03:00
Jakub Roztocil
7ccdece39f Cleanup 2013-04-11 04:00:41 -03:00
Jakub Roztocil
e53dcba03e Added Content-Range parsing tests.
#104
2013-04-11 03:49:01 -03:00
Jakub Roztocil
486657afa3 Improved Content-Range parsing.
#104
2013-04-11 03:24:59 -03:00
Jakub Roztocil
599bc0519f Download resume improvements.
- Set correct Range
- Validate respnse status
- Validate Content-Range

 #104
2013-04-11 02:29:10 -03:00
Jakub Roztocil
21613faa5a Progress bar update 2013-04-10 13:07:05 -03:00
Jakub Roztocil
36bc64e02f Cleanup. 2013-04-10 12:53:25 -03:00
Jakub Roztocil
6e5c696ac9 --json with no data sets Content-Type as well
Closes #137
2013-04-02 11:07:14 -03:00
Jakub Roztocil
9b2a293e6e Progress on --download. 2013-03-24 11:23:18 -03:00
Jakub Roztocil
bffaee13ff Formatting 2013-03-20 12:07:23 -03:00
asavchyn
631c54b711 Fixed PyPy cookie updating issue 2013-03-20 11:45:56 +02:00
Jakub Roztocil
99f82bbd32 Handle downloads with no Content-Length. 2013-03-07 13:32:48 -03:00
Jakub Roztocil
6f64b437b7 Fixed streaming (closes #133) 2013-03-07 12:42:29 -03:00
Jakub Roztocil
7774eac3df Fixed unique suffix placement for URLs with a file extension. 2013-03-03 22:35:01 -03:00
Jakub Roztocil
8e6c765be2 Initial --download implementation (#104).
Closes #127
2013-03-03 22:17:09 -03:00
Jakub Roztocil
f0c42cd089 v0.4.1 2013-02-26 14:37:09 +01:00
Jakub Roztocil
be0b2f21d2 v0.4.0 2013-02-22 13:52:50 +01:00
Jakub Roztocil
5cc5b13555 Removed the management command.
It means that:

    httpie session list
    httpie session edit
    ...

are gone.

It has never been part of a stable release, and since it wasn't
a very useful feature, it's beeing removed now to avoid feature creep.
2013-02-22 13:27:26 +01:00
Jakub Roztocil
093dab5896 Multiple headers TODO. 2013-02-22 13:18:18 +01:00
Jakub Roztocil
5f42a21cfb Simplified stored session cookie data. 2013-01-22 20:03:28 +01:00
Jakub Roztocil
4c45f0d91f Session name escaping. 2013-01-22 20:02:39 +01:00
Jakub Roztocil
238b2e0441 Fixing tests for Travis. 2013-01-04 03:05:36 +01:00
Jakub Roztocil
a93d57b58b Fixed request/response session cookies.
Closes #113.
2013-01-04 02:59:05 +01:00
Jakub Roztocil
79c412064a Python 3.3 fixes. 2013-01-03 15:19:21 +01:00
Jakub Roztocil
0ae9d7af58 Compatibility with requests v1.0.4 (requests URL params). 2013-01-03 14:42:17 +01:00
Jakub Roztocil
1481749c22 Use urlsplit instead of urlparse.
Closes #118.
2013-01-03 14:12:27 +01:00
Jakub Roztocil
d84d94dd55 Clean up 2013-01-03 13:49:41 +01:00
Jakub Roztocil
fe16f425a9 Require Requests v1.0.3. 2012-12-19 12:31:01 +01:00
Jakub Roztocil
e5edb66ae8 Requests v1.0: Fixed request body access. 2012-12-19 11:37:52 +01:00
Justin Bonnar
2e57c080fd Pretty print XML 2012-12-17 13:21:38 -08:00
Jakub Roztocil
1766dd8291 Requests 1.0: session cookies. 2012-12-17 17:18:18 +01:00
Jakub Roztocil
69e26b8bc8 Requests 1.0: prefetch; default_headers. 2012-12-17 17:02:27 +01:00
Jakub Roztocil
9ec328ff6f Session commands. 2012-12-11 12:54:34 +01:00
Jakub Roztocil
f2d59ba6bd Improved --check-status + HTTP error + stdout redirect warning. 2012-12-05 05:27:11 +01:00
Jakub Roztocil
53caf6ae72 Cleanup 2012-12-05 05:06:06 +01:00
Jakub Roztocil
8175366f27 PEP8 2012-12-05 04:39:56 +01:00
Jakub Roztocil
18510a9396 Progress on httpie session *. 2012-12-01 18:16:00 +01:00
Jakub Roztocil
acf5f063c7 Typo 2012-12-01 16:52:23 +01:00
Jakub Roztocil
dd100c2cc4 Fixed -j & -v & redirected stdout. Closes #109. 2012-12-01 15:55:58 +01:00
Jakub Roztocil
4a24cd25b9 Clean up. 2012-12-01 15:20:14 +01:00
Jakub Roztocil
1c5fb89001 Output stream refactoring. 2012-11-09 15:49:23 +01:00
Jakub Roztocil
d87b2aa0e5 Added support for credentials in URL.
Closes #100 🍰
2012-11-08 22:29:54 +01:00
Jakub Roztocil
5d969852c7 Added --no-option's and made args more config-friendly. 2012-09-24 06:49:12 +02:00
Jakub Roztocil
e25d64a610 0.3.0 2012-09-21 05:50:01 +02:00
Jakub Roztocil
a41dd7ac6d Allow output redirection on Windows.
Closes #88.
2012-09-21 04:30:59 +02:00
Jakub Roztocil
4a6f32a0f4 Documented config.
Also renamed `default_content_type` to `implicit_content_type` .
2012-09-17 03:08:45 +02:00
Jakub Roztocil
548bef7dff Added tests for sessions. 2012-09-17 02:15:00 +02:00
Jakub Roztocil
6c2001d1f5 Use the HTTPIE_CONFIG_DIR environment variable. 2012-09-17 02:12:16 +02:00
Jakub Roztocil
4029dbf309 Added configuration file.
The "default_content_type" option can be set to "form".

Closes #91.
2012-09-17 00:37:36 +02:00
Jakub Roztocil
478d654945 Renamed --session-read to --session-read-only. 2012-09-17 00:01:49 +02:00
Jakub Roztocil
66bdbc3745 Cleanup. 2012-09-07 12:48:59 +02:00
Jakub Roztocil
316e3f45a9 Added --session-read for read-only sessions. 2012-09-07 12:38:52 +02:00