{"id":13468607,"url":"https://github.com/joblib/joblib","last_synced_at":"2025-05-12T13:06:13.513Z","repository":{"id":1054058,"uuid":"654608","full_name":"joblib/joblib","owner":"joblib","description":"Computing with Python functions.","archived":false,"fork":false,"pushed_at":"2025-05-05T12:17:10.000Z","size":4514,"stargazers_count":4059,"open_issues_count":414,"forks_count":432,"subscribers_count":62,"default_branch":"main","last_synced_at":"2025-05-12T13:05:58.442Z","etag":null,"topics":["caching","memoization","multiprocessing","parallel-computing","python","threading"],"latest_commit_sha":null,"homepage":"http://joblib.readthedocs.org","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joblib.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2010-05-07T06:48:26.000Z","updated_at":"2025-05-11T13:15:36.000Z","dependencies_parsed_at":"2023-07-05T20:16:26.154Z","dependency_job_id":"517e9d0d-32b9-4026-9d94-6fbc9ff41ee1","html_url":"https://github.com/joblib/joblib","commit_stats":{"total_commits":1410,"total_committers":143,"mean_commits":9.86013986013986,"dds":0.7184397163120567,"last_synced_commit":"e02400a41b8bef0688865ff379ea13f3f7cb4f3b"},"previous_names":[],"tags_count":86,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joblib%2Fjoblib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joblib%2Fjoblib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joblib%2Fjoblib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joblib%2Fjoblib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joblib","download_url":"https://codeload.github.com/joblib/joblib/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253745151,"owners_count":21957317,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["caching","memoization","multiprocessing","parallel-computing","python","threading"],"created_at":"2024-07-31T15:01:14.805Z","updated_at":"2025-05-12T13:06:13.481Z","avatar_url":"https://github.com/joblib.png","language":"Python","readme":"|PyPi| |CIStatus| |ReadTheDocs| |Codecov|\n\n.. |PyPi| image:: https://badge.fury.io/py/joblib.svg\n   :target: https://badge.fury.io/py/joblib\n   :alt: Joblib version\n\n.. |CIStatus| image:: https://github.com/joblib/joblib/actions/workflows/test.yml/badge.svg\n   :target: https://github.com/joblib/joblib/actions/workflows/test.yml?query=branch%3Amain\n   :alt: CI status\n\n.. |ReadTheDocs| image:: https://readthedocs.org/projects/joblib/badge/?version=latest\n    :target: https://joblib.readthedocs.io/en/latest/?badge=latest\n    :alt: Documentation Status\n\n.. |Codecov| image:: https://codecov.io/gh/joblib/joblib/branch/main/graph/badge.svg\n   :target: https://codecov.io/gh/joblib/joblib\n   :alt: Codecov coverage\n\n\nThe homepage of joblib with user documentation is located on:\n\nhttps://joblib.readthedocs.io\n\nGetting the latest code\n=======================\n\nTo get the latest code using git, simply type::\n\n    git clone https://github.com/joblib/joblib.git\n\nIf you don't have git installed, you can download a zip\nof the latest code: https://github.com/joblib/joblib/archive/refs/heads/main.zip\n\nInstalling\n==========\n\nYou can use `pip` to install joblib from any directory::\n\n    pip install joblib\n\nor install it in editable mode from the source directory::\n\n    pip install -e .\n\nDependencies\n============\n\n- Joblib has no mandatory dependencies besides Python (supported versions are\n  3.9+).\n- Joblib has an optional dependency on Numpy (at least version 1.6.1) for array\n  manipulation.\n- Joblib includes its own vendored copy of\n  `loky \u003chttps://github.com/tomMoral/loky\u003e`_ for process management.\n- Joblib can efficiently dump and load numpy arrays but does not require numpy\n  to be installed.\n- Joblib has an optional dependency on\n  `python-lz4 \u003chttps://pypi.python.org/pypi/lz4\u003e`_ as a faster alternative to\n  zlib and gzip for compressed serialization.\n- Joblib has an optional dependency on psutil to mitigate memory leaks in\n  parallel worker processes.\n- Some examples require external dependencies such as pandas. See the\n  instructions in the `Building the docs`_ section for details.\n\nWorkflow to contribute\n======================\n\nTo contribute to joblib, first create an account on `github\n\u003chttps://github.com/\u003e`_. Once this is done, fork the `joblib repository\n\u003chttps://github.com/joblib/joblib\u003e`_ to have your own repository,\nclone it using ``git clone``. Make your changes in a branch of your clone, push\nthem to your github account, test them locally, and when you are happy with\nthem, send a pull request to the main repository.\n\nYou can use `pre-commit \u003chttps://pre-commit.com/#install\u003e`_ to run code style checks\nbefore each commit::\n\n    pip install pre-commit\n    pre-commit install\n\npre-commit checks can be disabled for a single commit with::\n\n    git commit -n\n\nRunning the test suite\n======================\n\nTo run the test suite, you need the pytest (version \u003e= 3) and coverage modules.\nRun the test suite using::\n\n    pytest joblib\n\nfrom the root of the project.\n\nBuilding the docs\n=================\n\nTo build the docs you need to have sphinx (\u003e=1.4) and some dependencies\ninstalled::\n\n    pip install -U -r .readthedocs-requirements.txt\n\nThe docs can then be built with the following command::\n\n    make doc\n\nThe html docs are located in the ``doc/_build/html`` directory.\n\n\nMaking a source tarball\n=======================\n\nTo create a source tarball, eg for packaging or distributing, run the\nfollowing command::\n\n    pip install build\n    python -m build --sdist\n\nThe tarball will be created in the `dist` directory. This command will create\nthe resulting tarball that can be installed with no extra dependencies than the\nPython standard library.\n\nMaking a release and uploading it to PyPI\n=========================================\n\nThis command is only run by project manager, to make a release, and\nupload in to PyPI::\n\n    pip install build\n    python -m build --sdist --wheel\n    twine upload dist/*\n\n\nNote that the documentation should automatically get updated at each git\npush. If that is not the case, try building th doc locally and resolve\nany doc build error (in particular when running the examples).\n\nUpdating the changelog\n======================\n\nChanges are listed in the CHANGES.rst file. They must be manually updated\nbut, the following git command may be used to generate the lines::\n\n    git log --abbrev-commit --date=short --no-merges --sparse\n","funding_links":[],"categories":["Python","Distributed Computing","Basic Components","Linear Algebra / Statistics Toolkit","Uncategorized","数据管道和流处理","🐍 Python","Data Pipelines \u0026 Streaming"],"sub_categories":["Computation","General Purpose Tensor Library","Uncategorized","Useful Python Tools for Data Analysis"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoblib%2Fjoblib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoblib%2Fjoblib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoblib%2Fjoblib/lists"}