Commit Graph

318 Commits

Author SHA1 Message Date
Jakub Roztocil
da0eb7db79 Renamed --allow-redirects to --follow. 2012-09-07 11:58:39 +02:00
Jakub Roztocil
9338aadd75 Cleanup 2012-09-05 20:22:08 +02:00
Simon Buchan
898408c20c Fix sessions for Windows
':' is invalid in a Windows path, and json needs output to support
write(str).
2012-09-04 15:53:27 +12:00
Jakub Roztocil
47de4e2c9c Sessions are now host-bound. 2012-08-19 04:58:14 +02:00
Jakub Roztocil
8a9cedb16e JSON session data, `httpie' management command. 2012-08-18 23:07:36 +02:00
Jakub Roztocil
ff9f23da5b Grouped arguments for a more user-friendly --help. 2012-08-18 06:12:44 +02:00
Jakub Roztocil
50810e5bd9 Include data directory location with --debug. 2012-08-18 04:45:29 +02:00
Jakub Roztocil
9b586b953b Use %APPDATA% for data on Windows. 2012-08-18 04:36:58 +02:00
Jakub Roztocil
149cbc1604 Fixed Solarized style unavailable on Windows.
#87.
2012-08-18 03:54:38 +02:00
Jakub Roztocil
4c0d7d526f Added initial support for persistent sessions. 2012-08-17 23:30:47 +02:00
Jakub Roztocil
0b3bad9c81 Added initial support for persistent sessions. 2012-08-17 23:23:02 +02:00
Jakub Roztocil
1ed43c1a1e Semver-compatible versioning. 2012-08-17 21:24:34 +02:00
Jakub Roztocil
bf03937f06 Unified output processing options under --pretty.
* --pretty=none instead of --ugly
* --pretty=all instead of --pretty
* --pretty=colors instead of --colors
* --pretty=format instead of --format
2012-08-17 21:15:37 +02:00
Jakub Roztocil
4660da949f Fixed colorized output on Windows with Python 3.
Closes #87.
2012-08-17 06:35:18 +02:00
Jakub Roztocil
a5522b8233 Revert "Iter body lines to avoid binary false positives."
This reverts commit b92a3a6d95.
2012-08-16 03:06:48 +02:00
Jakub Roztocil
b92a3a6d95 Iter body lines to avoid binary false positives.
#84
2012-08-13 23:33:25 +02:00
Jakub Roztocil
68640a81b3 Use CRLF for headers in the output. 2012-08-10 01:45:07 +02:00
Jakub Roztocil
c01dd8d64a Added exit status for timed-out requests. 2012-08-09 05:24:58 +02:00
Jakub Roztocil
22a10aec4a Added --colors and --format.
Closes #59 and #82.
2012-08-07 16:59:49 +02:00
Jakub Roztocil
07de32c406 Version fix. 2012-08-07 15:01:04 +02:00
Jakub Roztocil
1fbe7a6121 Improved --debug. 2012-08-07 14:50:51 +02:00
Jakub Roztocil
969b310ea9 v0.2.7 2012-08-07 00:12:47 +02:00
Jakub Roztocil
dd2c89412c Compatibility with Requests 0.13.6. 2012-08-07 00:07:04 +02:00
Jakub Roztocil
44e409693b Set JSON Content-Type only with data even with -j. 2012-08-06 22:14:52 +02:00
Jakub Roztocil
4e58a3849a Added exit status constants, cleaned up main(). 2012-08-04 19:22:50 +02:00
Jakub Roztocil
94c77c9bfc Improved password prompt. 2012-08-04 17:04:36 +02:00
Jakub Roztocil
c7657e3c4b Streamed terminal output
`--stream` can be used to enable streaming also with `--pretty` and to ensure
a more frequent output flushing.
2012-08-04 16:35:31 +02:00
Jakub Roztocil
4615011f2e Sort headers by name when prettifying. 2012-08-03 00:58:01 +02:00
Jakub Roztocil
4b1a04e5ed Fixed error handling. 2012-08-02 04:33:43 +02:00
Jakub Roztocil
e045ca6bd8 Cleanup, CHANGELOG 2012-08-01 23:51:30 +02:00
Jakub Roztocil
52e46bedda Take advantage of streaming.
It's now possible to download huge files with HTTPie, and it's often faster than curl and wget!
2012-08-01 23:21:52 +02:00
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