Port IPC::SysV (low priority)
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 30/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
調査の方向性
The issue requires porting the IPC::SysV module to PerlOnJava using Java's FFM/native access. Start by examining the existing bytecode backend operation slots and compiler/interpreter scaffolding for semaphore, message-queue, and shared-memory operations, which currently throw UnsupportedOperationException. Review the Perl IPC::SysV module's API and the Java FFM documentation. Implement the constants, ftok, and the three IPC mechanisms (semaphores, shared memory, message queues) with proper error handling and cleanup. Write focused tests for each operation and validate with a dependent module like IPC::Pleather or IPC::Transit.
索引モデルが issue の本文から書いたものです。
説明
Summary
Port IPC::SysV to PerlOnJava using Java FFM/native access on Unix platforms.
This is a low-priority ecosystem-enablement task. The current targeted
MetaCPAN lookup found 14 released runtime dependants, including
IPC::Pleather, IPC::Transit, IPC-Shm-Simple, SysV-SharedMem, and
Proc-Swarm; 2 were recent dependants. Recheck this count before prioritizing
implementation, and increase priority if the dependant population grows.
Scope
- Provide the
IPC::SysVconstants andftokbehavior. - Implement System V semaphores:
semget,semop,semctl, and the
IPC::Semaphoresupport they require. - Implement shared memory:
shmget,shmat,shmdt,shmctl,memread,
andmemwrite. - Implement message queues:
msgget,msgsnd,msgrcv, andmsgctl. - Preserve Perl-visible return values, errno/error behavior, cleanup, and
concurrency semantics. - Define platform behavior explicitly: native Unix support first; Windows
should either use a real compatible implementation or fail clearly if SysV
IPC is unavailable.
Existing groundwork
The bytecode backend already has operation slots and compiler/interpreter
scaffolding for semaphore, message-queue, and shared-memory operations, but
the handlers currently throw UnsupportedOperationException.
Acceptance criteria
- Focused project-owned tests cover constants, semaphore operations, shared
memory, message queues, errors, cleanup, and cross-process visibility where
supported. - Tests pass on both JVM and interpreter backends where applicable.
- At least one dependent module is validated after the port.
- Documentation records supported platforms and limitations.
Related: #1144 (pseudofork support may remain a separate requirement for
modules that depend on fork).
- 主要言語
- Perl
- スター
- 64
- フォーク
- 6
- 平均マージ
- 5時間 38分
- マージ済み PR(30日)
- 170
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
fglock/PerlOnJava のほかの issue
-
area:cpan-port area:unicode bug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
fglock/PerlOnJava#1341 ·
-
area:backend area:runtime bug
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
fglock/PerlOnJava#1511 ·
-
area:backend area:cpan-port bug
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
fglock/PerlOnJava#1508 · コメント 1 件 ·
-
bug
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
fglock/PerlOnJava#1506 ·
-
bug enhancement
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
fglock/PerlOnJava#1502 ·
fglock/PerlOnJava の issue をすべて見る
似ている issue
-
documentation Needs Triage
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
trizen/youtube-viewer#456 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
-
connectivity オープン
難易度 1/5 1時間未満 初心者へのやさしさ 80/100
-
Common US ingredient names are not recognized, so about 12.4k US products miss an allergen warning オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
openfoodfacts/openfoodfacts-server#14657 · コメント 4 件 ·