{"id":28440275,"url":"https://github.com/haxefoundation/neko","last_synced_at":"2025-10-06T21:51:54.985Z","repository":{"id":1070878,"uuid":"10280120","full_name":"HaxeFoundation/neko","owner":"HaxeFoundation","description":"The Neko Virtual Machine","archived":false,"fork":false,"pushed_at":"2025-07-05T17:13:50.000Z","size":19003,"stargazers_count":572,"open_issues_count":35,"forks_count":110,"subscribers_count":39,"default_branch":"master","last_synced_at":"2025-07-05T18:43:30.043Z","etag":null,"topics":["interpreter","neko","virtual-machine"],"latest_commit_sha":null,"homepage":"https://nekovm.org","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HaxeFoundation.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES","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":"2013-05-25T05:37:50.000Z","updated_at":"2025-07-05T17:13:54.000Z","dependencies_parsed_at":"2023-02-16T22:31:34.617Z","dependency_job_id":"e4a50601-a3af-46f8-961d-17b3d7b8beab","html_url":"https://github.com/HaxeFoundation/neko","commit_stats":{"total_commits":2443,"total_committers":40,"mean_commits":61.075,"dds":"0.20261972984036025","last_synced_commit":"8e9ff1e385131160812ebbd1d4e7aa219627b4b0"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"purl":"pkg:github/HaxeFoundation/neko","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaxeFoundation%2Fneko","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaxeFoundation%2Fneko/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaxeFoundation%2Fneko/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaxeFoundation%2Fneko/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HaxeFoundation","download_url":"https://codeload.github.com/HaxeFoundation/neko/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaxeFoundation%2Fneko/sbom","scorecard":{"id":61609,"data":{"date":"2025-08-11","repo":{"name":"github.com/HaxeFoundation/neko","commit":"c7361721ee283dc922e550fd384b13b74e0e9a79"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.2,"checks":[{"name":"Maintained","score":2,"reason":"1 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":6,"reason":"Found 18/30 approved changesets -- score normalized to 6","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":"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":"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/main.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":"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":"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":"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/main.yml:170: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:205: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:221: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:224: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:230: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:254: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:270: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:276: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:304: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:316: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:319: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:325: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:331: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:337: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:343: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:348: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:353: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:70: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:99: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:138: update your workflow using https://app.stepsecurity.io/secureworkflow/HaxeFoundation/neko/main.yml/master?enable=pin","Info:   0 out of  21 GitHub-owned GitHubAction 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":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"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":"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":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2-4-1 not signed: https://api.github.com/repos/HaxeFoundation/neko/releases/212469841","Warn: release artifact v2-4-0 not signed: https://api.github.com/repos/HaxeFoundation/neko/releases/166006467","Warn: release artifact v2-4-0-rc-1 not signed: https://api.github.com/repos/HaxeFoundation/neko/releases/163191564","Warn: release artifact v2-4-0-rc not signed: https://api.github.com/repos/HaxeFoundation/neko/releases/163071528","Warn: release artifact v2-3-0 not signed: https://api.github.com/repos/HaxeFoundation/neko/releases/20957089","Warn: release artifact v2-4-1 does not have provenance: https://api.github.com/repos/HaxeFoundation/neko/releases/212469841","Warn: release artifact v2-4-0 does not have provenance: https://api.github.com/repos/HaxeFoundation/neko/releases/166006467","Warn: release artifact v2-4-0-rc-1 does not have provenance: https://api.github.com/repos/HaxeFoundation/neko/releases/163191564","Warn: release artifact v2-4-0-rc does not have provenance: https://api.github.com/repos/HaxeFoundation/neko/releases/163071528","Warn: release artifact v2-3-0 does not have provenance: https://api.github.com/repos/HaxeFoundation/neko/releases/20957089"],"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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 19 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"}},{"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"}}]},"last_synced_at":"2025-08-15T01:49:49.546Z","repository_id":1070878,"created_at":"2025-08-15T01:49:49.546Z","updated_at":"2025-08-15T01:49:49.546Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278686638,"owners_count":26028325,"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-06T02:00:05.630Z","response_time":65,"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":["interpreter","neko","virtual-machine"],"created_at":"2025-06-06T03:39:22.079Z","updated_at":"2025-10-06T21:51:54.978Z","avatar_url":"https://github.com/HaxeFoundation.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"![NekoVM](https://cloud.githubusercontent.com/assets/576184/14234981/10528a0e-f9f1-11e5-8922-894569b2feea.png)\n\n[![CI](https://github.com/HaxeFoundation/neko/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/HaxeFoundation/neko/actions/workflows/main.yml)\n\n# Deprecated as of 2021-09-09\n\n**Neko is not actively maintained anymore.**\n\nWe keep it compatible with existing Haxe standard library and Haxe language features. But don't expect any new features in Neko itself and don't expect implementation of any new Haxe standard library API.\n\n# Neko Virtual Machine\n\nSee https://nekovm.org/\n\n## Snapshot Builds\n\nCompiled binaries can be found in the \"artifacts\" section in the summary of each [Github Actions build](https://github.com/HaxeFoundation/neko/actions?query=branch%3Amaster+is%3Asuccess).\n\nFor macOS, Neko snapshot of the latest master branch can be built using [homebrew](https://brew.sh/) in a single command: `brew install neko --HEAD`. It will install required dependencies, build, and install Neko to the system. The binaries can be found at `brew --prefix neko`. Use `brew reinstall neko --HEAD` to upgrade in the future.\n\n## Build instruction\n\nNeko can be built using CMake (version 3.x is recommended) and one of the C compilers listed as follows:\n\n * Windows: Visual Studio 2010 / 2013 / 2015 / 2017\n * Mac: XCode (with its \"Command line tools\")\n * Linux: gcc (can be obtained by installing the \"build-essential\" Debian/Ubuntu package)\n\nNeko needs to link with various third-party libraries, which are summarized as follows:\n\n| library / tool                          | OS          | Debian/Ubuntu package                                     |\n|-----------------------------------------|-------------|-----------------------------------------------------------|\n| Boehm GC                                | all         | libgc-dev                                                 |\n| OpenSSL                                 | all         | libssl-dev                                                |\n| pcre2                                   | all         | libpcre2-dev                                              |\n| zlib                                    | all         | zlib1g-dev                                                |\n| Apache 2.2 / 2.4, with apr and apr-util | all         | apache2-dev                                               |\n| MariaDB / MySQL (Connector/C)           | all         | libmariadb-client-lgpl-dev-compat (or libmysqlclient-dev) |\n| SQLite                                  | all         | libsqlite3-dev                                            |\n| mbed TLS                                | all         | libmbedtls-dev                                            |\n| GTK+3                                   | Linux       | libgtk-3-dev                                              |\n\nOn Windows, CMake will automatically download and build the libraries in the build folder during the build process. However, you need to install [Perl](https://www.activestate.com/activeperl) manually because OpenSSL needs it for configuration. On Mac/Linux, you should install the libraries manually to your system before building Neko, or use the `STATIC_DEPS` CMake option, which will be explained in [CMake options](#cmake-options).\n\n### Building on Mac/Linux\n\n```shell\n# make a build directory, and change to it\nmkdir build\ncd build\n\n# run cmake\ncmake ..\n\n# let's build, the outputs can be located in the \"bin\" directory\nmake\n\n# install it if you want\n# default installation prefix is /usr/local\nmake install\n```\n\n### Building on Windows\n\nBelow is the instructions of building Neko in a Visual Studio command prompt.\nYou may use the CMake GUI and Visual Studio to build it instead.\n\n```shell\n# make a build directory, and change to it\nmkdir build\ncd build\n\n# run cmake specifying the visual studio version you need\n# Visual Studio 12 2013, Visual Studio 14 2015, Visual Studio 15 2017\n# you can additionally specify platform via -A switch (x86, x64)\ncmake -G \"Visual Studio 12 2013\" ..\n\n# let's build, the outputs can be located in the \"bin\" directory\nmsbuild ALL_BUILD.vcxproj /p:Configuration=Release\n\n# install it if you want\n# default installation location is C:\\HaxeToolkit\\neko\nmsbuild INSTALL.vcxproj /p:Configuration=Release\n```\n\n### CMake options\n\nA number of options can be used to customize the build. They can be specified in the CMake GUI, or passed to `cmake` in command line as follows:\n\n```shell\ncmake \"-Doption=value\" ..\n```\n\n#### NDLLs\n\nSettings that allow to exclude libraries and their dependencies from the build; available on all platforms. By default all are `ON`:\n\n- `WITH_REGEXP` - Build Perl-compatible regex support\n- `WITH_UI` - Build GTK-3 UI support\n- `WITH_SSL` - Build SSL support\n- `WITH_MYSQL` - Build MySQL support\n- `WITH_SQLITE` - Build Sqlite support\n- `WITH_APACHE` - Build Apache modules\n\n#### `STATIC_DEPS`\n\nDefault value: `all` for Windows, `none` otherwise\n\nIt defines the dependencies that should be linked statically. Can be `all`, `none`, or a list of library names (e.g. `BoehmGC;Zlib;OpenSSL;MariaDBConnector;pcre2;SQLite3;APR;APRutil;Apache;MbedTLS`).\n\nCMake will automatically download and build the specified dependencies into the build folder. If a library is not present in this list, it should be installed manually, and it will be linked dynamically.\n\nAll third-party libraries, except GTK+3 (Linux) and BoehmGC on Windows, can be linked statically. We do not support statically linking GTK+3 due to the difficulty of building it and its own dependencies. Additionally, we do not support statically linking the BoehmGC library on Windows systems.\n\n#### `RELOCATABLE`\n\nAvailable on Mac/Linux. Default value: `ON`\n\nSet RPATH to `$ORIGIN` (Linux) / `@executable_path` (Mac). It allows the resulting Neko VM executable to locate libraries (e.g. \"libneko\" and ndll files) in its local directory, such that the libraries need not be installed to \"/usr/lib\" or \"/usr/local/lib\".\n\n#### `NEKO_JIT_DISABLE`\n\nDefault `OFF`.\n\nDisable Neko JIT. By default, Neko JIT will be enabled for platforms it supports. Setting this to `ON` disable JIT for all platforms.\n\n#### `NEKO_JIT_DEBUG`\n\nDefault `OFF`.\n\nDebug Neko JIT.\n\n#### `RUN_LDCONFIG`\n\nAvailable on Linux. Default value: `ON`\n\nWhether to run `ldconfig` automatically after `make install`. It is for refreshing the shared library cache such that \"libneko\" can be located correctly by the Neko VM.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxefoundation%2Fneko","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaxefoundation%2Fneko","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxefoundation%2Fneko/lists"}