{"id":27169425,"url":"https://github.com/petbrain/libpussy","last_synced_at":"2025-08-12T16:06:20.328Z","repository":{"id":297593519,"uuid":"969532191","full_name":"petbrain/libpussy","owner":"petbrain","description":"Pet's collection of essentials.","archived":false,"fork":false,"pushed_at":"2025-08-10T15:34:58.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-10T17:26:31.105Z","etag":null,"topics":["allocators","arena-allocator","bitmap-allocator","bitmap-dump","hexdump","ringbuffer","synchronization","timespec"],"latest_commit_sha":null,"homepage":"","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/petbrain.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":"2025-04-20T11:15:29.000Z","updated_at":"2025-08-10T15:35:01.000Z","dependencies_parsed_at":"2025-06-06T10:11:50.087Z","dependency_job_id":"86079378-4c54-46fd-8560-393fe86e6d56","html_url":"https://github.com/petbrain/libpussy","commit_stats":null,"previous_names":["petbrain/libpussy"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/petbrain/libpussy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petbrain%2Flibpussy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petbrain%2Flibpussy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petbrain%2Flibpussy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petbrain%2Flibpussy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/petbrain","download_url":"https://codeload.github.com/petbrain/libpussy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petbrain%2Flibpussy/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270091569,"owners_count":24525221,"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-08-12T02:00:09.011Z","response_time":80,"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":["allocators","arena-allocator","bitmap-allocator","bitmap-dump","hexdump","ringbuffer","synchronization","timespec"],"created_at":"2025-04-09T06:36:50.061Z","updated_at":"2025-08-12T16:06:20.275Z","avatar_url":"https://github.com/petbrain.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# libpussy: collection of basic things\n\nEverything is work in progress and subject to change.\n\n## Allocators\n\n### arena allocator\n\n[arena.h](include/arena.h)\n\nUses `mmap` as underlying allocator.\n\n### pet allocator\n\n[allocator.h](include/allocator.h)\n\nThe main allocator is bitmap-based. Other twos are for debugging purposes:\n * wrapper for malloc/realloc/free\n * debug allocator that detects bubblewrap corruption around allocated blocks\n \n## Dump functions\n\n[dump.h](include/dump.h)\n\nHex and bitmap dump functions.\n\n## MMarray\n\n[mmarray.h](include/mmarray.h)\n\nSimple dynamic array using `mmap` as allocator.\n\n## Ring buffers\n\n[ringbuffer.h](include/ringbuffer.h)\n\nBasic and thread-safe implementations of ring buffer.\nUsing `mmap` as allocator.\n\n## Synchronization primitives\n\n[sync.h](include/sync.h)\n\nSynchronization primitives based on condition variable.\n\nEvent implementation only for now.\n\n## Timespec utils\n\n[timespec.h](include/timespec.h)\n\nUtilities that work with `struct timespec`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetbrain%2Flibpussy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetbrain%2Flibpussy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetbrain%2Flibpussy/lists"}