{ "info": { "author": "Josh Bialkowski", "author_email": "josh.bialkowski@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)" ], "description": "============\ncmake format\n============\n\n.. image:: https://travis-ci.com/cheshirekow/cmake_format.svg?branch=master\n :target: https://travis-ci.com/cheshirekow/cmake_format\n\n.. image:: https://readthedocs.org/projects/cmake-format/badge/?version=latest\n :target: https://cmake-format.readthedocs.io\n\n``cmake-format`` can format your listfiles nicely so that they don't look\nlike crap.\n\n------------\nInstallation\n------------\n\nInstall from ``pypi`` using ``pip``::\n\n pip install cmake_format\n\n------------\nIntegrations\n------------\n\n* There is an official `vscode extension`__\n* Someone also created a `sublime plugin`__\n\n.. __: https://marketplace.visualstudio.com/items?itemName=cheshirekow.cmake-format\n.. __: https://packagecontrol.io/packages/CMakeFormat\n\n-----\nUsage\n-----\n\n.. dynamic: usage-begin\n\n.. code:: text\n\n usage:\n cmake-format [-h]\n [--dump-config {yaml,json,python} | -i | -o OUTFILE_PATH]\n [-c CONFIG_FILE]\n infilepath [infilepath ...]\n\n Parse cmake listfiles and format them nicely.\n\n Formatting is configurable by providing a configuration file. The configuration\n file can be in json, yaml, or python format. If no configuration file is\n specified on the command line, cmake-format will attempt to find a suitable\n configuration for each ``inputpath`` by checking recursively checking it's\n parent directory up to the root of the filesystem. It will return the first\n file it finds with a filename that matches '\\.?cmake-format(.yaml|.json|.py)'.\n\n cmake-format can spit out the default configuration for you as starting point\n for customization. Run with `--dump-config [yaml|json|python]`.\n\n positional arguments:\n infilepaths\n\n optional arguments:\n -h, --help show this help message and exit\n -v, --version show program's version number and exit\n -l {error,warning,info,debug}, --log-level {error,warning,info,debug}\n --dump-config [{yaml,json,python}]\n If specified, print the default configuration to\n stdout and exit\n --dump {lex,parse,layout,markup}\n -i, --in-place\n -o OUTFILE_PATH, --outfile-path OUTFILE_PATH\n Where to write the formatted file. Default is stdout.\n -c CONFIG_FILE [CONFIG_FILE ...], --config-file CONFIG_FILE [CONFIG_FILE ...], --config-files CONFIG_FILE [CONFIG_FILE ...], --config CONFIG_FILE [CONFIG_FILE ...]\n path to configuration file(s)\n\n Formatter Configuration:\n Override configfile options affecting general formatting\n\n --line-width LINE_WIDTH\n How wide to allow formatted cmake files\n --tab-size TAB_SIZE How many spaces to tab for indent\n --max-subgroups-hwrap MAX_SUBGROUPS_HWRAP\n If an argument group contains more than this many sub-\n groups (parg or kwarg groups), then force it to a\n vertical layout.\n --max-pargs-hwrap MAX_PARGS_HWRAP\n If a positinal argument group contains more than this\n many arguments, then force it to a vertical layout.\n --separate-ctrl-name-with-space [SEPARATE_CTRL_NAME_WITH_SPACE]\n If true, separate flow control names from their\n parentheses with a space\n --separate-fn-name-with-space [SEPARATE_FN_NAME_WITH_SPACE]\n If true, separate function names from parentheses with\n a space\n --dangle-parens [DANGLE_PARENS]\n If a statement is wrapped to more than one line, than\n dangle the closing parenthesis on it's own line.\n --dangle-align {prefix,prefix-indent,child,off}\n If the trailing parenthesis must be 'dangled' on it's\n on line, then align it to this reference: `prefix`:\n the start of the statement, `prefix-indent`: the start\n of the statement, plus one indentation level, `child`:\n align to the column of the arguments\n --min-prefix-chars MIN_PREFIX_CHARS\n --max-prefix-chars MAX_PREFIX_CHARS\n If the statement spelling length (including space and\n parenthesis is larger than the tab width by more than\n this amoung, then force reject un-nested layouts.\n --max-lines-hwrap MAX_LINES_HWRAP\n If a candidate layout is wrapped horizontally but it\n exceeds this many lines, then reject the layout.\n --line-ending {windows,unix,auto}\n What style line endings to use in the output.\n --command-case {lower,upper,canonical,unchanged}\n Format command names consistently as 'lower' or\n 'upper' case\n --keyword-case {lower,upper,unchanged}\n Format keywords consistently as 'lower' or 'upper'\n case\n --always-wrap [ALWAYS_WRAP [ALWAYS_WRAP ...]]\n A list of command names which should always be wrapped\n --enable-sort [ENABLE_SORT]\n If true, the argument lists which are known to be\n sortable will be sorted lexicographicall\n --autosort [AUTOSORT]\n If true, the parsers may infer whether or not an\n argument list is sortable (without annotation).\n --hashruler-min-length HASHRULER_MIN_LENGTH\n If a comment line starts with at least this many\n consecutive hash characters, then don't lstrip() them\n off. This allows for lazy hash rulers where the first\n hash char is not separated by space\n\n Comment Formatting:\n Override config options affecting comment formatting\n\n --bullet-char BULLET_CHAR\n What character to use for bulleted lists\n --enum-char ENUM_CHAR\n What character to use as punctuation after numerals in\n an enumerated list\n --enable-markup [ENABLE_MARKUP]\n enable comment markup parsing and reflow\n --first-comment-is-literal [FIRST_COMMENT_IS_LITERAL]\n If comment markup is enabled, don't reflow the first\n comment block in each listfile. Use this to preserve\n formatting of your copyright/license statements.\n --literal-comment-pattern LITERAL_COMMENT_PATTERN\n If comment markup is enabled, don't reflow any comment\n block which matches this (regex) pattern. Default is\n `None` (disabled).\n --fence-pattern FENCE_PATTERN\n Regular expression to match preformat fences in\n comments default=r'^\\s*([`~]{3}[`~]*)(.*)$'\n --ruler-pattern RULER_PATTERN\n Regular expression to match rulers in comments\n default=r'^\\s*[^\\w\\s]{3}.*[^\\w\\s]{3}$'\n --canonicalize-hashrulers [CANONICALIZE_HASHRULERS]\n If true, then insert a space between the first hash\n char and remaining hash chars in a hash ruler, and\n normalize it's length to fill the column\n\n Misc Options:\n Override miscellaneous config options\n\n --emit-byteorder-mark [EMIT_BYTEORDER_MARK]\n If true, emit the unicode byte-order mark (BOM) at the\n start of the file\n --input-encoding INPUT_ENCODING\n Specify the encoding of the input file. Defaults to\n utf-8.\n --output-encoding OUTPUT_ENCODING\n Specify the encoding of the output file. Defaults to\n utf-8. Note that cmake only claims to support utf-8 so\n be careful when using anything else\n\n.. dynamic: usage-end\n\n-------------\nConfiguration\n-------------\n\n``cmake-format`` accepts configuration files in yaml, json, or python format.\nAn example configuration file is given here. Additional flags and additional\nkwargs will help ``cmake-format`` to break up your custom commands in a\npleasant way.\n\n.. dynamic: configuration-begin\n\n.. code:: text\n\n\n # --------------------------\n # General Formatting Options\n # --------------------------\n # How wide to allow formatted cmake files\n line_width = 80\n\n # How many spaces to tab for indent\n tab_size = 2\n\n # If an argument group contains more than this many sub-groups (parg or kwarg\n # groups), then force it to a vertical layout.\n max_subgroups_hwrap = 2\n\n # If a positinal argument group contains more than this many arguments, then\n # force it to a vertical layout.\n max_pargs_hwrap = 6\n\n # If true, separate flow control names from their parentheses with a space\n separate_ctrl_name_with_space = False\n\n # If true, separate function names from parentheses with a space\n separate_fn_name_with_space = False\n\n # If a statement is wrapped to more than one line, than dangle the closing\n # parenthesis on it's own line.\n dangle_parens = False\n\n # If the trailing parenthesis must be 'dangled' on it's on line, then align it\n # to this reference: `prefix`: the start of the statement, `prefix-indent`: the\n # start of the statement, plus one indentation level, `child`: align to the\n # column of the arguments\n dangle_align = 'prefix'\n\n min_prefix_chars = 4\n\n # If the statement spelling length (including space and parenthesis is larger\n # than the tab width by more than this amoung, then force reject un-nested\n # layouts.\n max_prefix_chars = 10\n\n # If a candidate layout is wrapped horizontally but it exceeds this many lines,\n # then reject the layout.\n max_lines_hwrap = 2\n\n # What style line endings to use in the output.\n line_ending = 'unix'\n\n # Format command names consistently as 'lower' or 'upper' case\n command_case = 'canonical'\n\n # Format keywords consistently as 'lower' or 'upper' case\n keyword_case = 'unchanged'\n\n # Specify structure for custom cmake functions\n additional_commands = {\n \"pkg_find\": {\n \"kwargs\": {\n \"PKG\": \"*\"\n }\n }\n }\n\n # A list of command names which should always be wrapped\n always_wrap = []\n\n # If true, the argument lists which are known to be sortable will be sorted\n # lexicographicall\n enable_sort = True\n\n # If true, the parsers may infer whether or not an argument list is sortable\n # (without annotation).\n autosort = False\n\n # If a comment line starts with at least this many consecutive hash characters,\n # then don't lstrip() them off. This allows for lazy hash rulers where the first\n # hash char is not separated by space\n hashruler_min_length = 10\n\n # A dictionary containing any per-command configuration overrides. Currently\n # only `command_case` is supported.\n per_command = {}\n\n # A dictionary mapping layout nodes to a list of wrap decisions. See the\n # documentation for more information.\n layout_passes = {}\n\n\n # --------------------------\n # Comment Formatting Options\n # --------------------------\n # What character to use for bulleted lists\n bullet_char = '*'\n\n # What character to use as punctuation after numerals in an enumerated list\n enum_char = '.'\n\n # enable comment markup parsing and reflow\n enable_markup = True\n\n # If comment markup is enabled, don't reflow the first comment block in each\n # listfile. Use this to preserve formatting of your copyright/license\n # statements.\n first_comment_is_literal = False\n\n # If comment markup is enabled, don't reflow any comment block which matches\n # this (regex) pattern. Default is `None` (disabled).\n literal_comment_pattern = None\n\n # Regular expression to match preformat fences in comments\n # default=r'^\\s*([`~]{3}[`~]*)(.*)$'\n fence_pattern = '^\\\\s*([`~]{3}[`~]*)(.*)$'\n\n # Regular expression to match rulers in comments\n # default=r'^\\s*[^\\w\\s]{3}.*[^\\w\\s]{3}$'\n ruler_pattern = '^\\\\s*[^\\\\w\\\\s]{3}.*[^\\\\w\\\\s]{3}$'\n\n # If true, then insert a space between the first hash char and remaining hash\n # chars in a hash ruler, and normalize it's length to fill the column\n canonicalize_hashrulers = True\n\n\n # ---------------------------------\n # Miscellaneous Options\n # ---------------------------------\n # If true, emit the unicode byte-order mark (BOM) at the start of the file\n emit_byteorder_mark = False\n\n # Specify the encoding of the input file. Defaults to utf-8.\n input_encoding = 'utf-8'\n\n # Specify the encoding of the output file. Defaults to utf-8. Note that cmake\n # only claims to support utf-8 so be careful when using anything else\n output_encoding = 'utf-8'\n\n\n.. dynamic: configuration-end\n\nYou may specify a path to a configuration file with the ``--config-file``\ncommand line option. Otherwise, ``cmake-format`` will search the ancestry\nof each ``infilepath`` looking for a configuration file to use. If no\nconfiguration file is found it will use sensible defaults.\n\nA automatically detected configuration files may have any name that matches\n``\\.?cmake-format(.yaml|.json|.py)``.\n\nIf you'd like to create a new configuration file, ``cmake-format`` can help\nby dumping out the default configuration in your preferred format. You can run\n``cmake-format --dump-config [yaml|json|python]`` to print the default\nconfiguration ``stdout`` and use that as a starting point.\n\n.. dynamic: features-begin\n\n-------\nMarkup\n-------\n\n``cmake-format`` is for the exceptionally lazy. It will even format your\ncomments for you. It will reflow your comment text to within the configured\nline width. It also understands a very limited markup format for a couple of\ncommon bits.\n\n**rulers**: A ruler is a line which starts with and ends with three or more\nnon-alphanum or space characters::\n\n # ---- This is a Ruler ----\n # cmake-format will know to keep the ruler separated from the\n # paragraphs around it. So it wont try to reflow this text as\n # a single paragraph.\n # ---- This is also a Ruler ---\n\n\n**list**: A list is started on the first encountered list item, which starts\nwith a bullet character (``*``) followed by a space followed by some text.\nSubsequent lines will be included in the list item until the next list item\nis encountered (the bullet must be at the same indentation level). The list\nmust be surrounded by a pair of empty lines. Nested lists will be formatted in\nnested text::\n\n # here are some lists:\n #\n # * item 1\n # * item 2\n #\n # * subitem 1\n # * subitem 2\n #\n # * second list item 1\n # * second list item 2\n\n**enumerations**: An enumeration is similar to a list but the bullet character\nis some integers followed by a period. New enumeration items are detected as\nlong as either the first digit or the punctuation lines up in the same column\nas the previous item. ``cmake-format`` will renumber your items and align their\nlabels for you::\n\n # This is an enumeration\n #\n # 1. item\n # 2. item\n # 3. item\n\n**fences**: If you have any text which you do not want to be formatted you can\nguard it with a pair of fences. Fences are three or more tilde characters::\n\n # ~~~\n # This comment is fenced\n # and will not be formatted\n # ~~~\n\nNote that comment fences guard reflow of *comment text*, and not cmake code.\nIf you wish to prevent formatting of cmake, code, see below. In addition to\nfenced-literals, there are three other ways to preserve comment text from\nmarkup and/or reflow processing:\n\n* The ``--first-comment-is-literal`` configuration option will exactly preserve\n the first comment in the file. This is intended to preserve copyright or\n other formatted header comments.\n* The ``--literal-comment-pattern`` configuration option allows for a more\n generic way to identify comments which should be preserved literally. This\n configuration takes a regular expression pattern.\n* The ``--enable-markup`` configuration option globally enables comment markup\n processing. It defaults to true so set it to false if you wish to globally\n disable comment markup processing. Note that trailing whitespace is still\n chomped from comments.\n\n--------------------------\nDisable Formatting Locally\n--------------------------\n\nYou can locally disable and enable code formatting by using the special\ncomments ``# cmake-format: off`` and ``# cmake-format: on``.\n\n-------------------\nSort Argument Lists\n-------------------\n\nStarting with version `0.5.0`, ``cmake-format`` can sort your argument lists\nfor you. If the configuration includes ``autosort=True`` (the default), it\nwill replace::\n\n add_library(foobar STATIC EXCLUDE_FROM_ALL\n sourcefile_06.cc\n sourcefile_03.cc\n sourcefile_02.cc\n sourcefile_04.cc\n sourcefile_07.cc\n sourcefile_01.cc\n sourcefile_05.cc)\n\nwith::\n\n add_library(foobar STATIC EXCLUDE_FROM_ALL\n sourcefile_01.cc\n sourcefile_02.cc\n sourcefile_03.cc\n sourcefile_04.cc\n sourcefile_05.cc\n sourcefile_06.cc\n sourcefile_07.cc)\n\nThis is implemented for any argument lists which the parser knows are\ninherently sortable. This includes the following cmake commands:\n\n* ``add_library``\n* ``add_executable``\n\nFor most other cmake commands, you can use an annotation comment to hint to\n``cmake-format`` that the argument list is sortable. For instance::\n\n set(SOURCES\n # cmake-format: sortable\n bar.cc\n baz.cc\n foo.cc)\n\nAnnotations can be given in a line-comment or a bracket comment. There is a\nlong-form and a short-form for each. The acceptable formats are:\n\n+-----------------+-------+------------------------------+\n| Line Comment | long | ``# cmake-format: `` |\n+-----------------+-------+------------------------------+\n| Line Comment | short | ``# cmf: `` |\n+-----------------+-------+------------------------------+\n| Bracket Comment | long | ``#[[cmake-format: ]]`` |\n+-----------------+-------+------------------------------+\n| Bracket Comment | short | ``#[[cmf: ]]`` |\n+-----------------+-------+------------------------------+\n\nIn order to annotate a positional argument list as sortable, the acceptable\ntags are: ``sortable`` or ``sort``. For the commands listed above where\nthe positinal argument lists are inherently sortable, you can locally disable\nsorting by annotating them with ``unsortable`` or ``unsort``. For example::\n\n add_library(foobar STATIC\n # cmake-format: unsort\n sourcefile_03.cc\n sourcefile_01.cc\n sourcefile_02.cc)\n\nNote that this is only needed if your configuration has enabled ``autosort``,\nand you can globally disable sorting by making setting this configuration to\n``False``.\n\n\n---------------\nCustom Commands\n---------------\n\nDue to the fact that cmake is a macro language, `cmake-format` is, by\nnecessity, a *semantic* source code formatter. In general it tries to make\nsmart formatting decisions based on the meaning of arguments in an otherwise\nunstructured list of arguments in a cmake statement. `cmake-format` can\nintelligently format your custom commands, but you will need to tell it how\nto interpret your arguments.\n\nCurrently, you can do this by adding your command specifications to the\n`additional_commands` configuration variables, e.g.:\n\n.. code::\n\n # Additional FLAGS and KWARGS for custom commands\n additional_commands = {\n \"foo\": {\n \"pargs\": 2,\n \"flags\": [\"BAR\", \"BAZ\"],\n \"kwargs\": {\n \"HEADERS\": '*',\n \"SOURCES\": '*',\n \"DEPENDS\": '*',\n }\n }\n }\n\nThe format is a nested dictionary mapping statement names (dictionary keys)\nto argument specifications. The argument specification is composed of three\nfields:\n\n* ``pargs``: an integer indicating the number of positional arguments expected,\n or one of the sentinel strings ``?`` (zero or one), ``*`` (zero or more),\n ``+`` (one or more).\n* ``flags``: a list of flag arguments: sentinel strings which are parsed as\n positional arguments but have special meaning. In particular, if one of these\n strings is encountered after a ``kwarg`` it will not be associated with the\n ``kwarg`` but with the statement.\n* ``kwargs``: a dictionary mapping keywords to sub-specifications. A\n sub-specification may be a complete dictionary of ``pargs``, ``flags``, and\n ``kwargs`` (nested, all the way down). Or, if the keyword argument accepts\n only positionals, then it can be simply the ``pargs`` specification (as in\n the example above).\n\nFor the example specification above, the custom command would look somehing\nlike this:\n\n.. code::\n\n foo(hello world\n HEADERS a.h b.h c.h d.h\n SOURCES a.cc b.cc c.cc d.cc\n DEPENDS flub buzz bizz\n BAR BAZ)\n\n.. dynamic: features-end\n\n---------------------------------\nReporting Issues and Getting Help\n---------------------------------\n\nIf you encounter any bugs or regressions or if ``cmake-format`` doesn't behave\nin the way that you expect, please post an issue on the\n`github issue tracker`_. It is especially helpful if you can provide cmake\nlistfile snippets that demonstrate any issues you encounter.\n\n.. _`github issue tracker`: https://github.com/cheshirekow/cmake_format/issues\n\nYou can also join the ``#cmake-format`` channel on our discord server.\n\n.. _`discord server`: https://discord.gg/NgjwyPy\n\n\n----------\nDevelopers\n----------\n\nSome notes for anyone who wants hack on ``cmake-format``:\n\n1. Please use ``pylint`` to check your code. There is a pylint config file in\n the repo.\n2. There is a test suite in ``tests.py``. Run with\n ``python -Bm cmake_format.tests`` (ensure modified code is on the python\n path).\n3. There's an ``autopep8`` config file in the repo as well. Feel free to use\n that to format the code. Note that ``autopep8`` and ``pylint`` disagree\n in a few places so using ``autopep8`` may require some manual edits\n afterward.\n4. There's a cmake configuration for the project. Since this is a python\n project there isn't much that it really does but it provides targets for\n ``format``, ``lint`` and ``test`` if you'd like to use them.\n\n-------\nExample\n-------\n\nWill turn this:\n\n.. dynamic: example-in-begin\n\n.. code:: cmake\n\n # The following multiple newlines should be collapsed into a single newline\n\n\n\n\n cmake_minimum_required(VERSION 2.8.11)\n project(cmake_format_test)\n\n # This multiline-comment should be reflowed\n # into a single comment\n # on one line\n\n # This comment should remain right before the command call.\n # Furthermore, the command call should be formatted\n # to a single line.\n add_subdirectories(foo bar baz\n foo2 bar2 baz2)\n\n # This very long command should be wrapped\n set(HEADERS very_long_header_name_a.h very_long_header_name_b.h very_long_header_name_c.h)\n\n # This command should be split into one line per entry because it has a long argument list.\n set(SOURCES source_a.cc source_b.cc source_d.cc source_e.cc source_f.cc source_g.cc source_h.cc)\n\n # The string in this command should not be split\n set_target_properties(foo bar baz PROPERTIES COMPILE_FLAGS \"-std=c++11 -Wall -Wextra\")\n\n # This command has a very long argument and can't be aligned with the command\n # end, so it should be moved to a new line with block indent + 1.\n some_long_command_name(\"Some very long argument that really needs to be on the next line.\")\n\n # This situation is similar but the argument to a KWARG needs to be on a\n # newline instead.\n set(CMAKE_CXX_FLAGS \"-std=c++11 -Wall -Wno-sign-compare -Wno-unused-parameter -xx\")\n\n set(HEADERS header_a.h header_b.h # This comment should\n # be preserved, moreover it should be split\n # across two lines.\n header_c.h header_d.h)\n\n\n # This part of the comment should\n # be formatted\n # but...\n # cmake-format: off\n # This bunny should remain untouched:\n # . \u3000 \uff3f\u3000\u2229\n # \u3000\u3000\uff9a\uff8d\u30fd| |\n # \u3000\u3000\u3000 (\u30fb\uff58\u30fb)\n # \u3000\u3000 c( uu}\n # cmake-format: on\n # while this part should\n # be formatted again\n\n # This is a paragraph\n #\n # This is a second paragraph\n #\n # This is a third paragraph\n\n # This is a comment\n # that should be joined but\n # TODO(josh): This todo should not be joined with the previous line.\n # NOTE(josh): Also this should not be joined with the todo.\n\n if(foo)\n if(sbar)\n # This comment is in-scope.\n add_library(foo_bar_baz foo.cc bar.cc # this is a comment for arg2\n # this is more comment for arg2, it should be joined with the first.\n baz.cc) # This comment is part of add_library\n\n other_command(some_long_argument some_long_argument) # this comment is very long and gets split across some lines\n\n other_command(some_long_argument some_long_argument some_long_argument) # this comment is even longer and wouldn't make sense to pack at the end of the command so it gets it's own lines\n endif()\n endif()\n\n\n # This very long command should be broken up along keyword arguments\n foo(nonkwarg_a nonkwarg_b HEADERS a.h b.h c.h d.h e.h f.h SOURCES a.cc b.cc d.cc DEPENDS foo bar baz)\n\n # This command uses a string with escaped quote chars\n foo(some_arg some_arg \"This is a \\\"string\\\" within a string\")\n\n # This command uses an empty string\n foo(some_arg some_arg \"\")\n\n # This command uses a multiline string\n foo(some_arg some_arg \"\n This string is on multiple lines\n \")\n\n # No, I really want this to look ugly\n # cmake-format: off\n add_library(a b.cc\n c.cc d.cc\n e.cc)\n # cmake-format: on\n\n.. dynamic: example-in-end\n\ninto this:\n\n.. dynamic: example-out-begin\n\n.. code:: cmake\n\n # The following multiple newlines should be collapsed into a single newline\n\n cmake_minimum_required(VERSION 2.8.11)\n project(cmake_format_test)\n\n # This multiline-comment should be reflowed into a single comment on one line\n\n # This comment should remain right before the command call. Furthermore, the\n # command call should be formatted to a single line.\n add_subdirectories(foo bar baz foo2 bar2 baz2)\n\n # This very long command should be wrapped\n set(HEADERS very_long_header_name_a.h very_long_header_name_b.h\n very_long_header_name_c.h)\n\n # This command should be split into one line per entry because it has a long\n # argument list.\n set(SOURCES\n source_a.cc\n source_b.cc\n source_d.cc\n source_e.cc\n source_f.cc\n source_g.cc\n source_h.cc)\n\n # The string in this command should not be split\n set_target_properties(foo bar baz PROPERTIES COMPILE_FLAGS\n \"-std=c++11 -Wall -Wextra\")\n\n # This command has a very long argument and can't be aligned with the command\n # end, so it should be moved to a new line with block indent + 1.\n some_long_command_name(\n \"Some very long argument that really needs to be on the next line.\")\n\n # This situation is similar but the argument to a KWARG needs to be on a newline\n # instead.\n set(CMAKE_CXX_FLAGS\n \"-std=c++11 -Wall -Wno-sign-compare -Wno-unused-parameter -xx\")\n\n set(HEADERS\n header_a.h header_b.h # This comment should be preserved, moreover it should\n # be split across two lines.\n header_c.h header_d.h)\n\n # This part of the comment should be formatted but...\n # cmake-format: off\n # This bunny should remain untouched:\n # . \u3000 \uff3f\u3000\u2229\n # \u3000\u3000\uff9a\uff8d\u30fd| |\n # \u3000\u3000\u3000 (\u30fb\uff58\u30fb)\n # \u3000\u3000 c( uu}\n # cmake-format: on\n # while this part should be formatted again\n\n # This is a paragraph\n #\n # This is a second paragraph\n #\n # This is a third paragraph\n\n # This is a comment that should be joined but\n # TODO(josh): This todo should not be joined with the previous line.\n # NOTE(josh): Also this should not be joined with the todo.\n\n if(foo)\n if(sbar)\n # This comment is in-scope.\n add_library(\n foo_bar_baz\n foo.cc bar.cc # this is a comment for arg2 this is more comment for arg2,\n # it should be joined with the first.\n baz.cc) # This comment is part of add_library\n\n other_command(\n some_long_argument some_long_argument) # this comment is very long and\n # gets split across some lines\n\n other_command(\n some_long_argument some_long_argument some_long_argument) # this comment\n # is even longer\n # and wouldn't\n # make sense to\n # pack at the\n # end of the\n # command so it\n # gets it's own\n # lines\n endif()\n endif()\n\n # This very long command should be broken up along keyword arguments\n foo(nonkwarg_a nonkwarg_b\n HEADERS a.h b.h c.h d.h e.h f.h\n SOURCES a.cc b.cc d.cc\n DEPENDS foo\n bar baz)\n\n # This command uses a string with escaped quote chars\n foo(some_arg some_arg \"This is a \\\"string\\\" within a string\")\n\n # This command uses an empty string\n foo(some_arg some_arg \"\")\n\n # This command uses a multiline string\n foo(some_arg some_arg \"\n This string is on multiple lines\n \")\n\n # No, I really want this to look ugly\n # cmake-format: off\n add_library(a b.cc\n c.cc d.cc\n e.cc)\n # cmake-format: on\n\n.. dynamic: example-out-end\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "https://github.com/cheshirekow/cmake_format/archive/0.6.0.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/cheshirekow/cmake_format", "keywords": "cmake,format", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "cmake-format", "package_url": "https://pypi.org/project/cmake-format/", "platform": "", "project_url": "https://pypi.org/project/cmake-format/", "project_urls": { "Download": "https://github.com/cheshirekow/cmake_format/archive/0.6.0.tar.gz", "Homepage": "https://github.com/cheshirekow/cmake_format" }, "release_url": "https://pypi.org/project/cmake-format/0.6.0/", "requires_dist": [ "pyyaml ; extra == 'yaml'", "jinja2 ; extra == 'html-gen'" ], "requires_python": "", "summary": "Can format your listfiles so they don't look like crap", "version": "0.6.0" }, "last_serial": 5980350, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "e88c8357961adcbe214c97c582bcf697", "sha256": "0e23355d3640a73fe4bf02998112407834180b4ce857b3478392cd77db102bdc" }, "downloads": -1, "filename": "cmake_format-0.2.0.tar.gz", "has_sig": false, "md5_digest": "e88c8357961adcbe214c97c582bcf697", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20926, "upload_time": "2018-01-24T20:49:48", "url": "https://files.pythonhosted.org/packages/8d/3f/cbae86bdad260ebec1465781a361482cf9f5c1cbed1d41a69cd443f6ddb8/cmake_format-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "5b63ac6a3c64211c1ac0852cbcc19328", "sha256": "6b1dfb639b15b141e74bec43d0fc4814045ba14ff6714d3ab63b994bb043f0cf" }, "downloads": -1, "filename": "cmake_format-0.3.0.tar.gz", "has_sig": false, "md5_digest": "5b63ac6a3c64211c1ac0852cbcc19328", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23784, "upload_time": "2018-02-08T19:54:40", "url": "https://files.pythonhosted.org/packages/f8/3d/e548dcf8101c4f86fdfa6c72572eaebbf60d71590b8846ff30622900eb01/cmake_format-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "6c078f8e2ce80bc2239fee89bf875987", "sha256": "afc609090ab0852de6f2e4a79871adca0a4d5642aa8f46df611b5a2ca10cbbfb" }, "downloads": -1, "filename": "cmake_format-0.3.1.tar.gz", "has_sig": false, "md5_digest": "6c078f8e2ce80bc2239fee89bf875987", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23911, "upload_time": "2018-02-08T22:49:51", "url": "https://files.pythonhosted.org/packages/77/c0/fc4a65de8b9779ee1df031f4f6c9c169d4f97ad9804817a695f15b5432e3/cmake_format-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "c28062ba66311d79259fd12df5ef360b", "sha256": "0f5ae6ab8067221631cf718a2d3483656f77356bc2aa1ab31b2d3d274933bace" }, "downloads": -1, "filename": "cmake_format-0.3.2.tar.gz", "has_sig": false, "md5_digest": "c28062ba66311d79259fd12df5ef360b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29300, "upload_time": "2018-02-12T04:38:51", "url": "https://files.pythonhosted.org/packages/21/b5/4b2f6244bec8cf8ede1c775b6b2f8f1f6acc8f336d26a6deb584554de8f0/cmake_format-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "d775d91817523a042ba42a8d1015cfd2", "sha256": "86526ab107972ad00836d8e6b285c78786941aa79854e79493263f0da99a5491" }, "downloads": -1, "filename": "cmake_format-0.3.3.tar.gz", "has_sig": false, "md5_digest": "d775d91817523a042ba42a8d1015cfd2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31035, "upload_time": "2018-02-23T19:05:19", "url": "https://files.pythonhosted.org/packages/a9/31/73dbc2c24bff44773bd63f705d0f4a011c71f02d565d6edf2770f505bb61/cmake_format-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "3539b13970156eca8329eab356ef0b7e", "sha256": "b452f5cdf4b41177c7a1d5695fae9c50e6f6302e7ce2625cac55f846d05b8a8d" }, "downloads": -1, "filename": "cmake_format-0.3.4.tar.gz", "has_sig": false, "md5_digest": "3539b13970156eca8329eab356ef0b7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32745, "upload_time": "2018-03-06T02:44:32", "url": "https://files.pythonhosted.org/packages/fa/68/8cae39cd0fe0fb91c193eaaa4d41a7e2a687d779bef86e13c8d32ae55bc8/cmake_format-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "f76f198e8fbbf49a53b5bb247494f43a", "sha256": "4e63bd1514c756571c1393c37d8ffd9bdb944392ad11b75c35c40c5e126ceb0d" }, "downloads": -1, "filename": "cmake_format-0.3.5.tar.gz", "has_sig": false, "md5_digest": "f76f198e8fbbf49a53b5bb247494f43a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33182, "upload_time": "2018-03-30T03:51:22", "url": "https://files.pythonhosted.org/packages/2b/a8/601c4d568755b4aa1692a2bba4e070fcee1aaa23a95a60dcaf87047aff64/cmake_format-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "17dbc610ea98ee9a4e30d415af83b833", "sha256": "616198ff2bef9fa66db6319a2488d5a8be10ad6518a39e2549318d616c80df7d" }, "downloads": -1, "filename": "cmake_format-0.3.6.tar.gz", "has_sig": false, "md5_digest": "17dbc610ea98ee9a4e30d415af83b833", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36275, "upload_time": "2018-04-10T15:06:38", "url": "https://files.pythonhosted.org/packages/39/2e/d998a9ecd2a0e6f0db171c8839d59f76f223be09c442841212f65a526043/cmake_format-0.3.6.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "869ef04e4d1a70259dc1575a2415f62c", "sha256": "556d5e0295b30371a206ec462b9041bb47badbee33c229d744abbafe12bd39c8" }, "downloads": -1, "filename": "cmake_format-0.4.0.tar.gz", "has_sig": false, "md5_digest": "869ef04e4d1a70259dc1575a2415f62c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45505, "upload_time": "2018-07-07T20:05:01", "url": "https://files.pythonhosted.org/packages/10/b0/294a9f0233ce32b73e6cc3a0bd90053ee04ee9a676223e3afa2a1aaeec72/cmake_format-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "cc07a75bb88b03cd64430d4802f0ec6b", "sha256": "be0d8c4814fae32ad47be9fd73b955cbe9672adab2a3996b0470fea3da3bdbf5" }, "downloads": -1, "filename": "cmake_format-0.4.1.tar.gz", "has_sig": false, "md5_digest": "cc07a75bb88b03cd64430d4802f0ec6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46004, "upload_time": "2018-07-14T18:22:18", "url": "https://files.pythonhosted.org/packages/4d/d0/b427979d22ca7ba4f4b3b76d241f481b35fd08b7e96eeeeeaddee7b9a0ef/cmake_format-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "5d5477ad4cabb2ce624eead79f2ffd8f", "sha256": "af2342a98461d2c6d2b22d0e559a51000ee63333dfff0b7f6dac24fc2bd3b414" }, "downloads": -1, "filename": "cmake_format-0.4.2.tar.gz", "has_sig": false, "md5_digest": "5d5477ad4cabb2ce624eead79f2ffd8f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49195, "upload_time": "2018-09-16T02:00:28", "url": "https://files.pythonhosted.org/packages/9b/4b/84d46deceab3e6a4e48fb5b39a893d129f4f77f60c445ed17bfacbbc2629/cmake_format-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "a3075f612122dedd650e801a14014255", "sha256": "77241d7033219efc93f2124b55a3493f7e8724eb4197374270e00d9b0abff2f2" }, "downloads": -1, "filename": "cmake_format-0.4.3.tar.gz", "has_sig": false, "md5_digest": "a3075f612122dedd650e801a14014255", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49206, "upload_time": "2018-09-17T02:48:37", "url": "https://files.pythonhosted.org/packages/99/dc/1e1e1fee33cb4c91c4bae287fa54742e57ae3e1c4b8d403ae18f5a8c7575/cmake_format-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "0ff8a45dae46cc42307288b7baac9a19", "sha256": "6db6f3cb7c252c414ecb0d0abf38c2cb14d392e6973834383675c0c28f38fec0" }, "downloads": -1, "filename": "cmake_format-0.4.4.tar.gz", "has_sig": false, "md5_digest": "0ff8a45dae46cc42307288b7baac9a19", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50482, "upload_time": "2019-01-04T06:56:42", "url": "https://files.pythonhosted.org/packages/b2/21/c7cced2132fe2eb296bffd035bcf06a4d52e462dc01a4c99805f94f443e3/cmake_format-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "7bbf2560c76fceb6bb391e6cc753d190", "sha256": "16602408c774cd989ecfa25883de4c2dbac937e3890b735be4aab76f9647875a" }, "downloads": -1, "filename": "cmake_format-0.4.5.tar.gz", "has_sig": false, "md5_digest": "7bbf2560c76fceb6bb391e6cc753d190", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51087, "upload_time": "2019-01-09T02:33:36", "url": "https://files.pythonhosted.org/packages/d8/3f/14e1a63402eeb664b35392b33450f27f0a7f8d00d8b0c26e8e108d9cef24/cmake_format-0.4.5.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "50f3e3dcff7dbe4e607c0257e007f46b", "sha256": "f86b770d4d30a831eca5fe92b8373910e7df277510d434ce37c8f59be70ec725" }, "downloads": -1, "filename": "cmake_format-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "50f3e3dcff7dbe4e607c0257e007f46b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 86260, "upload_time": "2019-04-29T17:44:49", "url": "https://files.pythonhosted.org/packages/06/b0/48224a72ce1317ced20b5757257f19322af371b319abe49ebc415f4c914a/cmake_format-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8941c25a258764feb2d80ad72ed5ac10", "sha256": "fc45afe137b0d465e56b021d6aa49321dff1ec384bb474a4c3e95f25d975812a" }, "downloads": -1, "filename": "cmake_format-0.5.0.tar.gz", "has_sig": false, "md5_digest": "8941c25a258764feb2d80ad72ed5ac10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 71850, "upload_time": "2019-04-29T17:44:54", "url": "https://files.pythonhosted.org/packages/bb/e5/2a9a72a9270da8f6ce368ff4b00040e687110c4c688f0f266f681f2eabab/cmake_format-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "7834a9654ba6df6e25c38e2d85594bcf", "sha256": "7d792d66f8ddf7173e34130c44d41be17beb070368cbf781372b5ddaf6e2672b" }, "downloads": -1, "filename": "cmake_format-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7834a9654ba6df6e25c38e2d85594bcf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101709, "upload_time": "2019-05-02T17:03:32", "url": "https://files.pythonhosted.org/packages/42/5d/62c51a9aa401d052cf5e12c16d064faf69b67223546a9e80b17237ad9327/cmake_format-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0e4524122138b95e29ee0873279ee956", "sha256": "fcd850a2ab1f5c8291ea64d0c5a5123682ae290ae20ba532361b655fea63677d" }, "downloads": -1, "filename": "cmake_format-0.5.1.tar.gz", "has_sig": false, "md5_digest": "0e4524122138b95e29ee0873279ee956", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 82622, "upload_time": "2019-05-02T17:03:33", "url": "https://files.pythonhosted.org/packages/d4/3c/a890742bbdc9b96b714e272c7d1023f8db3983b190d37f92e5e87cff0145/cmake_format-0.5.1.tar.gz" } ], "0.5.1.dev7": [ { "comment_text": "", "digests": { "md5": "3f73645a0cec9beb6ed03f120c3dd172", "sha256": "deff634dc37b9bcd1baa8211757ca12f2f95bdb050d28a68cfa23ff5724968cb" }, "downloads": -1, "filename": "cmake_format-0.5.1.dev7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3f73645a0cec9beb6ed03f120c3dd172", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 101786, "upload_time": "2019-05-02T17:02:09", "url": "https://files.pythonhosted.org/packages/8d/1b/55a786cafca3fc0d13116426579e992bad3f045c785c05390eb576849306/cmake_format-0.5.1.dev7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "61b2b57a2f7eccc2667b660c9a456154", "sha256": "1a3f844f5c80f69ddefa9f4bf508bcdce643108e7c5f8751f43898e8defd4fa3" }, "downloads": -1, "filename": "cmake_format-0.5.1.dev7.tar.gz", "has_sig": false, "md5_digest": "61b2b57a2f7eccc2667b660c9a456154", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 82646, "upload_time": "2019-05-02T17:02:11", "url": "https://files.pythonhosted.org/packages/7a/df/cc12115e614d410d2af82cc429a638c1677a8fdda58d5189dd5c8390901d/cmake_format-0.5.1.dev7.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "813dc0724450ea9f4ee4dcca1450c45e", "sha256": "78d707b3a6cfe8c13531e707506ae493948115a13b5a5d88ba2dd40b2f96b0ac" }, "downloads": -1, "filename": "cmake_format-0.5.2-py3-none-any.whl", "has_sig": false, "md5_digest": "813dc0724450ea9f4ee4dcca1450c45e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 107268, "upload_time": "2019-05-30T20:14:53", "url": "https://files.pythonhosted.org/packages/ab/f6/0562694a082df6c7baf380bc25bc2b1be3940b023b1e13bf3d5559756632/cmake_format-0.5.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c632366d0a2147cda03f39c234afd3e4", "sha256": "de4716fbfabb917b2c1a3b3de3e3a99bdfc89758c2390ef0fbe29547c344ff49" }, "downloads": -1, "filename": "cmake_format-0.5.2.tar.gz", "has_sig": false, "md5_digest": "c632366d0a2147cda03f39c234afd3e4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 85557, "upload_time": "2019-05-30T20:14:55", "url": "https://files.pythonhosted.org/packages/51/d3/7b31b9573658aed4404c847222ebbd313e42c444221df6c77952f170e54a/cmake_format-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "02c4185411f62b799e0937c303cfa270", "sha256": "13b9a0bfe834566989779c2b3ec25ed45e5cc11dbf13f2affe8b5d8f509e9346" }, "downloads": -1, "filename": "cmake_format-0.5.3-py3-none-any.whl", "has_sig": false, "md5_digest": "02c4185411f62b799e0937c303cfa270", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 107704, "upload_time": "2019-06-18T13:09:01", "url": "https://files.pythonhosted.org/packages/48/df/d4447b8a4ab845d2de8a31c44faaac8dd0228553faa4cafd31cb68c40100/cmake_format-0.5.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d88c45569087363b549651c82538c66a", "sha256": "116cfeaf027be8e560cca464d3842412160a673b5acb93cb1f0a3737172af707" }, "downloads": -1, "filename": "cmake_format-0.5.3.tar.gz", "has_sig": false, "md5_digest": "d88c45569087363b549651c82538c66a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89351, "upload_time": "2019-06-18T13:09:04", "url": "https://files.pythonhosted.org/packages/2c/e7/60d137ae4c08484bc81c82ae7384df6037320ffe49379517fc64366536eb/cmake_format-0.5.3.tar.gz" } ], "0.5.4": [ { "comment_text": "", "digests": { "md5": "076e6f7aa3dd414c7c2980ecfcc2338b", "sha256": "35c8dc9e76899ae280fd526ab9d055599c91a0f3a641b83fec7981a3d3c96211" }, "downloads": -1, "filename": "cmake_format-0.5.4-py3-none-any.whl", "has_sig": false, "md5_digest": "076e6f7aa3dd414c7c2980ecfcc2338b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 110772, "upload_time": "2019-07-23T15:48:34", "url": "https://files.pythonhosted.org/packages/a8/90/552b49d63b5ced7fcf6eea16c84f32e09a54fbfe98c50f5e55ca68403c7f/cmake_format-0.5.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3da08f6bb89064a868febf98e6651ea0", "sha256": "c6b4431a271ce412d0a3be30ec610087fe82a8cdd43b23b5b06928491689d7d5" }, "downloads": -1, "filename": "cmake_format-0.5.4.tar.gz", "has_sig": false, "md5_digest": "3da08f6bb89064a868febf98e6651ea0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 94693, "upload_time": "2019-07-23T15:48:36", "url": "https://files.pythonhosted.org/packages/1c/6e/aaf7a841c85cf23338681ee831bd373fa281180d60e18ac38216f6a8e20d/cmake_format-0.5.4.tar.gz" } ], "0.5.5": [ { "comment_text": "", "digests": { "md5": "d7e368e7a7d771b71ddc5fe3e44e5fa2", "sha256": "716e7935a3a30d0e3f32a4b0439ed6273ccdafaa2bcb6ae14729c2e866388de2" }, "downloads": -1, "filename": "cmake_format-0.5.5-py3-none-any.whl", "has_sig": false, "md5_digest": "d7e368e7a7d771b71ddc5fe3e44e5fa2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 111460, "upload_time": "2019-09-26T15:11:37", "url": "https://files.pythonhosted.org/packages/ef/a8/be7d576c99a885c2dd6798b4dec17025a84edb7a522300b89c3f4f0d2c54/cmake_format-0.5.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3faa16f41e3a633c7506817d10092c00", "sha256": "10107e7ddb8011057e784d390c28614c0222ccb2d8026ed842fe4441feca5c92" }, "downloads": -1, "filename": "cmake_format-0.5.5.tar.gz", "has_sig": false, "md5_digest": "3faa16f41e3a633c7506817d10092c00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 108234, "upload_time": "2019-09-26T15:11:40", "url": "https://files.pythonhosted.org/packages/9b/b8/7ba11f539c99591594abccbc6875922bbc1e513abffa2ab70f1773c82ab0/cmake_format-0.5.5.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "9669553cfcb517a66d60f65f879afb55", "sha256": "3235cc8c9147b2a287a775ce19a5d2b4d0e65dbe919b56cb88b4c05750109fc8" }, "downloads": -1, "filename": "cmake_format-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9669553cfcb517a66d60f65f879afb55", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 112823, "upload_time": "2019-10-15T23:23:54", "url": "https://files.pythonhosted.org/packages/4f/7a/e00931b734712cd0a69fcb15c31ab3830664bb31f8d36711c9c44ac2f01c/cmake_format-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b5b0e0f54c37c394945295da29fe1462", "sha256": "fc9795907c508b4a1f851eba311bd7478b374a4ba4430cdda976ebbec440376a" }, "downloads": -1, "filename": "cmake_format-0.6.0.tar.gz", "has_sig": false, "md5_digest": "b5b0e0f54c37c394945295da29fe1462", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 109015, "upload_time": "2019-10-15T23:23:56", "url": "https://files.pythonhosted.org/packages/40/4c/1985f259120e201d8fa1fad8d5fd4f6d3e9de8d76c688be992c8239f1e87/cmake_format-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9669553cfcb517a66d60f65f879afb55", "sha256": "3235cc8c9147b2a287a775ce19a5d2b4d0e65dbe919b56cb88b4c05750109fc8" }, "downloads": -1, "filename": "cmake_format-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9669553cfcb517a66d60f65f879afb55", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 112823, "upload_time": "2019-10-15T23:23:54", "url": "https://files.pythonhosted.org/packages/4f/7a/e00931b734712cd0a69fcb15c31ab3830664bb31f8d36711c9c44ac2f01c/cmake_format-0.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b5b0e0f54c37c394945295da29fe1462", "sha256": "fc9795907c508b4a1f851eba311bd7478b374a4ba4430cdda976ebbec440376a" }, "downloads": -1, "filename": "cmake_format-0.6.0.tar.gz", "has_sig": false, "md5_digest": "b5b0e0f54c37c394945295da29fe1462", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 109015, "upload_time": "2019-10-15T23:23:56", "url": "https://files.pythonhosted.org/packages/40/4c/1985f259120e201d8fa1fad8d5fd4f6d3e9de8d76c688be992c8239f1e87/cmake_format-0.6.0.tar.gz" } ] }