Skip to content

alpha Objective 2: strict-by-default #153

@jkeenan

Description

@jkeenan

Objective: Implement 'strict-by-default'.

Modify the guts such that strictures are now on by default. The statement use strict; should become a "no-op" except where a particular file has previously called some variant of no strict;.

No other guts changes except those needed to implement this objective.

Note: If the lead developer feels it would be better to sub-divide this objective into three sub-objectives -- 'strict-vars-by-default', 'strict-subs-by-default', 'strict-refs-by-default' -- that's cool. We'll just need to create tickets for that.

Initially, there will be many files in the test suite and many dual-life modules that will fail to compile once we are strict-by-default. If we were being very purist, the only revisions we would make to such files would be those that get the file to compile and, in the case of a file in the test suite, to get the test to run GREEN.

However, many files in the test suite have already been brought into compliance with both strict-by-default, warnings-by-default and other, later objectives. We can make use of that prior art by appropriately cherry-picking commits to such files from earlier branches.

Acceptance Criteria: The changes needed to have Perl be strict-by-default are clearly available from the commit history and documented in the commit log. The Perl test suite runs GREEN in all major configurations and on all major operating systems for which we can test.

Metadata

Metadata

Assignees

No one assigned

    Labels

    objectivemileposts for 'alpha' development

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions