From 7890c98415e829c94d383e17c4ca88af40ea0391 Mon Sep 17 00:00:00 2001 From: Ellen Marie Dash Date: Fri, 13 Aug 2021 15:59:46 -0400 Subject: [PATCH] Only check if descriptions *start with* FIXME/TODO It doesn't make much sense to just forbid certain words in descriptions. --- lib/rubygems/specification_policy.rb | 2 +- test/rubygems/test_gem_specification.rb | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/rubygems/specification_policy.rb b/lib/rubygems/specification_policy.rb index 86277a20584e..24ac491e2844 100644 --- a/lib/rubygems/specification_policy.rb +++ b/lib/rubygems/specification_policy.rb @@ -381,7 +381,7 @@ def validate_licenses end LAZY = '"FIxxxXME" or "TOxxxDO"'.gsub(/xxx/, '') - LAZY_PATTERN = /FI XME|TO DO/x.freeze + LAZY_PATTERN = /^FI XME|^TO DO/x.freeze HOMEPAGE_URI_PATTERN = /\A[a-z][a-z\d+.-]*:/i.freeze def validate_lazy_metadata diff --git a/test/rubygems/test_gem_specification.rb b/test/rubygems/test_gem_specification.rb index 88afa3faa015..782ae0380fcc 100644 --- a/test/rubygems/test_gem_specification.rb +++ b/test/rubygems/test_gem_specification.rb @@ -2781,6 +2781,20 @@ def test_validate_description end assert_equal %("#{f}" or "#{t}" is not a description), e.message + + # Adding #{f} anywhere after the start of the description should be fine. + @a1.description = "(some description) #{f}" + + assert_nothing_raised do + @a1.validate + end + + # Adding #{t} anywhere after the start of the description should be fine. + @a1.description = "(some description) #{t}" + + assert_nothing_raised do + @a1.validate + end end end