Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

hanekomu (8123)

hanekomu
  (email not shown publicly)
http://hanekomu.at/blog/
AOL IM: hanekomu (Add Buddy, Send Message)

Go (Baduk) player and Perl hacker.

Journal of hanekomu (8123)

Friday September 12, 2008
10:16 AM

Acme::CPANAuthors::Austrian

New blog entry: "Acme::CPANAuthors::Austrian" in my Perl blog.

02:43 AM

CPAN Gems: Proc::InvokeEditor

New blog entry: "CPAN Gems: Proc::InvokeEditor" in my Perl blog.

Thursday September 11, 2008
01:21 PM

Overloading Constants in Perl

New blog entry: "Overloading Constants in Perl" in my Perl blog.

Tuesday June 03, 2008
04:15 AM

Slides: Perl in Japan

At the Vienna.pm TechSocialMeeting yesterday I've given a talk called "Perl in Japan" about the japanese Perl community: who they are, how they work, what they do. It contains impressions I brought back from YAPC::Asia 2008. Too many people don't know anything about asian perl mongers. That's a shame because there are some really interesting developments going on there. I've also briefly talked about Perl in Korea; there seems to be a small but intense community and I hope to find out more.

Here are the slides from the talk: http://www.slideshare.net/hanekomu/perl-in-japan

Sunday May 25, 2008
01:24 PM

New Perl blog

Sunday May 18, 2008
07:16 AM

use 箆; or: Distributions with Kanji on CPAN

During the YAPC::Asia hackathon day 2, we discovered a kanji that we could use for Moose.pm: 箆. It even looks a bit like some thing with antlers. Here is the JEDict definition:

箆 [へら: HERA] spatula
箆鹿 [へらじか: HERAJIKA] (uk) moose, elk

So a moose is an animal with a spatula on its head? Larry said that 箆 could also mean "comb", so a moose is an animal with a comb on its head. But I digress.

I've made a simple proof-of-concept distribution. The main module's code basically is:

        use utf8;
        package 箆;
        1;

'perl Makefile.PL', 'make', 'make test' and 'make dist' all worked well. It produced a tarball: 箆.tar.gz. So far, so good.

Then I've tried to upload the tarball to cpan:

        $ cpan-upload-http 箆.tar.gz

That also gave no error message. So I waited for the emails from PAUSE. Here is the first one:

> Subject: Notification from PAUSE
>
> MARCEL (Marcel Grünauer == hanekomu (跳ね込む)) visited the PAUSE and
> requested an upload into his/her directory. The request used the
> following parameters:
>
> pause99_add_uri_upload            [箆-0.01.tar.gz]
> SUBMIT_pause99_add_uri_httpupload [ Upload this file from my disk ]
> pause99_add_uri_httpupload        [-0.01.tar.gz]
>
> The request is now entered into the database where the PAUSE daemon will
> pick it up as soon as possible (usually 1-2 minutes).
>
> During upload you can watch the logfile in
> https://pause.perl.org/pause/authenquery?ACTION=tail_logfile&pause99_tail_logfil e_1=5000.
>
> You'll be notified as soon as the upload has succeeded, and if the
> uploaded package contains modules, you'll get another notification from
> the indexer a little later (usually within 1 hour).
>
>
> Thanks for your contribution,
> --
> The PAUSE

Due to the good fortune of having kanji and kana in my CPAN display name (跳ね込む), I was sure that the email had the right encoding. But the tarball filename it returned was wrong: "箆-0.01.tar.gz". Well, let's see. Maybe it's just a problem with generating the email. Wait and see... Here is the second email:

> Subject: CPAN Upload: M/MA/MARCEL/-0.01.tar.gz
>
> The uploaded file
>
>    -0.01.tar.gz
>
> has entered CPAN as
>
>  file: $CPAN/authors/id/M/MA/MARCEL/-0.01.tar.gz
>  size: 24392 bytes
>   md5: 39ebd0b5ab4bd9acdb2a80c1c4a733dd
>
> No action is required on your part
> Request entered by: MARCEL (Marcel Grünauer == hanekomu (跳ね込む))
> Request entered on: Sun, 18 May 2008 11:00:42 GMT
> Request completed:  Sun, 18 May 2008 11:00:52 GMT
>
> Thanks,
> --
> paused, v996

Hm, doesn't look good either. Well, wait for the indexer report... Here it is:

> Subject: Failed: PAUSE indexer report MARCEL/-0.01.tar.gz
>
> The following report has been written by the PAUSE namespace indexer.
> Please contact modules@perl.org if there are any open questions.
>  Id: mldistwatch 1001 2008-05-15 05:34:01Z k
>
>               User: MARCEL (Marcel Gruenauer == hanekomu)
>  Distribution file: -0.01.tar.gz
>    Number of files: 21
>         *.pm files: 14
>             README: 箆-0.01/README
>           META.yml: 箆-0.01/META.yml
>  Timestamp of file: Sun May 18 11:00:51 2008 UTC
>   Time of this run: Sun May 18 11:02:23 2008 UTC
>
> No package statements could be
>                     found in the distro (maybe a script or
>                     documentation distribution?)
>
> __END__

Ah, so it could actually untar it because it found the README and META.yml files. But it seems it uses the wrong regex to find the package statements. Maybe it needs to read the file as utf8...

Just to be sure it wasn't a problem with cpan-upload-http, I also uploaded the file from the PAUSE web interface directly. Here is the response:

> The Perl Authors Upload Server
>
> Upload a file to CPAN
> Add a file for MARCEL
> File successfully copied to '/home/ftp/incoming/-0.01.tar.gz'
> Your filename has been altered as it contained characters besides the class [A-Za-z0-9_\-\.\@\+].
> DEBUG: your filename['箆-0.01.tar.gz'] corrected filename['-0.01.tar.gz'].

So this doesn't work either.

Dear CPAN maintainers, please fix it.

Saturday April 19, 2008
05:39 AM

CodeRepos ktkr!

I've moved most of my code to CodeRepos. Thanks to Yappo for the commit bit. Now every CodeRepos committer (that is, all the cool Japanese hackers and some gaijin) can patch my distros. Looking forward to it!

Thursday April 17, 2008
03:45 PM

Perl debugger plugins with DB::Pluggable

I've released DB-Pluggable which adds plugin support to the debugger. There are quite a few good ~/.perldb ideas around, but they're not easy to combine because they often overwrite the same DB::* functions. This distribution tries to remedy this by moving functionality to plugins.

    $ cat ~/.perldb

    use DB::Pluggable;
    use YAML;

    $DB::PluginHandler = DB::Pluggable->new(config => Load <<EOYAML);
    global:
      log:
        level: error

    plugins:
      - module: BreakOnTestNumber
    EOYAML

    $DB::PluginHandler->run;

    $ perl -d foo.pl

    Loading DB routines from perl5db.pl version 1.28
    Editor support available.

    Enter h or `h h' for help, or `man perldebug' for more help.

    1..9
    ...
      DB<1> b #5
      DB<2> r

DB-Pluggable was inspired by Andy Armstrong's journal entry about a debugger command that adds breakpoints for specific Test::Builder-based tests.

This distribution is very much in beta, so it's more like a proof of concept. Therefore, not all hooks imaginable have been added, only the ones to make this demo work. If you want more hooks or if the current hooks don't work for you, let me know.

Tuesday February 19, 2008
09:55 AM

YAPC::Asia ni ikimasu

I've registered for the YAPC::Asia, so the next thing to do is to find a flight and a hotel.

04:02 AM

hanekomu v4.0

Unbelievable, I turned 40 today. Because the memorable thing happened at 0:40am local time 40 years ago, I thought I'd stay up last night and finish watching Dennou Coil. Ended up watching 16 episodes (11-26) and going to bed at 2:40, knowing I'd have to get up at 7:30. Normally this wouldn't be worth mentioning, but with advanced age there seems to be a greater need of sleep...

Getting up wasn't too bad, though, as I had time to ponder the cool things that happened in Dennou Coil.

ObReflection: Being 40 doesn't feel like what I expected it to feel like when I was 20. Even 50-60 year olds generally don't seem to be as old as they seemed to me 30 years ago. Ok, back then I was a child and had a different concept of time, but still... Extended lifespan and better medicine certainly has something to do with it as well.

I am wondering, though, whether more days are behind me than lie before me...