Skip to main content

wrapper for argsparser to make more human the definition of the parser

Project description

chibi_argsparser

https://img.shields.io/pypi/v/chibi_argsparser.svg Documentation Status

wrapper for ArgumentParser to make more human the definition of the parser

Chibi_argparser vs ArgumentParser

Chibi_argparser

from chibi_argsparser import Chibi_args

parser = Chibi_args( "small example for ArgumentParser" )
parser.log_level.params = [ '--log_level' ]
parser.log_level.help = "level of logger"
parser.log_level.default = "INFO"

parser.command.set_as_subparser()
parser.command.help = "sub-comamnd help"

parser.command.list.help = "list the backups"
parser.command.backup.help = "do a backups"

parser.command.backup.block.params = [ "-b", '--block' ]
parser.command.backup.block.help = "block"
parser.command.backup.block.kind = Chibi_path
parser.command.backup.block.required = True

parser.command.profile.set_as_subparser()
parser.command.profile.dest = "profile_command"

parser.command.profile.backup
parser.command.profile.list
parser.command.profile.restore

ArgumentParser

from chibi_argsparser import Chibi_args
from argparse import ArgumentParser

parser_argparser = argparse.ArgumentParser(
        description="small example for ArgumentParser" )

parser_argparser.add_argument(
        "--log_level", dest="log_level", default="INFO",
        help="level of logger", )

sub_parsers = parser.add_subparsers(
        dest='command', help='sub-command help' )
parser_list = sub_parsers.add_parser( 'list', help='list the backups', )
parser_backup = sub_parsers.add_parser( 'backup', help='do a backup', )

parser_backup.add_argument(
        '--block', '-b', required=True, type=Chibi_path, help='block' )

profile_parser = sub_parsers.add_subparsers(
        dest='profile_command', help='', )

profile_parser.add_argument(
        '--block', '-b', required=True, type=Chibi_path, help='block' )

parser_backup = sub_parsers.add_parser( 'backup', )
parser_list = sub_parsers.add_parser( 'list', )
parser_list = sub_parsers.add_parser( 'restore', )

results

from chibi_argsparser import Chibi_args
from argparse import ArgumentParser

params = [
        "profile", '--block', '/dev/sda', 'backup', '--other', '--home' ]

# parser Chibi_args
result = parser( params )
# parse ArgumentParser
result_argparser = parser_arg_parser.parse_args( params )

assert result.command.list == False
assert result.command.profile == True
assert result.command.backup == False

assert result_2.command == "profile"
assert result.log_level == result_2.log_level
assert result.block == result_2.block

assert result.profile_command.list == False
assert result.profile_command.restore == False
assert result.profile_command.backup == True
assert result_2.profile_command == "backup"

assert result.home == result_2.home
assert result.other == result_2.other

assert result == {
        'block': '/dev/sda',
        'command': {'backup': False, 'list': False, 'profile': True},
        'home': True,
        'log_level': 'INFO',
        'other': False,
        'profile_command': {'backup': True, 'list': False, 'restore': False}
}

assert result_argparser == {
        'block': '/dev/sda',
        'command': 'profile',
        'home': True,
        'log_level': 'INFO',
        'other': False,
        'profile_command': 'backup'
}

History

1.0.1 ( 2026-03-27 )

  • se agrega dependencia chibi_atlas a setup.py

1.0.0 ( 2026-03-27 )

  • se agrega clase Chibi_args y Chibi_arguments

    ambos siendo hijos de chibi_atlas

  • se agrego ejemplo de compatibilidad con ArgumentParser en readme

  • prueba unitaria de compatibilidad

0.0.1 ( 2026-03-26 )

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chibi_argsparser-1.0.1.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chibi_argsparser-1.0.1-py2.py3-none-any.whl (5.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file chibi_argsparser-1.0.1.tar.gz.

File metadata

  • Download URL: chibi_argsparser-1.0.1.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for chibi_argsparser-1.0.1.tar.gz
Algorithm Hash digest
SHA256 595cfe3dbc943e192dbf8a38979cccba0a6fd7e6c2fbd8bd6a263a0633cd1b25
MD5 b102f94e378e2f0c5d25f1c84c27a74b
BLAKE2b-256 27086fcc1754b9bedcca71c7cbb1275117c50daa70659ca918262fd04cf24584

See more details on using hashes here.

File details

Details for the file chibi_argsparser-1.0.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for chibi_argsparser-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 954bf643094b64f0e2156466a0904876bb971fecd52130af4eaf3853d7ff56d1
MD5 88c525325a015ca52c584d4df402e0c7
BLAKE2b-256 4144bf0614d9ef9dd92028b395737cd1ef4774d9411ee89b2722b7f86ad52414

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page