Skip to content

Commit

Permalink
Merge pull request #885 from googlefonts/tags-dup-rows
Browse files Browse the repository at this point in the history
tags: check duplicates across both sheets
  • Loading branch information
m4rc1e authored Mar 26, 2024
2 parents 7eb297f + e568014 commit d5cc1aa
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions Lib/gftools/tags.py
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,8 @@ class GFTags(object):
def __init__(self):
self.sheet1_data = self._get_sheet_data(self.SHEET1_URL)
self.sheet2_data = self._get_sheet_data(self.SHEET2_URL)
self.seen_families = set()
self.duplicate_families = set()
self.data = self._parse_sheets_csv()

def _get_sheet_data(self, sheet_url):
Expand All @@ -163,16 +165,14 @@ def _parse_csv(self, data, skip_rows=[], skip_columns=[], family_name_col=0):
...
]"""
res = []
seen_families = set()
duplicate_families = set()
for i in range(len(data)):
if i in skip_rows:
continue
family = data[i][family_name_col]
if family in seen_families:
duplicate_families.add(family)
if family in self.seen_families:
self.duplicate_families.add(family)
continue
seen_families.add(family)
self.seen_families.add(family)
for j in range(len(data[i])):
if j in skip_columns:
continue
Expand Down Expand Up @@ -203,9 +203,9 @@ def _parse_csv(self, data, skip_rows=[], skip_columns=[], family_name_col=0):
"Weight": value,
}
)
if duplicate_families:
if self.duplicate_families:
raise ValueError(
f"Duplicate families found in sheet: {duplicate_families}. Please remove them."
f"Duplicate families found in sheet: {self.duplicate_families}. Please remove them."
)
res.sort(key=lambda k: (k["Family"], k["Group/Tag"]))
return res
Expand Down

0 comments on commit d5cc1aa

Please sign in to comment.