TooMuchCode 0.18 CPAN 출시
the release of 0.17 1주일 만에 @oalders, @ferki ( Issue #25 ) 와 비동기식으로 의견을 교환한 후, 곧 후속 릴리스를 하기로 결정했습니다.
버전 0.17에서는 이전 매개변수
whitelist
를 대체하기 위해 새 구성 매개변수whitelist_number
를 포함하도록 ProhibitDuplicateLiteral 정책을 업데이트했습니다. 버전 0.18에서는 둘 다 제거되었습니다. 이를 대체하는 매개변수는 allowlist
입니다.이제 숫자 42와 "forty two"를 문자 그대로 여러 번 써야 하는 경우
.perlcriticrc
에 나열합니다.[TooMuchCode::ProhibitDuplicateLiteral]
allowlist = "forty two" 42
"허용 목록"이라는 이름은 이미 @ferki에서 제안했으며 "허용 목록"을 사용하는 기존 규칙에 맞게 수정했습니다. 이제 그러한 규칙을 변경해야 한다고 결정했습니다(PR #28 참조). "허용"이라는 단어가 현재 의미를 잃어 버리는 날까지 아마도 직접적이고 명시적이라는 의미에서 더 나은 명명 선택입니다.
다른 개선 사항은 Issue 18(다시 @oalders 덕분에)을 해결하는 것입니다. 여기서 가져온 기호를
@EXPORT
또는 @EXPORT_OK
에 할당하면 ProhibitUnusedImport 정책에 따라 해당 기호를 사용하는 것으로 올바르게 계산됩니다.그것은 또한 올바른 일이기 때문에 계산되지 않았습니다.
foo
, $bar
, @baz
의 세 가지 기호와 다음과 같은 할당이 있다고 가정합니다.my @stuff = qw(foo $bar @baz);
이러한 기호는 문자 그대로 명령문에 나타나지만
qw()
안에 모두 인용되어 있기 때문에 해당 명령문을 평가하는 것은 해당 기호의 평가에 의존하지 않습니다. @stuff
는 'foo'
, '$bar'
및 '@baz'
의 3개 문자열로 평가되며, 이는 foo
(베어워드, 아마도 서브루틴 이름), $bar
및 '@baz'와 아무 관련이 없습니다.그러나 LHS 배열 변수가
@EXPORT
또는 @EXPORT_OK
인 경우 할당은 다른 의미를 갖습니다.our @EXPORT = qw(foo $bar @baz);
our @EXPORT_OK = qw(@baz);
@EXPORT
자체에는 여전히 3개의 문자열만 할당되지만, 결국 현재 모듈을 외부 코드 조각으로 가져오면( use
-ed 또는 require
-ed) 이 3개의 문자열은 기호 테이블의 일부 내용을 참조합니다. 원격으로 사용될 수 있습니다.글쎄,
foo
가 실제로 원격으로 사용되는지 여부는 아마도 알 수 없습니다. @EXPORT
및 @EXPORT_OK
와 관련된 할당의 경우를 고려하는 것으로 충분해야 합니다.perlvar 의 특수 변수와 관련하여 아직 발견되지 않은 특별한 경우가 더 많을 것이라고 추측합니다. 또는 유명한 모듈 X는 우리가 처리할 하위 언어를 정의했습니다.
원래 게시 위치 gugod's blog -- CPAN Release of TooMuchCode 0.18
Reference
이 문제에 관하여(TooMuchCode 0.18 CPAN 출시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/gugod/cpan-release-of-toomuchcode-0-18-a8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)