krakjoe / krakjoe/cmark

PHP 8.0 compatibility

Open
#21 7 comments 3 reactions 0 assignees View on GitHub
Dominant language
C
Stars
46
Forks
7
PR merge metrics
No merged PRs in 30d

Description

It compiles against PHP 8.0 but it's failing to allow php-fpm to start.

```
PHP Fatal error: Class CommonMark\Node must implement interface Traversable as part of either Iterator or IteratorAggregate
```

Some of the other modules I interact with have used this release as a chance to switch to stub files (compiled with php-src/build/gen_stub.php) to automatically compile the function headers.

Should we follow suit on that? Or keep things as is as much as possible and only implement Traversable support.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the PHP 8.0 failure when php-fpm starts and inspect the CommonMark\Node Traversable requirement. Compare the existing implementation with the php-src/build/gen_stub.php approach mentioned in the issue. Done means PHP 8.0 can start php-fpm without the fatal error and the chosen compatibility approach is covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, php
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.