{"id":16247792,"url":"https://github.com/mbdevpl/argunparse","last_synced_at":"2025-08-21T06:32:15.966Z","repository":{"id":57411478,"uuid":"67599823","full_name":"mbdevpl/argunparse","owner":"mbdevpl","description":"Reversed argparse: generate string of command-line args from Python objects.","archived":false,"fork":false,"pushed_at":"2023-09-23T09:06:46.000Z","size":91,"stargazers_count":8,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-12-15T23:31:34.412Z","etag":null,"topics":["argparse","commandline-arguments","jenkins-enabled","pretty-printing","unparsing"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbdevpl.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-07T11:17:18.000Z","updated_at":"2022-09-02T14:10:52.000Z","dependencies_parsed_at":"2024-10-28T09:36:38.261Z","dependency_job_id":null,"html_url":"https://github.com/mbdevpl/argunparse","commit_stats":{"total_commits":62,"total_committers":2,"mean_commits":31.0,"dds":"0.30645161290322576","last_synced_commit":"2ca7c67819d8067971d32e3237e945f3da70c38c"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fargunparse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fargunparse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fargunparse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbdevpl%2Fargunparse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbdevpl","download_url":"https://codeload.github.com/mbdevpl/argunparse/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230494900,"owners_count":18235047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["argparse","commandline-arguments","jenkins-enabled","pretty-printing","unparsing"],"created_at":"2024-10-10T14:38:39.894Z","updated_at":"2025-08-21T06:32:15.960Z","avatar_url":"https://github.com/mbdevpl.png","language":"Python","readme":".. role:: bash(code)\n    :language: bash\n\n.. role:: python(code)\n    :language: python\n\n\n==========\nargunparse\n==========\n\nReversed argparse: generate string of command-line args from Python objects.\n\n.. image:: https://img.shields.io/pypi/v/argunparse.svg\n    :target: https://pypi.org/project/argunparse\n    :alt: package version from PyPI\n\n.. image:: https://github.com/mbdevpl/argunparse/actions/workflows/python.yml/badge.svg?branch=main\n    :target: https://github.com/mbdevpl/argunparse/actions\n    :alt: build status from GitHub\n\n.. image:: https://codecov.io/gh/mbdevpl/argunparse/branch/main/graph/badge.svg\n    :target: https://codecov.io/gh/mbdevpl/argunparse\n    :alt: test coverage from Codecov\n\n.. image:: https://api.codacy.com/project/badge/Grade/fd6a7e9ac9324d9f9b5d1e77d10000e4\n    :target: https://app.codacy.com/gh/mbdevpl/argunparse\n    :alt: grade from Codacy\n\n.. image:: https://img.shields.io/github/license/mbdevpl/argunparse.svg\n    :target: NOTICE\n    :alt: license\n\nThe *argunparse* is intended to perform an approximate reverse of what *argparse* does. In short:\ngenerating string (or a list of strings) of command-line arguments from a dict and/or a list.\n\n.. contents::\n    :backlinks: none\n\n\nHow to use\n==========\n\nSimple example of how *argunparse* works:\n\n.. code:: python\n\n    import argunparse\n\n    options = {\n        'v': True,\n        'long-flag': True,\n        'ignored': False,\n        'also-ignored': None,\n        'o': 'out_file.txt',\n        'log': 'log_file.txt'\n        }\n    args = {\n        'in_file.txt'\n        }\n\n    unparser = argunparse.ArgumentUnparser()\n    print(unparser.unparse(*args, **options))\n    # -v --long-flag -o=out_file.txt --log=log_file.txt in_file.txt\n\n    print(unparser.unparse_to_list(*args, **options))\n    # ['-v', '--long-flag', '-o=out_file.txt', '--log=log_file.txt', 'in_file.txt']\n\nSpecial option values are:\n\n*   :python:`True` -- option will be treated as a flag;\n*   :python:`False` and :python:`None` -- option will be ignored.\n\nAll other values will be converted to strings using :python:`str()`.\n\nFor more examples see `\u003cexamples.ipynb\u003e`_ notebook.\n\n\nRequirements\n============\n\nPython version 3.11 or later.\n\nPython libraries as specified in `\u003crequirements.txt\u003e`_.\n\nBuilding and running tests additionally requires packages listed in `\u003crequirements_test.txt\u003e`_.\n\nTested on Linux, macOS and Windows.\n\n\nInstallation\n============\n\nFor simplest installation use :bash:`pip`:\n\n.. code:: bash\n\n    pip3 install argunparse\n\nLinks\n=====\n\n-  *argparse*:\n\n   https://docs.python.org/3/library/argparse.html\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbdevpl%2Fargunparse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbdevpl%2Fargunparse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbdevpl%2Fargunparse/lists"}