Record Workshop versions in Drone changelogs and retire local sending
This commit is contained in:
@@ -45,7 +45,15 @@ def latest_changes(before, after):
|
||||
latest = new[0]
|
||||
if old and (latest == old[0] or latest[0] in [title for title, _ in old[1:]]):
|
||||
return None # Unchanged newest entry, or removal/reordering of old entries.
|
||||
message = '**' + latest[0] + '**\n\n' + latest[1]
|
||||
version_note = ''
|
||||
preamble = after.split('\n## ', 1)[0]
|
||||
versions = re.findall(r'^Latest published Workshop version: \*\*(\d+\.\d+\.\d+)\*\*\r?$',
|
||||
preamble, re.MULTILINE)
|
||||
if 'Latest published Workshop version:' in preamble:
|
||||
if len(versions) != 1 or any(int(part) > 32000 for part in versions[0].split('.')):
|
||||
raise ChangelogError('Invalid Workshop version record in CHANGELOG.md.')
|
||||
version_note = 'Last published Workshop version: **' + versions[0] + '**\n\n'
|
||||
message = '**' + latest[0] + '**\n\n' + version_note + latest[1]
|
||||
if len(message.encode('utf-16-le')) // 2 > 2000:
|
||||
raise ChangelogError('Newest changelog entry exceeds Discord’s 2000-character limit.')
|
||||
return message
|
||||
|
||||
Reference in New Issue
Block a user