mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2024-11-22 09:26:37 +03:00
Prevent publishing to PyPi if tl.telethon.dev is out-of-date
This commit is contained in:
parent
daf21f12d9
commit
610b8c34dd
19
setup.py
19
setup.py
|
@ -16,6 +16,7 @@ import os
|
||||||
import re
|
import re
|
||||||
import shutil
|
import shutil
|
||||||
import sys
|
import sys
|
||||||
|
import urllib.request
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from subprocess import run
|
from subprocess import run
|
||||||
|
|
||||||
|
@ -43,6 +44,8 @@ class TempWorkDir:
|
||||||
os.chdir(self.original)
|
os.chdir(self.original)
|
||||||
|
|
||||||
|
|
||||||
|
API_REF_URL = 'https://tl.telethon.dev/'
|
||||||
|
|
||||||
GENERATOR_DIR = Path('telethon_generator')
|
GENERATOR_DIR = Path('telethon_generator')
|
||||||
LIBRARY_DIR = Path('telethon')
|
LIBRARY_DIR = Path('telethon')
|
||||||
|
|
||||||
|
@ -155,6 +158,22 @@ def main(argv):
|
||||||
generate(argv[2:], argv[1])
|
generate(argv[2:], argv[1])
|
||||||
|
|
||||||
elif len(argv) >= 2 and argv[1] == 'pypi':
|
elif len(argv) >= 2 and argv[1] == 'pypi':
|
||||||
|
# Make sure tl.telethon.dev is up-to-date first
|
||||||
|
with urllib.request.urlopen(API_REF_URL) as resp:
|
||||||
|
html = resp.read()
|
||||||
|
m = re.search(br'layer\s+(\d+)', html)
|
||||||
|
if not m:
|
||||||
|
print('Failed to check that the API reference is up to date:', API_REF_URL)
|
||||||
|
return
|
||||||
|
|
||||||
|
from telethon_generator.parsers import find_layer
|
||||||
|
layer = next(filter(None, map(find_layer, TLOBJECT_IN_TLS)))
|
||||||
|
published_layer = int(m[1])
|
||||||
|
if published_layer != layer:
|
||||||
|
print('Published layer', published_layer, 'does not match current layer', layer, '.')
|
||||||
|
print('Make sure to update the API reference site first:', API_REF_URL)
|
||||||
|
return
|
||||||
|
|
||||||
# (Re)generate the code to make sure we don't push without it
|
# (Re)generate the code to make sure we don't push without it
|
||||||
generate(['tl', 'errors'])
|
generate(['tl', 'errors'])
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user