{"id":15025260,"url":"https://github.com/ruedigermoeller/fast-serialization","last_synced_at":"2026-10-19T12:05:02.939Z","repository":{"id":12327285,"uuid":"14965048","full_name":"RuedigerMoeller/fast-serialization","owner":"RuedigerMoeller","description":"FST: fast java serialization drop in-replacement ","archived":false,"fork":false,"pushed_at":"2023-06-30T08:15:18.000Z","size":5364,"stargazers_count":1592,"open_issues_count":127,"forks_count":235,"subscribers_count":94,"default_branch":"master","last_synced_at":"2026-10-14T17:14:28.619Z","etag":null,"topics":["faster","java","json","offheap","serialization"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"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/RuedigerMoeller.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2013-12-05T20:36:00.000Z","updated_at":"2026-10-13T12:19:34.000Z","dependencies_parsed_at":"2023-01-13T16:53:55.489Z","dependency_job_id":"3ab79958-8299-48ca-8f12-4a17263fbc72","html_url":"https://github.com/RuedigerMoeller/fast-serialization","commit_stats":null,"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/RuedigerMoeller/fast-serialization","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RuedigerMoeller%2Ffast-serialization","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RuedigerMoeller%2Ffast-serialization/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RuedigerMoeller%2Ffast-serialization/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RuedigerMoeller%2Ffast-serialization/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RuedigerMoeller","download_url":"https://codeload.github.com/RuedigerMoeller/fast-serialization/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RuedigerMoeller%2Ffast-serialization/sbom","scorecard":{"id":123020,"data":{"date":"2025-08-11","repo":{"name":"github.com/RuedigerMoeller/fast-serialization","commit":"e8da5591daa09452791dcd992ea4f83b20937be7"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.5,"checks":[{"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":"Dangerous-Workflow","score":-1,"reason":"no workflows found","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":"Code-Review","score":3,"reason":"Found 7/19 approved changesets -- score normalized to 3","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":"Binary-Artifacts","score":5,"reason":"binaries present in source code","details":["Warn: binary detected: lib/jackson-core-2.5.3.jar:1","Warn: binary detected: lib/java-util-1.13.3.jar:1","Warn: binary detected: lib/javassist-3.19.0-GA.jar:1","Warn: binary detected: lib/junit-4.7.jar:1","Warn: binary detected: lib/objenesis-2.1.jar:1"],"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":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"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":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"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":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v2.52 not signed: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/7228203","Warn: release artifact 2.51 not signed: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/6915263","Warn: release artifact v2.50 not signed: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/6037078","Warn: release artifact v2.52 does not have provenance: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/7228203","Warn: release artifact 2.51 does not have provenance: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/6915263","Warn: release artifact v2.50 does not have provenance: https://api.github.com/repos/RuedigerMoeller/fast-serialization/releases/6037078"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 18 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":8,"reason":"2 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-h46c-h94j-95f3","Warn: Project is vulnerable to: GHSA-wf8f-6423-gfxg"],"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-16T02:57:06.804Z","repository_id":12327285,"created_at":"2025-08-16T02:57:06.805Z","updated_at":"2025-08-16T02:57:06.805Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38356448,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-19T02:00:06.414Z","response_time":53,"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":["faster","java","json","offheap","serialization"],"created_at":"2024-09-24T20:01:54.956Z","updated_at":"2026-10-19T12:05:01.307Z","avatar_url":"https://github.com/RuedigerMoeller.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"fast-serialization\n==================\n\n* up to 10 times faster 100% JDK Serialization compatible drop-in replacement (Ok, might be 99% ..). As an example: Lambda Serialization which came with 1.8 worked instantly.\n* Android compatible since version \u003e= 2.17 (use ```FSTConfiguration.createAndroidDefaultConfiguration()``` both on server and client side. The configuration object has to be passed into FSTObjectIn/Output constructors)\n* OffHeap Maps, Persistent OffHeap maps\n* FSTStructs is very similar to IBM's packed objects. Difference is: You can run it with Oracle JDK today.\n* optionally en/decode any Serializable object graph to JSON (incl. shared references) (since 2.29) for interop\n* Apache 2.0 license since 2.17\n\n### Docs:\n\n[Fast JDK-compatible Serialization](https://github.com/RuedigerMoeller/fast-serialization/wiki/Serialization)\n\n[Json Serialization](https://github.com/RuedigerMoeller/fast-serialization/wiki/JSON-serialization)\n\n[OffHeap + Persistent Maps](https://github.com/RuedigerMoeller/fast-serialization/wiki/Off-Heap-Maps,-Persistent-Maps)\n\n[MinBin cross platform binary format](https://github.com/RuedigerMoeller/fast-serialization/wiki/MinBin)\n\n[Kson: a JSon extension](https://github.com/RuedigerMoeller/fast-serialization/wiki/KSon)\n\n### mvn\n\n**note:** maven.org might lag 1 day behind after releasing.\n\n**3.0.0 version** (requires **java 14**, \"--add-modules jdk.incubator.foreign\" option on compiler and runtime)\n\n```.xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.ruedigermoeller\u003c/groupId\u003e\n    \u003cartifactId\u003efst\u003c/artifactId\u003e\n    \u003cversion\u003e3.0.1\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n**2.0 version** (java 8)\n```.xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.ruedigermoeller\u003c/groupId\u003e\n    \u003cartifactId\u003efst\u003c/artifactId\u003e\n    \u003cversion\u003e2.56\u003c/version\u003e\n\u003c/dependency\u003e\n```\n**jdk1.6** compatible build of fst 2.x \n\n```.xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.ruedigermoeller\u003c/groupId\u003e\n    \u003cartifactId\u003efst\u003c/artifactId\u003e\n    \u003cversion\u003e2.48-jdk-6\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n1.x version (different package name, 1.6 compatible ..). Fixes are not backported anymore, unsupported.\n```.xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ede.ruedigermoeller\u003c/groupId\u003e\n    \u003cartifactId\u003efst\u003c/artifactId\u003e\n    \u003cversion\u003e1.63\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Who uses FST ?\n\nI am not actively tracking use, maven.org reports more than **14000** downloads from **6000** distinct IP accesses triggered by maven builds world wide per month.\n\nNotable also:\n\n* used in production in [Eurex Exchange](http://www.eurexchange.com/exchange-en/)'s trading back end's middleware\n* [JUptr.io](http://www.juptr.io/)'s distributed system / NLP engine uses FST\n* Popular Apache Wicket supplementals use FST to speed up Wicket\n\n![alt tag](https://raw.githubusercontent.com/RuedigerMoeller/fast-serialization/master/fst.png)\n\n### how to build \n\n* master contains dev branch/trunk.\n* 1.x contains old version\n* The maven build should work out of the box and reproduces the artifact hosted on maven.org\n* To use the gradle build, you need to configure the proxy server in settings.properties (or just set empty if you do not sit behind a proxy).\n\n\u003cb\u003eNote\u003c/b\u003e that instrumentation done for fst-structs works only if debug info is turned on during compile. Reason is that generating methods at runtime with javassist fails (probably a javassist bug ..). \n\u003cb\u003eThis does not affect the serialization implementation. \u003c/b\u003e\n\n\u003cb\u003eJDK 1.6 Build\u003c/b\u003e\n1.x build since v1.62 are still jdk 6 compatible\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruedigermoeller%2Ffast-serialization","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fruedigermoeller%2Ffast-serialization","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruedigermoeller%2Ffast-serialization/lists"}