{ "info": { "author": "Denys Duchier", "author_email": "denys.duchier@univ-orleans.fr", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", "Programming Language :: C++", "Programming Language :: Cython", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "==========================================\ngecode-python - Gecode bindings for Python\n==========================================\n\nRequirements\n============\n\n * Python 2.6, 2.7, or 3.2\n * Gecode >= 3.6.0\n\nInstallation\n============\n\nsee also file INSTALL for easier/alternative installation methods.\n\nTo install globally:\n\n python setup.py install\n\nor to install in your home directory:\n\n python setup.py install --prefix $HOME\n\nwhich would install the package under ~/lib/python2.7/site-packages (if using\nversion 2.7 of Python). If you install in your home, you also need to adjust\nenvironment variable PYTHONPATH to search in $HOME/python2.7 and\n$HOME/python2.7/site-packages.\n\nIf Gecode is installed in a non standard location, before you can build and\ninstall, you need to adjust environment variables CXXFLAGS, LDFLAGS, and\nLD_LIBRARY_PATH.\n\nDocumentation\n=============\n\nThere are many constants in the gecode package. It is probably easiest to\nimport everything:\n\n from gecode import *\n\nIntSet\n~~~~~~\n\nintset(int,int)\nintset(SPEC)\n returns an IntSet for the corresponding domain. SPEC is a list of ints and\n pairs of ints (interval). It might be tempting to simply represent an\n intset as a list of specs, but this would be ambiguous with IntArgs which,\n here, are represented as lists of ints.\n\nSpace\n~~~~~\n\nspace()\n this function creates a Space.\n\nVariables\n~~~~~~~~~\n\nUnlike in Gecode, variable objects are not bound to a specific Space. Each one\nactually contains an index with which it is possible to access a Space-bound\nGecode variable. Variables can be created using the following methods of a\nSpace:\n\nSpace.intvar(int,int)\nSpace.intvar(IntSet)\n returns an IntVar initialized with the corresponding domain.\n\nSpace.boolvar()\n returns a BoolVar initialized with the domain [0,1]\n\nSpace.setvar(int glbMin, int glbMax, int lubMin, int lubMax, int cardMin=MIN, int cardMax=MAX)\nSpace.setvar(int glbMin, int glbMax, IntSet lub, int cardMin=MIN, int cardMax=MAX)\nSpace.setvar(IntSet glb, int lubMin, int lubMax, int cardMin=MIN, int cardMax=MAX)\nSpace.setvar(IntSet glb, IntSet lub, int cardMin=MIN, int cardMax=MAX)\n returns a SetVar initialized with the corresponding domain.\n\nSpace.intvars(int N, ...)\nSpace.boolvars(int N)\nSpace.setvars(int N, ...)\n returns a list of N variables initialized with the domain as stipulated by\n the remaining arguments \"...\".\n\nAn advantage of non Space-bound variables, is that you can use them both to\npost constraints in the original space AND to consult their values in\nsolutions. Below are Space methods for looking up information about variables.\nEach of these methods can either take a variable as argument, or a list (or\ntuple) of variables, and returns resp. either a value, or a list of values:\n\nSpace.assigned(X)\n returns True if variable X is assigned (determined) in the Space, False\n otherwise.\n\nSpace.min(X)\nSpace.max(X)\nSpace.med(X)\nSpace.val(X)\nSpace.size(X)\nSpace.width(X)\nSpace.regret_min(X)\nSpace.regret_max(X)\n These can be used for both IntVars and BoolVars and have the same meaning\n as in Gecode.\n\nSpace.ranges(IntVar)\nSpace.values(IntVar)\n Return resp. a list of pairs and a list of ints representing the domain of\n the argument variable.\nSpace.values(BoolVar)\n same for boolean variables.\n\nSpace.glbSize(SetVar)\nSpace.lubSize(SetVar)\nSpace.unknownSize(SetVar)\nSpace.cardMin(SetVar)\nSpace.cardMax(SetVar)\nSpace.lubMin(SetVar)\nSpace.lubMax(SetVar)\nSpace.glbMin(SetVar)\nSpace.glbMax(SetVar)\n These can be used for SetVars and have the same meaning as in Gecode.\n\nSpace.glbRanges(SetVar)\nSpace.lubRanges(SetVar)\nSpace.unknownRanges(SetVar)\n These return lists of pairs of ints representing the corresponding set\n bounds.\n\nSpace.glbValues(SetVar)\nSpace.lubValues(SetVar)\nSpace.unknownValues(SetVar)\n These return lists of ints representing the corresponding set bounds.\n\nSpace.keep(Var)\nSpace.keep(Vars)\n Variables can be marked as \"kept\". In this case, only such variables\n will be explicitly copied during search. This could bring substantial\n benefits in memory usage. Of course, in a solution, you can then only\n look at variables that have been \"kept\". If no variable is marked as\n \"kept\", then they are all kept. Thus marking variables as \"kept\" is\n purely an optimization.\n\nSpace.status()\n returns the status of the space\nSpace.choice()\n returns a Choice object\nSpace.commit(Choice c, int a)\n commits the space to alternative a in Choice object c\nSpace.constrain(Space sol)\n constrain the space to be better than solution sol\n\nChoice\n~~~~~~\n\nChoice.alternatives()\n returns the number of alternatives in this Choice object\n\nSearch\n~~~~~~\n\nSpace.search(restart=False, threads=None, c_d=None, a_d=None,\n statistics=None, memory_limit=-1, node_limit=-1, fail_limit=-1,\n time_limit=-1)\n returns an iterator of solutions. Each solution is a Space.\n The restart option selects the Restart search engine, but only if an\n optimization criterion has been specified. The threads option selects\n and controls the parallel variant of the search engine. The c_d and a_d\n options control recomputation.\n\n If provided, statistics should be an object whose attributes (propagate,\n wmp, fail, node, depth, memory) are cumulatively updated after each\n iteration (i.e. after each implicit call to next to search for a next\n solution).\n\n If one or more limit arguments are provided, then an appropriate stop\n object is created and will be used by the underlying search engine to\n stop the search when any given limit is exceeded.\n\nIn order to search for optimal solutions, it is necessary to indicate what\nneeds to be optimized:\n\nSpace.minimize(IntVar x)\nSpace.maximize(IntVar x)\n search for a solution minimizing (resp. maximizing) x.\nSpace.minimize(IntVar x,IntVar y)\nSpace.maximize(IntVar x,IntVar y)\n search for a solution minimizing (resp. maximizing) the ratio x/y.\n\nGist\n~~~~\n\nSpace.gist(onclick=None, threads=None, c_d=None, a_d=None)\n if your installation of Gecode has Gist support, then this will invoke it.\n onclick is an inspector or an iterable of inspectors. An inspector is\n a callable, or a class whose instances are callables, that has/have been\n specially annoted by a decorator:\n\n @inspector(\"My Inspector 1\")\n def show1(s2):\n print s2.values([X1,X2])\n\n Note that s2 is not necessarily a solution! You may also define a\n textinspector to show textual output in a graphical window:\n\n @textinspector(\"My Inspector 2\")\n def show2(s2):\n return \"X1=%s X2=%s\" % s2.values([X1,X2])\n\n A textinspector must return a string.\n\nBound Variables\n~~~~~~~~~~~~~~~\n\nA bound variable is essentially a pair of a non-bound variable and a Space.\n\nIntVal.__call__(Space)\nBoolVar.__call__(Space)\nSetVar.__call__(Space)\n a bound variable can be created by applying a non-bound variable to a\n Space.\n\nSpace.bind(X)\n returns a bound variable for X, bound to this space; if X is a list of\n variables, this returns a list of bound variables.\n\nConstants\n~~~~~~~~~\n\nAll constants used in Gecode are available with the same names in these\nbindings.\n\nConstraints\n~~~~~~~~~~~\n\nIn Gecode, all constraints take a space as first argument. In these bindings,\nall constraints are methods of Space. Everywhere Gecode would use an XXXArgs\nargument, here, you should simply use a list (or tuple) of XXX. All gecode\nconstraints are available (except \"extensional\", which are not yet\nimplemented). All branchings are available except those with parameters that\nrequire additional implementation in C++. Please refer to the Gecode\ndocumentation.\n\nHalf-Reification\n~~~~~~~~~~~~~~~~\n\nStarting with version 4.0.0 Gecode also supports half-reification. Full\nreification is C <-> B; half-reification is C -> B (resp. C <- B). Where\npreviously B, a BoolVar, was supplied, now a reification spec is also accepted:\n\nReify(B,RM_EQV) is for full reification (C <-> B)\nReify(B,RM_IMP) is for half reification (C -> B)\nReify(B,RM_PMI) is for half reification (C <- B)\n\nDISJUNCTORS\n~~~~~~~~~~~\n\nDisjunctors are an experimental extension to Gecode implemented by the\ngecode-python bindings. They provide support for disjunctions of clauses,\nwhere each clause is a conjunction of constraints:\n\n C1 or C2 or ... or Cn\n\nEach clause is executed \"speculatively\": this means it does not affect the main\nspace. When a clause becomes failed, it is discarded. When only one clause\nremains, it is committed: this means that it now affects the main space.\n\nExample:\n\nConsider the problem where either X=Y=0 or X=Y+(1 or 2) for variable X and Y\nthat take values in 0..3.\n\n s = space()\n x,y = s.intvars(2,0,3),\n\nFirst, we must create a disjunctor as a manager for our 2 clauses:\n\n d = s.disjunctor()\n\nWe can now create our first clause:\n\n c1 = d.clause()\n\nThis clause wants to constrain x and y to 0. However, since it must be\nexecuted \"speculatively\", it must operate on new variables x1 and y1 that\nshadow x and y:\n\n x1,y1 = c1.intvars(2,0,3)\n c1.forward([x,y],[x1,y1])\n\nThe forward(...) stipulation indicates which global variable is shadowed by\nwhich clause-local variable. Now we can post the speculative clause-local\nconstraints for X=Y=0:\n\n c1.rel(x1,IRT_EQ,0),\n c1.rel(y1,IRT_EQ,0),\n\nWe now create the second clause which uses x2 and y2 to shadow x and y:\n\n c2 = d.clause()\n x2,y2 = c2.intvars(2,0,3)\n c2.forward([x,y],[x2,y2])\n\nHowever, this clause also needs a clause-local variable z2 taking values 1 or\n2 in order to post the clause-local constraint x2=y2+z2:\n\n z2 = c2.intvar(1,2)\n c2.linear([-1,1,1],[x2,y2,z2],IRT_EQ,0)\n\nFinally, we can branch and search:\n\n s.branch([x,y],INT_VAR_SIZE_MIN,INT_VAL_MIN)\n for sol in s.search():\n print sol.val([x,y])\n\ngecode.fsa\n~~~~~~~~~~\n\nThis module provides support for building finite state automata for use in the\nextensional constraint. It exports the class FSA for creating arbitrary finite\nstate automata explicitly (see help(gecode.fsa)), and the object RE for\ncreating automata using regular expressions.\n\nREGULAR EXPRESSIONS:\n\nRE()\t\tempty regular expression\nRE(x)\t\tregular expression matching integer x\nRE(x,y)\t\tregular expression matching integers in [x,y]\nr1>>r2\t\tsequential composition\nr1|r2\t\tparallel composition (disjunction)\nr.OPT\t\tmatches an optional r\nr.STAR\t\tmatches r 0 or more times\nr.PLUS\t\tmatches r 1 or more times\nr.REPEAT(n)\tmatches r at least n times\nr.REPEAT(n,m)\tmatches r at least n times and at most m times\n\ngecode.domain\n~~~~~~~~~~~~~\n\nThis module provides support for coding finite domains of values using\nintegers. It exports the class Domain.\n\nDomain([v0,...,vN])\n create a domain for these values\n\nsee help(gecode.domain) for further documentation.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://launchpad.net/gecode-python", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "gecode-python", "package_url": "https://pypi.org/project/gecode-python/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/gecode-python/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://launchpad.net/gecode-python" }, "release_url": "https://pypi.org/project/gecode-python/0.27/", "requires_dist": null, "requires_python": null, "summary": "bindings for the Gecode constraint-programming library", "version": "0.27" }, "last_serial": 792304, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "97e0f15a1ab16a0e4efc404d35c11ea7", "sha256": "bdde17550246b2e7e8d149e326633204e63cda495580cd6dc1c3577a9d431e4d" }, "downloads": -1, "filename": "gecode-python-0.1.tar.gz", "has_sig": false, "md5_digest": "97e0f15a1ab16a0e4efc404d35c11ea7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22574, "upload_time": "2011-08-05T20:54:55", "url": "https://files.pythonhosted.org/packages/c8/53/e59d3985bf221042da52fede82cf54178581db65703827d9942894b46b50/gecode-python-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "7b02fefaf405d36c8e3ba15a5f769cd3", "sha256": "e0d2013864bb451411db83872f17208c6d6634f7e53c9e00787937e45fb03348" }, "downloads": -1, "filename": "gecode-python-0.10.tar.gz", "has_sig": false, "md5_digest": "7b02fefaf405d36c8e3ba15a5f769cd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24039, "upload_time": "2011-09-06T21:56:44", "url": "https://files.pythonhosted.org/packages/ff/b1/00a590dc881e07d82dee1fe6583e0eb2d78693548aab679264f64d8686b0/gecode-python-0.10.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "f77723bd551c79cfecb0821ce43b8ac1", "sha256": "b538c6ca936fc9ff7b524a301fc5deb0cda34ba09f3b784610e52333e880defc" }, "downloads": -1, "filename": "gecode-python-0.11.tar.gz", "has_sig": false, "md5_digest": "f77723bd551c79cfecb0821ce43b8ac1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24178, "upload_time": "2011-09-07T09:24:21", "url": "https://files.pythonhosted.org/packages/84/ab/ef69ba4e3802370a1da92bc266ebbdfb90c939b8ccbc3fe9f096917020b6/gecode-python-0.11.tar.gz" } ], "0.12": [ { "comment_text": "", "digests": { "md5": "f779779e98e9ab4b25548079ba7ae4b8", "sha256": "b4cb9beff6fd2c6f03d1e5d0e9be96e3a5bcdd675c993c8f9c42b50e1951da3c" }, "downloads": -1, "filename": "gecode-python-0.12.tar.gz", "has_sig": false, "md5_digest": "f779779e98e9ab4b25548079ba7ae4b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24234, "upload_time": "2011-09-08T15:08:06", "url": "https://files.pythonhosted.org/packages/ec/26/a43a8d4719801d52ccaba9eae90d8f4cbf1b66746e1fb6df38cbe90b0511/gecode-python-0.12.tar.gz" } ], "0.13": [ { "comment_text": "", "digests": { "md5": "05df9a68dbe85707ca650d0dcc87dfcd", "sha256": "2de06a6f41500b97ed9038afec47e3b4f07102daf7d90ed74e9de0999922bb88" }, "downloads": -1, "filename": "gecode-python-0.13.tar.gz", "has_sig": false, "md5_digest": "05df9a68dbe85707ca650d0dcc87dfcd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24283, "upload_time": "2011-09-09T17:52:58", "url": "https://files.pythonhosted.org/packages/55/3e/09ff88d42d183e15826ad121c68ba4aa9e4a4354417acbdae19ef36a9792/gecode-python-0.13.tar.gz" } ], "0.14": [ { "comment_text": "", "digests": { "md5": "872f0417786ca5f52f68ba858b6a0350", "sha256": "7c43fce60d6cd43546fec83af5e7931572d3e6e05f01959845016111fe52208e" }, "downloads": -1, "filename": "gecode-python-0.14.tar.gz", "has_sig": false, "md5_digest": "872f0417786ca5f52f68ba858b6a0350", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 415456, "upload_time": "2011-09-20T22:05:06", "url": "https://files.pythonhosted.org/packages/fe/29/c99eadbe73fd7627d32f07ba4d5086005388944df6be855557dd4c2bac7a/gecode-python-0.14.tar.gz" } ], "0.15": [ { "comment_text": "", "digests": { "md5": "be428cbdc64b4b064d9aac5e8ce9ad44", "sha256": "1b5c40d5ff9205e524c9c93c2054669e5480abd11fa8102b4b83c7d5b0ab87c7" }, "downloads": -1, "filename": "gecode-python-0.15.tar.gz", "has_sig": false, "md5_digest": "be428cbdc64b4b064d9aac5e8ce9ad44", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 415478, "upload_time": "2011-09-21T22:42:03", "url": "https://files.pythonhosted.org/packages/04/e2/a1dd4db7794f84b0bb034ec01b8ec241a726df5e6749da58a7d3955eebfb/gecode-python-0.15.tar.gz" } ], "0.16": [ { "comment_text": "", "digests": { "md5": "9bc3e89e01a9c6f217583a8afa825ade", "sha256": "0a000f1bc116cfd9f85aa1f8224bd19c85eee26cdb08786542a89a670e6203ba" }, "downloads": -1, "filename": "gecode-python-0.16.tar.gz", "has_sig": false, "md5_digest": "9bc3e89e01a9c6f217583a8afa825ade", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 415495, "upload_time": "2011-09-23T22:20:00", "url": "https://files.pythonhosted.org/packages/17/67/63002fddd46e8e7bbe21a70d548a5f0e9d34fcc24198566f6d277efb797e/gecode-python-0.16.tar.gz" } ], "0.17": [ { "comment_text": "", "digests": { "md5": "51e8f538046f8b6ee92d446e8c14d63d", "sha256": "f47e4370c1a8524eff6b1c8f49356d43d6e9d1cee75927c7c20f6a8b25864d2e" }, "downloads": -1, "filename": "gecode-python-0.17.tar.gz", "has_sig": false, "md5_digest": "51e8f538046f8b6ee92d446e8c14d63d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 415497, "upload_time": "2011-09-23T22:25:39", "url": "https://files.pythonhosted.org/packages/3b/33/9c7cbe90bf9de4a82966af7761e099de8d133e7b584d815d55ed1094be1b/gecode-python-0.17.tar.gz" } ], "0.18": [ { "comment_text": "", "digests": { "md5": "7d15f27c2005acf7a50e8d1287147c14", "sha256": "b176c613bc07d05fbde69f5d011dcfa70eaea286692964493d8d202f2ab189ca" }, "downloads": -1, "filename": "gecode-python-0.18.tar.gz", "has_sig": false, "md5_digest": "7d15f27c2005acf7a50e8d1287147c14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 415288, "upload_time": "2011-09-28T13:20:22", "url": "https://files.pythonhosted.org/packages/eb/5a/b47d4ac3ea9f1865f8cc8ce44ae05eba714299efec8e7a5c2e0c9623bdc1/gecode-python-0.18.tar.gz" } ], "0.19": [ { "comment_text": "", "digests": { "md5": "6efc429e574b93f735d4bebde5121acc", "sha256": "18e05783cd1c5a70c196330b86e126bf28eab407f2b7b747bef56cfdf13a0444" }, "downloads": -1, "filename": "gecode-python-0.19.tar.gz", "has_sig": false, "md5_digest": "6efc429e574b93f735d4bebde5121acc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 416213, "upload_time": "2011-10-06T21:25:02", "url": "https://files.pythonhosted.org/packages/02/8c/558a8a4baa7e736edc6642cb1f63e69c588b346650d00fe557746189fb76/gecode-python-0.19.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "4d3fb9aef823ab4704dd4632deaae688", "sha256": "7ed9f57bc8a93d0c4cdba3a237e69b8620219fa859659bcad593b0c6e9530ca2" }, "downloads": -1, "filename": "gecode-python-0.2.tar.gz", "has_sig": false, "md5_digest": "4d3fb9aef823ab4704dd4632deaae688", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22603, "upload_time": "2011-08-05T21:13:10", "url": "https://files.pythonhosted.org/packages/80/0c/d9c797dd0bc2284002bc0d91ad01108ff6c5deaab4c3a299a2c158d3f926/gecode-python-0.2.tar.gz" } ], "0.20": [ { "comment_text": "", "digests": { "md5": "b165a890b144cfc9f7f708121fd83202", "sha256": "a3f3fbfa5f5c6adf57e9c60c8be372517a8bd8e656383b0164c7eae7e67ae544" }, "downloads": -1, "filename": "gecode-python-0.20.tar.gz", "has_sig": false, "md5_digest": "b165a890b144cfc9f7f708121fd83202", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 416120, "upload_time": "2011-10-13T14:19:07", "url": "https://files.pythonhosted.org/packages/1f/aa/cafc77680bb5d1e499725cb15ced1ff8d324bb6fc933dfafbc2f37faebc9/gecode-python-0.20.tar.gz" } ], "0.21": [ { "comment_text": "", "digests": { "md5": "3f36bd6e92da5c016871ea5ed610b7e2", "sha256": "9e58992b9a70c033117664537100c2ca41b2858612b8a8bb0ff663057bf16892" }, "downloads": -1, "filename": "gecode-python-0.21.tar.gz", "has_sig": false, "md5_digest": "3f36bd6e92da5c016871ea5ed610b7e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 621624, "upload_time": "2011-10-13T14:28:28", "url": "https://files.pythonhosted.org/packages/d1/89/d4791f5e2d3f1eee2b4b117f47cfbc9e220b855e5ba23020119887d0799a/gecode-python-0.21.tar.gz" } ], "0.22": [ { "comment_text": "", "digests": { "md5": "6c430d39d26d767d9f487f2e2b1f139f", "sha256": "467c0d9fd1341c0fe50a391bca113550a3b3cd7f792d28a35e5baca5aa516695" }, "downloads": -1, "filename": "gecode-python-0.22.tar.gz", "has_sig": false, "md5_digest": "6c430d39d26d767d9f487f2e2b1f139f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 652636, "upload_time": "2011-10-22T15:54:58", "url": "https://files.pythonhosted.org/packages/25/e6/fba332e6346efaf45dc8baabcc179791861ea5aa18e9d1abff8050c4128a/gecode-python-0.22.tar.gz" } ], "0.23": [ { "comment_text": "", "digests": { "md5": "dfc2ef1dca928274f71cdd63a742f4a7", "sha256": "b731253121c0c6005be4c2cf4d72d2a46e62afc80ca8fbd61eced9200f41ab99" }, "downloads": -1, "filename": "gecode-python-0.23.tar.gz", "has_sig": false, "md5_digest": "dfc2ef1dca928274f71cdd63a742f4a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 667660, "upload_time": "2011-10-27T15:41:52", "url": "https://files.pythonhosted.org/packages/d3/42/6581106da6e2235286a3d67c61ef40673371586ec0cf5441b27d71a666c7/gecode-python-0.23.tar.gz" } ], "0.26": [ { "comment_text": "", "digests": { "md5": "954044d51fd1d7622e9bae89eaa986e3", "sha256": "82e9189e941e967dbdbda1740dfc0a1283a07651221611ac1656ab9d93819828" }, "downloads": -1, "filename": "gecode-python-0.26.tar.gz", "has_sig": false, "md5_digest": "954044d51fd1d7622e9bae89eaa986e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1179255, "upload_time": "2012-02-28T21:47:27", "url": "https://files.pythonhosted.org/packages/31/5a/78a4455ac510f5797212d1e48dd53bd41250fbe26895a153fd9612665786/gecode-python-0.26.tar.gz" } ], "0.27": [ { "comment_text": "", "digests": { "md5": "b4c754484ea83582bade050abec2d095", "sha256": "9f63b840404d904a61eaa024ef509e0da7d1b865120a1a8e0dba2d379c526b1c" }, "downloads": -1, "filename": "gecode-python-0.27.tar.gz", "has_sig": false, "md5_digest": "b4c754484ea83582bade050abec2d095", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1409864, "upload_time": "2012-03-27T22:13:38", "url": "https://files.pythonhosted.org/packages/30/8d/2e5d2083dbe289bf355dd63409c86f6a4a14e37178592cfdb9a5e63f5fe1/gecode-python-0.27.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "0588ad0ce1093fe7cc41296043930b1d", "sha256": "d8ec6653a4dba7d811811b156eb4f791b10f5a52adeff4a1334bae8120ec9ac0" }, "downloads": -1, "filename": "gecode-python-0.3.tar.gz", "has_sig": false, "md5_digest": "0588ad0ce1093fe7cc41296043930b1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22600, "upload_time": "2011-08-05T21:22:25", "url": "https://files.pythonhosted.org/packages/8b/f2/4617947ddf7ea1e4f97b0759e5141ad02f50899e1cb03118d7dfc0536dc6/gecode-python-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "1525826f2a13b0feaaa390c9ea081386", "sha256": "f5c4142fa0bf8ec67d05229ebbacdc5872688541e023710125d1e35f226d5877" }, "downloads": -1, "filename": "gecode-python-0.4.tar.gz", "has_sig": false, "md5_digest": "1525826f2a13b0feaaa390c9ea081386", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21972, "upload_time": "2011-08-06T14:29:29", "url": "https://files.pythonhosted.org/packages/26/c1/e31b7c02e647f63299fcb662380f4223abf1580a57feff0bb2b8fff99d6e/gecode-python-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "ff79c986859ac37a7698efc7698ac937", "sha256": "12cd168b1cdc23524ab6e8ce30f570b44bbbc7ef63d1706bfd342bcdc9f8d16b" }, "downloads": -1, "filename": "gecode-python-0.5.tar.gz", "has_sig": false, "md5_digest": "ff79c986859ac37a7698efc7698ac937", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22597, "upload_time": "2011-08-08T16:50:47", "url": "https://files.pythonhosted.org/packages/f5/87/5f8189e3b3bfd7702e5da96b573049e63e696ff65d5a2afeca6137b566e0/gecode-python-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "d716cf1942423ffa40438bf71c6a3430", "sha256": "873304e25dbc2fc74e1919c01e4acd4ae806a9c1954661248006235eb794afe5" }, "downloads": -1, "filename": "gecode-python-0.6.tar.gz", "has_sig": false, "md5_digest": "d716cf1942423ffa40438bf71c6a3430", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23197, "upload_time": "2011-08-30T17:11:43", "url": "https://files.pythonhosted.org/packages/2d/bf/c66a1b6e3b4f10e71a23d6fa7a1ed9bdfc6f27dc370e59557114799c29a1/gecode-python-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "d4d3405563a316b2d80d3b178c558304", "sha256": "2e63156d2dabc0871e916f2463800c58bd461d73da2d0776e4a1998b84cc0498" }, "downloads": -1, "filename": "gecode-python-0.7.tar.gz", "has_sig": false, "md5_digest": "d4d3405563a316b2d80d3b178c558304", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26234, "upload_time": "2011-09-03T17:31:16", "url": "https://files.pythonhosted.org/packages/37/25/de81ea3e510158ca29a047042e38668bea3e716047cff6c505819cc8c2dc/gecode-python-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "c8470bc0aad96ed8e4ae0d70a4c0ad68", "sha256": "8b080b24dc821e74dc597320355ac75ea23acd47cc08153d4e6f276ab6887890" }, "downloads": -1, "filename": "gecode-python-0.8.tar.gz", "has_sig": false, "md5_digest": "c8470bc0aad96ed8e4ae0d70a4c0ad68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24029, "upload_time": "2011-09-06T21:37:38", "url": "https://files.pythonhosted.org/packages/44/3c/2b28cc95b24962bafe255f0dd8bc77941194f606179511a6a77d842e17e6/gecode-python-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "0e2153e5747b7e257b1567631ba67255", "sha256": "9d54c8e13c2b965fe242fc0e02b5bda8602aa1406a1cf3e4c90ce9f600ba6f55" }, "downloads": -1, "filename": "gecode-python-0.9.tar.gz", "has_sig": false, "md5_digest": "0e2153e5747b7e257b1567631ba67255", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24043, "upload_time": "2011-09-06T21:55:44", "url": "https://files.pythonhosted.org/packages/40/4a/0786b81b4635b92671913df18a3b82ceb84305d738a719cafeb4bc80f8c3/gecode-python-0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b4c754484ea83582bade050abec2d095", "sha256": "9f63b840404d904a61eaa024ef509e0da7d1b865120a1a8e0dba2d379c526b1c" }, "downloads": -1, "filename": "gecode-python-0.27.tar.gz", "has_sig": false, "md5_digest": "b4c754484ea83582bade050abec2d095", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1409864, "upload_time": "2012-03-27T22:13:38", "url": "https://files.pythonhosted.org/packages/30/8d/2e5d2083dbe289bf355dd63409c86f6a4a14e37178592cfdb9a5e63f5fe1/gecode-python-0.27.tar.gz" } ] }