* feat: use github actions to deploy docs
fixes#4473
* fix: install xonsh
* fix: doc action
* chore: support *.md for documentation
* fix: remove hardcoded docs link
it affects local testing
* refactor: move sphinx extensions to its own package
* fix: remove deprecated get_theme_dir
As of Sphinx 1.2, this is passed to Sphinx via a ``setup.py`` entry
point,
and no longer needs to be included in your documentation's
``conf.py``.
* feat: jinja2 render without affecting incremental build
* style:
* feat: auto generate API doc
no need to create a file for each module
* chore: watch top-level and nested files
* refactor: update lib api-docs as well
* fix: import errors when doc generated
for some modules
* fix: relative path
* feat: add release handling
* Update .github/workflows/docs.yml
Co-authored-by: Gil Forsyth <gforsyth@users.noreply.github.com>
* refactor: use github-app-token
* chore: deploy docs only when merged
Co-authored-by: Gil Forsyth <gforsyth@users.noreply.github.com>
* refactor: remove usage of global variables in abbrevs.py
* chore: add flake8-mutable to prevent mutable defaults
* fix: abbrevs expand test
* refactor: add xonsh session singleton
* refactor: fix circular errors when using xonshSession as singleton
* refactor: remove black magicked builtin attributes
* style: black format tests as well
* refactor: update tests to use xonsh-session singleton
* refactor: update abbrevs to not use builtins
* test: remove DummyCommandsCache and patch orig class
* fix: failing test_command_completers
* test: use monkeypatch to update xession fixture
* fix: failing test_pipelines
* fix: failing test_main
* chore: run test suit as single invocation
* test: fix tests/test_xonsh.xsh
* refactor: remove builtins from docs/conf.py
* fix: mypy error in jobs
* fix: test error from test_main
* test: close xession error in test_command_completers
* chore: use pytest-cov for reporting coverage
this will include subprocess calls, and will increase coverage
* style:
* First attempt at register/deregister machinery for envvars
* Added detailed docstring, simplified ensurers
Also added some type checking that became clear from docstring writing.
* Changes in response to @scopatz review
Simplified kwarg names.
* defaultval -> default
* Created new Var namedtuple, as well as DEFAULT_VARS
We should now delete DEFAULT_ENSURERS, DEFAULT_VALUES, DEFAULT_DOCS, and
refactor Env to use the new single namedtuple and the DEFAULT_VARS dict
* Removed DEFAULT_ENSURERS, DEFAULT_VALUES, DEFAULT_DOCS
Now need to edit Env to use new DEFAULT_VARS, Var namedtuple
* Finished updating Env object to use new combined Var
Also made corresponding changes elsewhere ensurer was used
* Working on test failures
* More fixes in light of test failures
* Set default values for Var in register.
There's a bit of duplication here, but makes for a cleaner function.
* Black reformatting on environ.py
* Removed history replay
* Added register tests
* Added addtional deregistration test
* Removed all replay references, in docs too
* Added news item for env-reg-dereg
* trigger rebuild
* doc fix
* more doc fixes
* again
* attr names
* reorder imports
* fix flake error
Co-authored-by: Anthony Scopatz <scopatz@gmail.com>
* delete package ptk; rename ptk2 to ptk_shell.; leave ptk2 as alias for ptk_shell.
* SHELL_TYPE "prompt_toolkit" only; remove ptk1 specific behavior.
* Doc updates: eliminate reference to prompt-toolkit < 2.0
* update requirements files ptk>=2; test shell_style="none"
* fix ptk2 stub per code review
* Add ptk2 to list of packages to install.
we'll make sure it's available on CI when the docs are generated for the
website, but it shouldn't fail to build in userspace just because of the
ptk events hack thing
sphinx will implicitly import main, but not before we call
`make_events()`, so only `on_chdir` shows up on the events listing.
explicitly importing `xonsh.main` fixes this up so all of the available
events are documented properly.
We do not want non-canonical versions of xonsh docs to be indexed. OR at
least they should point to the canonical version.
Technically we should even try to have the stable version under a
/stable/ url (to leave us with some freedom of changing things) So that
later we can replace stable with X.y and have a version switcher.