Git Product home page Git Product logo

cards's Issues

add subtasks

I'd like the ability to add subtasks with a command like: cards add "summary" 5
That would add "summary" as a subtask to task 5. A flag could determine whether subtasks are displayed on the main list and there would need to be a way to display the subtasks.

Cannot `pip install -e .` because of missing `setup.py` file

  • cards version: ?
  • Python version: 3.8
  • Operating System: MacOS 10.15.16

Description / What I Did

I followed the Get Started section in the Contributing document.

However, the step

pip install -e .

fails with: ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /Users/xxx/cards (A "pyproject.toml" file was found, but editable mode currently requires a setup.py based build.)

create some output from list

  • cards version: 0.1.5
  • Python version: 3.6.3
  • Operating System: winDO(w)S 10

Description

create a command that will output the cards to a transfer file (JSON, YAML, Markdown)

What I Did

this is a feature request ... ๐Ÿ˜„

ability to add more columns

  • cards version: latest
  • Python version: all
  • Operating System: all

Description

give the user a way to add more columns (project and context โ€” gtd calling)
with plugins

I would really like to see how this would be tested

Pre-commit run --all-files hook seems broken

What I Did

I recently created a pull request, which just modified a couple of documentation (markdown) files see. So nothing "essential".
But, the pre-commit run fails, without any obvious reason. All tests are marked with pass but checks end with Error: process completed with exit code 1

Fresh install fails out of box

  • cards version: 1.0.0
  • Python version: 3.10.0
  • Operating System: Microsoft Windows [Version 10.0.17134.1304]

Description

First time ever install, via pipx.
First commands tried were cards list and cards config both resulting in FileNotFound exception for the db.
Manually creating %USERPROFILE%\cards_db allowed to run, deleting recreates the issue.

What I Did

pipx install cards
refreshenv
cards config
Traceback (most recent call last):
  File "C:\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "%USERPROFILE%\.local\bin\cards.exe\__main__.py", line 7, in <module>
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\typer\main.py", line 214, in __call__
    return get_command(self)(*args, **kwargs)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\click\core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\click\core.py", line 782, in main
    rv = self.invoke(ctx)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\click\core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\click\core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\click\core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\typer\main.py", line 497, in wrapper
    return callback(**use_params)  # type: ignore
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\cards\cli.py", line 102, in config
    with cards_db() as db:
  File "C:\Python310\lib\contextlib.py", line 135, in __enter__
    return next(self.gen)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\cards\cli.py", line 134, in cards_db
    db = cards.CardsDB(db_path)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\cards\api.py", line 50, in __init__
    self._db = DB(db_path, ".cards_db")
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\cards\db.py", line 11, in __init__
    self._db = tinydb.TinyDB(db_path / f"{db_file_prefix}.json")
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\tinydb\database.py", line 89, in __init__
    self._storage = storage(*args, **kwargs)  # type: Storage
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\tinydb\storages.py", line 102, in __init__
    touch(path, create_dirs=create_dirs)
  File "%USERPROFILE%\.local\pipx\venvs\cards\lib\site-packages\tinydb\storages.py", line 31, in touch
    with open(path, 'a'):
FileNotFoundError: [Errno 2] No such file or directory: '%USERPROFILE%\\cards_db\\.cards_db.json'

actions on multipe cards

for example:
cards delete 1,2,3 - to delete cards with IDs 1,2,3
cards update -o okken 4,5,6 - assign owner okken to multiple cards
start and finish - should also accept lists if ids.

Question:
Should a "are you sure?" confirmation dialog happen? maybe
If so, should normal single item operations also have that? maybe

PyTestbook - Chapter 2 - Module not found cards - issue with venv

  • cards version: latest from pragprog site
  • Python version: 3.8.3
  • Operating System: Mac Monterey 12.2.1

Description

I've created the venv, installed the cards project and completed the initial steps like add card etc ... successfully

but ... when running test_card.py in the chapter 2 folder I get error ModuleNotFoundError: No module named 'cards'

((added info))

I then deactivated the venv and ran the pip installer for cards which gives a couple of errors about requirements / dependencies ... see below

but net result is that test_card.py passed successfully if i just used python and not the venv

==> so im thinking to delete python3 ( i seem to have several versions ) and then try again with the venv approach

What I Did

(venv) [14:17:01 - 22-03-03] /Users/damien/dev/code/ch2 % pytest test_card.py       
============================================================ test session starts =============================================================
platform darwin -- Python 3.8.3, pytest-6.2.2, py-1.9.0, pluggy-0.13.1
sensitiveurl: .*
rootdir: /Users/damien/dev/code, configfile: pytest.ini
plugins: variables-1.9.0, base-url-1.4.2, metadata-1.9.0, cov-2.10.0, html-2.1.1, selenium-1.17.0
collected 0 items / 1 error                                                                                                                  

=================================================================== ERRORS ===================================================================
_____________________________________________________ ERROR collecting ch2/test_card.py ______________________________________________________
ImportError while importing test module '/Users/damien/dev/code/ch2/test_card.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/importlib/__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
test_card.py:1: in <module>
    from cards import Card
E   ModuleNotFoundError: No module named 'cards'
========================================================== short test summary info ===========================================================
ERROR test_card.py
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
============================================================== 1 error in 0.12s ==============================================================
(venv) [14:17:10 - 22-03-03] /Users/damien/dev/code/ch2 % 

so when i ran pip installer in python and not the venv this was one error i got about dependencies - so you may just need to bump the versions in your requirements.txt?

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
signal-export 1.0.1 requires typer>=0.4.0, but you have typer 0.3.2 which is incompatible.

but after upgrading typer to v4.0 ... you get this error

cards 1.0.0 requires typer==0.3.2, but you have typer 0.4.0 which is incompatible.

rewrite tests

Not thrilled with tests as they are, rewriting to a simpler set would be good.

Clean out rst files

Description

Only README.rst is required. The rest of the rst are legacy and can be removed.

ability to add more states

  • cards version: latest
  • Python version: all
  • Operating System: all

Description

replace the boolean column with a state column (string or enum) and give the user a plugin interface to define her own states

e.g. new, active, rejected, done

Paste the command(s) you ran and the output.
If there was a crash, please include the traceback here.

upgrade tinydb to 4.x

Description

Needed to pin tinydb to 3.15.1, as the 4.0.0 is not backwards compatible, and tests failed.

What I Did

pinned tinydb to 3.15.1, and tabulate and typer to the latest versions, while I was at it.

upheaval

Description

I'm not thrilled with my involvement with the cards project, if I'm honest.
I'm going to pivot the project a bit to focus it.

I apologize ahead of time if people are relying on it in it's current state.

But in the end, I need to use it as a teaching tool, and therefore it may start changing a lot in the next few weeks. Just didn't know how to let people know other than this format.

What I Did

Nothing yet, but fork now, or forever hold your peace, sort of thing. :)

update the default issue template

Not sure the default template for issues is really helpful...
Not sure what it should be though either.

Here's the existing template:

* cards version: 
* Python version:
* Operating System:

### Description

Describe what you were trying to get done.
Tell us what happened, what went wrong, and what you expected to happen.

### What I Did

```
Paste the command(s) you ran and the output.
If there was a crash, please include the traceback here.
```

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.