-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
erusev/parsedown-extra doesn't work with newer libxml versions #3480
Comments
@amorphine could you post the exact steps to take to reproduce this issue using this library and break down where the faulty dependency code is getting called? |
@LukeTowers Excuse Russian, I'm sure it's clear what part of backend the action takes place. I'm not sure what you want me to do to break down where the faulty dependency code is getting called, so I attach a call stack formed by xdebug:
As you can see, the 3rd party lib is called here
Here's a screen of the place when the buggy lib facade is going to be called Please, let me know if I should do something else; |
That's perfect, thanks @amorphine. Has the proposed solution been submitted to the third party library as a PR? |
@LukeTowers The patch is not mine and as I can see the author has not created a PR. The last erusev's commit was made more than two years ago. Seems like he is not going to develop the library anymore. According to the forks there are some people still trying to support the project. May be a propriate author can be found there. |
@amorphine October extends the base class allowing for any required modifications to be made in-library. Could you add I'll note that the fix proposed is no longer the recommended one and seems to cause issues with 2.9. https://stackoverflow.com/questions/29493678/loadhtml-libxml-html-noimplied-on-an-html-fragment-generates-incorrect-tags |
@LukeTowers I tested the code with different php implementations and it seems to be the problem affects only with the alpine distribution shipped with docker image. |
@LukeTowers php-alpine docker image vendors say they can not help. I think the issue should be closed coz it's upon 3rd party, not October itself. Thanks. |
Alright, closing |
Intro
erusev/parsedown-extra is a dependency of october/rain
Expected behavior
Emails should be parsed and sent.
Actual behavior
October CMS does not send HTML-emails due to incompatibility of erusev/parsedown-extra with newer versions of libxml throwing an error
Type error: Argument 1 passed to DOMNode::replaceChild() must be an instance of DOMNode, null given" on line 473 of /usr/share/nginx/html/predelanet/vendor/erusev/parsedown-extra/ParsedownExtra.php
Reproduce steps
php-version may be set ( tried from php 7.1.6 up to 7.1.15)
libxml version of Alpine Linux here is
Trying to send an email throws an error. Heres a code example taken right from the library and wich behaves differently on my host machine and docker container
October build
434
Possible solutions
May be you should use your own fork of the library.
Possible solution is shown here. An explanation is given here
The code of the library looks a bit fragile. I'm surprised I worked as it should for so long time.
The text was updated successfully, but these errors were encountered: