{"id":17861151,"url":"https://github.com/jonathanstowe/mq-posix","last_synced_at":"2026-07-11T19:31:39.840Z","repository":{"id":66980431,"uuid":"87978537","full_name":"jonathanstowe/MQ-Posix","owner":"jonathanstowe","description":"Raku binding for POSIX message queues","archived":false,"fork":false,"pushed_at":"2023-07-01T10:30:57.000Z","size":33,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-01T10:29:25.770Z","etag":null,"topics":["messagequeue","mq","posix","raku"],"latest_commit_sha":null,"homepage":"","language":"Raku","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"artistic-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonathanstowe.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","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}},"created_at":"2017-04-11T20:56:04.000Z","updated_at":"2022-08-07T08:42:44.000Z","dependencies_parsed_at":"2024-10-28T09:05:47.210Z","dependency_job_id":"e66184ba-aa3a-4686-b866-12c307e4ec7b","html_url":"https://github.com/jonathanstowe/MQ-Posix","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/jonathanstowe/MQ-Posix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanstowe%2FMQ-Posix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanstowe%2FMQ-Posix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanstowe%2FMQ-Posix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanstowe%2FMQ-Posix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonathanstowe","download_url":"https://codeload.github.com/jonathanstowe/MQ-Posix/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonathanstowe%2FMQ-Posix/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280768881,"owners_count":26387532,"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-24T02:00:06.418Z","response_time":73,"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":["messagequeue","mq","posix","raku"],"created_at":"2024-10-28T08:43:04.637Z","updated_at":"2025-10-24T08:49:07.825Z","avatar_url":"https://github.com/jonathanstowe.png","language":"Raku","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MQ::Posix\n\nRaku binding for POSIX message queues\n\n![Build Status](https://github.com/jonathanstowe/MQ-Posix/workflows/CI/badge.svg)\n\n## Synopsis\n\n```raku\n\nuse MQ::Posix;\n\nmy $queue = MQ::Posix.new(name =\u003e 'test-queue', :create, :r );\n\nreact {\n    whenever $queue.Supply -\u003e $buf {\n        say $buf.decode;\n    }\n    whenever signal(SIGINT) {\n        $queue.close;\n        $queue.unlink;\n        done;\n    }\n}\n```\n\nAnd in some separate process:\n\n```raku\n\nuse MQ::Posix;\n\nmy $queue = MQ::Posix.new(name =\u003e 'test-queue', :create, :w );\n\nawait $queue.send(\"some test message\", priority =\u003e 10);\n\n$queue.close;\n\n```\n\n## Description\n\nPOSIX message queues offer a mechanism for processes to reliably exchange\ndata in the form of messages\n\nThe messages are presented as a priority ordered queue with higher priority\nmessages being delivered first and messages of equal priority being delivered\nin age order.\n\nThe mechanism is simple, having no provision for message metadata and so forth\nand whilst reliable, unread messages do not persist beyond the lifetime of the\nrunning kernel.\n\n## Install\n\nIf you have a working installation of Rakudo you should be able to install this with *zef* :\n\n    zef install MQ::Posix\n\n    # or from a local clone\n\n    zef install .\n\n## Support\n\nThis should work on any operating system that has good modern POSIX\nsupport, however some systems may not enable kernel message queues by\nthe default and you may need some kernel build configuration to do so.\nAlso the limits and defaults for number of messages and maximum message\nsizes are set in different ways as this is not explicitly stated in the\nstandard, on Linux, for example, you can use the ```sysctl``` interface\nto control these parameters, on other systems you may need to supply\nthem as kernel build configuration.\n\nIf this doesn't work as expected or you have new features that you would like to see please post in https://github.com/jonathanstowe/MQ-Posix/issues\n\n## Licence \u0026 Copyright\n\nThis is free software, please see the [LICENCE](LICENCE) for details.\n\n© Jonathan Stowe 2017 - 2021\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanstowe%2Fmq-posix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonathanstowe%2Fmq-posix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonathanstowe%2Fmq-posix/lists"}