duckduckgo / p5-app-duckpan

DuckDuckHack OpenSource Development Application
http://metacpan.org/module/App::DuckPAN
Other
53 stars 47 forks source link

DuckPAN 0.160 is totalled on Debian/Perl 5.14 #153

Closed mintsoft closed 9 years ago

mintsoft commented 9 years ago

Yo's;

This has appeared and now my DuckPAN won't run!

[NOTICE] perl v5.16.0 or higher is recommended. v5.14.2 is installed.
Checking for latest App::DuckPAN ... 0.160
Checking for latest DDG Perl package... 0.130
Use of uninitialized value in -d at /home/rob/perl5/lib/perl5/App/DuckPAN.pm line 459.

@mwmiller @jagtalon @moollaza

moollaza commented 9 years ago

ouch. Sorry @mintsoft. What command did you run?

moollaza commented 9 years ago

and in what directory?

mintsoft commented 9 years ago

both duckpan query and duckpan server do this

mintsoft commented 9 years ago

in the root of my hiragana goodie

21:20:58 /media/md2/scripts/ddg/ddh/goodies/hiragana (mintsoft/hiragana)
rob@set $ duckpan query
[NOTICE] perl v5.16.0 or higher is recommended. v5.14.2 is installed.
Checking for latest App::DuckPAN ... 0.160
Checking for latest DDG Perl package... 0.130
Use of uninitialized value in -d at /home/rob/perl5/lib/perl5/App/DuckPAN.pm line 459.
21:21:13 /media/md2/scripts/ddg/ddh/goodies/hiragana (mintsoft/hiragana)
moollaza commented 9 years ago

Hmm it's odd that this just started, my last release was like a week ago...did you just update?

mintsoft commented 9 years ago

Yeah I just did an update and boom

moollaza commented 9 years ago

Awesome I have 5.14 on Codio, will investigate...

mintsoft commented 9 years ago

Just ping me if you need any more info

moollaza commented 9 years ago

Hmm @mintsoft I can't get the error to occur. I'm using 5.14 on Ubuntu 3-13. I get the notice, but then it goes on to work just fine. It must be related to your directories. The error is complaining about a directory not existing..

mwmiller commented 9 years ago

@mintsoft Could you check your Path::Tiny version?

perl -le 'eval "require $ARGV[0]" and print $ARGV[0]->VERSION' Path::Tiny

I suspect it's less than 0.053? If so, I'll update the dependencies. I started this conversion well after that release, so I didn't even consider this.

tommytommytommy commented 9 years ago

@moollaza @mwmiller @mintsoft I just ran into the same bug after running duckpan upgrade and duckpan start server on my Ubuntu VM. It looks like my version of Path::Tiny is 0.029.

mwmiller commented 9 years ago

@tommytommytommy Sweet, thanks for the extra info. Could you see if cpanm Path::Tiny fixes this?

tommytommytommy commented 9 years ago

@mwmiller Unfortunately, it doesn't seem to...here's the console output:

dax@duckduckhack:~/DuckDuckGo/zeroclickinfo-spice$ cpanm Path::Tiny
--> Working on Path::Tiny
Fetching http://www.cpan.org/authors/id/D/DA/DAGOLDEN/Path-Tiny-0.059.tar.gz ... OK
Configuring Path-Tiny-0.059 ... OK
Building and testing Path-Tiny-0.059 ... OK
Successfully installed Path-Tiny-0.059 (upgraded from 0.029)
1 distribution installed
dax@duckduckhack:~/DuckDuckGo/zeroclickinfo-spice$ duckpan start server
Checking for latest App::DuckPAN ... 0.160
Checking for latest DDG Perl package... 0.130
Use of uninitialized value in -d at /home/dax/perl5/perlbrew/perls/perl-5.16.3/lib/site_perl/5.16.3/App/DuckPAN.pm line 459.
mwmiller commented 9 years ago

@tommytommytommy Ok, thanks for the update. I'll look into it further.

mwmiller commented 9 years ago

@tommytommytommy From that file path, it looks like you're running 5.16.3... I think this is a DuckPAN initialization problem with its config.

mintsoft commented 9 years ago

sorry @mwmiller I was ZZZ

rob@set $ perl -le 'eval "require $ARGV[0]" and print $ARGV[0]->VERSION' Path::Tiny
0.055
mwmiller commented 9 years ago

@mintsoft No worries. I've still not tracked it down. Imade some changes which seem "ok" but not very likely to resolve it. Any chance you have set DUCKPAN_CACHE_PATH or DUCKPAN_CONFIG_PATH in your environment?

mwmiller commented 9 years ago

Or any chance HOME is set to something weird?

I tried all kinds of permissions, ownership and existence changes to no effect.

mintsoft commented 9 years ago

@mwmiller nope;

rob@set $ printenv
TERM=xterm-256color
SHELL=/bin/bash
XDG_SESSION_COOKIE=d6b838cc3aab516ec531d53e00000265-1413492431.494407-99964859
SSH_CLIENT=172.30.0.46 1422 22
PERL5LIB=/home/rob/perl5/lib/perl5/i486-linux-gnu-thread-multi:/home/rob/perl5/lib/perl5
TIME_STYLE=long-iso
PERL_MB_OPT=--install_base /home/rob/perl5
SSH_TTY=/dev/pts/0
USER=rob
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:
GIT_SSH=/home/rob/gitScript/sshKey.sh
TMUX=/tmp/tmux-1000/default,16795,0
PATH=/home/rob/bin:/home/rob/perl5/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/rob/bin
MAIL=/var/mail/rob
PWD=/media/md2/scripts/ddg/ddh/goodies/dates
LANG=en_GB.UTF-8
TMUX_PANE=%4
SHLVL=2
HOME=/home/rob
LANGUAGE=en_GB:en
PERL_LOCAL_LIB_ROOT=/home/rob/perl5
LOGNAME=rob
SSH_CONNECTION=172.30.0.46 1428 172.30.0.3 22
PERL_MM_OPT=INSTALL_BASE=/home/rob/perl5
_=/usr/bin/printenv
OLDPWD=/media/md2/scripts/ddg/ddh/goodies
mwmiller commented 9 years ago

Also, if either of you would like to checkout and dzil install the mwm/config_updates branch just to confirm that it doesn't help, that'd be nifty. :grin:

mintsoft commented 9 years ago

@mwmiller I'm doing it now, interesteringly enough I was missing

Dist::Zilla::Plugin::PromptIfStale
Dist::Zilla::Plugin::Authority
Dist::Zilla::Plugin::ChangelogFromGit
Dist::Zilla::Plugin::InstallRelease

But they don't seem to have fixed it yet; I'll update you once it's built & installed

mintsoft commented 9 years ago

@mwmiller done; but still broken!

mwmiller commented 9 years ago

No idea what's up. I have a machine around with Ubuntu 12.04 on it and can't reproduce.

[NOTICE] perl v5.16.0 or higher is recommended. v5.14.2 is installed.
Checking for latest App::DuckPAN ... 0.160
Checking for latest DDG Perl package... 0.130

Using the following DDG instant answers:
mintsoft commented 9 years ago

Hmm, I've got a different Wheezy machine and it works on that; however that's using perlbrew

mwmiller commented 9 years ago

@mintsoft It looks like @tommytommytommy is using perlbrew and still having the problem. I still feel like there was some initialization gone wrong somewhere in all of this.. but I've run out of ideas for places to look.

mwmiller commented 9 years ago

I think I finally found it.

@mintsoft Would you mind trying a dzil install with the latest from mwm/config_updates?

I have much more confidence in my solution this time. Let's call it a coin-flip.

mintsoft commented 9 years ago

@mwmiller yes! Fixed! What was the actual problem? I'm guessing it's: https://github.com/duckduckgo/p5-app-duckpan/commit/4407fad5de6bccd0d05226c4c898e0de03109e9f

tommytommytommy commented 9 years ago

@mwmiller @mintsoft I just pulled https://github.com/duckduckgo/p5-app-duckpan/commit/1029bf779fdddf62f83062b97323443d1a5682bf and ran dzil install, and it works for me too! (Took a while for me to install a lot of missing dependencies that are not normally installed with the Ubuntu virtual machine for testing Goodies/Spices?) I am not at all familiar with how changes propagate; out of curiosity, is there one more step that needs to be done for users to get this via duckpan upgrade? I was still getting version 0.160 with that command.

moollaza commented 9 years ago

@tommytommytommy the reason you had to install several dependencies is because they are required for dzil to build and install the duckpan package -- this isn't the normal way for contributors to go about installing Duckpan. Most of the stuff that was installed is required for tests etc (likely they were all Dzil Plugins). We us dzil to build and package duckpan so it can be pushed out to CPAN, where only the essentials for actually running DuckPAN are needed. Once I've merged and released DuckPAN, the version will bump and you will be prompted to update. At that point you'll go back to using/upgrading DuckPAN as usual :)

tommytommytommy commented 9 years ago

@moollaza Ah! Great :) Thanks for the explanation. So much to learn, so much to learn.

mwmiller commented 9 years ago

the version will bump and you will be prompted to update

Actually, you've probably already installed a 0.161 (via dzil install), but not the 0.161. Easiest way to get back on track with the mainstream is duckpan reinstall

tommytommytommy commented 9 years ago

Great, thanks for the heads-up. If worse came to worse during the install, I figured that I could always destroy the VM and restart. But, this seems like a much easier and less drastic measure :-)

moollaza commented 9 years ago

@mwmiller thanks for that, I realized that later that day, meant to correct myself.