Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

shipped distribution contains README.pod #10

Closed
karenetheridge opened this issue Feb 23, 2015 · 18 comments
Closed

shipped distribution contains README.pod #10

karenetheridge opened this issue Feb 23, 2015 · 18 comments
Assignees

Comments

@karenetheridge
Copy link

Your distribution contains a README.pod at the top level directory, which will be installed for the user as lib/Git/README.pod. Since this is just informational for user downloads, it should be called README instead so it won't be installed. You could even just shorten it to a simple 'see perldoc Git::Hooks'.

(I generate a README.pod in my distributions, but they only exist in the github repository, and are omitted from the tarball uploaded to PAUSE, for this very reason.)

gnustavo added a commit that referenced this issue Feb 24, 2015
Karen Etheridge explained to me [0] that I should exclude the
README.pod from the distribution.

Ref: [0] #10
@gnustavo
Copy link
Owner

Ah, thanks for the explanation. I've inserted README.pod in the MANIFEST.SKIP (538c585) so that it won't be part of the next release.

@gnustavo
Copy link
Owner

gnustavo commented Mar 1, 2015

Hmmm... just now I noticed that then the distribution would go without a README and it doesn't pass the Kwalitee tests.

The thing is I really would like to have a README.pod instead of a plain README because then Github can render it better.

Do you know how can I have the cake and eat it too? :-)

@karenetheridge
Copy link
Author

Do you know how can I have the cake and eat it too? :-)

README.md (markdown format) :)

@karenetheridge
Copy link
Author

I should have also mentioned that I use a README.pod in my distributions, but I only create it for the git repository itself, not the shipped distribution -- I do this with [ReadmeAnyFromPod] location = root, phase = release and then [Git::Commit]. (The shipped dist gets a simple README via the [Readme] plugin.)

@gnustavo
Copy link
Owner

gnustavo commented Mar 3, 2015

I've just posted a comment on brian d foy's blog post from where I got the idea to use a README.pod. The comment is still being held for aproval. I refered him to this PR and asked if he has any other ideas about how to solve this, because he will probably face the same problem.

I'll wait a little to see what I get from him.

@karenetheridge
Copy link
Author

I wanted to reply to that blog post, but unfortunately I'm one of the unlucky souls caught up in the b.p.o. issue from the last few months and I cannot log in or reply to anything.

Sadly, we are stuck with the legacy behaviour of the perl toolchain where .pm and .pod files in the root of the repository are installed into the subdirectory corresponding to the distribution name. README files are great, but if we are going to ship one in the distribution, we need to call it something else (I use README and INSTALL for simple documents, and keep a README.pod in my github repository for people driving by, but leave it out of the tarball). But shipping a README.pod that contains the same docs as the .pm itself is redundant, so I'm not saddened at all by having to omit it from the shipped dist.

It might be possible to twiddle the Makefile.PL arguments to have a shipped README.pod not get installed. I'll look into that further.

@gnustavo
Copy link
Owner

gnustavo commented Mar 3, 2015

"b.p.o. issue"? I couldn't find that on Google. :-)

@karenetheridge
Copy link
Author

@gnustavo blogs.perl.org is presently experiencing major problems, blocking many people from logging in: blogs-perl-org/blogs.perl.org#291

@gnustavo
Copy link
Owner

gnustavo commented Mar 3, 2015

Ah.. I think I had the same problem but since I use it rarely I thought I
forgot the password or something. I did comment today authenticating with
my Google account.

2015-03-03 16:44 GMT-03:00 Karen Etheridge notifications@github.com:

@gnustavo https://github.com/gnustavo blogs.perl.org is presently
experiencing major problems, blocking many people from logging in:
blogs-perl-org/blogs.perl.org#291
blogs-perl-org/blogs.perl.org#291


Reply to this email directly or view it on GitHub
#10 (comment).

Gustavo.

@sshaw
Copy link

sshaw commented Mar 4, 2015

This is what I use to generate my README.pod.

@karenetheridge
Copy link
Author

@sshaw that's fine, as long as README.pod is in MANIFEST.SKIP so the copy in the repository itself is not caught up by make dist.

gnustavo added a commit that referenced this issue Mar 7, 2015
Karen Etheridge explained to me [0] that I should not install
README.pod because it's installed in the wrong place. So, I'm
excluding it in the INSTALL.SKIP file.

I took the chance to also move the TODO.pod exclusion from the
MANIFEST.SKIP to the INSTALL.SKIP file so that the files are part of
the distribution but aren't installed. This way both can be seen on
MetaCPAN.

Ref: [0] #10
@gnustavo
Copy link
Owner

gnustavo commented Mar 7, 2015

@karenetheridge and @sshaw, my comment has appeared but brian hasn't answered my question yet.

I saw that @sshaw uses the INTALL.SKIP file in the https://github.com/sshaw/URI-fasp repo. I didn't know about it but I'm thinking that it could solve the problem, no? I mean, I can keep the README.pod file in the root directory, let it be part of the distribution (by not mentioning it on MANIFEST.SKIP), and simply mention it on INSTALL.SKIP so that it isn't installed.

I've done this on 66d3bb8. I've tested it locally and it seems to work. What do you think?

@sshaw
Copy link

sshaw commented Mar 9, 2015

INSTALL.SKIP will do the trick. As long as it's not installed I see no harm in having one. (Meta)?CPAN supports rendering it. It makes sense to target your docs for certain platforms, just as you would your code.

gnustavo added a commit that referenced this issue Mar 14, 2015
  [Fixes]

  - Do not install README.pod anymore since it's not useful after
    installation and when installed it ends up as Git::README instead of
    Git::Hooks::README. Many thanks to Karen Etheridge who kindly explained
    the problem to me.
    [#10]

  - Make JIRA::REST and Text::SpellChecker distribution recommendations
    instead of requirements. Text::SpellChecker has some installation
    problems in some platforms. Both are needed only for specific plugins
    which not every user may need.
    [#14]
@gnustavo
Copy link
Owner

Hi Karen and Skye. I've just released v1.6.10 which should solve the README.pod problem by listing it on INSTALL.SKIP. Please, check it out and tell me if it's ok.

@gnustavo gnustavo self-assigned this Mar 14, 2015
@karenetheridge
Copy link
Author

yep, looks good to me! 👍

@gnustavo
Copy link
Owner

Thanks!

@sshaw
Copy link

sshaw commented Mar 17, 2015

You're skipping README.pod and TODO.pod, but the man pages are still installed:

Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/More.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckAcls.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckFile.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckJira.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckLog.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckRewrite.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckStructure.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/CheckWhitespace.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/GerritChangeId.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/Hooks/TUTORIAL.pod
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/lib/perl5/Git/More/Message.pm
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckAcls.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckFile.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckJira.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckLog.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckRewrite.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckStructure.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::CheckWhitespace.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::GerritChangeId.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::TODO.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::Hooks::TUTORIAL.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::More.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::More::Message.3
Installing /Users/sshaw/.perlbrew/libs/perl-5.21.2@git-hooks-latest/man/man3/Git::README.3
/tmp >man -w Git::README
/Users/sshaw/perl5/perlbrew/perls/perl-5.21.2@git-hooks-latest/man/man3/Git::README.3

May want to change MANIFEST.SKIP to README.*, etc...

gnustavo added a commit that referenced this issue Mar 23, 2015
@gnustavo
Copy link
Owner

Ooops. I've skipped those too on 13da676 which will be included in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants