jquast / blessed

Blessed is an easy, practical library for making python terminal apps

Home Page:http://pypi.python.org/pypi/blessed

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add blessed-unique enhancements to documentation

avylove opened this issue · comments

Blessed has several features (keyboard input, windows support, length, etc) which are not available in Blessings. These should be outlined in the documentation to be more apparent to developers new to the library.

yes i agree, and in the last 5 or so years i've gotten a lot better at sphinx, I think the pagination/navigator sections could use some refactoring, too.

i'd like more demos, the ones with it or downstream, show with a windows console etc. to help people understand "this is what i need" or not, animaged gifs etc. #113

and don't forget the new f"format strings {term.bold}help{term.normal}" make strings easier to build

search for phrase "improvement" in changelog, to differenciate from blessings

I'll take a stab at it, but you'll probably have to revise it.

How do you feel about increasing the line length for SA from 80 to 100?

Take a look and modify as you see fit. The f-string thing should be documented, but it's not blessed-specific.

100 line length is fine, no problem. I'll be modernizing the tox.ini and linter/checker tools soon, they're a bit out of date.

@avylove please note your commit in a9fe256 doesn't render on pypi, we can't use any sphinx extensions, tox -epydocstyle will report it, once the other errors are removed to allow it to move on to restructuredtext_lint and doc8 checkers

I converted them to HTTP refs to the documentation. That way the info is easily accessible, but it renders correctly in GitHub and PyPI.

I've run out of steam for all these bugfixes and changes, and I think I've run out of steam for filling in the missing test coverage, if I can drum up any documentation work to make it all less overwhelming, more interesting and more animated terminal gif examples, tables of all x11 colors, etc., quite a lot of work left !

I get it. You've done ton of work recently. I'll help out where I can.

I got the linting to pass. That's in master.

I started looking at test coverage in another branch. Some of the missing coverage is from 2.6 testing. I tried to add it back, but if, I'm reading it right, the issue is the old version of pytest not understanding some of the addopts options. Not sure it's worth too much time to figure out a workaround. So I think we should either rip out 2.6 compat workarounds or add # pragma: no cover to them. I'm not sure which I favor. I know lots of shops are still stuck on 2.6 with RHEL 6, but I'm the one who maintains the EPEL package for blessed and I wasn't planning on updating it anymore since it's going EOL in November.

2.6 testing is working in the test_coverage branch, but it looks like only the Linux 3.8 and Windows 3.8 coverage results are being uploaded to codecov. They are being skipped with SKIPPED: InterpreterNotFound: python3.8. I'll look into it.

Sorted that out. Now getting coverage from all the tests. Had to add a workaround for codecov. Several times I had reports fail to upload and there currently isn't a retry option for a timeout failure. Squashed it and merged into master.

great work, sorry for being disconnected, been busy with job hunting lol

No worries. Updated tests to increase coverage. Currently at 95.77%. I got everything I could. Here's what's missing:

if match_optional:
_numeric_regex = r'(\d+)?'

match_optional never gets used for any Termcap instances.

# we require ur"" for the docstring, but it is not supported by all
# python versions.
# This may no longer be needed
if length.__doc__ is not None: # pylint: disable=no-member
length.__doc__ += ( # pylint: disable=no-member

I'm not sure what versions of Python this was an issue for. If the encoding is specified for the file, I wouldn't think this is needed. Which brings up another thing I noticed. This file and several others have # encoding: utf-8, some others have # -*- coding: utf-8 -*-. They both meet PEP 263 but we should probably be consistent.

Everything else is dependent on a pty type of capability for Windows. I started looking into it, and it's possible, just a lot of work, so I'm hoping someone else gets to it first.

Good job and thanks.

In regards to python 2.6, we won't announce support for it in documentation, but I do appreciate to continue to support it where possible, my personal computers and travis no longer support it, so we can only count on mindfulness and user reports.

You're probably right about the coding stuff, feel free to do whatever you like.

Nearly complete with a large documentation refactor... I hope to make a PR today or tomorrow. I generated all the X11 colors into a nice table, and I'm working on some gif recordings, just a bit of ops work, I think I should use cloudfront so they can be served from all these various sites without difficulty (github, rtd, pypi)

Closed by #143