Commit Graph

50 Commits

Author SHA1 Message Date
Mathieu Dupuy
10b7d317d0
Migrate setup.py to setup.cfg (#1553)
* migrate setup.py to setup.cfg

No man pages

* fix Makefile build

* silence flake8 F811 for BaseCLIResponse.command

* also include man pages

* restore a stub setup.py

* remove pytest-lazy fixtures
2024-03-18 16:37:09 +01:00
Jakub Roztocil
2da955fb06
Man page clean-up (#1508)
Ensure we don’t include dynamic content in the static man pages.
2023-05-22 11:56:30 -07:00
a1346054
930cd9081a
Use grep -E instead of egrep (#1436) 2022-10-01 03:32:17 -07:00
Jakub Roztocil
ecff53f2d5 Have naked $ make list all tasks 2022-06-07 14:29:19 +02:00
Jakub Roztocil
41da87f7c8 Install .[test] reqs in make install-reqs 2022-06-07 14:26:48 +02:00
Batuhan Taskaya
003f2095d4
Automatic release update warnings. (#1336)
* Hide pretty help

* Automatic release update warnings.

* `httpie cli check-updates`

* adapt to the new loglevel construct

* Don't make the pie-colors the bold

* Apply review feedback.

Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
2022-05-05 11:18:20 -07:00
Batuhan Taskaya
ff6f1887b0
[Major] UI Enhancements (#1321)
* Refactor tests to use a text-based standard output. (#1318)

* Implement new style `--help` (#1316)

* Implement man page generation (#1317)

* Implement rich progress bars. (#1324)

* Man page deployment & isolation. (#1325)

* Remove all unsorted usages in the CLI docs

* Implement isolated mode for man page generation

* Add a CI job for autogenerated files

* Distribute man pages through PyPI

* Pin the date for man pages. (#1326)

* Hide suppressed arguments from --help/man pages (#1329)

* Change download spinner to line (#1328)

* Regenerate autogenerated files when pushed against to master. (#1339)

* Highlight options (#1340)

* Additional man page enhancements (#1341)

* Group options by the parent category & highlight -o/--o

* Display (and underline) the METAVAR on man pages.

* Make help message processing more robust (#1342)

* Inherit `help` from `short_help`

* Don't mirror short_help directly.

* Fixup the serialization

* Use `pager` and `man` on `--manual` when applicable (#1343)

* Run `man $program` on --manual

* Page the output of `--manual` for systems that lack man pages

* Improvements over progress bars (separate bar, status line, etc.) (#1346)

* Redesign the --help layout.

* Make our usage of rich compatible with 9.10.0

* Add `HTTPIE_NO_MAN_PAGES`

* Make tests also patch os.get_terminal_size

* Generate CLI spec from HTTPie & Man Page Hook (#1354)

* Generate CLI spec from HTTPie & add man page hook

* Use the full command space for the option headers
2022-04-14 07:43:10 -07:00
Jakub Roztocil
a88e44c284 Fix make brew-test
`brew test` is only usable for non-from-source installations.
2022-01-21 19:48:35 +01:00
Batuhan Taskaya
4f7f59b990
Add initial benchmarking infrastructure (#1232)
* Add initial benchmarking infrastructure

* Add CI file

* Try to comment on commits

* Implement file download benchmarks!

* drop commit comments (they dont work)

* Allow running local binary

* Better action

* More docs!

* Better look?

* even better look

* add pretty=all, none benchmarks
2021-12-14 07:05:25 -08:00
Mickaël Schoentgen
7989e438d2
Add documentation about our release process (#1159)
* Add documentation about our release process

* Fixes

* Add company-related tasks, enable back WIP pages

* Fix WIP links

* Add AOSC OS

* Add WIP for AOSC OS

* Tweak

* Remove maintainers email IDs

* Use GH nicknames

* Remove useless WIP for brew

* Tweaks
2021-10-06 16:45:44 +02:00
Mickaël Schoentgen
08751d3672
Add install/update instructions database (#1160)
* Add install/update instructions database

* Update the database

* Revert README changes

They will be overwritten later.

* Revert

* Tweak

* Tweaks

* Upgrade database

* Complete commands

Still not sure about Spack upgrades.

* Sort

* Doc generation script draft

* Remove OS names from tool names

* Fix Linuxbrew name

* `wheel` already installs `setuptools`

* Gen docs

* Update

* Tweak

* Add a GitHub workflow to check for outdated installation instructions

* Fix return value

* Test

* Delete test

* Rename the script

* Add `make doc-install-inst`

* Add missing dev requirement

* The first tool is the primary we want to display

Then they are simply sorted by `tool.title`.

* Sort OSes by name

* Refactoring, jinja template, etc.

* Add tool title uniqueness `assert`, fix platform list extra `\n`

* Rebuild docs

* Update generate.py

* Update README.md

* Update methods.yml

* Update distros derived, more assertions

* Tweaks

* Add workflow to auto-update the docs

* Do not hide the command

* Tweaks

Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
2021-10-06 11:18:27 +02:00
Jakub Roztocil
0c9d701618 Add make install-reqs to install packages without creating env 2021-10-05 21:37:48 +02:00
Mickaël Schoentgen
031b4b89e3 Fix docs formatting 2021-10-05 15:46:10 +02:00
Mickaël Schoentgen
529aa78ee1
Expand the pytest configuration (#1161)
And rely on it to run tests.
2021-09-20 17:36:03 +02:00
Mickaël Schoentgen
7c9f415107
Add a workflow to check documentations (#1151)
* Add a workflow to check documentations

* Fix markdown issues

* Install Ruby 2.7

* Finally, handle and fix GitHub templates

* Minor improvement in the feature request template

* Verbose mode to be sure all files are checked
2021-09-09 15:52:24 +02:00
Mickaël Schoentgen
4c8633c6e5
Split the monolithic workflow into specific ones (#1149)
* Split the monolithic workflow into specific ones

* Rename workflows, improve commands

* Update pip from the venv

* Fix Windows setup

* Lowercase macos-latest

* Fix Windows run, again
2021-09-08 16:41:55 +02:00
Mickaël Schoentgen
a586fca246
Update brew formula to 2.5.0 (#1144)
* Update brew formula to 2.5.0

* Can use `idna` 3.2

* Sort requirements to ease reproductible builds

And also to have the same output as `brew bump-formula-pr`.

* Sync `bottles` with official Formula

And keep the `high_sierra` one.

* Add a workflow to check the Formula
2021-09-08 11:01:27 +02:00
Mickaël Schoentgen
6039bd8582
Switch from reStructuredText to Markdown and add docs/ (#1139)
* Convert most of the documentation from the frontend `README.rst` to `docs/REAME.md`

Also converted all reStructuredText files to Markdown.

* Tell `mdformat` to use LF for end on lines

* `--check` is not needed in the help message

* Skip tests on GitHub Windows.

Those tests pass on a real Windows machine.
Let's revisit those failure later, if needed.

* Move `mdoformat` requirement from `test` to `dev` extra

To fix Fedora CI.
2021-09-06 17:36:13 +02:00
Mickaël Schoentgen
9857693ebf
Use a more modern approach to run tests (#1089)
Running tests through `python setup.py test` is deprecated:

> WARNING: Testing via this command is deprecated and will be removed
> in a future version. Users looking for a generic test entry point
> independent of test runner are encouraged to use tox.

I am not in favor of moving back to `tox`, we should simply run tests
using `python -m pytest` (or `make test`) and that's it.

A new extra was added, `dev`, to install development requirements:

    $ python -m pip install --upgrade --editable '.[dev]'
2021-06-11 20:55:26 +02:00
Mickaël Schoentgen
350f973f70
Switch from pycodestyle to flake8 for code style checks (#1083) 2021-06-02 11:06:46 +02:00
Mickaël Schoentgen
7cbdf2c608
Prefer usage of pytest rather than py.test (#1058)
`py.test` was chosen over `pytest` but it is not planned for removal yet [1].
Anyway, it is a good thing to ensure we are using the correct Python version
with the right `pytest` installed, so using `python -m pytest` is recommended.

[1] https://github.com/pytest-dev/pytest/issues/1629
2021-05-03 18:40:25 +02:00
Jakub Roztocil
173e622567 Update upload command 2021-02-06 11:17:14 +01:00
Jakub Roztocil
1573058811 v2.3.0 2020-10-25 21:12:38 +01:00
Shageldi Ovezov
cf937b6b79
Remove tox (#944)
* Removed the instructions of tox testing

* Deleted tox.ini

* removed tox from requirements

* removed tox from setup.cfg

* removed tox from the Makefile

* removed tox from contributing docs

* updated the CHANGELOG

* removed tox from .gitignore
2020-06-26 17:22:06 +02:00
Jakub Roztocil
14677bd25d Cleanup inline to-dos
I.
2020-06-25 11:36:09 +02:00
Jakub Roztocil
364edc4bd8 Ignore codecov upload failures 2020-01-12 10:57:14 +01:00
Jakub Roztocil
4b524e6a8c v2.0.0 2020-01-12 10:50:57 +01:00
Jakub Roztocil
e4a3ce8b9d Cleanup 2019-12-04 23:31:47 +01:00
Jakub Roztocil
348cc7d5c5 Fixes 2019-12-04 18:48:39 +01:00
Jakub Roztocil
ab3ea24630 Fixes 2019-12-04 18:34:26 +01:00
Jakub Roztocil
cd5116705c Set path in makefile 2019-12-04 18:24:53 +01:00
Jakub Roztocil
38bc578744 Fix tests 2019-12-04 18:09:51 +01:00
Jakub Roztocil
1bc54d4cb4 Create Python virtual environment (via venv) for tests & development, etc. 2019-12-04 17:49:07 +01:00
Jakub Roztocil
f031b8cc8b Make codecov fail loudly 2019-09-18 11:17:33 +02:00
Jakub Roztocil
85da430d16 codecov 2019-09-18 11:09:46 +02:00
Jakub Roztocil
2ffd8d9d9b workflow 2019-09-10 13:10:29 +02:00
Jakub Roztocil
747be30d2e 1.0.3 2019-08-26 12:42:34 +02:00
Jakub Roztocil
69d010a11b Brew cleanup 2019-02-03 15:08:29 +01:00
Jakub Roztocil
42ff243400 Add make brew-test 2019-02-03 14:58:23 +01:00
Jakub Roztocil
d1407baf76 Add make pdf 2018-11-14 13:06:10 +01:00
Jakub Roztocil
7917f1b40c Build fixes and clean-up
* reflect Python 3.7 release
* fix `pycodestyle` errors
* update `pycodestyle` config
* move `pytest` and `pycodestyle` config to `setup.cfg`
* add `make pycodestyle`
* add `make coveralls`
* etc.
2018-07-12 21:16:16 +02:00
Jakub Roztocil
8a9206eceb Fixed Makefile 2016-08-13 22:57:44 +02:00
Jakub Roztocil
487c7a9221 v0.9.5 2016-08-13 22:51:42 +02:00
Jakub Roztocil
01ca7f0eb2 Ignore redirected stdout with --output, -o
This makes it easier to use HTTPie in cron jobs and scripts.

Closes #259
2016-03-01 20:24:50 +08:00
Jakub Roztocil
3b217daddc Travis 2016-02-29 16:43:18 +08:00
Jakub Roztocil
c6690e0182 Makefile improvements 2016-01-02 14:33:48 -03:00
Jakub Roztocil
c82c9f0ae4 Makefile improvements 2016-01-02 14:28:46 -03:00
Jakub Roztocil
84b81c00ea Fixed tox.ini and improved tests and CONTRIBUTING.txt 2016-01-02 14:07:00 -03:00
Jakub Roztocil
6aa711c69f Removed pytest-xdist
The test suite is much less IO-bound now with the local httpbin
instance (via pytest-httpbin). Therefore, paralelization is not
as helpful.
2014-09-08 07:44:25 +02:00
Jakub Roztocil
5a989b6075 Fixed Makefile, added setup.cfg. 2014-04-28 13:27:02 +02:00