Update gem `thin` to version >`1.8.0` to resolve installation issues
jai-x opened this issue · 9 comments
Gem thin is required by mailcatcher and is specified within a minor version of v1.5.0:
mailcatcher/mailcatcher.gemspec
Line 42 in 30b1004
The installation of gem thin requires a workaround that is documented in the readme:
If you encounter issues installing thin, try:
gem install thin -v 1.5.1 -- --with-cflags="-Wno-error=implicit-function-declaration"
These issues have since been resolved in macournoyer/thin#364 and the fix is available since version v1.8.0.
Is it possible to upgrade the thin dependency or are there any blocking requirements to keep the version as is?
Yes there were/are a few issues preventing the upgrade. They are being worked through. Please use the documented workaround in the meantime.
Thanks for the response.
Of the remaining work required to upgrade, is any of it documented anywhere such that people can contribute towards helping?
No, it is not.
If you'd like to help, please try the latest pre-release version which has swapped out the websocket library which was preventing upgrade:
gem install --pre mailcatcher
If you find any issues please report them.
gem install --pre mailcatcher => mailcatcher-0.9.0.beta1
@sj26 this appers to have the same problem?
@alistairholt could you please be more specific?
The beta doesn't upgrade thin, it changes the websocket integration. I'd like to see that stable before committing to upgrading thin.
@sj26 sure. When I tried the beta I still got the same error from thin on install:
s.add_dependency "thin", "~> 1.5.0" in mailcatcher.gemspec
I was struggling with installing thin for an entire night, finally I figured out I had to add "-fdeclspec" flag.
I'm still running Mac OS Catalina with xcode 12.2, ruby 3.1.0 installed via rbenv.
Maybe someone finds it useful.
gem install thin -v 1.5.1 -- --with-cflags="-Wno-error=implicit-function-declaration -fdeclspec"
gem install mailcatcher -N
Inspiration:
nginx/unit#653
Had this issue. Did not need the -fdeclspec flag.
Just had to do:
gem install thin -v '1.5.1' -- --with-cflags="-Wno-error=implicit-function-declaration"
then was able to do:
gem install mailcatcher
Qiita Source. This is a Japanese site; I used Google Translate to read. I did not need to use sudo.
Translated Qiita Source.
System details:
MacBook Pro
16-inch 2021
Apple M1 Max
32 GB Memory
macOS Ventura 13.2
I have pushed another pre-release, v0.9.0.beta2, which relaxes the thin requirement and should support ruby 3.2. Please try it:
gem install mailcatcher --pre