{ "info": { "author": "Jeffrey Slort", "author_email": "j_slort@hotmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Utilities" ], "description": "=======\nHashdex\n=======\n\n\n.. image:: https://img.shields.io/pypi/v/hashdex.svg\n :target: https://pypi.python.org/pypi/hashdex\n\n.. image:: https://img.shields.io/travis/jeff-99/hashdex.svg\n :target: https://travis-ci.org/jeff-99/hashdex\n\n.. image:: https://readthedocs.org/projects/hashdex/badge/?version=latest\n :target: https://hashdex.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://pyup.io/repos/github/jeff-99/hashdex/shield.svg\n :target: https://pyup.io/repos/github/jeff-99/hashdex/\n :alt: Updates\n\n\nA file indexer based on content hashes to quickly find duplicate files on your system.\nI created this tool because I always forget which pictures from my phone I already uploaded to my Dropbox account.\nNow I can just upload all pictures to an uploads directory check these files against the index and only organize\nthe remaining files.\n\nAs easy as..\n------------\n\n.. code-block:: bash\n\n pip install hashdex\n hashdex add /path/to/my-main-pictures-directory\n hashdex check --rm /path/to/my-uploads-directory\n\n\n* Free software: MIT license\n* Documentation: https://hashdex.readthedocs.io.\n\n\nFeatures\n--------\n\n* create an index of your files\n* find duplicate files on your filesystem\n* check if files in a directory are already indexed\n\nCredits\n---------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n\n=======\nHistory\n=======\n\n0.6.0 (2017-10-28)\n------------------\n* Added version option to main command\n* Added option to move files while checking for duplicates\n* Updated pytest-runner to 3.0.0\n* Updated cryptography to 2.1.2\n* Updated sphinx to 1.6.5\n* Updated flake8 to 3.5.0\n* Updated tox to 2.9.1\n* Updated pytest to 3.2.3\n\n0.5.0 (2017-09-28)\n------------------\n* added support for adding and checking files instead of directories\n* moved default index file to users home directory\n* Updated dependencies\n\n0.4.1 (2017-09-24)\n------------------\n* adjusted for python 2.7 math.floor returning a float\n\n0.4.0 (2017-09-24)\n------------------\n* renamed the index command to 'add'\n* refactored --dir option for add/check command to cli argument\n* added cleanup command\n* added docs\n* updated dependencies\n\n0.3.0 (2017-09-12)\n------------------\n* Added --rm flag to check cli command (without the flag the command will not delete files)\n* Dropped python 2.6 & 3.3 support\n* Updated dependencies\n\n0.2.0 (2017-09-08)\n------------------\n\n* Refactored Indexer class\n* Added Hasher class\n* Added tests 100% code coverage\n* Updated dependencies\n\n0.1.1 (2017-09-05)\n------------------\n\n* Updated dependencies\n* Fixed file listing bug\n\n0.1.0 (2017-09-04)\n------------------\n\n* First release on PyPI.\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jeff-99/hashdex", "keywords": "hashdex", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "hashdex", "package_url": "https://pypi.org/project/hashdex/", "platform": "", "project_url": "https://pypi.org/project/hashdex/", "project_urls": { "Homepage": "https://github.com/jeff-99/hashdex" }, "release_url": "https://pypi.org/project/hashdex/0.6.0/", "requires_dist": [ "Click (>=6.7)" ], "requires_python": "", "summary": "A file indexer based on content hashes", "version": "0.6.0" }, "last_serial": 3286716, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b2cf962e71b4ed3245bbaec1401f870e", "sha256": "c28789babe2becfd696a8793d066a37009e7fb1ee18d487de562f8708b776eca" }, "downloads": -1, "filename": "hashdex-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b2cf962e71b4ed3245bbaec1401f870e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5926, "upload_time": "2017-09-05T18:14:16", "url": "https://files.pythonhosted.org/packages/ae/30/c55e5813b52dc17986e54e694b4bf6d767a3d62ad9e92e8fd950525680c8/hashdex-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "52e7788e6d95bfcedd6a3aed32d6a731", "sha256": "987aadbb984e68730111439ea0ec9a1c6bca58c4a3ea89dc054f5859f3fbfdf6" }, "downloads": -1, "filename": "hashdex-0.1.0.tar.gz", "has_sig": false, "md5_digest": "52e7788e6d95bfcedd6a3aed32d6a731", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13486, "upload_time": "2017-09-05T18:14:19", "url": "https://files.pythonhosted.org/packages/42/1b/a3118e366463777cac99f75af7533c3133db83081d2f82db5a471d79ee53/hashdex-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "861e4f9940143c8861b99b4013ad08a5", "sha256": "2123c5b754cc35f0fa12b54ef941b6854e324c6c35fc4be6b8f4269dc117cf1b" }, "downloads": -1, "filename": "hashdex-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "861e4f9940143c8861b99b4013ad08a5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5926, "upload_time": "2017-09-05T19:15:02", "url": "https://files.pythonhosted.org/packages/0a/fd/a5e35d79140db7771fb9adcd3736f2b6cbee556a81c6211b9ca7c2ff471b/hashdex-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3a41c3365f3154dbea5b21e76b28cedf", "sha256": "cec8e31ecb5c7737e01a7f18a4576b48536322cde090b50564a16e8598749e44" }, "downloads": -1, "filename": "hashdex-0.1.1.tar.gz", "has_sig": false, "md5_digest": "3a41c3365f3154dbea5b21e76b28cedf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13562, "upload_time": "2017-09-05T19:15:06", "url": "https://files.pythonhosted.org/packages/9c/b7/add95651b12ecafc6042dac661c77ac417f3fdbc99c0a512c8a71d6c1755/hashdex-0.1.1.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "7e2a6534489b8e3daa7e60a8c57ee72b", "sha256": "ee816dd7f1ab12599c155ecb32963e21503c12e60a1694138acbf184fc87bec2" }, "downloads": -1, "filename": "hashdex-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7e2a6534489b8e3daa7e60a8c57ee72b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6143, "upload_time": "2017-09-08T20:28:12", "url": "https://files.pythonhosted.org/packages/1c/7d/559ce0868584b45bae464121981aba678f0baccd51413e4f80cb5d1e7c0e/hashdex-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9f000e8cd968bb4a50fdd787e700bd44", "sha256": "8761f33d385ca6a0b733f4251f98a609cec712fcdbd730f24cf083e0d33e3579" }, "downloads": -1, "filename": "hashdex-0.2.0.tar.gz", "has_sig": false, "md5_digest": "9f000e8cd968bb4a50fdd787e700bd44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14813, "upload_time": "2017-09-08T20:28:12", "url": "https://files.pythonhosted.org/packages/f8/9c/8c74a98979edcf20d19829d145e603b097b9507094bd2cde61f6da1a2e7c/hashdex-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b1138a9aa1efb91b4b6319308e991c20", "sha256": "6b0708469f78f8a9e1aed222a8c6163cf577ed71603f93afa5663b19fc2c9d08" }, "downloads": -1, "filename": "hashdex-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b1138a9aa1efb91b4b6319308e991c20", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6318, "upload_time": "2017-09-12T16:50:18", "url": "https://files.pythonhosted.org/packages/27/4d/d1f4d5d5914b4690fd21236b87146846999893826894eec9efe4a7b3a0c2/hashdex-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3f91cec782735d2a5291067e0079c0d2", "sha256": "08f6488e7d7ee46d975e24f3c0695cc23ef954389a9784e11343cf0f0ec3f99c" }, "downloads": -1, "filename": "hashdex-0.3.0.tar.gz", "has_sig": false, "md5_digest": "3f91cec782735d2a5291067e0079c0d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14970, "upload_time": "2017-09-12T16:50:19", "url": "https://files.pythonhosted.org/packages/dd/f1/6520072e2c25c3e3f82816c340297516ce2f4c8347879c722b430b3fc8fc/hashdex-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "06ffd3031b51e22c5c988f09ba1a04b6", "sha256": "80860af04b7f36bdc9e9e31cdac70569606bc222dfc414b5efbe08bf37353103" }, "downloads": -1, "filename": "hashdex-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "06ffd3031b51e22c5c988f09ba1a04b6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7728, "upload_time": "2017-09-24T14:20:06", "url": "https://files.pythonhosted.org/packages/5f/3a/a378b0cf8183f538874b8ec95a35abb8079be39c9cf40a4279ae5f3a51d2/hashdex-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8f11c90f66ca065a9cb435d73b6d91fe", "sha256": "1073a2b17b197eb10ccd875ab1c0923b3bf4ab8ea3c73c01594e8268bff7f1c5" }, "downloads": -1, "filename": "hashdex-0.4.0.tar.gz", "has_sig": false, "md5_digest": "8f11c90f66ca065a9cb435d73b6d91fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17723, "upload_time": "2017-09-24T14:20:09", "url": "https://files.pythonhosted.org/packages/f8/0f/ca694848c59031050dc0dcf6a6e822e84b613a9277c418a4fe79e3d811cb/hashdex-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "4eb562ab8a03817dd431079fe3c5ae1f", "sha256": "fec54c67a37e5e56b89134cfc2c2c54b147b248e11f1058f649b7fa2701014e4" }, "downloads": -1, "filename": "hashdex-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "4eb562ab8a03817dd431079fe3c5ae1f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7798, "upload_time": "2017-09-24T18:38:45", "url": "https://files.pythonhosted.org/packages/25/28/e6b15cc36216e3a36a39b2584e8a0a3d7e91312c16e947e8843f1f328d89/hashdex-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fc290d96870891095a71b2fc5cc5d4f", "sha256": "51474fad5b3711e79d26d996ef956883dd58c0846ce8cc77aa317da4f3ac0143" }, "downloads": -1, "filename": "hashdex-0.4.1.tar.gz", "has_sig": false, "md5_digest": "8fc290d96870891095a71b2fc5cc5d4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17775, "upload_time": "2017-09-24T18:38:46", "url": "https://files.pythonhosted.org/packages/b9/c9/add2544eb6085dad7ca14fce880924e473ae2a5bef20ffc4a26e3e69ad6a/hashdex-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "58e66a40b0dcd3d8f1bbe885c99b0b8b", "sha256": "8073dcc8ae43ee27973350a5f24ec59a944f4c9b1ea635e93d6c9c9d1c8b7161" }, "downloads": -1, "filename": "hashdex-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "58e66a40b0dcd3d8f1bbe885c99b0b8b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8105, "upload_time": "2017-09-28T19:38:06", "url": "https://files.pythonhosted.org/packages/73/20/5765f36158f90bd2fc747a56bc947f3efd374fb7ddc85b9706b56ef26f4b/hashdex-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "26f0a31ff3485c449f29c0072a68e36c", "sha256": "58d7e4e32a6aa77a7120193d06933c2da841651650e18be1f0e898e9fa900a00" }, "downloads": -1, "filename": "hashdex-0.5.0.tar.gz", "has_sig": false, "md5_digest": "26f0a31ff3485c449f29c0072a68e36c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18210, "upload_time": "2017-09-28T19:38:07", "url": "https://files.pythonhosted.org/packages/f8/23/8d1cbed1c14d3a87bbeb12d623cbdde39d4c40afba0efd17664b567b1b61/hashdex-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "275e3c9a1430de59e9704ee375c3e48b", "sha256": "49c99b02392e2da13a3afc96adc978e697b591fdaa82de71f83e0516e23efbf0" }, "downloads": -1, "filename": "hashdex-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "275e3c9a1430de59e9704ee375c3e48b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8508, "upload_time": "2017-10-28T19:21:22", "url": "https://files.pythonhosted.org/packages/4f/75/cbce3a57012f6722b1c32d97c957c7cc83207f74f9b151b1db8e777b42a2/hashdex-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "71eceac12f0e46164791ffe67f1dbdd3", "sha256": "97236c842df47fd6f83e5ad8b0c427123e2bd970997f255979cfa750bdfd9f65" }, "downloads": -1, "filename": "hashdex-0.6.0.tar.gz", "has_sig": false, "md5_digest": "71eceac12f0e46164791ffe67f1dbdd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19027, "upload_time": "2017-10-28T19:21:23", "url": "https://files.pythonhosted.org/packages/b9/a5/9fe94b1e5bbaf82661f42969c915fc165e19b5a671f5b57129c05ef36070/hashdex-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "275e3c9a1430de59e9704ee375c3e48b", "sha256": "49c99b02392e2da13a3afc96adc978e697b591fdaa82de71f83e0516e23efbf0" }, "downloads": -1, "filename": "hashdex-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "275e3c9a1430de59e9704ee375c3e48b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8508, "upload_time": "2017-10-28T19:21:22", "url": "https://files.pythonhosted.org/packages/4f/75/cbce3a57012f6722b1c32d97c957c7cc83207f74f9b151b1db8e777b42a2/hashdex-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "71eceac12f0e46164791ffe67f1dbdd3", "sha256": "97236c842df47fd6f83e5ad8b0c427123e2bd970997f255979cfa750bdfd9f65" }, "downloads": -1, "filename": "hashdex-0.6.0.tar.gz", "has_sig": false, "md5_digest": "71eceac12f0e46164791ffe67f1dbdd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19027, "upload_time": "2017-10-28T19:21:23", "url": "https://files.pythonhosted.org/packages/b9/a5/9fe94b1e5bbaf82661f42969c915fc165e19b5a671f5b57129c05ef36070/hashdex-0.6.0.tar.gz" } ] }