duckduckgo / zeroclickinfo-goodies

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

Remove (or move) old repository Instant Answers #3087

Closed GuiltyDolphin closed 7 years ago

GuiltyDolphin commented 8 years ago

We have some oldie IAs that, for one reason or another, are in their own, separate repositories.

We should try and move these Goodies into the main repositories, and failing that, delete them. We'll likely need maintainers too (I think whoever ports should be given first dibs - unless the old owner is still around).

- [ ] Qrcode

/cc @moollaza @mintsoft @duckduckgo/duckduckhack-contributors

majuscule commented 8 years ago

Qrcode is in a separate repository due to its external dependency, libgif-dev (giflib). The same issue may be responsible for the others as well but I do not remember.

GuiltyDolphin commented 8 years ago

@majuscule Are you sure there's no alternatives? Looks like there's a bunch on cpan.

If we can't port it as a Goodie, it may be worth moving it to Spice where I'm sure there's a bunch of APIs for QRCodes.

majuscule commented 8 years ago

No I am not. However most on that page seem to depend on libqrencode.

mintsoft commented 8 years ago

@GuiltyDolphin there is the privacy argument; I spent ages trying to find somewhere that could generate me a QR code with guarantees that they don't store it their side until I found that IA :)

GuiltyDolphin commented 8 years ago

@mintsoft @majuscule Fair dos - there's more pressing issues with the other IAs, some which don't even appear to be live. Seeing as there's actually a reason for this one to be separate, we can leave it for now.

marti1125 commented 8 years ago

Hi @GuiltyDolphin how to I can contribute with this?

GuiltyDolphin commented 8 years ago

@marti1125 Make sure you're familiar with the docs; then have a quick look over the repos to find one you want to work on. Then pull the code down and move it to your copy of ZCI-goodies (if you are a bit more advanced with Git you should be able to pull the commits in to maintain the history). After that just make sure everything is working fine and update the Goodie to follow current systems (no metadata, use templates etc.). If you create a PR once you've done the main porting we'll be able to give you assistance where needed.

marti1125 commented 8 years ago

Hi @GuiltyDolphin I'm trying to run Spell I copied the content of Spell.pm in a new IA for test but when the server running I get this message

[NOTICE] \ {
DDG::Goodie::Spell "Please install Text::Aspell and any other required dependencies to use this instant answer."
}

I added [Prereqs] sush as https://github.com/duckduckgo/zeroclickinfo-goodie-spell/blob/master/dist.ini

GuiltyDolphin commented 8 years ago

@marti1125 You can install it locally with cpanm - eg., cpanm Text::Aspell.

@mintsoft Looks like this one might be a bad dependency? I can't install it locally without root or errors. Maybe it is external deps (again). There's quite a few packages for spelling @marti1125 - you could have a look through those and see if any seem suitable.

majuscule commented 8 years ago

Text::Aspell requires libaspell-dev

You MUST have installed GNU Aspell library version 0.50.1 or higher on your system before installing this Text::Aspell Perl module.

I expect this will be the case with most of the external IA :-)

GuiltyDolphin commented 8 years ago

@majuscule Maybe - though IsValid and Math don't appear to be triggering - and I couldn't find IA pages for them; so I think porting is really the only good course of action here (and failing that, deletion).

Edit: Hmm, I have the dependency installed (for whatever reason) and it still didn't like the auto install; oh well (I'll live).

moollaza commented 8 years ago

Hey guys, I see no need for anything to change here, if it ain't broke, don't fix it 😉

Chords, Math, and IsValid are not being used. Math looks like it was forked from another dev, but we're not using it and I don't think we ever will given the MathJax dependency. Chords was never used IIRC, but we have a separate Chords Goodie in the repo which is live and still being developed. IsValid doesn't look like it's online either.

Spell is in maintenance -- We have no plans to add or modify it's functionality. The same goes for QRCode. If we plan to make any changes, we can consider porting them but it's likely to create more problems than it's worth.

They're in separate repos for historical reasons, largely do their dependencies as @majuscule mentioned. Previously these dependencies have caused problems for devs and have caused problems on Codio (because we don't have Sudo so we need to ensure they have a way for us to install the deps).

IMO until there's a need for these to change we should leave them.

moollaza commented 8 years ago

It looks like Spell and QrCode could use code updates to use templates, but I don't think we should bother porting the code because of the dependencies.

GuiltyDolphin commented 8 years ago

@moollaza Perhaps we should remove the repos of the Goodies we are unlikely to ever use? I don't see any benefit to keeping them around - and they currently add unnecessary clutter to the repos.

pjhampton commented 7 years ago

Hey all

DuckDuckHack is now in Maintenance Mode and from now on, we are only accepting issues and PRs for essential bugs and bug fixes.

Unfortunately, with the above in mind, this isn't something we can action and will be closed.

We appreciate you taking the time to contribute and apologize for not being able to triage this issue.