]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Refresh spelling configuration 14790/head
authorJosh Soref <2119212+jsoref@users.noreply.github.com>
Mon, 21 Oct 2024 18:31:15 +0000 (14:31 -0400)
committerJosh Soref <2119212+jsoref@users.noreply.github.com>
Mon, 21 Oct 2024 19:47:16 +0000 (15:47 -0400)
* Roughly merging configuration from https://github.com/check-spelling/spell-check-this/commit/f398e2297a86886bcb3f04e6627ea57d969a80b1
* Adding `regression-tests.*/description` to only to enable checking
* Turning on `check_file_names` to check file name paths

.github/actions/spell-check/allow.txt
.github/actions/spell-check/candidate.patterns
.github/actions/spell-check/excludes.txt
.github/actions/spell-check/expect.txt
.github/actions/spell-check/line_forbidden.patterns
.github/actions/spell-check/only.txt
.github/actions/spell-check/patterns.txt
.github/actions/spell-check/reject.txt
.github/workflows/spelling3.yml

index 7fa60bb7936ebfbed22b157e5159caed4dd7ac81..6015d0f50f66a7c84b5b881f51941c689599d03c 100644 (file)
@@ -1314,6 +1314,7 @@ getvalue
 getvars
 ghostscript
 gir
+github
 gitlab
 givr
 gjeqe
@@ -1442,15 +1443,11 @@ HSIZE
 HSw
 HTAB
 htmlfiles
-htobe
-htole
-htonl
-htons
-htons'ed
 httpconnector
 httpconnects
 httpd
 HTTPHEADER
+https
 httpversion
 HUnit
 hwinfo
@@ -3550,8 +3547,8 @@ tcpavgqueriesperconnection
 tcpbench
 tcpbytesanswered
 tcpclient
-tcpclienttimeouts
 tcpclientthreads
+tcpclienttimeouts
 tcpcurrentconnections
 tcpdiedreaddingresponse
 tcpdiedreadingquery
@@ -3807,6 +3804,7 @@ TZOFF
 uapi
 UBIGINT
 ubsan
+ubuntu
 UBXc
 ucf
 ucfq
@@ -3857,10 +3855,10 @@ undeffed
 UNDOC
 unescape
 unhexlify
-uninstall
 unicode
 Unicode
 UNICODE
+uninstall
 uniq
 uniquw
 UNIREGISTRYMARKET
@@ -3901,8 +3899,8 @@ useradd
 useragent
 userdata
 userfriendly
-username
 usermsec
+username
 userperc
 USHRT
 usleep
@@ -4047,6 +4045,7 @@ WNOHANG
 Woi
 Wor
 wordpad
+workarounds
 workdir
 workflow
 Wowie
@@ -4083,9 +4082,9 @@ xffverylongstring
 XFRd
 XFRM
 xfrserver
-xhtml
-XHTML
 xhr
+XHTML
+xhtml
 xit
 xlabel
 xluajit
index 7325ad60075883fd20ef7ab78a9840da54db8b92..040967025f08fa63c088c0e02a6826be6c151608 100644 (file)
@@ -8,7 +8,7 @@
 ^.*\b[Cc][Ss][Pp][Ee][Ll]{2}:\s*[Dd][Ii][Ss][Aa][Bb][Ll][Ee]-[Ll][Ii][Nn][Ee]\b
 
 # patch hunk comments
-^\@\@ -\d+(?:,\d+|) \+\d+(?:,\d+|) \@\@ .*
+^@@ -\d+(?:,\d+|) \+\d+(?:,\d+|) @@ .*
 # git index header
 index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
 
@@ -26,13 +26,13 @@ index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
 # data url in quotes
 ([`'"])data:(?:[^ `'"].*?|)(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}).*\g{-1}
 # data url
-data:[-a-zA-Z=;:/0-9+]*,\S*
+\bdata:[-a-zA-Z=;:/0-9+]*,\S*
 
 # https/http/file urls
-#(?:\b(?:https?|ftp|file)://)[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]
+#(?:\b(?:https?|ftp|file)://)[-A-Za-z0-9+&@#/*%?=~_|!:,.;]+[-A-Za-z0-9+&@#/*%=~_|]
 
 # mailto urls
-mailto:[-a-zA-Z=;:/?%&0-9+@.]{3,}
+mailto:[-a-zA-Z=;:/?%&0-9+@._]{3,}
 
 # magnet urls
 magnet:[?=:\w]+
@@ -152,6 +152,9 @@ themes\.googleusercontent\.com/static/fonts/[^/\s"]+/v\d+/[^.]+.
 # GHSA
 GHSA(?:-[0-9a-z]{4}){3}
 
+# GitHub actions
+\buses:\s+[-\w.]+/[-\w./]+@[-\w.]+
+
 # GitLab commit
 \bgitlab\.[^/\s"]*/\S+/\S+/commit/[0-9a-f]{7,16}#[0-9a-f]{40}\b
 # GitLab merge requests
@@ -210,7 +213,7 @@ accounts\.binance\.com/[a-z/]*oauth/authorize\?[-0-9a-zA-Z&%]*
 # medium link
 \blink\.medium\.com/[a-zA-Z0-9]+
 # medium
-\bmedium\.com/\@?[^/\s"]+/[-\w]+
+\bmedium\.com/@?[^/\s"]+/[-\w]+
 
 # microsoft
 \b(?:https?://|)(?:(?:download\.visualstudio|docs|msdn2?|research)\.microsoft|blogs\.msdn)\.com/[-_a-zA-Z0-9()=./%]*
@@ -275,7 +278,7 @@ slack://[a-zA-Z0-9?&=]+
 [0-9a-f]{32}\@o\d+\.ingest\.sentry\.io\b
 
 # Twitter markdown
-\[\@[^[/\]:]*?\]\(https://twitter.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)\)
+\[@[^[/\]:]*?\]\(https://twitter.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)\)
 # Twitter hashtag
 \btwitter\.com/hashtag/[\w?_=&]*
 # Twitter status
@@ -326,17 +329,11 @@ ipfs://[0-9a-zA-Z]{3,}
 # Wikipedia
 \ben\.wikipedia\.org/wiki/[-\w%.#]+
 
-# Contributors with non-ascii characters in their name
-Hoffst[^[:ascii:]]+tte
-Gri[^[:ascii:]]
-Lundstr[^[:ascii:]]+m
-Joaqu[^[:ascii:]]n
-
 # gitweb
 [^"\s]+/gitweb/\S+;h=[0-9a-f]+
 
 # HyperKitty lists
-/archives/list/[^@/]+\@[^/\s"]*/message/[^/\s"]*/
+/archives/list/[^@/]+@[^/\s"]*/message/[^/\s"]*/
 
 # lists
 /thread\.html/[^"\s]+
@@ -354,7 +351,7 @@ Joaqu[^[:ascii:]]n
 \bopen\.spotify\.com/embed/playlist/\w+
 
 # Mastodon
-\bmastodon\.[-a-z.]*/(?:media/|\@)[?&=0-9a-zA-Z_]*
+\bmastodon\.[-a-z.]*/(?:media/|@)[?&=0-9a-zA-Z_]*
 
 # scastie
 \bscastie\.scala-lang\.org/[^/]+/\w+
@@ -396,9 +393,9 @@ Joaqu[^[:ascii:]]n
 (?:\\(?:u00|x)1[Bb]|\x1b|\\u\{1[Bb]\})\[\d+(?:;\d+|)m
 
 # URL escaped characters
-\%[0-9A-F][A-F](?=[A-Za-z])
+%[0-9A-F][A-F](?=[A-Za-z])
 # lower URL escaped characters
-\%[0-9a-f][a-f](?=[a-z]{2,})
+%[0-9a-f][a-f](?=[a-z]{2,})
 # IPv6
 \b(?:[0-9a-fA-F]{0,4}:){3,7}[0-9a-fA-F]{0,4}\b
 # c99 hex digits (not the full format, just one I've seen)
@@ -406,7 +403,7 @@ Joaqu[^[:ascii:]]n
 # Punycode
 \bxn--[-0-9a-z]+
 # sha
-sha\d+:[0-9]*[a-f]{3,}[0-9a-f]*
+sha\d+:[0-9a-f]*?[a-f]{3,}[0-9a-f]*
 # sha-... -- uses a fancy capture
 (\\?['"]|&quot;)[0-9a-f]{40,}\g{-1}
 # hex runs
@@ -426,10 +423,13 @@ sha\d+:[0-9]*[a-f]{3,}[0-9a-f]*
 # pki
 -----BEGIN.*-----END
 
+# pki (base64)
+LS0tLS1CRUdJT.*
+
 # uuid:
 \b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
 # hex digits including css/html color classes:
-(?:[\\0][xX]|\\u|[uU]\+|#x?|\%23)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
+(?:[\\0][xX]|\\u|[uU]\+|#x?|%23)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
 # integrity
 integrity=(['"])(?:\s*sha\d+-[-a-zA-Z=;:/0-9+]{40,})+\g{-1}
 
@@ -447,20 +447,47 @@ integrity=(['"])(?:\s*sha\d+-[-a-zA-Z=;:/0-9+]{40,})+\g{-1}
 Name\[[^\]]+\]=.*
 
 # IServiceProvider / isAThing
-#\b(?:I|isA)(?=(?:[A-Z][a-z]{2,})+\b)
+(?:\b|_)(?:(?:ns|)I|isA)(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b))
 
 # crypt
 (['"])\$2[ayb]\$.{56}\g{-1}
 
+# apache/old crypt
+(['"]|)\$+(?:apr|)1\$+.{8}\$+.{22}\g{-1}
+
+# sha1 hash
+\{SHA\}[-a-zA-Z=;:/0-9+]{3,}
+
+# machine learning (?)
+\b(?i)ml(?=[a-z]{2,})
+
+# python
+\b(?i)py(?!gments|gmy|lon|ramid|ro|th)(?=[a-z]{2,})
+
 # scrypt / argon
 \$(?:scrypt|argon\d+[di]*)\$\S+
 
 # go.sum
 #\bh1:\S+
 
+# scala imports
+^import (?:[\w.]|\{\w*?(?:,\s*(?:\w*|\*))+\})+
+
 # scala modules
 ("[^"]+"\s*%%?\s*){2,3}"[^"]+"
 
+# container images
+image: [-\w./:@]+
+
+# Docker images
+^\s*FROM\s+\S+:\S+(?:\s+AS\s+\S+|)
+
+# `docker images` REPOSITORY TAG IMAGE ID CREATED SIZE
+\s*\S+/\S+\s+\S+\s+[0-9a-f]{8,}\s+\d+\s+(?:hour|day|week)s ago\s+[\d.]+[KMGT]B
+
+# Intel intrinsics
+_mm_\w+
+
 # Input to GitHub JSON
 content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
 
@@ -468,28 +495,32 @@ content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
 # you'll want to remove the `(?=.*?")` suffix.
 # The `(?=.*?")` suffix should limit the false positives rate
 # printf
-%(?:(?:(?:hh?|ll?|[jzt])?[diuoxn]|l?[cs]|L?[fega]|p)(?=[a-z]{2,})|(?:X|L?[FEGA]|p)(?=[a-zA-Z]{2,}))(?=[_a-zA-Z]+\b)(?!%)(?=.*?['"])
+%(?:(?:(?:hh?|ll?|[jzt])?[diuoxn]|l?[cs]|L?[fega]|p)(?=[a-z]{2,})|(?:X|L?[FEGA])(?=[a-zA-Z]{2,}))(?!%)(?=[_a-zA-Z]+(?!%)\b)(?=.*?['"])
+
+# Alternative printf
+# %s
+%(?:s(?=[a-z]{2,}))(?!%)(?=[_a-zA-Z]+(?!%[^s])\b)(?=.*?['"])
 
 # Python string prefix / binary prefix
 # Note that there's a high false positive rate, remove the `?=` and search for the regex to see if the matches seem like reasonable strings
-(?<!')\b(?:B|BR|Br|F|FR|Fr|R|RB|RF|Rb|Rf|U|UR|Ur|b|bR|br|f|fR|fr|r|rB|rF|rb|rf|u|uR|ur)'(?=[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})
+(?<!['"])\b(?:B|BR|Br|F|FR|Fr|R|RB|RF|Rb|Rf|U|UR|Ur|b|bR|br|f|fR|fr|r|rB|rF|rb|rf|u|uR|ur)['"](?=[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})
 
 # Regular expressions for (P|p)assword
 \([A-Z]\|[a-z]\)[a-z]+
 
 # JavaScript regular expressions
 # javascript test regex
-/.*/[gim]*\.test\(
+/.{3,}/[gim]*\.test\(
 # javascript match regex
-\.match\(/[^/\s"]*/[gim]*\s*
+\.match\(/[^/\s"]{3,}/[gim]*\s*
 # javascript match regex
-\.match\(/\\[b].*?/[gim]*\s*\)(?:;|$)
+\.match\(/\\[b].{3,}?/[gim]*\s*\)(?:;|$)
 # javascript regex
-^\s*/\\[b].*/[gim]*\s*(?:\)(?:;|$)|,$)
+^\s*/\\[b].{3,}?/[gim]*\s*(?:\)(?:;|$)|,$)
 # javascript replace regex
-\.replace\(/[^/\s"]*/[gim]*\s*,
+\.replace\(/[^/\s"]{3,}/[gim]*\s*,
 # assign regex
-= /[^*]*?(?:[a-z]{3,}|[A-Z]{3,}|[A-Z][a-z]{2,}).*/
+= /[^*].*?(?:[a-z]{3,}|[A-Z]{3,}|[A-Z][a-z]{2,}).*/[gi]?(?=\W|$)
 # perl regex test
 [!=]~ (?:/.*/|m\{.*?\}|m<.*?>|m([|!/@#,;']).*?\g{-1})
 
@@ -499,6 +530,9 @@ content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
 # perl run
 perl(?:\s+-[a-zA-Z]\w*)+
 
+# C network byte conversions
+(?:\d|\bh)to(?!ken)(?=[a-z])|to(?=[adhiklpun]\()
+
 # Go regular expressions
 regexp?\.MustCompile\(`[^`]*`\)
 
@@ -512,14 +546,20 @@ regexp?\.MustCompile\(`[^`]*`\)
 sed 's/(?:[^/]*?[a-zA-Z]{3,}[^/]*?/){2}
 
 # node packages
-(["'])\@[^/'" ]+/[^/'" ]+\g{-1}
+(["'])@[^/'" ]+/[^/'" ]+\g{-1}
 
 # go install
 go install(?:\s+[a-z]+\.[-@\w/.]+)+
 
+# pom.xml
+<(?:group|artifact)Id>.*?<
+
 # jetbrains schema https://youtrack.jetbrains.com/issue/RSRP-489571
 urn:shemas-jetbrains-com
 
+# Debian changelog severity
+[-\w]+ \(.*\) (?:\w+|baseline|unstable|experimental); urgency=(?:low|medium|high|emergency|critical)\b
+
 # kubernetes pod status lists
 # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
 \w+(?:-\w+)+\s+\d+/\d+\s+(?:Running|Pending|Succeeded|Failed|Unknown)\s+
@@ -527,9 +567,15 @@ urn:shemas-jetbrains-com
 # kubectl - pods in CrashLoopBackOff
 \w+-[0-9a-f]+-\w+\s+\d+/\d+\s+CrashLoopBackOff\s+
 
+# kubernetes applications
+\.apps/[-\w]+
+
 # kubernetes object suffix
 -[0-9a-f]{10}-\w{5}\s
 
+# kubernetes crd patterns
+^\s*pattern: .*$
+
 # posthog secrets
 ([`'"])phc_[^"',]+\g{-1}
 
@@ -541,6 +587,9 @@ urn:shemas-jetbrains-com
 # xcode api botches
 customObjectInstantitationMethod
 
+# msvc api botches
+PrependWithABINamepsace
+
 # configure flags
 .* \| --\w{2,}.*?(?=\w+\s\w+)
 
@@ -548,21 +597,31 @@ customObjectInstantitationMethod
 \.fa-[-a-z0-9]+
 
 # bearer auth
-(['"])Bear[e][r] .*?\g{-1}
+(['"])[Bb]ear[e][r] .*?\g{-1}
+
+# bearer auth
+\b[Bb]ear[e][r]:? [-a-zA-Z=;:/0-9+.]+
 
 # basic auth
-(['"])Basic [-a-zA-Z=;:/0-9+]{3,}\g{-1}
+(['"])[Bb]asic [-a-zA-Z=;:/0-9+]{3,}\g{-1}
 
 # base64 encoded content
-([`'"])[-a-zA-Z=;:/0-9+]+==\g{-1}
+([`'"])[-a-zA-Z=;:/0-9+]{3,}=\g{-1}
 # base64 encoded content in xml/sgml
->[-a-zA-Z=;:/0-9+]+=</
+>[-a-zA-Z=;:/0-9+]{3,}=</
 # base64 encoded content, possibly wrapped in mime
 #(?:^|[\s=;:?])[-a-zA-Z=;:/0-9+]{50,}(?:[\s=;:?]|$)
+# base64 encoded json
+\beyJ[-a-zA-Z=;:/0-9+]+
+# base64 encoded pkcs
+\bMII[-a-zA-Z=;:/0-9+]+
 
 # encoded-word
 =\?[-a-zA-Z0-9"*%]+\?[BQ]\?[^?]{0,75}\?=
 
+# numerator
+\bnumer\b(?=.*denom)
+
 # Time Zones
 \b(?:Africa|Atlantic|America|Antarctica|Asia|Australia|Europe|Indian|Pacific)(?:/\w+)+
 
@@ -572,14 +631,14 @@ customObjectInstantitationMethod
 # systemd mode
 systemd.*?running in system mode \([-+].*\)$
 
+# Lorem
 # Update Lorem based on your content (requires `ge` and `w` from https://github.com/jsoref/spelling; and `review` from https://github.com/check-spelling/check-spelling/wiki/Looking-for-items-locally )
 # grep '^[^#].*lorem' .github/actions/spelling/patterns.txt|perl -pne 's/.*i..\?://;s/\).*//' |tr '|' "\n"|sort -f |xargs -n1 ge|perl -pne 's/^[^:]*://'|sort -u|w|sed -e 's/ .*//'|w|review -
 # Warning, while `(?i)` is very neat and fancy, if you have some binary files that aren't proper unicode, you might run into:
-## Operation "substitution (s///)" returns its argument for non-Unicode code point 0x1C19AE (the code point will vary).
-## You could manually change `(?i)X...` to use `[Xx]...`
-## or you could add the files to your `excludes` file (a version after 0.0.19 should identify the file path)
-# Lorem
-(?:\w|\s|[,.])*\b(?i)(?:amet|consectetur|cursus|dolor|eros|ipsum|lacus|libero|ligula|lorem|magna|neque|nulla|suscipit|tempus)\b(?:\w|\s|[,.])*
+# ... Operation "substitution (s///)" returns its argument for non-Unicode code point 0x1C19AE (the code point will vary).
+# ... You could manually change `(?i)X...` to use `[Xx]...`
+# ... or you could add the files to your `excludes` file (a version after 0.0.19 should identify the file path)
+(?:(?:\w|\s|[,.])*\b(?i)(?:amet|consectetur|cursus|dolor|eros|ipsum|lacus|libero|ligula|lorem|magna|neque|nulla|suscipit|tempus)\b(?:\w|\s|[,.])*)
 
 # Non-English
 [a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,}
@@ -594,27 +653,45 @@ systemd.*?running in system mode \([-+].*\)$
 # latex (check-spelling >= 0.0.22)
 \\\w{2,}\{
 
+# American Mathematical Society (AMS) / Doxygen
+TeX/AMS
+
+# File extensions
+\*\.[+\w]+,
+
 # eslint
 "varsIgnorePattern": ".+"
 
+# nolint
+nolint:\w+
+
 # Windows short paths
 [/\\][^/\\]{5,6}~\d{1,2}[/\\]
 
+# cygwin paths
+/cygdrive/[a-zA-Z]/(?:Program Files(?: \(.*?\)| ?)(?:/[-+.~\\/()\w ]+)*|[-+.~\\/()\w])+
+
 # in check-spelling@v0.0.22+, printf markers aren't automatically consumed
 # printf markers
 (?<!\\)\\[nrt](?=[a-z]{2,})
-# alternate markers if you run into latex and friends
+# alternate printf markers if you run into latex and friends
 (?<!\\)\\[nrt](?=[a-z]{2,})(?=.*['"`])
 
+# Markdown anchor links
+\(#\S*?[a-zA-Z]\S*?\)
+
 # apache
 a2(?:en|dis)
 
 # weak e-tag
 W/"[^"]+"
 
+# authors/credits
+^\*(?: [A-Z](?:\w+|\.)){2,} (?=\[|$)
+
 # the negative lookahead here is to allow catching 'templatesz' as a misspelling
 # but to otherwise recognize a Windows path with \templates\foo.template or similar:
-\\(?:necessary|r(?:eport|esolve[dr]?|esult)|t(?:arget|emplates?))(?![a-z])
+\\(?:necessary|r(?:elease|eport|esolve[dr]?|esult)|t(?:arget|emplates?))(?![a-z])
 # ignore long runs of a single character:
 \b([A-Za-z])\g{-1}{3,}\b
 
@@ -633,13 +710,24 @@ W/"[^"]+"
 # Compiler flags (linker)
 ,-B
 
+# libraries
+(?:\b|_)lib(?:re(?=office)|)(?!era[lt]|ero|erty|rar(?:i(?:an|es)|y))(?=[a-z])
+
+# WWNN/WWPN (NAA identifiers)
+\b(?:0x)?10[0-9a-f]{14}\b|\b(?:0x|3)?[25][0-9a-f]{15}\b|\b(?:0x|3)?6[0-9a-f]{31}\b
+
+# iSCSI iqn (approximate regex)
+\biqn\.[0-9]{4}-[0-9]{2}(?:[\.-][a-z][a-z0-9]*)*\b
+
 # curl arguments
-\b(?:\\n|)curl(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
+\b(?:\\n|)curl(?:\.exe|)(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
 # set arguments
-\bset(?:\s+-[abefimouxE]{1,2})*\s+-[abefimouxE]{3,}(?:\s+-[abefimouxE]+)*
+\b(?:bash|sh|set)(?:\s+-[abefimouxE]{1,2})*\s+-[abefimouxE]{3,}(?:\s+-[abefimouxE]+)*
 # tar arguments
 \b(?:\\n|)g?tar(?:\.exe|)(?:(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+
 # tput arguments -- https://man7.org/linux/man-pages/man5/terminfo.5.html -- technically they can be more than 5 chars long...
 \btput\s+(?:(?:-[SV]|-T\s*\w+)\s+)*\w{3,5}\b
 # macOS temp folders
 /var/folders/\w\w/[+\w]+/(?:T|-Caches-)/
+# github runner temp folders
+/home/runner/work/_temp/[-_/a-z0-9]+
index 4cb137b107db349b8ec58334df813ae43c422482..b6bd8fdb0733d6282e227718dbffe55185042200 100644 (file)
@@ -1,16 +1,16 @@
 # See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes
-# want to include regression-tests.*/description
 (?:^|/)(?i)COPYRIGHT
 (?:^|/)(?i)LICEN[CS]E
+(?:^|/)(?i)third[-_]?party/
 (?:^|/)3rdparty/
 (?:^|/)ext/
-(?:^|/)go\.mod$
+(?:^|/)generated/
 (?:^|/)go\.sum$
 (?:^|/)m4/
 (?:^|/)package(?:-lock|)\.json$
 (?:^|/)Pipfile$
 (?:^|/)pyproject.toml
-(?:^|/)requirements(?:-dev|-doc|-test|)\.txt$
+(?:^|/|\b)requirements(?:-dev|-doc|-test|)\.txt$
 (?:^|/)vendor/
 /expected_result
 /test-base64_cc\.cc$
@@ -24,11 +24,10 @@ SUMS$
 \.avi$
 \.bmp$
 \.bz2$
-\.cer$
+\.cert?$|\.crt$
 \.class$
 \.coveragerc$
 \.crl$
-\.crt$
 \.csr$
 \.dll$
 \.docx?$
@@ -106,4 +105,3 @@ SUMS$
 ^\.github/actions/spelling/
 ^\.github/workflows/spelling\d*\.yml$
 ^\Qdocs/lua-records/reference/index.rst\E$
-^\Qpdns/dnsdistdist/docs/_static/dnsdist-keyblock.asc\E$
index 67b8128d10b521f13a64030bf9f03235ce20ef59..5d528b5255dfe115238dcb0c7d70aba038ef763d 100644 (file)
@@ -24,7 +24,7 @@ Aki
 Alenichev
 alexa
 algoroll
-alloca
+aliasmode
 allocs
 Altpeter
 Anderton
@@ -123,7 +123,6 @@ binlog
 bitfield
 bitmaps
 bla
-blackhole
 Bleker
 blockfilter
 blogpost
@@ -279,9 +278,7 @@ deactivatedomainkey
 debian
 deboynepollard
 Deduktiva
-dedup
 defcontent
-defmacro
 defpol
 defttl
 Dehaine
@@ -337,6 +334,7 @@ dnsquestion
 DNSR
 dnsrecord
 dnsreplay
+dnsresourcerecord
 dnsscan
 dnsscope
 dnssec
@@ -406,7 +404,6 @@ eldoc
 elgoog
 elisp
 elpa
-emacs
 endbr
 Enden
 enp
@@ -427,7 +424,6 @@ Exort
 externalrefs
 extrahead
 Exx
-Ezbu
 ezdns
 Faerch
 failedservers
@@ -505,7 +501,6 @@ gettag
 gettime
 gettsigkey
 Geuze
-GFm
 ggdb
 Ghz
 Gibheer
@@ -513,8 +508,6 @@ Gieben
 Gillstrom
 Gkey
 gmake
-Gmb
-gmtime
 GMy
 gmysql
 gmysqlbackend
@@ -614,7 +607,6 @@ ipencrypt
 ipfilter
 IPSECKEY
 iputils
-irc
 isane
 ismaster
 isoc
@@ -655,7 +647,6 @@ KEYBITS
 keyblock
 keydir
 keyids
-keymap
 keyname
 keypair
 keypairgen
@@ -717,36 +708,7 @@ Lesuisse
 lethalgroup
 letsencrypt
 letterpaper
-libatomic
-libclang
-libcrypto
-libcryptopp
-libdecaf
-libdir
-libedit
-libfstrm
-libgcc
-libgeoip
-libh
-libmaxminddb
-libmongo
-libmysqlclient
-libnss
-libpcap
-libpq
-libpqpp
-libresolv
-libressl
-librt
-libsettings
-libsodium
-libsofthsm
-libstdc
-libsystemd
-libtdsodbc
-libxdp
-libyaml
-libzmq
+LIBPQ
 lightningstream
 Lindqvist
 linenos
@@ -778,7 +740,6 @@ lowerroman
 Lrhazi
 lsock
 lsp
-lto
 luaaction
 luabackend
 luac
@@ -788,7 +749,6 @@ luarule
 luawrapper
 Lutter
 Luuk
-LYg
 Machard
 Maik
 Maikel
@@ -848,7 +808,6 @@ modeline
 modifyingpolicydecisions
 modindex
 monshouwer
-Moq
 motherboards
 mozilla
 mplexer
@@ -935,6 +894,7 @@ noncompliantqueries
 noncompliantresponses
 nonexist
 Nonnekes
+nonzone
 noout
 noping
 noport
@@ -954,7 +914,6 @@ NPTL
 NSes
 nsid
 nsis
-nsl
 nsrecord
 nsset
 nsspeeds
@@ -985,7 +944,6 @@ Odintsov
 Oestreicher
 offsite
 oftc
-OIDs
 Olafur
 Omroep
 openapis
@@ -1004,12 +962,10 @@ oraclebackend
 ordername
 orsn
 Oservers
-OSX
 otherdomain
 otherpool
 ourname
 ourserial
-ourtime
 outpacket
 outputbuffer
 outqueries
@@ -1092,6 +1048,7 @@ postresolve
 powerdnsrecursor
 powerdnssec
 powerldap
+pqpp
 Predota
 preoutquery
 Preproc
@@ -1099,15 +1056,11 @@ prepublishkeyroll
 prequery
 prerpz
 presignedness
-PRId
 primetime
-princ
 prioritization
 privs
 profdata
 profraw
-progn
-protobuf
 protozero
 providername
 proxymapping
@@ -1120,7 +1073,6 @@ ptrrecord
 Publieke
 publishdomainkey
 pullreq
-Pyry
 qclass
 qdcount
 qdomain
@@ -1140,7 +1092,6 @@ querycount
 querytime
 qytpe
 ragel
-raii
 Rak
 randombackend
 randombit
@@ -1150,6 +1101,7 @@ randomises
 randomloader
 rapidjson
 rawaddress
+rawtypes
 RBL
 rcode
 rcodezero
@@ -1264,11 +1216,11 @@ segfault
 selectmplexer
 senderrors
 Sendetzky
-serde
 Sergey
 serverpools
 serverselection
 servfail
+servicemode
 setaffinity
 setcontent
 setdomainmetadata
@@ -1276,7 +1228,6 @@ seting
 setkey
 setnotified
 SETPIPE
-setq
 settting
 setvariable
 Shabanov
@@ -1318,7 +1269,6 @@ smn
 Smurthwaite
 Snarked
 sndbuf
-snprintf
 soa
 soadata
 soarecord
@@ -1364,6 +1314,7 @@ statbas
 statisticitem
 statm
 stbuehler
+stdc
 Stef
 Steinbuch
 stek
@@ -1382,7 +1333,7 @@ stubquery
 stubresolver
 Stussy
 stutiredboy
-subkey
+subkeys
 submitters
 subnamespace
 subnetmask
@@ -1424,6 +1375,7 @@ tcpout
 tcpreusedconnections
 tcptoomanyconcurrentconnections
 tds
+tdsodbc
 teeaction
 Telenet
 testsdir
@@ -1456,6 +1408,7 @@ todos
 toint
 tokenuser
 Tolstov
+tolua
 Toosarani
 Toshifumi
 totms
@@ -1482,7 +1435,6 @@ tunables
 Tuomi
 Tushuizen
 Tuxis
-TVJRU
 tylerneylon
 typenames
 ualberta
@@ -1528,7 +1480,6 @@ Vandalon
 vandergaast
 Vandoren
 Vasiliy
-VDz
 Veldhuyzen
 Verheijen
 Verschuren
@@ -1578,7 +1529,6 @@ wirelength
 Wisiol
 wmem
 Wojas
-workarounds
 Worldnic
 would've
 wouter
index 3067a57ca49795725161d428e0687ebc5b65f7f9..c3bc7fadd2c5fc93bda19b509ca8f62710ef0ee9 100644 (file)
 # reject `m_data` as VxWorks defined it and that breaks things if it's used elsewhere
 # see [fprime](https://github.com/nasa/fprime/commit/d589f0a25c59ea9a800d851ea84c2f5df02fb529)
 # and [Qt](https://github.com/qtproject/qt-solutions/blame/fb7bc42bfcc578ff3fa3b9ca21a41e96eb37c1c7/qtscriptclassic/src/qscriptbuffer_p.h#L46)
-# \bm_data\b
+#\bm_data\b
 
+# Were you debugging using a framework with `fit()`?
 # If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test,
-# you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want
-# to use this:
+# you might not want to check in code where you skip all the other tests.
 #\bfit\(
 
-# s.b. anymore
+# Should be `HH:MM:SS`
+\bHH:SS:MM\b
+
+# Should be `86400` (seconds in a standard day)
+\b84600\b(?:.*\bday\b)
+
+# Should probably be `2006-01-02` (yyyy-mm-dd)
+# Assuming that the time is being passed to https://go.dev/src/time/format.go
+\b2006-02-01\b
+
+# Should probably be `YYYYMMDD`
+\b[Yy]{4}[Dd]{2}[Mm]{2}(?!.*[Yy]{4}[Dd]{2}[Mm]{2}).*$
+
+# Should be `a priori` or `and prior`
+(?i)(?<!posteriori)\sand priori\s
+
+# Should only be one of `a`, `an`, or `the`
+\b(?:(?:an?|the)\s+){2,}\b
+
+# Should be `anymore`
 \bany more[,.]
 
-# s.b. cannot
+# Should be `'`
+(?i)\b(?:(?:i|s?he|they|what|who|you)"ll|(?:are|ca|did|do|does|ha[ds]|have|is|should|were|wo|would)n"t|(?:s?he|let|that|there|what|where|who)"s|(?:i|they|we|what|who|you)"ve)\b
+
+# Should be `briefcase`
+\bbrief-case\b
+
+# Should be `can, not only ..., ... also...`
+\bcan not only.*can also\b
+
+# Should be `cannot` (or `can't`)
+# See https://www.grammarly.com/blog/cannot-or-can-not/
+# > Don't use `can not` when you mean `cannot`. The only time you're likely to see `can not` written as separate words is when the word `can` happens to precede some other phrase that happens to start with `not`.
+# > `Can't` is a contraction of `cannot`, and it's best suited for informal writing.
+# > In formal writing and where contractions are frowned upon, use `cannot`.
+# > It is possible to write `can not`, but you generally find it only as part of some other construction, such as `not only . . . but also.`
+# - if you encounter such a case, add a pattern for that case to patterns.txt.
 \b[Cc]an not\b
 
-# s.b. GitHub
-(?<![&*.]|// |\btype )\bGithub\b(?![{)])
+# Should be `GitHub`
+(?<![&*.]|// |\b(?:from|import|type) )\bGithub\b(?![{()])
 
-# s.b. GitLab
-(?<![&*.]|// |\btype )\bGitlab\b(?![{)])
+# Should be `GitLab`
+(?<![&*.]|// |\b(?:from|import|type) )\bGitlab\b(?![{()])
 
-# s.b. JavaScript
+# Should be `JavaScript`
 \bJavascript\b
 
-# s.b. macOS or Mac OS X or ...
+# Should be `macOS` or `Mac OS X` or ...
 \bMacOS\b
 
-# s.b. Microsoft
+# Should be `Microsoft`
 \bMicroSoft\b
 
-# s.b. TypeScript
+# Should be `OAuth`
+(?:^|[^-/*$])[ '"]oAuth(?: [a-z]|\d+ |[^ a-zA-Z0-9:;_.()])
+
+# Should be `RabbitMQ`
+\bRabbitmq\b
+
+# Should be `TypeScript`
 \bTypescript\b
 
-# s.b. another
+# Should be `another`
 \ban[- ]other\b
 
-# s.b. deprecation warning
+# Should be `case-(in)sensitive`
+\bcase (?:in|)sensitive\b
+
+# Should be `coinciding`
+\bco-inciding\b
+
+# Should be `deprecation warning(s)`
 \b[Dd]epreciation [Ww]arnings?\b
 
-# s.b. greater than
+# Should be `greater than`
 \bgreater then\b
 
-# s.b. in front of
+# Should be `has`
+\b[Ii]t only have\b
+
+# Should be `greater than`
+\bhigher than\b
+
+# Should be `ID`
+\bId\b
+
+# Should be `in front of`
 \bin from of\b
 
-# s.b. into
+# Should be `into`
 # when not phrasal and when `in order to` would be wrong:
 # https://thewritepractice.com/into-vs-in-to/
 \sin to\s(?!if\b)
 
-# s.b. is obsolete
+# Should be `use`
+\sin used by\b
+
+# Should be `is obsolete`
 \bis obsolescent\b
 
-# s.b. it's or its
+# Should be `it's` or `its`
 \bits['’]
 
-# s.b. opt-in
-(?<!\sfor)\sopt in\s
+# Should be `its`
+\bit's(?= own\b)
+
+# Should be `log in`
+\blogin to the
+
+# Should be `long-standing`
+\blong standing\b
+
+# Should probably be a person named `Nick` or the abbreviation `NIC`
+\bNic\b
+
+# Should probably be `much more`
+\bmore much\b
 
-# s.b. less than
+# Should be `perform its`
+\bperform it's\b
+
+# Should be `opt-in`
+(?<!\scan|for)(?<!\sif)\sopt in\s
+
+# Should be `less than`
 \bless then\b
 
-# s.b. one of
-\bon of\b
+# Should be `load balancer`
+\b[Ll]oud balancer
+
+# Should be `moot`
+\bmute point\b
+
+# Should be `one of`
+(?<!-)\bon of\b
+
+# Should be `on the other hand`
+\b(?i)on another hand\b
 
-# s.b. otherwise
+# Most people only have two hands. Reword.
+\b(?i)on the third hand\b
+
+# Should be `otherwise`
 \bother[- ]wise\b
 
-# s.b. or (more|less)
+# Should be `or (more|less)`
 \bore (?:more|less)\b
 
-# s.b. nonexistent
+# Should be `rather than`
+\brather then\b
+
+# Should be `regardless, ...` or `regardless of (whether)`
+\b[Rr]egardless if you\b
+
+# Should be `no longer needed`
+\bno more needed\b(?! than\b)
+
+# Should be `did not exist`
+\bwere not existent\b
+
+# Should be `nonexistent`
 \bnon existing\b
+
+# Should be `nonexistent`
 \b[Nn]o[nt][- ]existent\b
 
-# s.b. brief / details/ param / return / retval
+# Should be `@brief` / `@details` / `@param` / `@return` / `@retval`
 (?:^\s*|(?:\*|//|/*)\s+`)[\\@](?:breif|(?:detail|detials)|(?:params(?!\.)|prama?)|ret(?:uns?)|retvl)\b
 
-# s.b. preexisting
+# Should be `preexisting`
 [Pp]re[- ]existing
 
-# s.b. preempt
+# Should be `preempt`
 [Pp]re[- ]empt\b
 
-# s.b. preemptively
+# Should be `preemptively`
 [Pp]re[- ]emptively
 
-# s.b. recently changed or recent changes
+# Should be `prepopulate`
+[Pp]re[- ]populate
+
+# Should be `prerequisite`
+[Pp]re[- ]requisite
+
+# Should be `recently changed` or `recent changes`
 [Rr]ecent changed
 
-# s.b. reentrancy
+# Should be `reentrancy`
 [Rr]e[- ]entrancy
 
-# s.b. reentrant
+# Should be `reentrant`
 [Rr]e[- ]entrant
 
-# s.b. understand
+# Should be `understand`
 \bunder stand\b
 
-# s.b. workarounds
+# Should be `URI` or `uri` unless it refers to a person named `Uri`
+(?<!\.)\bUri\b(?![(])
+
+# Should be `it uses is`
+/\bis uses is\b/
+
+# Should be `uses it as`
+(?:^|\. |and )uses is as (?!an?\b|follows|livestock|[^.]+\s+as\b)
+
+# Should be `where`
+\bwere they are\b
+
+# should be `vCenter`
+\bV[Cc]enter\b
+
+# Should be `VM`
+\bVm\b
+
+# Should be `workarounds`
 \bwork[- ]arounds\b
 
-# s.b. workaround
+# Should be `workaround`
 (?:(?:[Aa]|[Tt]he|ugly)\swork[- ]around\b|\swork[- ]around\s+for)
 
-# s.b. (coarse|fine)-grained
+# Should be `worst`
+(?i)worse-case
+
+# Should be `(coarse|fine)-grained`
 \b(?:coarse|fine) grained\b
 
-# s.b. neither/nor -- or reword
-#\bnot\b[^.?!"/(]+\bnor\b
+# Should be `neither/nor` -- or reword
+#(?!<do )\bnot\b([^.?!"/(](?!neither|,.*?,))+\bnor\b
 
-# probably a double negative
-# s.b. neither/nor (plus rewording the beginning)
-\bnot\b[^.?!"/]*\bneither\b[^.?!"/(]*\bnor\b
+# Should be `neither/nor` (plus rewording the beginning)
+# This is probably a double negative...
+\bnot\b[^.?!"/(]*\bneither\b[^.?!"/(]*\bnor\b
 
-# In English, it is generally wrong to have the same word twice in a row without punctuation.
-# Duplicated words are generally mistakes.
-# There are a few exceptions where it is acceptable (e.g. "that that").
-# If the highlighted doubled word pair is in a code snippet, you can write a pattern to mask it.
-# If the highlighted doubled word pair is in prose, have someone read the English before you dismiss this error.
+# In English, duplicated words are generally mistakes
+# There are a few exceptions (e.g. "that that").
+# If the highlighted doubled word pair is in:
+# * code, write a pattern to mask it.
+# * prose, have someone read the English before you dismiss this error.
 \s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s
index ee4183ff66c823d158160ea43efee6d40c419370..5cb67a541f6e08734ec100f232d99500381a849a 100644 (file)
@@ -2,3 +2,4 @@
 ^docs/
 \.md$
 pdns/recursordist/settings/table.py
+regression-tests.*/description
index 6b4d3610fe1fbe58acc815b3b4dbdcd8672efd05..75ee27f11050e1fbe35d7edb59baeb9a7d50c1e9 100644 (file)
@@ -1,38 +1,13 @@
 # See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns
 
-# GitHub SHAs
-\bapi.github\.com/repos/[^/]+/[^/]+/[^/]+/[0-9a-f]+\b
-\b[0-9a-f]+ <https://github\.com/[^/]+/[^/]+/[^/]+/[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b>\`
-(?:\[[0-9a-f]+\]\(?:https:/|)/github\.com/[^/]+/[^/]+/[^/]+/[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b
-\bgithub\.com/[^/]+/[^/]+[@#][0-9a-f]+\b
-# githubusercontent
-/[-a-z0-9]+\.githubusercontent\.com/[-a-zA-Z0-9?&=_\/.]*
-# gist github
-/gist\.github\.com/[^/]+/[0-9a-f]+
-
-# msdn
-msdn\.microsoft\.com/(?:[^/]+/|)library/\S*\.aspx?
-
-# uuid:
-\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
-# hex digits including css/html color classes:
-(?:[\\0][xX]|\\u?|[uU]\+|#x?|\%23)[0-9a-fA-FgGrR_]{2,}(?:[uU]?[lL]{0,2}|u\d+)\b
-
-# hex things
-\b[0-9a-f]{8,}\b
-\b[0-9A-F]{8,}\b
 \bcommit [0-9a-f]+\b
 
 # HMAC
 hmac-sha512(:\w+|\.|)\s+[-a-zA-Z=;:/0-9+]*
 
 addNSECRecordToLW.*DNSName.*powerdnt.com.*QType::NS.*res->d_records
-data:[a-zA-Z=;,/0-9+]+
 BOOST_CHECK_EQUAL\(b64, "[a-zA-Z=;,/0-9+]+"
 
-# ignore long runs of a single character:
-\b([A-Za-z])\g{-1}{3,}\b
-
 C(?:XX|)FLAGS="[^"]*"
 
 nsec3param\s*=\s*'[^']*'
@@ -60,45 +35,83 @@ git rev-list --count [0-9a-f]{40}\b
 C0FFEE
 \%[IOFRUSEPXDMW]
 [-0-9A-Za-z.]+\.(?:example|powerdns)\.com\b
-# <word>v#
-[Vv]\d+(?:\b|(?=[a-zA-Z_]))
-# tar arguments
-\b(?:)tar(?:\s+-[a-zA-Z]+|\s[a-z]+)+
-
 # DoT: DNS over TLS is often combined with other words (images, links, ...), same for DoH
 DoT
 DoH
 
 # Automatically suggested patterns
-# hit-count: 30 file-count: 20
+
+# hit-count: 1434 file-count: 50
 # GitHub SHAs (markdown)
 (?:\[`?[0-9a-f]+`?\]\(https:/|)/(?:www\.|)github\.com(?:/[^/\s"]+){2,}(?:/[^/\s")]+)(?:[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b|)
 
-# hit-count: 27 file-count: 11
+\b[0-9a-f]+ <https://github\.com/[^/]+/[^/]+/[^/]+/[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b>\`
+
+# hit-count: 179 file-count: 35
+# version suffix <word>v#
+(?:(?<=[A-Z]{2})V|(?<=[a-z]{2}|[A-Z]{2})v)\d+(?:\b|(?=[a-zA-Z_]))
+
+# hit-count: 173 file-count: 41
+# libraries
+(?:\b|_)lib(?:re(?=office|ssl)|)(?!era[lt]|ero|erty|rar(?:i(?:an|es)|y))(?=[a-z])
+
+# hit-count: 89 file-count: 7
+# hex digits including css/html color classes:
+(?:[\\0][xX]|\\u?|[uU]\+|#x?|%23)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
+
+# hit-count: 55 file-count: 7
+# hex runs
+\b[0-9a-fA-F]{16,}\b
+
+# hit-count: 46 file-count: 17
 # IPv6
 \b(?:[0-9a-fA-F]{0,4}:){3,7}[0-9a-fA-F]{0,4}\b
 
-# hit-count: 11 file-count: 4
+# hit-count: 43 file-count: 3
+# uuid:
+\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
+
+# hit-count: 22 file-count: 9
 # Non-English
-[a-zA-Z]*[ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*
+[a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,}
 
-# hit-count: 9 file-count: 7
-# Compiler flags
-(?:^|[\t ,"'`=(])-[DWL](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
-(?:^|[\t ,"'`=(])-f(?!ield|ile|ilter|orce|ormat|unction)(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
-(?:^|[\t ,"'`=(])-l(?!imited)(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
+# hit-count: 12 file-count: 5
+# base64 encoded content
+([`'"])[-a-zA-Z=;:/0-9+]{3,}=\g{-1}
 
-# hit-count: 9 file-count: 2
+# hit-count: 12 file-count: 2
 # PGP
 \b(?:[0-9A-F]{4} ){9}[0-9A-F]{4}\b
 
-# hit-count: 4 file-count: 3
-# Non-English
-[a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,}
+# hit-count: 5 file-count: 4
+# python
+\b(?i)py(?!gments|gmy|lon|ramid|ro|th)(?=[a-z]{2,})
+
+# hit-count: 3 file-count: 2
+# Wikipedia
+\ben\.wikipedia\.org/wiki/[-\w%.#]+
+
+# hit-count: 3 file-count: 1
+# scala imports
+^import (?:[\w.]|\{\w*?(?:,\s*(?:\w*|\*))+\})+
+
+\bINternet\b
 
 # hit-count: 2 file-count: 2
-# IServiceProvider
-\bI(?=(?:[A-MOQ-Z][a-z]{2,})+\b)
+# IServiceProvider / isAThing
+(?:\b|_)(?:(?:ns|)IP?|isA)(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b))
+
+# hit-count: 2 file-count: 2
+# C network byte conversions
+(?:\d|\bh)to(?!ken)(?=[a-z])|to(?=[adhiklpun]\()
+
+# hit-count: 2 file-count: 2
+# tar arguments
+\b(?:\\n|)g?tar(?:\.exe|)(?:(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+
+
+# hit-count: 2 file-count: 1
+# WWNN/WWPN (NAA identifiers)
+\b(?:0x)?10[0-9a-f]{14}\b|\b(?:0x|3)?[25][0-9a-f]{15}\b|\b(?:0x|3)?6[0-9a-f]{31}\b
 
 # hit-count: 1 file-count: 1
 # Amazon
@@ -108,36 +121,56 @@ DoH
 # Google Fonts
 \bfonts\.(?:googleapis|gstatic)\.com/[-/?=:;+&0-9a-zA-Z]*
 
-# Automatically suggested patterns
 # hit-count: 1 file-count: 1
-# Wikipedia
-\ben\.wikipedia\.org/wiki/[-\w%.#]+
+# githubusercontent
+/[-a-z0-9]+\.githubusercontent\.com/[-a-zA-Z0-9?&=_\/.]*
 
 # hit-count: 1 file-count: 1
-# base64 encoded content
-([`'"])[-a-zA-Z=;:/0-9+]+==\g{-1}
+# Markdown anchor links
+\(#\S*?[a-zA-Z]\S*?\)
+
+# hit-count: 9 file-count: 7
+# Compiler flags
+(?:^|[\t ,"'`=(])-[DWL](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
+(?:^|[\t ,"'`=(])-f(?!ield|ile|ilter|orce|ormat|unction)(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
+(?:^|[\t ,"'`=(])-l(?!imited)(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
 
 # Questionably acceptable forms of `in to`
 # Personally, I prefer `log into`, but people object
 # https://www.tprteaching.com/log-into-log-in-to-login/
-\b(?:[Ll]og|[Ss]ign) in to\b
+\b(?:(?:[Ll]og(?:g(?=[a-z])|)|[Ss]ign)(?:ed|ing)?) in to\b
+
+# is (comparator) higher than
+(?:record is|(?:a (?:bit|lot)|much)) higher than\b
 
 # to opt in
 \bto opt in\b
 
 # acceptable duplicates
 # ls directory listings
-[-bcdlpsw](?:[-r][-w][-SsTtx]){3}[\.+*]?\s+\d+\s+\S+\s+\S+\s+\d+\s+
+[-bcdlpsw](?:[-r][-w][-SsTtx]){3}[\.+*]?\s+\d+\s+\S+\s+\S+\s+[.\d]+(?:[KMGT]|)\s+
 # mount
 \bmount\s+-t\s+(\w+)\s+\g{-1}\b
 # C types and repeated CSS values
-\s(auto|center|div|inherit|long|LONG|none|normal|solid|thin|transparent|very)(?: \g{-1})+\s
-# C struct
-\bstruct\s+(\w+)\s+\g{-1}\b
+\s(auto|buffalo|center|div|inherit|long|LONG|none|normal|solid|thin|transparent|very)(?: \g{-1})+\s
+# C enum and struct
+\b(?:enum|struct)\s+(\w+)\s+\g{-1}\b
 # go templates
 \s(\w+)\s+\g{-1}\s+\`(?:graphql|inject|json|yaml):
 # doxygen / javadoc / .net
-(?:[\\@](?:brief|groupname|t?param|return|retval)|(?:public|private|\[Parameter(?:\(.+\)|)\])(?:\s+static|\s+override|\s+readonly)*)(?:\s+\{\w+\}|)\s+(\w+)\s+\g{-1}\s
+(?:[\\@](?:brief|defgroup|groupname|link|t?param|return|retval)|(?:public|private|\[Parameter(?:\(.+\)|)\])(?:\s+(?:static|override|readonly|required|virtual))*)(?:\s+\{\w+\}|)\s+(\w+)\s+\g{-1}\s
+
+# macOS file path
+/MacOS
+
+# Python package registry has incorrect spelling for macOS / Mac OS X
+"Operating System :: MacOS :: MacOS X"
+
+# "company" in Germany
+\bGmbH\b
+
+# IntelliJ
+\bIntelliJ\b
 
 # Commit message -- Signed-off-by and friends
 ^\s*(?:(?:Based-on-patch|Co-authored|Helped|Mentored|Reported|Reviewed|Signed-off)-by|Thanks-to): (?:[^<]*<[^>]*>|[^<]*)\s*$
index e5e4c3eef82e44e60c6891a7a5363f41d5aeced7..5cc86ef80c917280713fa4d171ef30a1a8399caa 100644 (file)
@@ -3,9 +3,11 @@
 benefitting
 occurences?
 ^dependan.*
+^diables?$
 ^oer$
 Sorce
 ^[Ss]pae.*
+^Teh$
 ^untill$
 ^untilling$
 ^wether.*
index 9df9009ca4781eb010ed1b3288503de556e0cb05..59a56e5cc8c9fbdf4005146a1a70778a3d0d0f48 100644 (file)
@@ -12,9 +12,9 @@ on:
     branches:
       - "**"
     types:
-      - 'opened'
-      - 'reopened'
-      - 'synchronize'
+      - "opened"
+      - "reopened"
+      - "synchronize"
 
 jobs:
   spelling:
@@ -22,6 +22,8 @@ jobs:
     permissions:
       # contents-read is needed to checkout in private repositories
       contents: read
+      # pull-requests-read is needed for suppress_push_for_open_pull_request in private repositories
+      pull-requests: read
       # actions-read is needed (possibly only for private repositories)
       # to identify the workflow's filename until
       # https://github.com/actions/runner/issues/853 is fixed
@@ -38,35 +40,46 @@ jobs:
       # note: If you use only_check_changed_files, you do not want cancel-in-progress
       cancel-in-progress: true
     steps:
-    - name: check-spelling
-      id: spelling
-      uses: check-spelling/check-spelling@v0.0.22
-      with:
-        config: .github/actions/spell-check
-        suppress_push_for_open_pull_request: ${{ github.actor != 'dependabot[bot]' && 1 }}
-        checkout: true
-        spell_check_this: powerdns/pdns@master
-        post_comment: 0
-        warnings: bad-regex,binary-file,deprecated-feature,ignored-expect-variant,large-file,limited-references,no-newline-at-eof,noisy-file,non-alpha-in-dictionary,token-is-substring,unexpected-line-ending,whitespace-in-dictionary,minified-file,unsupported-configuration,no-files-to-check
-        use_sarif: ${{ (!github.event.pull_request || (github.event.pull_request.head.repo.full_name == github.repository)) && 1 }}
-        extra_dictionaries:
-          cspell:software-terms/dict/softwareTerms.txt
-          cspell:node/dict/node.txt
-          cspell:python/src/common/extra.txt
-          cspell:php/dict/php.txt
-          cspell:python/src/python/python-lib.txt
-          cspell:golang/dict/go.txt
-          cspell:fullstack/dict/fullstack.txt
-          cspell:k8s/dict/k8s.txt
-          cspell:aws/aws.txt
-          cspell:cpp/src/stdlib-cpp.txt
-          cspell:filetypes/filetypes.txt
-          cspell:python/src/python/python.txt
-          cspell:django/dict/django.txt
-          cspell:typescript/dict/typescript.txt
-          cspell:dotnet/dict/dotnet.txt
-          cspell:html/dict/html.txt
-          cspell:cpp/src/lang-keywords.txt
-          cspell:lua/dict/lua.txt
-          cspell:latex/dict/latex.txt
-        check_extra_dictionaries: ''
+      - name: check-spelling
+        id: spelling
+        uses: check-spelling/check-spelling@v0.0.22
+        with:
+          config: .github/actions/spell-check
+          suppress_push_for_open_pull_request: ${{ github.actor != 'dependabot[bot]' && 1 }}
+          checkout: true
+          check_file_names: 1
+          spell_check_this: powerdns/pdns@master
+          post_comment: 0
+          use_magic_file: 1
+          warnings: bad-regex,binary-file,deprecated-feature,ignored-expect-variant,large-file,limited-references,no-newline-at-eof,noisy-file,non-alpha-in-dictionary,token-is-substring,unexpected-line-ending,whitespace-in-dictionary,minified-file,unsupported-configuration,no-files-to-check,unclosed-block-ignore-begin,unclosed-block-ignore-end
+          use_sarif: ${{ (!github.event.pull_request || (github.event.pull_request.head.repo.full_name == github.repository)) && 1 }}
+          extra_dictionaries: |
+            cspell:software-terms/dict/softwareTerms.txt
+            cspell:python/src/common/extra.txt
+            cspell:node/dict/node.txt
+            cspell:php/dict/php.txt
+            cspell:python/src/python/python-lib.txt
+            cspell:python/src/python/python.txt
+            cspell:fullstack/dict/fullstack.txt
+            cspell:golang/dict/go.txt
+            cspell:aws/aws.txt
+            cspell:k8s/dict/k8s.txt
+            cspell:cpp/src/stdlib-cpp.txt
+            cspell:filetypes/filetypes.txt
+            cspell:typescript/dict/typescript.txt
+            cspell:html/dict/html.txt
+            cspell:django/dict/django.txt
+            cspell:java/src/java.txt
+            cspell:dotnet/dict/dotnet.txt
+            cspell:r/src/r.txt
+            cspell:npm/dict/npm.txt
+            cspell:lisp/lisp.txt
+            cspell:cpp/src/lang-jargon.txt
+            cspell:rust/dict/rust.txt
+            cspell:cpp/src/lang-keywords.txt
+            cspell:latex/dict/latex.txt
+            cspell:cpp/src/stdlib-c.txt
+            cspell:cpp/src/ecosystem.txt
+            cspell:lua/dict/lua.txt
+            cspell:java/src/java-terms.txt
+          check_extra_dictionaries: ''