{ "info": { "author": "Micha\u0142 Kaczmarczyk", "author_email": "michal.s.kaczmarczyk@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Framework :: Pytest", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Testing", "Topic :: System :: Monitoring" ], "description": "FsForge - file system tests helper\n==================================\n\n``fsforge`` - is a toolset defining fake or real filesystem layout.\n\nGives among others a functionality:\n\n- for creating artificial ``fs`` using ``pyfakefs``.\n- for taking a snapshot of either real of faked file system.\n\nIn short it is some kind of syntax' extension to ``pyfakefs`` and is\nintended to use with ``pytest`` framework. Allows for absolute\ntransparency in ``fs`` operations, so that any kind of tests: untit,\nfunctional or end-to-end can be performed in memory - instead of real\nhard disc operations (``SSD``\\ s can breathe and relax), without any\nheadache nor enormous setup nor teardown.\n\nThe main difference against bare ``pyfakefs`` is that ``fsforge`` uses\nnice and clean ``dict`` literals instead of lists of paths. It also\nallows for reverse operation - to create the same kind of nested\ndictionary structure defining given ``fs`` with just single function\ncall.\n\nSuch a result is immediately ready to make assertions on it.\n\nWorks with python ``2.7``, ``3.4``, ``3.5``, ``3.6``, ``3.7``, ``pypy``\nand ``pypy3``. Created with ``pyfakefs==3.4.3``.\n\nUsage\n=====\n\n.. _capture-real-or-faked-fs-snapshot:\n\nCapture real or faked ``fs`` snapshot.\n--------------------------------------\n\nLet's use following structure originated in ``/tmp/ex`` for all further\nexamples:\n\n::\n\n bash>$ tree /tmp/ex\n /tmp/ex\n \u251c\u2500\u2500 dir_a\n \u2502 \u251c\u2500\u2500 sub_empty_dir\n \u2502 \u251c\u2500\u2500 sub_dir_with_a_file\n \u2502 \u2502 \u251c\u2500\u2500 app_dump.json\n \u2502 \u2502 \u2514\u2500\u2500 file_1.txt\n \u2502 \u2514\u2500\u2500 file_2.txt\n \u251c\u2500\u2500 dir_b\n \u2502 \u251c\u2500\u2500 special_file.txt\n \u2502 \u2514\u2500\u2500 file_4.bin\n \u251c\u2500\u2500 empty_dir\n \u2514\u2500\u2500 special_file_2.txt\n\nWe can collect a snapshot of this layout with:\n\n.. code:: python\n\n import pprint\n from fsforge import take_fs_snapshot\n\n tree = take_fs_snapshot('/tmp/ex')\n pprint.pprint(tree)\n\nwill output such a ``tree``:\n\n.. code:: python\n\n {\n 'dir_a': {\n 'sub_empty_dir': {},\n 'sub_dir_with_a_file': {\n 'app_dump.json': None,\n 'file_1.txt': None\n },\n 'file_2.txt': None,\n },\n 'dir_b': {\n 'app_dump.json': None,\n 'special_file.txt': None,\n 'file_4.bin': None\n },\n 'empty_dir': {},\n 'special_file_2.txt`: None\n }\n\nMeaning\n~~~~~~~\n\nThe resulting ``tree`` is a pure ``dict``. ``fsforge`` uses magic\nrelation and similarity of directory to a python's dictionary.\n\nDirectories are recognized by being ``dict`` instances. Any other value\ntype in the ``tree`` is treat as a file. ``fsforge`` distinguishes only\n``dict`` (as directories) and ``non dict`` (files) while traversing the\ntree.\n\nCreate forged file system\n-------------------------\n\nNow ``fsforge`` can use such kind of ``tree`` to perform needed\n``pyfakefs``' calls to recreate the structure in memory for some\n``pytest`` tests:\n\n.. code:: python\n\n import os\n\n from fsforge import create_fs\n\n def test_that(fs):\n\n create_fs(fs, tree, \"/tmp/ex\"):\n\n # everything is now set up:\n assert os.path.isdir(\"/tmp/ex/dir_a/sub_dir_with_a_file\")\n assert os.path.isfile(\"/tmp/ex/dir_a/file_2.txt\")\n\nIn the code above:\n\n- ``fs`` is a fixture automatically accessible in tests as soon as you\n have ``pyfakefs`` package installed. It can also be a \\`FakeFilesyst\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/kamichal/fsforge", "keywords": "fsforge pyfakefs fs forged literal dict hard disk HDD snapshot in-memory test", "license": "Apache License v.2", "maintainer": "", "maintainer_email": "", "name": "fsforge", "package_url": "https://pypi.org/project/fsforge/", "platform": "", "project_url": "https://pypi.org/project/fsforge/", "project_urls": { "Homepage": "https://gitlab.com/kamichal/fsforge" }, "release_url": "https://pypi.org/project/fsforge/0.3.7/", "requires_dist": [ "pyfakefs (==3.5.7)" ], "requires_python": "", "summary": "Helper to create fake filesystem and quick capture its state (or state of a real one).", "version": "0.3.7" }, "last_serial": 5279702, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "edc876c5089f49320b41775f393dcd20", "sha256": "547c94f005feba49d7da0199949061aa9f1a2a52201d738e4238f60e053a9625" }, "downloads": -1, "filename": "fsforge-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "edc876c5089f49320b41775f393dcd20", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6816, "upload_time": "2018-08-29T09:39:27", "url": "https://files.pythonhosted.org/packages/f8/bf/dee8d3fb221dd611bbdcb947ddce71ef2d59ec054d8f646005eb56526570/fsforge-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f1ba6adf8743f9acff4e0661b2dc5436", "sha256": "408aba20900ebb904cc0333e4314dedff7de1ef66c3b4a2d498c0e9f1911eec2" }, "downloads": -1, "filename": "fsforge-0.1.tar.gz", "has_sig": false, "md5_digest": "f1ba6adf8743f9acff4e0661b2dc5436", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6777, "upload_time": "2018-08-29T09:39:29", "url": "https://files.pythonhosted.org/packages/40/06/e360619901a0bd8abe0f02d86a897ca6355083216030eacc2c93ee2f291a/fsforge-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "792ae6c37199d939b112e60aa6050099", "sha256": "fde11bbb62051f70014053b6501ffae361800b5970030b7bf479141c73f20a88" }, "downloads": -1, "filename": "fsforge-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "792ae6c37199d939b112e60aa6050099", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6834, "upload_time": "2018-08-29T09:47:19", "url": "https://files.pythonhosted.org/packages/0c/6f/b2cbd97842959cba10a97c5777c05d45cbfbbf7422d8f827c9d7f60942fb/fsforge-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5bd8f559d5ad6d132e0aa892943e2375", "sha256": "a03b744cd66ab746ac355cca307a67a7b0d1d8b4ff6f83e9e826b210624d0da4" }, "downloads": -1, "filename": "fsforge-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5bd8f559d5ad6d132e0aa892943e2375", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6778, "upload_time": "2018-08-29T09:47:21", "url": "https://files.pythonhosted.org/packages/03/fc/52fe4f0690fd3e3587f8f9af4d513387f1e91842c203ff3eacda133178b5/fsforge-0.1.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e2e32ec587cb05e8f9461b059d4e074b", "sha256": "a48e1a1a30e0ec3fcd669799cb88d0707448da0eefcaf744c451fb595a1ef678" }, "downloads": -1, "filename": "fsforge-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "e2e32ec587cb05e8f9461b059d4e074b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6826, "upload_time": "2018-08-29T11:53:09", "url": "https://files.pythonhosted.org/packages/58/16/325f4be4d80ae85e97e9d7a12df55901e06e1e25ef90d4829a0ddfcc79a2/fsforge-0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "605e57c0df58ce1b60151722dc762b87", "sha256": "f07e6414b8fcaf669cbf674545d32a2be81b2e1565ebe4c0941449186c0ed417" }, "downloads": -1, "filename": "fsforge-0.2.tar.gz", "has_sig": false, "md5_digest": "605e57c0df58ce1b60151722dc762b87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6928, "upload_time": "2018-08-29T11:53:11", "url": "https://files.pythonhosted.org/packages/46/b8/054f903b4cac251f6ecc1fc3bc18ab9fffb7d7d7314c53f8d4686c36b772/fsforge-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "07c088eddfbf678f3a02fdf94ac2f126", "sha256": "b2a4411772687b070bb82369fb61c79477f04d915e2593c824b73d8a8ecb2ece" }, "downloads": -1, "filename": "fsforge-0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "07c088eddfbf678f3a02fdf94ac2f126", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7522, "upload_time": "2018-08-30T11:51:53", "url": "https://files.pythonhosted.org/packages/81/d7/f50892b524ce0025436ddee746f647d180d6ba92193222a22ae01397ddde/fsforge-0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1196476367dd0d82a00215cdcca4a35d", "sha256": "eab6c456723225aa6a5b65858071f08d4e13bc78a562d16fff2f24977f4f19d7" }, "downloads": -1, "filename": "fsforge-0.3.tar.gz", "has_sig": false, "md5_digest": "1196476367dd0d82a00215cdcca4a35d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7597, "upload_time": "2018-08-30T11:51:54", "url": "https://files.pythonhosted.org/packages/1c/d7/76413b29f4a1cc9916d7a0caff54daf5dc31c979b4a0a23d3524f1187fdf/fsforge-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "53863f634e483839226b07aecc988529", "sha256": "686ddf790d3b3c17264fbd26bec0cf5c86731dca7cc80601736f67f3ec569192" }, "downloads": -1, "filename": "fsforge-0.3.1-py2-none-any.whl", "has_sig": false, "md5_digest": "53863f634e483839226b07aecc988529", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12114, "upload_time": "2018-10-29T12:01:52", "url": "https://files.pythonhosted.org/packages/4f/bb/11da1f74afccef6864a12d8c194b70c8266b29a1e5929bba78841fbfca17/fsforge-0.3.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "043042af82fc1ef90ac311af8ed2992d", "sha256": "4f5b6a11c544bb8d426ed1c03ffefc9fb348750d7b2347bdf42a4ac20d49fb09" }, "downloads": -1, "filename": "fsforge-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "043042af82fc1ef90ac311af8ed2992d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12118, "upload_time": "2018-10-29T12:05:30", "url": "https://files.pythonhosted.org/packages/98/7b/20ed03de7316726e96056b126a374cd761c7bf9eed856abb46ef7fcfdf3b/fsforge-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "681673489e7b93b334c6a921a18e2e37", "sha256": "cf11bc73d2411bfe264217524f8cd9726ca6ea233dd77dce5e49cac29805c688" }, "downloads": -1, "filename": "fsforge-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "681673489e7b93b334c6a921a18e2e37", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 7614, "upload_time": "2018-08-30T13:04:43", "url": "https://files.pythonhosted.org/packages/41/69/6f9d44073e83eaad177b52fc209c25fe17e4671105d858533536127d6092/fsforge-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "088b590be7ea4dbc0b7254ae5496ade2", "sha256": "18b57435221ba846aa7ca7245ae7c65e10f435eac232c3e6a4feb0d2e2940486" }, "downloads": -1, "filename": "fsforge-0.3.1.tar.gz", "has_sig": false, "md5_digest": "088b590be7ea4dbc0b7254ae5496ade2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7671, "upload_time": "2018-08-30T13:04:44", "url": "https://files.pythonhosted.org/packages/b6/19/ea3baf66890ae749e5285a9582bb71dd3adb8bc0565974f05931bb10fd63/fsforge-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "fd92582918ff97c76bffbdb38eb9c2bd", "sha256": "bbfb5d278f6057551d0a97cd1661b06e8156e5352f9970be901a88970ae11ade" }, "downloads": -1, "filename": "fsforge-0.3.2-py2-none-any.whl", "has_sig": false, "md5_digest": "fd92582918ff97c76bffbdb38eb9c2bd", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12114, "upload_time": "2018-10-29T12:05:32", "url": "https://files.pythonhosted.org/packages/1d/7f/eb5c863871ac419f458e48fe2524de2a9ee7707055860cffb70c100a861c/fsforge-0.3.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae765a1442315026244d91e74451acd1", "sha256": "08fb01bea3dcb84eaa539991f2546572352d61549018fee8889f234faecb0df5" }, "downloads": -1, "filename": "fsforge-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ae765a1442315026244d91e74451acd1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8348, "upload_time": "2018-10-29T12:05:33", "url": "https://files.pythonhosted.org/packages/10/28/63208d1e51fa7b5a338c9d981c0eaf162834cf18a41d2244a15df67b969a/fsforge-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "597b925b1d70aba6217e8559d48cbe7d", "sha256": "00f8c6cf3ef4d591921ccad18d01e4e2b485bece4617d06d0158b225bc2b2225" }, "downloads": -1, "filename": "fsforge-0.3.3-py2-none-any.whl", "has_sig": false, "md5_digest": "597b925b1d70aba6217e8559d48cbe7d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12104, "upload_time": "2018-10-29T12:31:35", "url": "https://files.pythonhosted.org/packages/c9/0c/8a37b716456bd611ecb6757d426414e16c73820cd9cfadbc8011696e8777/fsforge-0.3.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1c4be594814cc4e33b15eb46c8d4a7f2", "sha256": "f18ec3fa7fd0bc2ebbec3fcc56d2d22ff8362ae6076f7a7b0ff16d849fce5ebd" }, "downloads": -1, "filename": "fsforge-0.3.3.tar.gz", "has_sig": false, "md5_digest": "1c4be594814cc4e33b15eb46c8d4a7f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8344, "upload_time": "2018-10-29T12:31:37", "url": "https://files.pythonhosted.org/packages/da/64/1eacd1aa58c939d95b4061373b5d0943eafce3fdd6ac0ee71c3b01838efd/fsforge-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "cce8aeb86cd53f7042c7acda24f1ea2a", "sha256": "39f3511e3f5c403a7bfe562d0fe2c1f9e63550450a87a7f30b366d479eeb48cd" }, "downloads": -1, "filename": "fsforge-0.3.4-py2-none-any.whl", "has_sig": false, "md5_digest": "cce8aeb86cd53f7042c7acda24f1ea2a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12114, "upload_time": "2018-10-29T12:55:09", "url": "https://files.pythonhosted.org/packages/4f/d0/d32b1e1a0eb75130b3e8c01288754c2cf7e8296eb8af61a73d165bce4db4/fsforge-0.3.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1c61af15917ee535c8b6d86ab3442af1", "sha256": "faba8d1cbce5a7dd2c5b033109b50590841b68e90109cb2d2e18099af61cb82f" }, "downloads": -1, "filename": "fsforge-0.3.4.tar.gz", "has_sig": false, "md5_digest": "1c61af15917ee535c8b6d86ab3442af1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8356, "upload_time": "2018-10-29T12:55:11", "url": "https://files.pythonhosted.org/packages/e6/41/4abe936152baa303dd3f4bbe55f72fc19e67841113f9837cc2a19d121be8/fsforge-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "c5c82a7b1fc453de6427030169a8a7da", "sha256": "8f3ee85b923450bda32529004121d5487f6a7719831cbcdf7f1626bd1261ebc9" }, "downloads": -1, "filename": "fsforge-0.3.5-py2-none-any.whl", "has_sig": false, "md5_digest": "c5c82a7b1fc453de6427030169a8a7da", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 12241, "upload_time": "2018-10-30T16:09:55", "url": "https://files.pythonhosted.org/packages/c8/41/e4b50c323baa733ed53d75e214a20a54e8d3c9d3ffaca832175eea0db81d/fsforge-0.3.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f57ff7b276b066b22082df9642373427", "sha256": "095d3eeaa08bd607274f09bd82debb27edd2257e919aa2136e6d76237f876ff7" }, "downloads": -1, "filename": "fsforge-0.3.5.tar.gz", "has_sig": false, "md5_digest": "f57ff7b276b066b22082df9642373427", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8457, "upload_time": "2018-10-30T16:09:56", "url": "https://files.pythonhosted.org/packages/bd/a7/37a250d0697698b9df9fea04222ee0d8158ffb7e7b24978a09d096b73eba/fsforge-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "616bddd828bb82bae35e37761216a60d", "sha256": "ecca82f84a9c4d3ead1aaa034908a2e870f64a28a3b629ed5f33ce6621788979" }, "downloads": -1, "filename": "fsforge-0.3.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "616bddd828bb82bae35e37761216a60d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10310, "upload_time": "2019-02-14T08:01:54", "url": "https://files.pythonhosted.org/packages/fb/95/c68bf71b5cc92522534c3da9ae7487b093a9e2296d4afce827725d45c5fd/fsforge-0.3.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "91ddbf44ab2b6508953c8443b035b1ee", "sha256": "ea64c624fb1fa44cf8ac28214bdf2ad5f8057c5078142273e651370d60daa0d2" }, "downloads": -1, "filename": "fsforge-0.3.6.tar.gz", "has_sig": false, "md5_digest": "91ddbf44ab2b6508953c8443b035b1ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8504, "upload_time": "2019-02-14T08:01:57", "url": "https://files.pythonhosted.org/packages/70/13/3ebac4c63f6eace6e1a4eb06d528cfb5de2823fbc92521670308556c50f6/fsforge-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "4c4bf1e72665cc0c3b28b181ec5000b3", "sha256": "1488c2f4133bd974d4ca80c373694f7e61dece9d70e28fcafcd8a8f3daaa212f" }, "downloads": -1, "filename": "fsforge-0.3.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4c4bf1e72665cc0c3b28b181ec5000b3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11975, "upload_time": "2019-05-16T23:36:57", "url": "https://files.pythonhosted.org/packages/3c/b2/6f90f1e463f50f13fef5fe9bc579b2b47fe4518774129b0d2a9163b26cb4/fsforge-0.3.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a42878c7d55584b3b576a4cd65eda1f", "sha256": "d1d2652fa03163e66e4a0425057e8e2145c8cbe84734aa36cdc336f11663f5f5" }, "downloads": -1, "filename": "fsforge-0.3.7-py3-none-any.whl", "has_sig": false, "md5_digest": "1a42878c7d55584b3b576a4cd65eda1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11971, "upload_time": "2019-05-16T23:36:59", "url": "https://files.pythonhosted.org/packages/bd/ae/396aaaf74c53d2e8d1d58a87624409e09c37489f886b0f05680b08c15e22/fsforge-0.3.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2765e3a027e47ea7bcf6df71722ace9a", "sha256": "c513a63f46dea4c93ed4015cd121fbd23786c0eabb1a358bc768f8eb8fff16eb" }, "downloads": -1, "filename": "fsforge-0.3.7.tar.gz", "has_sig": false, "md5_digest": "2765e3a027e47ea7bcf6df71722ace9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8525, "upload_time": "2019-05-16T23:37:01", "url": "https://files.pythonhosted.org/packages/62/fd/2b1991f77443e93334e1f1802046a1fcd99ab1ec1a8eb2cba524c6d8cc53/fsforge-0.3.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4c4bf1e72665cc0c3b28b181ec5000b3", "sha256": "1488c2f4133bd974d4ca80c373694f7e61dece9d70e28fcafcd8a8f3daaa212f" }, "downloads": -1, "filename": "fsforge-0.3.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4c4bf1e72665cc0c3b28b181ec5000b3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11975, "upload_time": "2019-05-16T23:36:57", "url": "https://files.pythonhosted.org/packages/3c/b2/6f90f1e463f50f13fef5fe9bc579b2b47fe4518774129b0d2a9163b26cb4/fsforge-0.3.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a42878c7d55584b3b576a4cd65eda1f", "sha256": "d1d2652fa03163e66e4a0425057e8e2145c8cbe84734aa36cdc336f11663f5f5" }, "downloads": -1, "filename": "fsforge-0.3.7-py3-none-any.whl", "has_sig": false, "md5_digest": "1a42878c7d55584b3b576a4cd65eda1f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11971, "upload_time": "2019-05-16T23:36:59", "url": "https://files.pythonhosted.org/packages/bd/ae/396aaaf74c53d2e8d1d58a87624409e09c37489f886b0f05680b08c15e22/fsforge-0.3.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2765e3a027e47ea7bcf6df71722ace9a", "sha256": "c513a63f46dea4c93ed4015cd121fbd23786c0eabb1a358bc768f8eb8fff16eb" }, "downloads": -1, "filename": "fsforge-0.3.7.tar.gz", "has_sig": false, "md5_digest": "2765e3a027e47ea7bcf6df71722ace9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8525, "upload_time": "2019-05-16T23:37:01", "url": "https://files.pythonhosted.org/packages/62/fd/2b1991f77443e93334e1f1802046a1fcd99ab1ec1a8eb2cba524c6d8cc53/fsforge-0.3.7.tar.gz" } ] }