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

Update packer and PerlPowerTools.exe #507

Open
kal247 opened this issue Mar 17, 2024 · 3 comments
Open

Update packer and PerlPowerTools.exe #507

kal247 opened this issue Mar 17, 2024 · 3 comments
Assignees
Labels
Platform: windows an existing feature does not work Priority: low get to this whenever Status: stalled something is blocking progress Type: enhancement improve a feature that already exists

Comments

@kal247
Copy link
Contributor

kal247 commented Mar 17, 2024

Hello Brian,

I'm catching up with this topic after a very long break.

There are a few changes from 2022 for which I've never submitted a PR. It's a massive simplification
plus improvements and bugfixes, and it would make perlpowertools.exe feature complete (I think).

List of changes :

  1. Only Windows is supported, to limit scope (it doesn't really make sense for other platforms anyway).
  2. The helper script bin\perlpowertools is standalone (not generated), with dynamic tools list.
  3. With option -V, bin\perlpowertools will display the version of PerlPowerTools module itself.
  4. The packer script packer\packer.pl has been moved and renamed as util\packer.
  5. Perldoc's POD is now included in the package, meaning this works : perlpowertools.exe perldoc perldoc.
  6. Bugfixes
  7. Basic tests specific to the packer and helper scripts in t/perlpowertools/ (I'm not sure it's the right place).
  8. Rough documentation in README_PerlPowerTools.exe.pod.

List of changes to other tools in bin:

  1. Modulinos need the following patch run() if !caller() || caller(0) eq 'PAR' || caller(1) eq 'PAR'. I've already patched the following tools : date, echo, factor, glob, units.

Future work :

  1. If the modulinos changes are accepted, document it somewhere. Maybe also in PROGRAMMING_STYLE.md?
  2. The documentation needs to be improved and must explain how to build your own custom executable, what is PAR::Packer and its startup process (unzip). Problems with antivirus software. POD missing in packer (but usage ok).
  3. Issues with $0. Some tools in bin might need review/patch. See notes in packer header.

Should I raise one (or more) PR for this?

Thank you and best regards.

@briandfoy
Copy link
Owner

Yes, let's start with a new PR. Your plan looks really good.

To answer some questions:

  1. Modulinos are fine (and maybe even preferred). A patch to PROGRAMMING_STYLE.md would be nice. You can open a separate issue/PR for that if you like.
  2. I don't know what needs to happen to document this, but if you start it, I'll go through the instructions to test it.
  3. We have started work to get away from $0 (or use it once). If you need something for your stuff to work, let me know and we'll see how we can get it done.

@briandfoy briandfoy added Type: enhancement improve a feature that already exists Priority: low get to this whenever Platform: windows an existing feature does not work labels Mar 18, 2024
@briandfoy
Copy link
Owner

briandfoy commented Mar 18, 2024

  • Let's make the fixes to the caller stuff in separate PRs. We can do that now and things should keep working. We don't need to wait to apply those.

@briandfoy briandfoy added the Status: stalled something is blocking progress label Apr 4, 2024
kal247 added a commit to kal247/PerlPowerTools that referenced this issue Apr 19, 2024
@kal247 kal247 mentioned this issue Apr 19, 2024
@kal247
Copy link
Contributor Author

kal247 commented Apr 19, 2024

Hello Brian,
I've open pull request #570 with points 1-9, 11 from my initial post.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Platform: windows an existing feature does not work Priority: low get to this whenever Status: stalled something is blocking progress Type: enhancement improve a feature that already exists
Projects
None yet
Development

No branches or pull requests

2 participants