{ "info": { "author": "Xiaoqiang Wang", "author_email": "xiaoqiang.wang@psi.ch", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3" ], "description": "caffi\n=====\n\ncaffi is the Channel Access Foreign Function Interface.\nIt uses `CFFI `_ to call EPICS channel access library.\n\nThis package provides direct low level interface to channel access, alike the C API.\n\n**Note**: cffi `commit 9fe2a9e `_ contains an important fix to the\nfrequent hangup on Windows 64bit Python 3. That means until cffi 1.11 is released, one should patch manually.\n\n\nInstall\n-------\nEPICS dynamic libraries have been shipped with the package for Windows, Linux and macOS.\nBut if the environment variables *EPICS_BASE* and *EPICS_HOST_ARCH* are set on macOS and Linux,\nthose libraries under path ``${EPICS_BASE}/lib/${EPICS_HOST_ARCH}`` will be used.\n\nEither use *pip*,\n::\n\n $ pip install caffi\n\nor checkout source code from the git repository,\n::\n\n $ git clone https://github.com/CaChannel/caffi.git\n $ cd caffi\n $ python setup.py install\n\n\nPackage\n-------\n\nRPM\n^^^\nThe SPEC file *python-caffi.spec* is included. Get the source tarball either from PyPI\nor create it by `python setup.py sdist`, and run::\n\n $ rpmbuild -ta caffi-1.0.0.tar.gz\n\nThe binary and source RPM will be created. The package name is *python-caffi*.\n\nAnaconda\n^^^^^^^^\nThe recipe is included.::\n\n $ conda build conda-recipe\n\n\nDocuments\n---------\nLatest documents are hosted at `Read the Dcos `_.\n\n\nExample\n-------\n\n::\n\n import caffi.ca as ca\n\n status = ca.create_context()\n assert status == ca.ECA.NORMAL\n\n status, chid = ca.create_channel('catest')\n assert status == ca.ECA.NORMAL\n\n status = ca.pend_io(3)\n assert status == ca.ECA.NORMAL\n\n status = ca.put(chid, 123)\n status = ca.flush_io()\n\n status, value = ca.get(chid)\n assert status == ca.ECA.NORMAL\n\n status = ca.pend_io(3)\n assert status == ca.ECA.NORMAL\n\n assert value.get() == 123", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/CaChannel/caffi", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "caffi", "package_url": "https://pypi.org/project/caffi/", "platform": "Windows", "project_url": "https://pypi.org/project/caffi/", "project_urls": { "Homepage": "https://github.com/CaChannel/caffi" }, "release_url": "https://pypi.org/project/caffi/1.0.2/", "requires_dist": null, "requires_python": "", "summary": "Channel Access Foreign Function Interface", "version": "1.0.2" }, "last_serial": 3271971, "releases": { "0.9": [ { "comment_text": "", "digests": { "md5": "4684be051e89ec241ea0d89113f34df0", "sha256": "55fe96da92cfb01da14f30824bddfe155be94aa21f6e568b600b65679483c7ce" }, "downloads": -1, "filename": "caffi-0.9.tar.gz", "has_sig": false, "md5_digest": "4684be051e89ec241ea0d89113f34df0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1142996, "upload_time": "2014-05-22T20:39:48", "url": "https://files.pythonhosted.org/packages/a8/35/e065f251c41c6636f93767e9dc890824df008f54b0894b9a7c62a71075b1/caffi-0.9.tar.gz" } ], "0.99": [ { "comment_text": "", "digests": { "md5": "ed3376725f3902563bcab43a3fe98d2c", "sha256": "14555fd0b061940c567b98a860812df14d0515eb7aaca1973ff9ca5bb1725d2b" }, "downloads": -1, "filename": "caffi-0.99.tar.gz", "has_sig": false, "md5_digest": "ed3376725f3902563bcab43a3fe98d2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3362081, "upload_time": "2014-08-12T12:41:29", "url": "https://files.pythonhosted.org/packages/d9/3f/c2ef8a0610d02d543d1d1c9e9007dfa993931f06cc1167f52270748250b9/caffi-0.99.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "d58c4de168577f6972b2fe90ae31fcd6", "sha256": "4b7838389e80aaccb60b8cc7e626ed6c6455a8f91c8507beda683b35acd40261" }, "downloads": -1, "filename": "caffi-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d58c4de168577f6972b2fe90ae31fcd6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3101355, "upload_time": "2017-04-06T15:04:31", "url": "https://files.pythonhosted.org/packages/b3/42/8aeb13cf1ab12048c89b85d6c286814fcd5d551c03fdbafc66ad0a308533/caffi-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "59a0f0ee987f9d462161386d41e1b3da", "sha256": "b9cde5a2883b7db95d1c5410a8ad2df11ff60e172249f116e0516424411bf789" }, "downloads": -1, "filename": "caffi-1.0.0.tar.gz", "has_sig": false, "md5_digest": "59a0f0ee987f9d462161386d41e1b3da", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3094584, "upload_time": "2017-04-06T15:04:29", "url": "https://files.pythonhosted.org/packages/f4/1d/4a094fd9f24718869d1a78fd208d9bb951417549fd12f854c806e1a446e0/caffi-1.0.0.tar.gz" } ], "1.0.0b3": [ { "comment_text": "", "digests": { "md5": "e7f6e053551db90c55ba3389b5ca7242", "sha256": "2b5521a3915bd2a0aa61233930f125528ecf1afb6890255ffab845150630f720" }, "downloads": -1, "filename": "caffi-1.0.0b3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e7f6e053551db90c55ba3389b5ca7242", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3100480, "upload_time": "2017-03-30T07:48:10", "url": "https://files.pythonhosted.org/packages/cd/36/54a6af65badd47b95051ee63fb661c998d03d2fe00166ba2678172f091b8/caffi-1.0.0b3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d12e078e1fb51847cadc07da985daa25", "sha256": "7e6680da3aca05c4963e12b5a3ddfbcec355973ea103bbb62c3528e31dfa53d4" }, "downloads": -1, "filename": "caffi-1.0.0b3.tar.gz", "has_sig": false, "md5_digest": "d12e078e1fb51847cadc07da985daa25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3093207, "upload_time": "2017-03-30T07:48:07", "url": "https://files.pythonhosted.org/packages/cc/d8/e22f4ddf4e9e9cc0e4b505b791baf89df528eff4d03ee4adb4229522f9bf/caffi-1.0.0b3.tar.gz" } ], "1.0.0rc1": [ { "comment_text": "", "digests": { "md5": "20a836fdc1829e63981c6cf0974de8f2", "sha256": "80612d396e73e1d50ebbe43ea16e246c579c01e3431312f66d7612907aaa15f9" }, "downloads": -1, "filename": "caffi-1.0.0rc1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "20a836fdc1829e63981c6cf0974de8f2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3101405, "upload_time": "2017-04-04T09:04:59", "url": "https://files.pythonhosted.org/packages/10/ab/159959f1cc94c70eaada29c12d1e4b8a956d08468e8d8a86e54fb2198a74/caffi-1.0.0rc1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "106cfffcd4525a7837bd9f970490e737", "sha256": "aa92be186b031b9ebe9f73495f53755b4a5060d8a136de998dfc2b6c248b2c60" }, "downloads": -1, "filename": "caffi-1.0.0rc1.tar.gz", "has_sig": false, "md5_digest": "106cfffcd4525a7837bd9f970490e737", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3094589, "upload_time": "2017-04-04T09:04:54", "url": "https://files.pythonhosted.org/packages/ed/b4/506c911ea7f61f187adfab607e70d855ed6bed8283c07d4a3c27207654f3/caffi-1.0.0rc1.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "28a794bb8ea298e87abb4f516504c1fd", "sha256": "7d14397ce8d716053866bfc6ab9e10d6215173acff4073c9a360252574c48e02" }, "downloads": -1, "filename": "caffi-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "28a794bb8ea298e87abb4f516504c1fd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3101373, "upload_time": "2017-05-19T08:00:58", "url": "https://files.pythonhosted.org/packages/44/d2/103bb8cde41ef88927e7f44fd38886b826123bfaba121cf4598f99e72eed/caffi-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "435a6d6ebacd5c0c8c16ba8a2478c1c6", "sha256": "cddd08f652c67ce0f5d66c08b31d34c5f1e64650072895abd159900270a01a3e" }, "downloads": -1, "filename": "caffi-1.0.1.tar.gz", "has_sig": false, "md5_digest": "435a6d6ebacd5c0c8c16ba8a2478c1c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3094549, "upload_time": "2017-05-19T08:00:55", "url": "https://files.pythonhosted.org/packages/c0/08/58ad947292e001ebc18d97956a800a511122259d6cb63940dc47f3fdc83b/caffi-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "5ca868b1d61f1e95063a66faffc9a1ff", "sha256": "2d7e22fd84d5b7f6f06796dfa51b628af652ada2301c80fd30891c18336aa48f" }, "downloads": -1, "filename": "caffi-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5ca868b1d61f1e95063a66faffc9a1ff", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3101373, "upload_time": "2017-10-23T12:28:52", "url": "https://files.pythonhosted.org/packages/48/66/4068e00359ef940fecd5121a5f98e4e9e2b3f80b68c0b0609ad07380d16c/caffi-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5717ade25f4c26048eab89b794cf8f42", "sha256": "352edff831920e06a1170c5c71ce9146022b7d1f3fa0afe50303ee4579e647a5" }, "downloads": -1, "filename": "caffi-1.0.2.tar.gz", "has_sig": false, "md5_digest": "5717ade25f4c26048eab89b794cf8f42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3094585, "upload_time": "2017-10-23T12:28:46", "url": "https://files.pythonhosted.org/packages/60/5e/268c7a4af7d8592b0b343242b96ddadb760d4bb27c7cfb56db5bc879d29f/caffi-1.0.2.tar.gz" } ], "1.0b2": [ { "comment_text": "", "digests": { "md5": "a675bde5462c02326a76276848db7576", "sha256": "0f1e9b992297da7fc26ce5797f044182ec3b344a6ad1c084ddad40f0184af4c6" }, "downloads": -1, "filename": "caffi-1.0b2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a675bde5462c02326a76276848db7576", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3375800, "upload_time": "2017-03-08T11:14:45", "url": "https://files.pythonhosted.org/packages/5d/fc/13f27b06c46ad2cc08556a34ab014a18dc3c01a66fcdcc02612c4ac74bc5/caffi-1.0b2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "88b855ee02e22d04c02f98a2bd91fa40", "sha256": "6685ade6aea9b1fe32561621a7b55a28758960a122a1f33892a317a56bfc1965" }, "downloads": -1, "filename": "caffi-1.0b2.tar.gz", "has_sig": false, "md5_digest": "88b855ee02e22d04c02f98a2bd91fa40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3362092, "upload_time": "2017-03-08T11:14:42", "url": "https://files.pythonhosted.org/packages/c1/dc/5ddf80dc6ed073c83bc6f09f14d9313996b5e63ea667e567697872870d39/caffi-1.0b2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5ca868b1d61f1e95063a66faffc9a1ff", "sha256": "2d7e22fd84d5b7f6f06796dfa51b628af652ada2301c80fd30891c18336aa48f" }, "downloads": -1, "filename": "caffi-1.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5ca868b1d61f1e95063a66faffc9a1ff", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3101373, "upload_time": "2017-10-23T12:28:52", "url": "https://files.pythonhosted.org/packages/48/66/4068e00359ef940fecd5121a5f98e4e9e2b3f80b68c0b0609ad07380d16c/caffi-1.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5717ade25f4c26048eab89b794cf8f42", "sha256": "352edff831920e06a1170c5c71ce9146022b7d1f3fa0afe50303ee4579e647a5" }, "downloads": -1, "filename": "caffi-1.0.2.tar.gz", "has_sig": false, "md5_digest": "5717ade25f4c26048eab89b794cf8f42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3094585, "upload_time": "2017-10-23T12:28:46", "url": "https://files.pythonhosted.org/packages/60/5e/268c7a4af7d8592b0b343242b96ddadb760d4bb27c7cfb56db5bc879d29f/caffi-1.0.2.tar.gz" } ] }