{"id":27881783,"url":"https://github.com/src-d/treediff","last_synced_at":"2026-02-25T08:32:25.883Z","repository":{"id":79454034,"uuid":"105287984","full_name":"src-d/treediff","owner":"src-d","description":null,"archived":false,"fork":false,"pushed_at":"2018-05-21T13:37:29.000Z","size":66639,"stargazers_count":6,"open_issues_count":1,"forks_count":4,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-06-02T19:19:53.450Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/src-d.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2017-09-29T15:26:08.000Z","updated_at":"2020-06-21T05:45:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"8869aa8d-4389-48e8-a0be-9f377713ccfd","html_url":"https://github.com/src-d/treediff","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/src-d/treediff","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/src-d%2Ftreediff","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/src-d%2Ftreediff/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/src-d%2Ftreediff/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/src-d%2Ftreediff/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/src-d","download_url":"https://codeload.github.com/src-d/treediff/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/src-d%2Ftreediff/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29815022,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T05:36:42.804Z","status":"ssl_error","status_checked_at":"2026-02-25T05:36:31.934Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2025-05-05T05:05:08.658Z","updated_at":"2026-02-25T08:32:25.870Z","avatar_url":"https://github.com/src-d.png","language":"Python","readme":"# Tree Difference\n\nThis is the ongoing research on the Abstract Syntax Tree difference algorithm.\n\nCurrently, the code is written in Python, but the final solution will be incorporated into [libuast](https://github.com/bblfsh/libuast).\n\nPlan:\n\n1. Run regular sequence diff\n2. Improve the Myers diff with UAST nodes count trick\n3. Filter the nodes which are involved in the changes by lines\n4. Hash them with the robust subtree sampling hash \n5. Map them using Linear Assignment LP\n6. Compose the edit script\n7. Output JSON\n8. Visualize JSON in html\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrc-d%2Ftreediff","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsrc-d%2Ftreediff","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsrc-d%2Ftreediff/lists"}