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

feature 'apostrophe_as_package_separator' #22675

Open
wants to merge 9 commits into
base: blead
Choose a base branch
from

Conversation

tonycoz
Copy link
Contributor

@tonycoz tonycoz commented Oct 17, 2024

Revert removal of apostrophe in package names, and the deprecation of such.

Put the use of apostrophe in package names in source behind a default enabled feature.

This includes possible changes to the CPAN upstream modules to account for the brief set of development versions where apostrophe in names was not supported, but I could see an author ignoring it. These version numbers may need to change depending on if/when this is merged.

Fixes #22644


  • This set of changes requires a perldelta entry, and it is included.
  • This set of changes requires a perldelta entry, and I need help writing it.
  • This set of changes does not require a perldelta entry.

@tonycoz tonycoz changed the title 22644 feature apos in symbol feature 'apostrophe_as_package_separator' Oct 17, 2024
Copy link
Contributor

@jkeenan jkeenan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have not examined the actual code of this pull-request reversion. I have attempted to examine the impact of this reversion on the set of CPAN distributions I typically look at for BBC breakage.

I pulled down this p.r. to disk (Ubuntu Linux 22.04 LTS), rebased it on blead, built a typical unthreaded perl, installed cpanm against that, then used cpanm to try to install various distributions from CPAN, including:

  • Distributions whose PASS/FAIL status regressed between our July and August development releases (and their prerequisites)

  • My "augmented CPAN-River-500" (500 distros)

These totalled approximately 661 distributions. I found no adverse effects from this p.r.

  • Distributions that originally FAILed due to apostrophe-in-names-removal and were left untouched since that went into effect and were not subsequently modified (e.g., DBIx::Class) once again PASS.

  • Distributions that originally FAILed due to apostrophe-in-names-removal but were subsequently updated by their authors/maintainers (e.g., Try::Tiny; Email-Send) still PASS.

Subject to the limitations of the QA procedure described above, this pull request LGTM.

pod/perlmod.pod Outdated
Comment on lines 84 to 85
Using C<'> as a package separator is deprecated and will be removed in
Perl 5.40.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs updating to reflect the new situation.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've changed it, but wasn't sure how much to mention here.

This reverts commit 83d4e74.

This also bumps the version number.
This reverts commit 87e1ec1 with some
adjustments due to upstream changes.
I'm a little hesitant over the removal of the warning identifier,
since it means code that suppressed the warning in 5.38 and 5.40 will
now see an error, but porting/deprecation complained when I removed
the documentation from pod/perldeprecation.pod but left the warning
in.

An alternative would be to add a "Cancelled Removals" to
perldeprecation.
@tonycoz tonycoz force-pushed the 22644-feature-apos-in-symbol branch from 5cbcc69 to 343ee03 Compare October 31, 2024 04:05
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

Successfully merging this pull request may close these issues.

Feature guard the removal of apostrophe as a package separator
3 participants