Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions AUTHORS.rst
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ The following organizations or individuals have contributed to ScanCode:
- Thorsten Harter @ThorstenHarter
- Till Jaeger @LeChasseur
- Tobias Furuholm @furuholm
- Topu Kumar Mondol @topukumar538
- Tushar Goel @TG1999
- Tushar Mittal @techytushar
- Tushar Upadhyay @tushar912
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ Next release
have cached results for those already. If we do, we update our results with the
cached data. If not, we add those scanners to a list of scanners to be run.
After scanning, the cache is updated.
- Improve author detection for dotted names such as ``Frankie.Chu``.
https://github.com/aboutcode-org/scancode-toolkit/issues/4229

v33.0.0rc1 - 2026-05-14
------------------------
Expand Down
7 changes: 7 additions & 0 deletions src/cluecode/copyrights.py
Original file line number Diff line number Diff line change
Expand Up @@ -2042,6 +2042,8 @@ def build_detection_from_node(
############################################################################

# "authors" or "contributors" is interesting, and so a tag of its own
# Author:Frankie.Chu
(r'^[Aa]uthor:[A-Z][a-z]+\.[A-Z][a-z]+,?$', 'AUTH-DOTTED'),
(r'^[Aa]uthors,$', 'AUTHDOT'),
(r'^[Aa]uthor$', 'AUTH'),
(r'^[Aa]uthor\.$', 'AUTHDOT'),
Expand Down Expand Up @@ -3527,6 +3529,9 @@ def build_detection_from_node(
# Author not attributable
AUTHOR: {<AUTH> <NN> <NNP>} #not attributable

# Author:Frankie.Chu
AUTHOR: {<AUTH-DOTTED>}

# author (Panagiotis Tsirigotis)
AUTHOR: {<AUTH> <NNP><NNP>+} #author Foo Bar

Expand Down Expand Up @@ -3675,6 +3680,8 @@ def refine_author(a):
"""
if not a:
return

a = re.sub(r'^[Aa]uthor:\s*', '', a)
# FIXME: we could consider to split comma separated lists such as
# gthomas, sorin@netappi.com, andrew.lunn@ascom.che.g.
a = remove_some_extra_words_and_punct(a)
Expand Down
2 changes: 2 additions & 0 deletions tests/cluecode/data/authors/author_frankie_chu.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
// Date:9 April,2012
// Author:Frankie.Chu
8 changes: 8 additions & 0 deletions tests/cluecode/data/authors/author_frankie_chu.cpp.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
what:
- authors
- authors_summary
authors:
- Frankie.Chu
authors_summary:
- value: Frankie.Chu
count: 1
Loading