Commit Graph

337 Commits

Author SHA1 Message Date
Jakub Roztocil
67ad5980b2 Don't fetch the response body unless needed.
E.g., this will only read the response headers but won't download the
whole file:

    http GET --headers example.org/big-file.avi

The request method is respected (i.e., it doesn't switch to HEAD like
cURL does).
2012-08-01 21:31:06 +02:00
Jakub Roztocil
00d85a4b97 Fallback to media subtype if the type is uknown.
Closes #81.
2012-08-01 17:37:23 +02:00
Jakub Roztocil
90d34ffd0d Added tests for binary request data. 2012-08-01 00:52:30 +02:00
Jakub Roztocil
8905b4fc72 cleanup 2012-07-30 14:23:22 +02:00
Jakub Roztocil
4117d99dd0 Updated screenshot. 2012-07-30 12:37:59 +02:00
Jakub Roztocil
49604e7c29 Updated screenshot. 2012-07-30 12:29:56 +02:00
Jakub Roztocil
72d371c467 Updated screenshot. 2012-07-30 12:24:11 +02:00
Jakub Roztocil
e13f65ace1 Updated solarized and switched to Solarized256Style. 2012-07-30 12:11:16 +02:00
Jakub Roztocil
923a8b71bd Revorked output
Binary now works everywhere. Also added `--output FILE` for Windows.
2012-07-30 10:58:16 +02:00
Jakub Roztocil
6eed0d92eb Better error messages. 2012-07-29 07:14:54 +02:00
Jakub Roztocil
edf87c3392 Consistent request-response separators. 2012-07-29 06:59:51 +02:00
Jakub Roztocil
f73bfea6b8 Validate "file fields (name@/path) require --form / -f". 2012-07-29 06:58:50 +02:00
Jakub Roztocil
16635870e3 Removed redundant decode/encode. 2012-07-29 03:52:24 +02:00
Jakub Roztocil
f5bc081fda Send filenames with multipart/form-data file uploads. 2012-07-28 13:24:44 +02:00
Jakub Roztocil
1efea59a8d Fixed typos. 2012-07-28 06:09:25 +02:00
Jakub Roztocil
098e1d3100 Fixed multipart requests output; binary support.
* Bodies of multipart requests are correctly printed (closes #30).
* Binary requests and responses should always work (they are also suppressed
  for terminal output). So things like this work::

     http www.google.com/favicon.ico > favicon.ico
2012-07-28 05:50:12 +02:00
Jakub Roztocil
a8ddb8301d Default to https:// if invoked as `https'. 2012-07-27 18:08:33 +02:00
Jakub Roztocil
a770d79aef v0.2.7dev 2012-07-26 10:03:34 +02:00
Jakub Roztocil
b53d483163 v0.2.6 2012-07-26 09:58:31 +02:00
Jakub Roztocil
f45cc0eec0 Added docstrings, refactored input. 2012-07-26 07:23:00 +02:00
Jakub Roztocil
851412c698 Improved error messages. 2012-07-26 03:16:42 +02:00
Jakub Roztocil
26a76e8243 Clean-up 2012-07-26 00:50:39 +02:00
Jakub Roztocil
f5cfd0143b Ensure that full querystring is printent with -v.
The `key==value` parameters weren't included in the Request-Line URL.

Also added tests.
2012-07-25 14:32:57 +02:00
Jakub Roztocil
76ebe7c6db Short option for --headers is now -h.
-t has been removed, for usage use --help
2012-07-24 17:17:26 +02:00
Jakub Roztocil
7af08b6faa Allow multiple fields with the same name.
Applies to form data and URL params:

    http -f url a=1 a=2
    http url a==1 a==2
2012-07-24 17:00:02 +02:00
Jakub Roztocil
9944def703 Switched to "==" a the separator for URL params.
Also refactored item escaping.
2012-07-24 14:56:53 +02:00
Jakub Roztocil
2646ebaaed Replaced --ignore-http-status with --check-status.
The default behaviour now is to exit with 0 on HTTP errors
unless --check-status is set.
2012-07-24 01:09:14 +02:00
Jakub Roztocil
0572158ba1 Added exit codes for HTTP 3xx, 4xx, 5xx (3, 4, 5).
Also added `--ignore-http-status` to ensure 0 exit status.

HTTP 3xx result in 0 exit status when `--allow-redirects` is set.
2012-07-23 19:40:50 +02:00
Jakub Roztocil
0a673613ef Fixed colorama initialization (#36). 2012-07-21 15:08:28 +02:00
Jakub Roztocil
ced6e33230 Fixed tests. 2012-07-21 03:22:47 +02:00
Jakub Roztocil
87042f65c9 Added models.Environment().
Refactoring and general cleanup.
2012-07-21 03:14:01 +02:00
Jakub Roztocil
57fc606f6b Changed default --print to "b" if stdout piped.
If the output is piped to another program or redirected to a file,
the new default behaviour is to only print the response body.
(It can still be overriden via the ``--print`` flag.)
2012-07-20 23:43:04 +02:00
Jakub Roztocil
16f23d8147 Improved highlighting of HTTP headers.
Closes #60.
2012-07-20 21:58:41 +02:00
Jake Basile
76a3125153 Updated documentation for query string params. 2012-07-18 21:16:33 -05:00
Jake Basile
06ea36aaa4 Added the ability to pass query string parameters. 2012-07-18 20:44:09 -05:00
Jakub Roztocil
c2d70e2bb1 Clean up. 2012-07-17 07:01:30 +02:00
Jakub Roztocil
2dba176aa8 Added support for terminal colors under Windows.
Tested on Python 2.7 under Windows 7 with PowerShell and cmd.exe.

Closes #36
2012-07-17 04:06:13 +02:00
Jakub Roztocil
533a662651 0.2.6dev 2012-07-17 01:39:30 +02:00
Jakub Roztocil
1ce02ebbd5 0.2.5 (bugfixes) 2012-07-17 01:39:02 +02:00
Jakub Roztocil
f29c458611 Python 3 fixes. 2012-07-17 01:26:21 +02:00
Jakub Roztocil
2d7df0afb4 Fixed AttributeError in Content-Type vendor removal. 2012-07-17 01:11:43 +02:00
Jakub Roztocil
16a7d0a719 Fixed accidentally remove __licence__. 2012-07-17 01:11:01 +02:00
Jakub Roztocil
f42ee6da85 0.2.5dev 2012-07-17 00:45:20 +02:00
Jakub Roztocil
deeb7cbbac 0.2.4 (bad upload of 0.2.3 to pypi). 2012-07-17 00:44:25 +02:00
Jakub Roztocil
12f2fb4a92 Merge branch 'master' of github.com:jkbr/httpie 2012-07-17 00:38:41 +02:00
Jakub Roztocil
489bd64295 0.2.4dev 2012-07-17 00:37:53 +02:00
Jakub Roztocil
9b8cb42efd 0.2.3 2012-07-17 00:37:13 +02:00
Jakub Roztocil
2036337a53 Merge pull request #69 from jokull/master
Prettify vendor+json and vendor+xml Content-Type responses
2012-07-16 15:27:50 -07:00
Oleg Churkin
5a82c79fdf Now non-ascii symbols displayed correctly in the output (not as escape sequences). 2012-07-17 00:08:52 +02:00
Jakub Roztocil
05b321d38f Better wording. 2012-07-17 00:06:13 +02:00
Jakub Roztocil
681b652bf9 Allow stdin data with password prompt; added tests
Closes #70
2012-07-16 23:41:27 +02:00
Ismail Badawi
929ead437a Have --auth prompt for password if omitted. 2012-07-16 04:40:36 -04:00
Jökull Sólberg Auðunsson
36de166b28 Simplify vendor extension content-types since they are most likely lexable 2012-07-14 14:27:11 +00:00
Cemal Eker
cb7ead04e2 Added omitted query string data to request headers. 2012-07-14 03:37:24 +03:00
Jakub Roztocil
6ab03b21b4 Fixed Content-Type for requests with no data.
Closes #62.
2012-07-04 01:39:21 +02:00
Jakub Roztocil
50196be0f2 Added support for request payload from a filepath
Content-Type is detected from the filename.

Closes #57.
2012-06-29 00:45:31 +02:00
Jakub Roztocil
3179631603 0.2.3dev 2012-06-24 16:45:01 +02:00
Jakub Roztocil
2f7921091c 0.2.2 2012-06-24 16:43:03 +02:00
Jakub Roztocil
926d3f5caf Tests, docs, clean-up.
Closes #54.
2012-06-24 03:45:21 +02:00
Jakub Roztocil
4613d947a8 Default to POST also when stdin redirected.
+clean up
2012-06-24 01:25:30 +02:00
Vladimir Berkutov
0e1affbbc4 Issue #54 Method suggestion proposal 2012-06-17 22:15:07 +04:00
Vladimir Berkutov
d920f20847 Issue #54 Method suggestion proposal 2012-06-17 22:11:26 +04:00
Vladimir Berkutov
bca36f0464 Issue #54 Method suggestion proposal 2012-06-17 21:46:56 +04:00
Vladimir Berkutov
78fff98712 Issue #54 Method suggestion proposal 2012-06-16 20:08:31 +04:00
Jakub Roztocil
cbc6d02127 Fixed --verbose --form.
Closes #53
2012-06-15 16:47:55 +02:00
Jakub Roztocil
28dbe9f76c Bump version to 0.2.2dev. 2012-06-13 16:02:30 +02:00
Jakub Roztocil
a0700c41ad 0.2.1 2012-06-13 16:01:23 +02:00
Jakub Roztocil
e175fe9d0e Ensured a new line after the request message in the output. 2012-06-13 15:32:02 +02:00
Jakub Roztocil
d544ec3823 Made --verbose work also with requests<0.12.1. 2012-06-13 15:25:05 +02:00
Jakub Roztocil
6cf2910de0 Version bump to 0.2.1dev. 2012-06-13 15:24:48 +02:00
Jakub Roztocil
f64eb09571 Merge pull request #50 from dair-targ/master
Fixed --verbose flag for newer requests.
2012-06-13 06:14:12 -07:00
Vladimir Berkutov
70b3658004 --verbose flag was not working. Here is bugfix. 2012-06-02 23:14:21 +04:00
Jakob Kramer
d89eeb0796 PEP-8 2012-04-28 14:18:59 +02:00
Jakob Kramer
bced559496 use PrettyHttp class; working --headers and --body 2012-04-28 14:16:47 +02:00
Jakob Kramer
4aa86cb438 Use the full capability of HttpLexer 2012-04-26 14:48:38 +02:00
Jakob Kramer
2d7f2c65a2 Use the Pygments HTTP and JSON lexers 2012-04-26 13:05:59 +02:00
Jakub Roztocil
3a96706e18 0.2.0 2012-04-25 02:11:19 +02:00
Jakub Roztocil
7910269996 Updated README and docs. 2012-04-25 02:10:58 +02:00
Jakub Roztocil
c5b1aaaa28 Major clean-up and refactoring. 2012-04-25 01:32:53 +02:00
Jakub Roztocil
67d6426360 Fixed several unicode-related issues
Closes #31 Python 3 & non-ascii arguments => UnicodeEncodeError
Closes #41 Unicode response error.
Closes #42 UnicodeEncodeError when piping Unicode output
2012-04-25 00:08:40 +02:00
Jake Basile
90af1f7422 Fixed escaping for long separators. 2012-04-18 18:18:00 -05:00
Jake Basile
16df8848e8 Removed accidentally included old funky code. 2012-04-16 20:47:13 -05:00
Jake Basile
c29981c633 Added ability to escape parameters... except for the := ones. 2012-04-16 20:28:08 -05:00
Jake Basile
45ce446017 -j/--json now adds "Accept": "application/json" to GET requests if no previous Accept header exists. 2012-04-14 14:13:53 -05:00
Jakub Roztocil
0c4c6c4753 Added --auth-type and tests for basic/digest auth.
Closes #38.
2012-04-11 13:56:25 +02:00
Jakub Roztocil
ee598d304d Merge branch 'digest-auth' of https://github.com/dshafik/httpie into dshafik-digest-auth 2012-04-11 13:16:26 +02:00
Jakub Roztocil
c6c1489212 Refactored @mmb's fix to --verify; updated docs.
Closes #32.
2012-04-11 12:46:08 +02:00
Matthew M. Boedicker
71d21d1feb make --verify no command line argument work 2012-04-05 12:55:05 -04:00
Davey Shafik
153663cb92 Add support for Digest authentication 2012-03-22 10:51:33 -04:00
Jakub Roztocil
51aa0409e6 Added Python 3 support
Closes #11.
2012-03-15 00:13:11 +01:00
Jakub Roztocil
e2e749b2a6 Improved request formatting. 2012-03-14 22:45:35 +01:00
Jakub Roztocil
ccbea8c96e Assume "/" as the Request-URI for printing when none present. 2012-03-14 19:30:12 +01:00
Jakub Roztocil
b7e0473d6c Added file upload support
It is now possible to send multipart/form-data requests.

Note that the --file option used previously has been removed
because it didn't allow you specify the field name.

Example:

    http -f POST example.com field-name@/path/to/file
2012-03-14 19:14:37 +01:00
Jakub Roztocil
578acacdf3 Added a --verbose / -v flag
When set, the whole request as well as the response is printed. Shortcut for --print=HBhb.
2012-03-14 11:15:21 +01:00
Jakub Roztocil
ed888a2657 Made sure request Host is correct when printing. 2012-03-14 01:12:10 +01:00
Jakub Roztocil
02622a4135 Added the option to print the request
It is now possible to print any combination of the following
request-response bits:

    - Request headers (H)
    - Request body (B)
    - Response headers (h)
    - Response body (b)

The output is controlled by the --print / -p option which
defaults to "hb" (i.e., response headers and response body).

Note that -p was previously shortcut for --prety.

Closes #29.
2012-03-14 00:44:13 +01:00
Jakub Roztocil
31c28807c9 Added better JSON highlighting
A JSON-specific lexer for Pygments by Norman Richards (@orb)
has been added. It attempts to provide more interesting syntax
highlighting which correctly distinguishes between attribute
names and values.

Closes #25.
2012-03-13 21:45:40 +01:00
Praful Mathur
c9eb2255f6 Added proper JSON highlighting 2012-03-05 12:58:21 -05:00
Jakub Roztocil
ce952c9e90 Added support for more 256 color terminals.
Closes #20. Thanks, @laurentb.
2012-03-04 16:40:02 +01:00
Jakub Roztočil
c446d756ab Fixed IOError in setup.py. 2012-03-04 13:47:09 +01:00
Jakub Roztočil
7ca6191902 v0.1.5 2012-03-04 13:33:18 +01:00
Jakub Roztočil
ebb271334b Corrected line breaks in the output. 2012-03-04 13:03:21 +01:00
Jakub Roztočil
6d14097844 Added travis-ci configuration. 2012-03-04 11:31:37 +01:00
Jakub Roztočil
f5d5ec22af Added --version. 2012-03-04 10:49:37 +01:00
Jakub Roztočil
b728710760 Factored out CLI parsing. 2012-03-04 10:49:17 +01:00
Jakub Roztočil
ca8779d879 Merge branch 'main-module-convention' of https://github.com/gandaro/httpie into gandaro-main-module-convention
Renamed httpie.httpie to httpie.__main__ so that one can invoke it via python -m httpie.
2012-03-04 03:13:50 +01:00
Jakub Roztočil
b802f2b960 Added field-name:=raw-json
Closes #14
2012-03-04 02:44:30 +01:00
Jakub Roztočil
00312ead28 Refactored --pretty and added tests.
#16
2012-03-04 01:54:28 +01:00
Jakub Roztocil
d02ac54130 Merge pull request #16 from tictactix/master
Added a way to force pretty printing
2012-03-03 16:17:41 -08:00
Chris Faulkner
dd8faecbf7 Pass allow_redirects to request so --allow-redirects works. 2012-03-03 11:54:53 -08:00
Praful Mathur
58f74fe14a Force pretty printing (ignore last commit; stupid undo mistake) 2012-03-02 17:00:20 -05:00
Praful Mathur
84a0d4a35d Added forcing pretty printing for piping purposes. 2012-03-02 16:54:18 -05:00
Jakob Kramer
d670513c9f use the __main__ submodule convention to make it possible to use python -m httpie 2012-03-02 18:35:33 +01:00
Jakub Roztočil
860a851a4b Fixed a missing line between headers and body. 2012-03-02 09:02:50 +01:00
Jakub Roztočil
9634dca7d8 Fixed a UnicodeError in Python 2.6. 2012-03-02 02:36:21 +01:00
Jakub Roztočil
bb653bf1a9 Added first tests. 2012-03-02 01:42:23 +01:00
Jakub Roztočil
94c605fac1 Added --style
Closes #6. Thanks, @iromli.
2012-03-02 01:39:22 +01:00
Mark Larus
f934f4345e Support for terminals not using 256 color
As documented in issue #8, the default terminal in OS X 10.6 is xterm-color, which does not support Formatter256Terminal
2012-02-29 15:39:56 -05:00
Isman Firmansyah
b752b59d92 remove unnecessary partial call 2012-02-29 21:35:20 +07:00
Isman Firmansyah
553941c98d added support to use other pygments styles, falback to solarized 2012-02-29 02:06:36 +07:00
Jakub Roztočil
1a88ae647e 0.1.4 2012-02-28 18:09:05 +01:00
Jakub Roztočil
0293ba1799 Do not assume UTF-8. 2012-02-28 18:06:21 +01:00
Jakub Roztocil
f90ae113e4 Merge pull request #2 from flashingpumpkin/master
Added Python 2.6 compatibility.
2012-02-28 08:54:59 -08:00
Alen Mujezinovic
6f9ad9e4e1 Revert "Not all web servers return UTF-8 and will crash httpie when decoding the response"
This reverts commit 2f569b901d.
2012-02-28 16:49:53 +00:00
Jakub Roztočil
ecf968388b Fixed __version__ and __doc__ import. Thanks, @FND. 2012-02-28 17:14:31 +01:00
Alen Mujezinovic
2f569b901d Not all web servers return UTF-8 and will crash httpie when decoding the response 2012-02-28 14:01:01 +00:00
Alen Mujezinovic
b567104267 Removed the lists in favour of generators 2012-02-28 13:33:33 +00:00
Jakub Roztočil
71b6b126c0 Fixed setup.py to work without having pygments already installed. Closes #1. 2012-02-28 13:49:58 +01:00
Alen Mujezinovic
f73aaa844f Syntax error fix 2012-02-28 10:51:13 +00:00
Jakub Roztočil
258fc0cd5f Renamed the CLI tool http. 2012-02-27 11:54:41 +01:00
Jakub Roztočil
459c9f1a33 Added Solarized color scheme for Pygments by @gthank. 2012-02-26 16:22:04 +01:00
Jakub Roztočil
98e320a1a3 Added error handling. 2012-02-26 16:13:12 +01:00
Jakub Roztočil
4059dbc27a Fixed header formatting. 2012-02-26 01:43:44 +01:00
Jakub Roztočil
5653b9c6a0 Added --headers and --body to limit the output. 2012-02-26 01:37:28 +01:00
Jakub Roztočil
3f0d621c5a Fixed a typo. 2012-02-25 14:34:41 +01:00
Jakub Roztočil
0577d07316 Fixed a typo. 2012-02-25 14:33:56 +01:00
Jakub Roztočil
b966efa17d Initial commit. 2012-02-25 13:39:38 +01:00