{ "info": { "author": "Matt ODonnell", "author_email": "odonnell004@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "Changeless is a set of functions and objects to help convert your data\ninto a set stateless or immutable data objects.\n\nTypes\n-----\n\n::\n\n from changeless.types import FancyHash, FancyModel, ImmutableHash, ImmutableModel\n\nFancy Types take a dict object and replaces the dereferencing operator\n([]) with the dot operator. So the object\n\n::\n\n an_obj= FancyHash({\"name\":\"me\"}) \n\nwill allow us to retrieve the attribute 'name' with\n\n::\n\n print \"the object's name: \" + an_obj.name\n >the object's name: matt\n\nModel Types take a Django ORM QueueSet and converts it to a comparable\napi. This uses the Fancy type as a base after converting the QuerySet to\na dict. Foreign keys and many to many relationships are converted to\nnested dicts and lists of dicts(respectively) to aid in the objects\nbehaving as similarly as possible.\n\nNote that Model Types retrieve all of data at once which includes by\ndefault relationships directly adjacent. This might incur more queries\nthan expected. Choose your data carefully and scale back when necessary.\n\n- FancyHash(a\\_dictonary)\n- FancyModel(a\\_model, depth=1)\n- ImmutableHash(a\\_dictonary)\n- ImmutableModel(a\\_model, depth=1)\n\nJust pass the correct object into the type constructor to convert your\ndata.\n\nDecorators\n----------\n\n::\n\n from changeless.decorators import fancy_list\n\n @fancy_list\n def get_books():\n return Book.objects.all()\n\nPlace the following decorators before functions that return a Django ORM\nQueueSet to convert it to the correct changeless object. Decorators are\nthe preferred way to use the changeless library. Using the decorators\npromote readability by keeping the conversion away from the ORM call, as\nwell as providing an easy to way to turn the changeless conversion on\nand off. Notice that the \\_gen decorators will return a generator that\nwill lazily convert each object in the list. Generators may be more\nefficient for long lists.\n\n| The following generators are available.\n| \\* fancy\\_list \\* fancy\\_gen \\* immutable\\_list \\* immutable\\_gen\n\nFunctions\n---------\n\nI've found the following functions useful. ###fuzzyEquals### from\nchangeless.compare import fuzzyEquals\n\n::\n\n i_obj = FancyHash({\"name\":'test name', \n 'sub_dict':{'name':'sub name', 'attrib':'sub attr value'}\n })\n second_i_obj = FancyHash({\"name\":'test name', \n 'sub_dict':{'name':'sub name', 'attrib':'sub attr value' }})\n self.assertTrue( fuzzyEquals(\n i_obj,\n second_i_obj ))\n\nfuzzyEquals will find attributes that the changeless objects have in\ncommon and compare only that union. This also inspects nested\nrelationships for shared attributes. ###to\\_dict### from\nchangeless.methods import to\\_dict to\\_dict is the reverse conversion\nfrom a base fancy\\_object to its dictionary representation.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/Changeless/", "keywords": null, "license": "LICENSE.txt", "maintainer": null, "maintainer_email": null, "name": "changeless", "package_url": "https://pypi.org/project/changeless/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/changeless/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://pypi.python.org/pypi/Changeless/" }, "release_url": "https://pypi.org/project/changeless/0.1.27/", "requires_dist": null, "requires_python": null, "summary": "Making Immutable and stateless data structures", "version": "0.1.27" }, "last_serial": 839506, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "de22854b5638f16b24f2b503c288fd26", "sha256": "1e16331f00be7df2a5cafda8328cdef17d601da794679a6b4b4a8badafa39a52" }, "downloads": -1, "filename": "changeless-0.1.0.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "de22854b5638f16b24f2b503c288fd26", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 72771, "upload_time": "2013-07-30T18:19:54", "url": "https://files.pythonhosted.org/packages/61/90/dbbe4fb976f10f21bbece31c81a56bb208382d57d7d39ab79ba1c27b1bfa/changeless-0.1.0.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "2bbd1ca565758de031b69c5e2e2a7921", "sha256": "8d7d8c38f6002563725346ce70446b4eec918f061740f4dbc2611514f492999a" }, "downloads": -1, "filename": "changeless-0.1.0.tar.gz", "has_sig": false, "md5_digest": "2bbd1ca565758de031b69c5e2e2a7921", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6173, "upload_time": "2013-07-30T18:19:50", "url": "https://files.pythonhosted.org/packages/31/12/c964fc09c79d09d0a824d0c66c0c8c6854152f9797ac63ab4da3ec9a95c1/changeless-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e6982c96c85674d1ac077870b68f4191", "sha256": "e8f5500468b3142ef2c0e12ba97450a2ee3e21237512f99246b38f2e5ba76604" }, "downloads": -1, "filename": "changeless-0.1.1.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "e6982c96c85674d1ac077870b68f4191", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 72773, "upload_time": "2013-07-30T18:26:27", "url": "https://files.pythonhosted.org/packages/ad/be/38c2d07a0dfd169d2b9596dea08ba3486963abc458340eaa1768e9c85678/changeless-0.1.1.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "57aaa4235365a0b22773d7769f482056", "sha256": "6c6c85cd6a40dcdd7158d7c52beed4fd41baa481df0afe95f9813883823d4a45" }, "downloads": -1, "filename": "changeless-0.1.1.tar.gz", "has_sig": false, "md5_digest": "57aaa4235365a0b22773d7769f482056", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5969, "upload_time": "2013-07-30T18:26:24", "url": "https://files.pythonhosted.org/packages/19/e6/23284d499224a80e172d40e4820bfe8197877423bad169e9717e965df1cb/changeless-0.1.1.tar.gz" } ], "0.1.18": [ { "comment_text": "", "digests": { "md5": "be0b35b8817c5f5ffc250f2f09ae74e0", "sha256": "dc3aa961e546e5a57fe62c2a4c4c8dc953d47f16ff8bd7b650effcc42805d935" }, "downloads": -1, "filename": "changeless-0.1.18.linux-x86_64.exe", "has_sig": false, "md5_digest": "be0b35b8817c5f5ffc250f2f09ae74e0", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 74992, "upload_time": "2013-08-05T03:22:59", "url": "https://files.pythonhosted.org/packages/26/fe/db083b8057634e98231a3d8c43e87c24ca93e1b6fa8ff550da9353d96f90/changeless-0.1.18.linux-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "3e151782ddf8fc3c24116ccb5bdd3d9a", "sha256": "4e39dd70e83d7348fc320bd5b251bf7d5585e27ed2f330e352d4d52621a1fe7a" }, "downloads": -1, "filename": "changeless-0.1.18.tar.gz", "has_sig": false, "md5_digest": "3e151782ddf8fc3c24116ccb5bdd3d9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7143, "upload_time": "2013-08-05T03:22:57", "url": "https://files.pythonhosted.org/packages/7e/74/8c491cc95ab21919e3b749bc298c6a8878f6f28eafe8058a202eddb13048/changeless-0.1.18.tar.gz" } ], "0.1.19": [ { "comment_text": "", "digests": { "md5": "7043e95976c87b31eefc045b36fc9ff1", "sha256": "194e0985b160a30ef0fc9bf5c4553749ffb6f922bbfaf351b4a5f39281e0acf1" }, "downloads": -1, "filename": "changeless-0.1.19.linux-x86_64.exe", "has_sig": false, "md5_digest": "7043e95976c87b31eefc045b36fc9ff1", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75048, "upload_time": "2013-08-06T13:27:07", "url": "https://files.pythonhosted.org/packages/6d/57/587e41bff796fcc2ce2df418c159fc76aa39ff68422a2502904aa1ae844f/changeless-0.1.19.linux-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "def01ba74d8a9c2f3e02d86acae9058c", "sha256": "fd220bd34f57ed3d2746384c963b69f6984492a2aa39d4abfa79de1fe25e3305" }, "downloads": -1, "filename": "changeless-0.1.19.tar.gz", "has_sig": false, "md5_digest": "def01ba74d8a9c2f3e02d86acae9058c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7205, "upload_time": "2013-08-06T13:27:04", "url": "https://files.pythonhosted.org/packages/90/61/ee4dda559048ff94f713af3d6bbfe385c6903c1f8cc4a49c5622fc99d2fe/changeless-0.1.19.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "65121de3b4900f94e744e311d7c8ddec", "sha256": "7d3098f6101b689e8969a78506974a00bbcf98472f1f2cae2e8d32c3afa7bf6d" }, "downloads": -1, "filename": "changeless-0.1.2.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "65121de3b4900f94e744e311d7c8ddec", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 72884, "upload_time": "2013-07-31T13:45:31", "url": "https://files.pythonhosted.org/packages/24/6a/e4eb6a52d3318c2dbd339582a747c1bb6382b86fc1289cd2f1f76446a5e2/changeless-0.1.2.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "1812cc8330f65ba7a01c6717840484fb", "sha256": "d00771a76949d5139d58cd9f0554bdc3c6cc9193f09c2c483aad91241491a693" }, "downloads": -1, "filename": "changeless-0.1.2.tar.gz", "has_sig": false, "md5_digest": "1812cc8330f65ba7a01c6717840484fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5962, "upload_time": "2013-07-31T13:45:29", "url": "https://files.pythonhosted.org/packages/12/c2/7c24198ea43109022745efbf79342350b689ed93be88d9942a231a67a905/changeless-0.1.2.tar.gz" } ], "0.1.20": [ { "comment_text": "", "digests": { "md5": "299c4ee8be35723f72282726035eb789", "sha256": "87d5105cdf7e9153eb44243d9f17f2175a6356f3eef143443f63e19243632209" }, "downloads": -1, "filename": "changeless-0.1.20.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "299c4ee8be35723f72282726035eb789", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75059, "upload_time": "2013-08-10T16:43:40", "url": "https://files.pythonhosted.org/packages/d6/1b/aeb0d8d85f04c69c824f348f49888dccca1374cac9b8bef6a843d7caada1/changeless-0.1.20.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "1748a779e4e41b65bc72c69bd084d6b0", "sha256": "2f4b1bdf5616293f3409910493ea8d18b5a1fb5e6daf786d7725f930c1ca0f85" }, "downloads": -1, "filename": "changeless-0.1.20.tar.gz", "has_sig": false, "md5_digest": "1748a779e4e41b65bc72c69bd084d6b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7318, "upload_time": "2013-08-10T16:43:35", "url": "https://files.pythonhosted.org/packages/bf/d8/8417127d3bef8f5a89492fff6ad2737b56c406dab73d466db7fad8468661/changeless-0.1.20.tar.gz" } ], "0.1.22": [ { "comment_text": "", "digests": { "md5": "ce58e4cb3eb7389a14b9d1fad2c23337", "sha256": "7e83b76f2a3840381d52aa99a1ec618e1a4fb008f8a1d02af2021654641a7caa" }, "downloads": -1, "filename": "changeless-0.1.22.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "ce58e4cb3eb7389a14b9d1fad2c23337", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75482, "upload_time": "2013-08-11T04:17:53", "url": "https://files.pythonhosted.org/packages/e4/55/3bdc17ed79dd9f06c695d3366edf5901df075021defe5e771faa0de4496e/changeless-0.1.22.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "6d476b9ec65ed76eab256bb8e30bc45f", "sha256": "7c93d9fceb749d8a6d786b9834443539ff9deaec35cd8c08dba31035d2b25cc1" }, "downloads": -1, "filename": "changeless-0.1.22.tar.gz", "has_sig": false, "md5_digest": "6d476b9ec65ed76eab256bb8e30bc45f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7789, "upload_time": "2013-08-11T04:17:48", "url": "https://files.pythonhosted.org/packages/ec/47/cea044e1084760608313efc9777ff02ea438ba0eaf5e6538e594a05cde66/changeless-0.1.22.tar.gz" } ], "0.1.23": [ { "comment_text": "", "digests": { "md5": "a7a278bf750fdbe51d13d146f6b509d7", "sha256": "ef6e97f82d198f92e17d9f7c5add3da3fd7f2477d0d8242051525deb6da080a1" }, "downloads": -1, "filename": "changeless-0.1.23.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "a7a278bf750fdbe51d13d146f6b509d7", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75457, "upload_time": "2013-08-12T02:31:36", "url": "https://files.pythonhosted.org/packages/27/74/a6e69227e5a7f5d2ff24a125464d0e7bc385339ab38f99274a2b74c23077/changeless-0.1.23.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "e83ab59fde929b2b7c769198346de1d1", "sha256": "0a670050523ea394abe9a3f735e5d4d2509d95f2e8eebe29eb292b6591129cb8" }, "downloads": -1, "filename": "changeless-0.1.23.tar.gz", "has_sig": false, "md5_digest": "e83ab59fde929b2b7c769198346de1d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7770, "upload_time": "2013-08-12T02:31:30", "url": "https://files.pythonhosted.org/packages/c5/d4/62dcfa33dfbdc835fc57ce4801eeb31316d1333cc52288932a2959c49297/changeless-0.1.23.tar.gz" } ], "0.1.24": [ { "comment_text": "", "digests": { "md5": "2069b5fb7734b00c2277d8c65c7027e3", "sha256": "779a20fe861e4e3d5fdf32e23c1228937923031f6ad7d72e5d25ab00b3e61cda" }, "downloads": -1, "filename": "changeless-0.1.24.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "2069b5fb7734b00c2277d8c65c7027e3", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75705, "upload_time": "2013-08-12T03:23:47", "url": "https://files.pythonhosted.org/packages/7a/67/09164f4509cf701e525c79d52093f426e9a3794b085aa18489138ae95d35/changeless-0.1.24.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "cbb8ba558260bd6a3ddfacdd5b1ed10b", "sha256": "6963c5399d993c1da60ecea689e37a53a13ec8a4e4d4fbfc00e38874ecfda9fb" }, "downloads": -1, "filename": "changeless-0.1.24.tar.gz", "has_sig": false, "md5_digest": "cbb8ba558260bd6a3ddfacdd5b1ed10b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7984, "upload_time": "2013-08-12T03:23:42", "url": "https://files.pythonhosted.org/packages/f3/8d/0489ed6d0c403a77798c522c705481a158c2b97b658bc4244a54fe4cfd9a/changeless-0.1.24.tar.gz" } ], "0.1.25": [ { "comment_text": "", "digests": { "md5": "e670f1b8e22b49aa99d7585ebc89f485", "sha256": "a354fb8cf8b9439631bae74230fd27101f3b462d07004e33de29e7e5337459db" }, "downloads": -1, "filename": "changeless-0.1.25.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "e670f1b8e22b49aa99d7585ebc89f485", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75778, "upload_time": "2013-08-12T03:56:34", "url": "https://files.pythonhosted.org/packages/27/dd/2fdff8abfcb2d1bf28638d703e8f6be8e5dacf7c0fc5c63df5e9c77835fd/changeless-0.1.25.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "ab794a370d109658b82133d0e783df4d", "sha256": "2cd9d00491a1aebd2e9121d7470fa03bb11c056ba3f890acac9a064404444d24" }, "downloads": -1, "filename": "changeless-0.1.25.tar.gz", "has_sig": false, "md5_digest": "ab794a370d109658b82133d0e783df4d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8055, "upload_time": "2013-08-12T03:56:30", "url": "https://files.pythonhosted.org/packages/ff/5e/9856b93dd85f8c06b8fe895eb1152088ea16fc0cc70076bc883ff8c735e7/changeless-0.1.25.tar.gz" } ], "0.1.26": [ { "comment_text": "", "digests": { "md5": "784966478e0fe9381941ba5020077f7c", "sha256": "14f76067445fcffc0eb30dc6e620bdfd4ac1d54f392663119c627c72ec08cdf9" }, "downloads": -1, "filename": "changeless-0.1.26.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "784966478e0fe9381941ba5020077f7c", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 76242, "upload_time": "2013-08-14T01:50:27", "url": "https://files.pythonhosted.org/packages/bf/19/4e94b1359199d01b829fef89efb885aad6df2c1d8956e510be51a141f885/changeless-0.1.26.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "f8951b779e5ce0b56c161b02db31f5c7", "sha256": "7d0d6b98bb57e5cc66eb41014ed9fc9b1b29feb16fcb3c7aacdcf9b18e4dc25f" }, "downloads": -1, "filename": "changeless-0.1.26.tar.gz", "has_sig": false, "md5_digest": "f8951b779e5ce0b56c161b02db31f5c7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8222, "upload_time": "2013-08-14T01:50:22", "url": "https://files.pythonhosted.org/packages/0d/4b/3afdbec7b3815218a50475247e3620460b0dec50aa65dd219c74c47c5d31/changeless-0.1.26.tar.gz" } ], "0.1.27": [ { "comment_text": "", "digests": { "md5": "11580c5d9113410ec78d54dc37fdf8bd", "sha256": "e9f5066bf041f24bc6b5f79cdb916428a772b7499c1557a50c698e1ab7eecd83" }, "downloads": -1, "filename": "changeless-0.1.27.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "11580c5d9113410ec78d54dc37fdf8bd", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 76265, "upload_time": "2013-08-14T02:14:54", "url": "https://files.pythonhosted.org/packages/27/d2/09be3ba6ca6db2ce0cd1a0e5085da2309b26752a5d69600eaf577bf48d4d/changeless-0.1.27.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "849aa231e2f8bb271250639d17ea4bfa", "sha256": "0e9692626ce16f903fd4cba86b78863501290b8604bfef5d47a5b5ab137579ed" }, "downloads": -1, "filename": "changeless-0.1.27.tar.gz", "has_sig": false, "md5_digest": "849aa231e2f8bb271250639d17ea4bfa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8232, "upload_time": "2013-08-14T02:14:50", "url": "https://files.pythonhosted.org/packages/bb/84/d666621dfca8bc406193202ba1ab7cb2c75d93e006feb1197d72b65f92a4/changeless-0.1.27.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "177d96a6fa0264696a123910ce1dc9c5", "sha256": "8c3fa9ecd9d95ac426e68fc4f92b1492207f33622e17e4df7444900f3a704b29" }, "downloads": -1, "filename": "changeless-0.1.3.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "177d96a6fa0264696a123910ce1dc9c5", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 72884, "upload_time": "2013-07-31T16:22:59", "url": "https://files.pythonhosted.org/packages/a2/a1/9de50581b0080be23ae985855cac6b4779707382e77fb0340171a0869ffa/changeless-0.1.3.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "afc1daccd2c4488ba591e07afe3733b9", "sha256": "54a9f8124969f050ebc1c67e2ab6350ffbc9918ec4e3991b282e4182a58ecb49" }, "downloads": -1, "filename": "changeless-0.1.3.tar.gz", "has_sig": false, "md5_digest": "afc1daccd2c4488ba591e07afe3733b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6170, "upload_time": "2013-07-31T16:22:42", "url": "https://files.pythonhosted.org/packages/fe/d9/24b9f92f301857dcf0fb0c239444df7eca97b4a25abcc3c919516ec54af6/changeless-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "3ee0f69a65550388be19d9ba4831bdfd", "sha256": "45d943dce39d60dd0af0642ad14c941d681a900cf14c8399e70b714783301a16" }, "downloads": -1, "filename": "changeless-0.1.4.macosx-10.5-x86_64.exe", "has_sig": false, "md5_digest": "3ee0f69a65550388be19d9ba4831bdfd", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 75107, "upload_time": "2013-08-01T21:51:57", "url": "https://files.pythonhosted.org/packages/ee/a5/7efe6c8c9d2f0392a638e21f202263544d9c5581574f986e4c159d9734ac/changeless-0.1.4.macosx-10.5-x86_64.exe" }, { "comment_text": "", "digests": { "md5": "01d7b643b29aee27053fd90e00d7035f", "sha256": "d2b77f3ac659a803a6b616b99402c6576e902394bb5af7f787b622f82c436461" }, "downloads": -1, "filename": "changeless-0.1.4.tar.gz", "has_sig": false, "md5_digest": "01d7b643b29aee27053fd90e00d7035f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7211, "upload_time": "2013-08-01T21:51:54", "url": "https://files.pythonhosted.org/packages/0b/10/5a888cbcf52a5b13f19a5886b633b04a8a0dd3143fb5c6c20191e5f5bb81/changeless-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "11580c5d9113410ec78d54dc37fdf8bd", "sha256": "e9f5066bf041f24bc6b5f79cdb916428a772b7499c1557a50c698e1ab7eecd83" }, "downloads": -1, "filename": "changeless-0.1.27.macosx-10.8-intel.exe", "has_sig": false, "md5_digest": "11580c5d9113410ec78d54dc37fdf8bd", "packagetype": "bdist_wininst", "python_version": "any", "requires_python": null, "size": 76265, "upload_time": "2013-08-14T02:14:54", "url": "https://files.pythonhosted.org/packages/27/d2/09be3ba6ca6db2ce0cd1a0e5085da2309b26752a5d69600eaf577bf48d4d/changeless-0.1.27.macosx-10.8-intel.exe" }, { "comment_text": "", "digests": { "md5": "849aa231e2f8bb271250639d17ea4bfa", "sha256": "0e9692626ce16f903fd4cba86b78863501290b8604bfef5d47a5b5ab137579ed" }, "downloads": -1, "filename": "changeless-0.1.27.tar.gz", "has_sig": false, "md5_digest": "849aa231e2f8bb271250639d17ea4bfa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8232, "upload_time": "2013-08-14T02:14:50", "url": "https://files.pythonhosted.org/packages/bb/84/d666621dfca8bc406193202ba1ab7cb2c75d93e006feb1197d72b65f92a4/changeless-0.1.27.tar.gz" } ] }