{"id":13606520,"url":"https://github.com/apache/incubator-toree","last_synced_at":"2025-10-09T10:33:29.962Z","repository":{"id":3357325,"uuid":"49190360","full_name":"apache/incubator-toree","owner":"apache","description":"Mirror of Apache Toree (Incubating)","archived":false,"fork":false,"pushed_at":"2025-09-23T17:36:11.000Z","size":11447,"stargazers_count":746,"open_issues_count":15,"forks_count":225,"subscribers_count":46,"default_branch":"master","last_synced_at":"2025-10-06T00:36:44.867Z","etag":null,"topics":["toree"],"latest_commit_sha":null,"homepage":null,"language":"Scala","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2016-01-07T08:00:06.000Z","updated_at":"2025-09-23T17:36:17.000Z","dependencies_parsed_at":"2024-09-30T01:21:09.302Z","dependency_job_id":"922501f7-5f38-4029-8476-f852a22d1108","html_url":"https://github.com/apache/incubator-toree","commit_stats":{"total_commits":1083,"total_committers":115,"mean_commits":9.417391304347825,"dds":0.8781163434903048,"last_synced_commit":"82aaf23c73cc0e4bf2b533f7028e74a3f400ca52"},"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/apache/incubator-toree","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-toree","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-toree/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-toree/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-toree/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/incubator-toree/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Fincubator-toree/sbom","scorecard":{"id":201459,"data":{"date":"2025-08-11","repo":{"name":"github.com/apache/incubator-toree","commit":"75073e65a6d8b63db768620d3a264470a65d0575"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.8,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":8,"reason":"Found 23/27 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/apache/incubator-toree/build.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/apache/incubator-toree/build.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/apache/incubator-toree/build.yml/master?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:19: pin your Docker image by updating andrewosh/binder-base to andrewosh/binder-base@sha256:eabde24f4c55174832ed8795faa40cea62fc9e2a4a9f1ee1444f8a2e4f9710ee","Warn: containerImage not pinned by hash: Dockerfile.toree-dev:20: pin your Docker image by updating jupyter/all-spark-notebook to jupyter/all-spark-notebook@sha256:b63bae2d9d34779ac969deeb4834efd838991f77269ca9a76bf6b0d1f8678d29","Warn: downloadThenRun not pinned by hash: Dockerfile:24-26","Warn: npmCommand not pinned by hash: Dockerfile:24-26","Warn: pipCommand not pinned by hash: Dockerfile:86","Info:   0 out of   2 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned","Info:   0 out of   1 npmCommand dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/apache/.github/.github/SECURITY.md:1","Info: Found linked content: github.com/apache/.github/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/apache/.github/.github/SECURITY.md:1","Info: Found text in security policy: github.com/apache/.github/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 28 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-16T22:54:46.449Z","repository_id":3357325,"created_at":"2025-08-16T22:54:46.449Z","updated_at":"2025-08-16T22:54:46.449Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001268,"owners_count":26083040,"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","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["toree"],"created_at":"2024-08-01T19:01:09.881Z","updated_at":"2025-10-09T10:33:29.935Z","avatar_url":"https://github.com/apache.png","language":"Scala","funding_links":[],"categories":["Jupyter Kernels","Jupyter内核","Packages"],"sub_categories":["Middleware"],"readme":"\u003c!--\n    Licensed to the Apache Software Foundation (ASF) under one\n    or more contributor license agreements.  See the NOTICE file\n    distributed with this work for additional information\n    regarding copyright ownership.  The ASF licenses this file\n    to you under the Apache License, Version 2.0 (the\n    \"License\"); you may not use this file except in compliance\n    with the License.  You may obtain a copy of the License at\n\n      http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing,\n    software distributed under the License is distributed on an\n    \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n    KIND, either express or implied.  See the License for the\n    specific language governing permissions and limitations\n    under the License.\n--\u003e\n\n[![Build Status][build-badge]][build-url]\n[![License][license-badge]][license-url]\n[![Join the chat at https://gitter.im/apache/toree][gitter-badge]][gitter-url]\n\u003c!--\n[![Binder](http://mybinder.org/badge.svg)](http://mybinder.org/repo/apache/incubator-toree)\n--\u003e\n\n[Apache Toree][website]\n============\nApache Toree is a [Juypter Notebook](https://jupyter.org/) kernel. The main goal of Toree is to provide the foundation for\ninteractive applications that connect to and use [Apache Spark][1] using Scala language.\n\nOverview\n========\nToree provides an interface that allows clients to interact with a Spark Cluster. Clients can send libraries and\nsnippets of code that are interpreted and executed using a preconfigured Spark context.\nThese snippets can do a variety of things:\n 1. Define and run spark jobs of all kinds\n 2. Collect results from spark and push them to the client\n 3. Load necessary dependencies for the running code\n 4. Start and monitor a stream\n 5. ...\n\nApache Toree supports the `Scala` programming language. It implements the latest Jupyter message protocol (5.0),\nso it can easily plug into the latest releases of Jupyter/IPython (3.2.x+ and up) for quick, interactive data exploration.\n\n\u003c!--\nTry It\n======\nA version of Toree is deployed as part of the [Try Jupyter!][try-jupyter] site. Select `Apache Toree - Scala` under\nthe `New` dropdown. Note that this version only supports `Scala`.\n--\u003e\n\nDevelop\n=======\nThis project uses `make` as the entry point for build, test, and packaging. To perform a local build, you need to\ninstall `sbt`, `jupyter/ipython`, and other development requirements locally on your machine.\n\nTo build and interact with Toree using Jupyter, run\n```\nmake dev\n```\n\nThis will start a Jupyter notebook server. Depending on your mode, it will be accessible at `http://localhost:8888` or `http://192.168.44.44:8888`. From here you can create notebooks that use Toree configured for Spark local mode.\n\nTests can be run by doing `make test`.\n\n\u003e\u003e NOTE: Do not use `sbt` directly.\n\nBuild \u0026 Package\n===============\nTo build and package up Toree, run\n```\nmake release\n```\n\nThis results in 2 packages.\n\n- `./dist/toree-\u003cVERSION\u003e-binary-release.tar.gz` is a simple package that contains JAR and executable\n- `./dist/toree-\u003cVERSION\u003e.tar.gz` is a `pip` installable package that adds Toree as a Jupyter kernel.\n\nNOTE: `make release` uses `docker`. Please refer to `docker` installation instructions for your system.\n\nRun Examples\n============\nTo play with the example notebooks, run\n```\nmake jupyter\n```\n\nA notebook server will be launched in a `Docker` container with Toree and some other dependencies installed.\nRefer to your `Docker` setup for the ip address. The notebook will be at `http://\u003cip\u003e:8888/`.\n\nInstall\n=======\nThis requires you to have a distribution of Apache Spark downloaded to the system where Apache Toree will run. The following commands will install Apache Toree.\n```\npip install --upgrade toree\njupyter toree install --spark_home=\u003cYOUR_SPARK_PATH\u003e\n```\nDev snapshots of Toree are located at https://dist.apache.org/repos/dist/dev/incubator/toree. To install using one\nof those packages, you can use the following:\n```\npip install \u003cPIP_RELEASE_URL\u003e\njupyter toree install --spark_home=\u003cYOUR_SPARK_PATH\u003e\n```\nwhere `PIP_RELEASE_URL` is one of the `pip` packages. For example:\n\n```\npip install https://dist.apache.org/repos/dist/dev/incubator/toree/0.2.0/snapshots/dev1/toree-pip/toree-0.2.0.dev1.tar.gz\njupyter toree install --spark_home=\u003cYOUR_SPARK_PATH\u003e\n```\n\nReporting Issues\n================\nRefer to and open issue [here][issues]\n\nCommunication\n=============\nYou can reach us through [gitter][gitter-url] or our [mailing list][mail-list]\n\nVersion\n=======\nWe are working on publishing binary releases of Toree soon. As part of our move into Apache Incubator, Toree will start a new version sequence starting at `0.1`.\n\nOur goal is to keep `master` up to date with the latest version of Spark. When new versions of Spark require specific code changes to Toree, we will branch out older Spark version support.\n\nAs it stands, we maintain several branches for legacy versions of Spark. The table below shows what is available now.\n\nBranch                       | Apache Spark Version\n---------------------------- | --------------------\n[master][master]             | 3.x.x\n[0.4.x][0.4.x]               | 2.x.x\n[0.1.x][0.1.x]               | 1.6+\n\nPlease note that for the most part, new features will mainly be added to the `master` branch.\n\nResources\n=========\n\nWe are currently enhancing our documentation, which is available in our [website][documentation].\n\n[1]: https://spark.apache.org/\n\n[website]: https://toree.apache.org\n[documentation]: https://toree.apache.org/docs/current/user/quick-start/\n[issues]: https://issues.apache.org/jira/browse/TOREE\n[build-badge]: https://github.com/apache/incubator-toree/actions/workflows/build.yml/badge.svg\n[build-url]: https://github.com/apache/incubator-toree/actions/workflows/build.yml\n[license-badge]: https://img.shields.io/badge/License-Apache%202-blue.svg?style=flat\n[license-url]: LICENSE\n[gitter-badge]: https://badges.gitter.im/Join%20Chat.svg\n[gitter-url]: https://gitter.im/apache/toree\n[try-jupyter]: https://try.jupyter.org\n[mail-list]: mailto:dev@toree.apache.org\n\n[master]: https://github.com/apache/incubator-toree\n[0.1.x]: https://github.com/apache/incubator-toree/tree/0.1.x\n[0.4.x]: https://github.com/apache/incubator-toree/tree/0.4.x\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fincubator-toree","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Fincubator-toree","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Fincubator-toree/lists"}