pyDataverse icon indicating copy to clipboard operation
pyDataverse copied to clipboard

Add CLI functionality

Open skasberger opened this issue 4 years ago • 2 comments

Add CLI functionality.

Prepare

  • [ ] Evaluate, if CLI functionality should be added to pyDataverse or wrapped around in another project
  • [ ] Research
    • [x] https://www.youtube.com/watch?v=Hn-syMunNy8
  • [ ] Click
    • [ ] https://click.palletsprojects.com/en/7.x/
    • [ ] colorama: click.style()
    • [ ] progress bars: with click.progressbar(files) as _files:
    • [ ] #176
    • [ ] paged output: click.echo_via_pager(str)
    • [ ] prompt: user = click.prompt(f"Username")
    • [ ] testing: runner = CliRunner(); runner.invoke(cli, ['<COMMAND>'])
    • [ ] autocompletion: https://python-prompt-toolkit.readthedocs.io/en/master/

Implementation

  • [ ] Define requirements
    • [ ]
    • [ ]
  • [ ] Write tests
  • [ ] Write/Update code
  • [ ] Write/Update Docs
  • [ ] Write/Update Docstrings
  • [ ] Run pytest
  • [ ] Run tox
  • [ ] Run pylint
  • [ ] Run mypy

calls: e. g. pdv dataverse create metadata_dataset.json autnes

  • dataverse
    • delete
    • create
    • update
    • publish
  • dataset
    • create
    • delete
    • destroy
    • update
    • publish
    • get private url
  • datafile
    • upload file
    • delete file
    • update metadata

Review

  • [ ] Code
  • [ ]
    • [ ]
    • [ ]
  • [ ] Tests
  • [ ] Docs

Follow-Ups

  • [ ]
  • [ ]
    • [ ]
    • [ ]

skasberger avatar Mar 14 '21 21:03 skasberger

As discussed during the 2024-02-14 meeting of the pyDataverse working group, we are closing old milestones in favor of a new project board at https://github.com/orgs/gdcc/projects/1 and removing issues (like this one) from those old milestones. Please feel free to join the working group! You can find us at https://py.gdcc.io and https://dataverse.zulipchat.com/#narrow/stream/377090-python

pdurbin avatar Mar 04 '24 16:03 pdurbin

After a long journey, for hermes-hmc/hermes, we eventually removed the Click framework again to regain more flexibility. Not sure if this would be true for pyDataverse as well.

poikilotherm avatar Mar 11 '24 15:03 poikilotherm