duckduckgo / zeroclickinfo-goodies

DuckDuckGo Instant Answers based on Perl & JavaScript
https://duckduckhack.com/
Other
979 stars 1.76k forks source link

Move ChineseZodiac to separate repo, or find a way around the lib-mpfr dependency #713

Closed moollaza closed 9 years ago

moollaza commented 9 years ago

The issue came up today on IRC, but I meant to discuss it anyways...

I had said before that I really don't like having Goodies that depend on system packages. They are going to cause a headache for us moving forward, especially with Codio as we are unable to install the packages. What this means is that any Codio users are going to continue to see error messages when they trying to run installdeps(the user on IRC thought nothing was being installed because the end of installdeps says "ERROR" because DateTime::Astro always fails to install) and whenever they run duckpan server or duckpan query they will always see that ChineseZodiac isn't loading because of the missing dependency.

I really want to avoid removing the Goodie because lots of effort was put into it, but I think moving forward we should put a hard requirement that Goodies cannot depend on system packages.

What are your thoughts? Am I being unrealistic? The alternative is to handle the install errors in a much better way, but Codio users will forever be reminded that something isn't quite right which I don't particularly like the sound of.

//cc @russellholt @jagtalon @mwmiller @jdorweiler @mintsoft

https://duck.co/ia/view/chinese_zodiac

mintsoft commented 9 years ago

FWIW this goodie drives me mad; I'm absolutely down with "no system requirements"; however this'll scupper any XS modules and : https://github.com/duckduckgo/zeroclickinfo-goodies/issues/382

jagtalon commented 9 years ago

@moollaza @mintsoft I guess we can try to see if we can make lib-mpfr work in ~/.parts/autoparts/ of the Codio instance before we do anything else. I think it's --prefix=/home/codio/.parts/autoparts/ when compiling, but I forget.

moollaza commented 9 years ago

@jagtalon we can try that, but the same issue is bound to occur if we continue to allow IA's that depend on system packages, which I feel like we should avoid because then every dev will always sees those warnings which isn't the intended purpose. Alternatively we could have Duckpan auto-ignore IA's that fall into that category?

mintsoft commented 9 years ago

I think the most important thing is that there should be an environment on which any dev can run prove -j9 -Ilib t/* and it pass without too much hassle?

moollaza commented 9 years ago

Closing and marking as tolerated. We now Codio for new devs, and Travis now plays nicely. Everything seems to be OK for now :+1: