-
-
Notifications
You must be signed in to change notification settings - Fork 275
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
Added Perl package in Knowledge base #1666
Conversation
@kathatherine @beckermr @zklaus can u please review the PR. This is not the final one lot many changes are yet to be done, just wanted to know if I am proceeding in the right direction and if I have been following exactly what is being asked to fix in issue #1536. |
================== | ||
|
||
The most commonly used build system for perl packages is ``ExtUtils::MakeMaker``. | ||
For the archetypical packaging of packages of this form, you can have a look at ``perl-file-which``'s recipe. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Super small comment: Maybe add a link to the package here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Super small comment: Maybe add a link to the package here?
Sure sir! Will do that as well
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@BastianZim from where can I get the package link?😅
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://github.com/conda-forge/perl-file-which-feedstock
All of conda-forge‘s feedstocks are listed at https://conda-forge.org/feedstock-outputs/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would actually link to the meta.yaml directly:
https://github.com/conda-forge/perl-file-which-feedstock/blob/main/recipe/meta.yaml
Great start! I think it would also be good to leave a pointer to this section in the getting started section. I am a bit on the fence. Perhaps it's actually better not to include an example package here, but rather explain the full meta.yaml file. I think in any case, it would be good to add the bit about core, vendor, and site parts of Perl installations so maintainers can get an understanding of this even when not using MakeMaker. Finally, the line under the section title should have the same length as the title itself. |
src/maintainer/knowledge_base.rst
Outdated
|
||
The steps are as follows: | ||
|
||
* The name is composed of ``perl-`` + the lowered version of the CPAN name. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* The name is composed of ``perl-`` + the lowered version of the CPAN name. | |
* The name is composed of ``perl-`` + the lower-cased version of the CPAN name. |
src/maintainer/knowledge_base.rst
Outdated
The steps are as follows: | ||
|
||
* The name is composed of ``perl-`` + the lowered version of the CPAN name. | ||
* The requirements contain ``make`` for build, ``perl`` and ``perl-extutils-makemaker`` for host, and perl for run. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* The requirements contain ``make`` for build, ``perl`` and ``perl-extutils-makemaker`` for host, and perl for run. | |
* The requirements contain ``make`` for ``build``, ``perl`` and ``perl-extutils-makemaker`` for ``host``, and ``perl`` for ``run``. |
src/maintainer/knowledge_base.rst
Outdated
build: | ||
number: 0 | ||
noarch: generic | ||
script: | ||
- perl Makefile.PL INSTALLDIRS=vendor NO_PERLLOCAL=1 NO_PACKLIST=1 | ||
- make | ||
- make test | ||
- make install VERBINST=1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
build: | |
number: 0 | |
noarch: generic | |
script: | |
- perl Makefile.PL INSTALLDIRS=vendor NO_PERLLOCAL=1 NO_PACKLIST=1 | |
- make | |
- make test | |
- make install VERBINST=1 | |
build: | |
number: 0 | |
noarch: generic | |
script: | |
- perl Makefile.PL INSTALLDIRS=vendor NO_PERLLOCAL=1 NO_PACKLIST=1 | |
- make | |
- make test | |
- make install VERBINST=1 |
src/maintainer/knowledge_base.rst
Outdated
``Makefile.PL`` is the crucial one that guarantees installation into the vendor section, as well as non-interference with standard files by the ``NO_PERLLOCAL`` and ``NO_PACKLIST`` switches. | ||
|
||
.. note:: | ||
``noarch: generic`` should be present only if the package is a pure perl one, i.e. contains no compiled c code or extensions, and that of course more requirements can be necessary. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
``noarch: generic`` should be present only if the package is a pure perl one, i.e. contains no compiled c code or extensions, and that of course more requirements can be necessary. | |
``noarch: generic`` should be present only if the package is a pure perl one (i.e. contains no compiled C code or extensions), and that of course more requirements can be necessary. |
and that of course more requirements can be necessary
What do you mean here exactly?
src/maintainer/knowledge_base.rst
Outdated
|
||
* The name is composed of ``perl-`` + the lowered version of the CPAN name. | ||
* The requirements contain ``make`` for build, ``perl`` and ``perl-extutils-makemaker`` for host, and perl for run. | ||
* The tests section under imports lists the CPAN module that can be ``used`` in perl. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* The tests section under imports lists the CPAN module that can be ``used`` in perl. | |
* The tests section under ``imports`` lists the CPAN module that can be ``used`` in perl. |
PR Checklist:
src
directory, not indocs
or in the html filesfixes Add Perl package hints to documentation #1536