Topydo was only identifying a task as completed if it included a
completion date (which topydo automatically adds). This affects
compatibility with other todo.txt apps, making archiving unreliable.
There is an error, only for this test, complaining of a missing libxml2
and libxlst (because Cython is missing?). It is still early in the 3.12
release process.
Tests started failing across python versions. Tests disagree on presence
or absense of a "VALUE=..." format-specifying option on a COMPLETED and
DTS-START dates.
Modified the test reference file to match test output. This does not
introduce errors to https://icalendar.org/validator.html.
The code had a backport shim for importing shutil get_terminal_size.
For modern versions, the call is in shutil in the standard library.
Starting with 3.9, on Debian, the backport reference causes a FTBFS.
Drop the workaround.
Support for security fixes for Python 3.2 ended in 2016.
Previously there wasn't any indicator of focus for empty columns. Now
title widget is highlighted then. Color is the same as for TodoWidget
focus and already configured by 'focus_background_color'.
When scrolling down we need to switch to valign=bottom to properly show
last lines of the TodoWidget at the end of the TodoListWidget. Also
config <Down> key to use 'down' action in default config. Without such
config entry, using <Down> key would not take advantage of valign fix.
Also do not focus dividers when jumping with 'home' shortcut.
arrow>=0.15.0 doesn't accept timestamps given as `str`. Unfortunately
`json` used in ChangeSet doesn't preserve `float` type in dictionary
keys and always converts it to `str`. This leaded to feeding `arrow`
with unsupported strings.
Read note at: https://docs.python.org/3/library/json.html#json.dumps for
further explanation.
This fixes#271 and #274
As discovered by @davesteele, `arrow.now()` is not freezed to UTC with
freezegun. We have to mock it so the humanized dates in tests are
calculated properly.
Previously, unprioritized tasks were set below all other tasks. This
change sets unprioritized tasks directly in the middle of all task
prioritizations.
Before this patch a `t edit ...` will remove todo items selected by
`...` and then do equivalent of `t add` with input from result of
editing. This works, but has the property that whenever a todo item is
edited, it is always moved till the end of todo.txt file.
This property creates noise and makes synchronization harder to implement for
some of us who uses VCS and different machines to maintain todo.txt .
-> Teach edit to preserve todo items in their places. Adjust existing
tests and add a couple more exercising cases where either new todo
items are added in the editor, or vice versa, removed in the editor.
/cc @mruwek
Pip and arrow are both complaining about the presence of v3.4.
From the travis log
0.82s$ pip install .
DEPRECATION: Python 3.4 support has been deprecated. pip 19.1 will be the last one supporting it. Please upgrade your Python as Python 3.4 won't be maintained after March 2019 (cf PEP 429).
Processing /home/travis/build/davesteele/topydo
Collecting arrow>=0.7.0 (from topydo==0.13)
Downloading a3d20e80ee/arrow-0.14.2-py2.py3-none-any.whl
ERROR: arrow requires Python '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*' but the running Python is 3.4.8
The command "pip install ." failed and exited with 1 during .
Your build has been stopped.
Starting in Python 3.7, Python emits deprecation warning for normal
strings containing what it considers invalid backslash escapes. In
Python 3.9, this situation will be a syntax error. Fix the reported
instances.
ref https://lwn.net/Articles/795546/