# Brightway2 speedups
A series of function written in [Cython](http://cython.org/) that speed up critical functions to improve the overall performance of the [Brightway2 life cycle assessment framework](https://brightwaylca.org).
In order to avoid having to have Cython as a dependency, this library includes both the `pyx` and Cython-generated `c` code, and is distributed as pre-compiled [wheels](https://pypi.python.org/pypi/wheel), except on Linux where access to a `C` compiler is assumed.
## Building `C` files
cython -t bw2speedups/_consolidate.pyx bw2speedups/_indexer.pyx bw2speedups/_find_first.pyx
## Building shared libraries
Although you can do this inplace, in my experience it is easier to just install the library in a temporary environment. You don't want to deal with `.so` files in the source repository.
## Testing
Install the library into a temporary environment, then manually run the separate test files, i.e. `python bw2speedupds/test/test_consolidate.py`. This isn't the most elegant, but it will do for now.
## Building wheels
pip install wheel
python setup.py bdist_wheel
Note that this has to be done separately for each OS and environment, i.e. Windows 32-bit and 64-bit versions of Python are separate wheels, even with the same version of Windows.
Raw data
{
"_id": null,
"home_page": "https://github.com/brightway-lca/brightway2-speedups",
"name": "bw2speedups",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Chris Mutel",
"author_email": "cmutel@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/7f/2b/c6aa6503c3bde62bf0917b780a91a7e6ecc604968d4c9d64f3c20f5d5f24/bw2speedups-3.1.tar.gz",
"platform": null,
"description": "# Brightway2 speedups\n\nA series of function written in [Cython](http://cython.org/) that speed up critical functions to improve the overall performance of the [Brightway2 life cycle assessment framework](https://brightwaylca.org).\n\nIn order to avoid having to have Cython as a dependency, this library includes both the `pyx` and Cython-generated `c` code, and is distributed as pre-compiled [wheels](https://pypi.python.org/pypi/wheel), except on Linux where access to a `C` compiler is assumed.\n\n## Building `C` files\n\n cython -t bw2speedups/_consolidate.pyx bw2speedups/_indexer.pyx bw2speedups/_find_first.pyx\n\n## Building shared libraries\n\nAlthough you can do this inplace, in my experience it is easier to just install the library in a temporary environment. You don't want to deal with `.so` files in the source repository.\n\n## Testing\n\nInstall the library into a temporary environment, then manually run the separate test files, i.e. `python bw2speedupds/test/test_consolidate.py`. This isn't the most elegant, but it will do for now.\n\n## Building wheels\n\n pip install wheel\n python setup.py bdist_wheel\n\nNote that this has to be done separately for each OS and environment, i.e. Windows 32-bit and 64-bit versions of Python are separate wheels, even with the same version of Windows.\n",
"bugtrack_url": null,
"license": "",
"summary": "Cython functions to speed up Brightway2 LCA calculations",
"version": "3.1",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7f2bc6aa6503c3bde62bf0917b780a91a7e6ecc604968d4c9d64f3c20f5d5f24",
"md5": "a34e7181fe8b064cbe41a6ca3497539c",
"sha256": "bb2adaf0b83355a73de86b88206fca1a1dadad9362918cd739f74a775a79cd74"
},
"downloads": -1,
"filename": "bw2speedups-3.1.tar.gz",
"has_sig": false,
"md5_digest": "a34e7181fe8b064cbe41a6ca3497539c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 154504,
"upload_time": "2023-04-26T12:23:23",
"upload_time_iso_8601": "2023-04-26T12:23:23.385212Z",
"url": "https://files.pythonhosted.org/packages/7f/2b/c6aa6503c3bde62bf0917b780a91a7e6ecc604968d4c9d64f3c20f5d5f24/bw2speedups-3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-04-26 12:23:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "brightway-lca",
"github_project": "brightway2-speedups",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "bw2speedups"
}