diff --git a/renpy/__init__.py b/renpy/__init__.py index 5b3d39c16..82c1d28aa 100644 --- a/renpy/__init__.py +++ b/renpy/__init__.py @@ -678,71 +678,72 @@ if 1 == 0: # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import add_from - from . import arguments - from . import ast - from . import astsupport - from . import atl - from . import audio - from . import bootstrap - from . import character - from . import color - from . import compat - from . import config - from . import curry - from . import debug - from . import defaultstore - from . import display - from . import dump - from . import easy - from . import editor - from . import encryption - from . import error - from . import execution - from . import exports - from . import game - from . import gl - from . import gl2 - from . import lexer - from . import lexersupport - from . import lint - from . import location - from . import loader - from . import loadsave - from . import log - from . import main - from . import memory - from . import minstore - from . import object - from . import parameter - from . import parser - from . import performance - from . import persistent - from . import preferences - from . import pyanalysis - from . import pydict - from . import python - from . import revertable - from . import rollback - from . import savelocation - from . import savetoken - from . import screenlang - from . import script - from . import scriptedit - from . import sl2 - from . import statements - from . import style - from . import styledata - from . import substitutions - from . import test - from . import text - from . import translation - from . import uguu - from . import ui - from . import update - from . import util - from . import vc_version - from . import versions - from . import warp - from . import webloader +import typing + +if typing.TYPE_CHECKING: + from . import add_from as add_from + from . import arguments as arguments + from . import ast as ast + from . import astsupport as astsupport + from . import atl as atl + from . import audio as audio + from . import bootstrap as bootstrap + from . import character as character + from . import color as color + from . import compat as compat + from . import config as config + from . import cslots as cslots + from . import curry as curry + from . import debug as debug + from . import defaultstore as defaultstore + from . import display as display + from . import dump as dump + from . import easy as easy + from . import editor as editor + from . import encryption as encryption + from . import error as error + from . import execution as execution + from . import exports as exports + from . import game as game + from . import gl2 as gl2 + from . import lexer as lexer + from . import lexersupport as lexersupport + from . import lint as lint + from . import loader as loader + from . import loadsave as loadsave + from . import log as log + from . import main as main + from . import memory as memory + from . import minstore as minstore + from . import object as object + from . import parameter as parameter + from . import parser as parser + from . import performance as performance + from . import persistent as persistent + from . import preferences as preferences + from . import pyanalysis as pyanalysis + from . import pydict as pydict + from . import python as python + from . import revertable as revertable + from . import rollback as rollback + from . import savelocation as savelocation + from . import savetoken as savetoken + from . import screenlang as screenlang + from . import script as script + from . import scriptedit as scriptedit + from . import sl2 as sl2 + from . import statements as statements + from . import style as style + from . import styledata as styledata + from . import substitutions as substitutions + from . import test as test + from . import text as text + from . import translation as translation + from . import uguu as uguu + from . import ui as ui + from . import update as update + from . import util as util + from . import vc_version as vc_version + from . import versions as versions + from . import warp as warp + from . import webloader as webloader diff --git a/renpy/audio/__init__.py b/renpy/audio/__init__.py index 1b381f8e9..4d9a3a7ed 100644 --- a/renpy/audio/__init__.py +++ b/renpy/audio/__init__.py @@ -29,10 +29,12 @@ renpy.update_path() # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import audio - from . import filter - from . import music - from . import renpysound - from . import sound - from . import webaudio +import typing + +if typing.TYPE_CHECKING: + from . import audio as audio + from . import filter as filter + from . import music as music + from . import renpysound as renpysound + from . import sound as sound + from . import webaudio as webaudio diff --git a/renpy/compat/__init__.py b/renpy/compat/__init__.py index a63a64134..b83521aa7 100644 --- a/renpy/compat/__init__.py +++ b/renpy/compat/__init__.py @@ -132,6 +132,8 @@ __all__ = [ "PY2", "open", "basestring", "str", "pystr", "range", # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import fixes - from . import pickle +import typing + +if typing.TYPE_CHECKING: + from . import fixes as fixes + from . import pickle as pickle diff --git a/renpy/display/__init__.py b/renpy/display/__init__.py index 66fd53a01..a2e630fab 100644 --- a/renpy/display/__init__.py +++ b/renpy/display/__init__.py @@ -68,42 +68,44 @@ to_log = renpy.log.open("text_overflow", developer=True, append=True) # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import accelerator - from . import anim - from . import behavior - from . import controller - from . import core - from . import displayable - from . import dragdrop - from . import emulator - from . import error - from . import focus - from . import gesture - from . import im - from . import image - from . import imagelike - from . import imagemap - from . import joystick - from . import layout - from . import matrix - from . import minigame - from . import model - from . import module - from . import motion - from . import movetransition - from . import particle - from . import pgrender - from . import predict - from . import presplash - from . import quaternion - from . import render - from . import scale - from . import scenelists - from . import screen - from . import swdraw - from . import transform - from . import transition - from . import tts - from . import video - from . import viewport +import typing + +if typing.TYPE_CHECKING: + from . import accelerator as accelerator + from . import anim as anim + from . import behavior as behavior + from . import controller as controller + from . import core as core + from . import displayable as displayable + from . import dragdrop as dragdrop + from . import emulator as emulator + from . import error as error + from . import focus as focus + from . import gesture as gesture + from . import im as im + from . import image as image + from . import imagelike as imagelike + from . import imagemap as imagemap + from . import joystick as joystick + from . import layout as layout + from . import matrix as matrix + from . import minigame as minigame + from . import model as model + from . import module as module + from . import motion as motion + from . import movetransition as movetransition + from . import particle as particle + from . import pgrender as pgrender + from . import predict as predict + from . import presplash as presplash + from . import quaternion as quaternion + from . import render as render + from . import scale as scale + from . import scenelists as scenelists + from . import screen as screen + from . import swdraw as swdraw + from . import transform as transform + from . import transition as transition + from . import tts as tts + from . import video as video + from . import viewport as viewport diff --git a/renpy/exports/__init__.py b/renpy/exports/__init__.py index 6914327bc..6b482ec8f 100644 --- a/renpy/exports/__init__.py +++ b/renpy/exports/__init__.py @@ -628,3 +628,27 @@ except Exception: platform = "iOS" else: platform = "Unknown" + + +# Generated by scripts/relative_imports.py, do not edit below this line. +import typing + +if typing.TYPE_CHECKING: + from . import actionexports as actionexports + from . import commonexports as commonexports + from . import contextexports as contextexports + from . import debugexports as debugexports + from . import displayexports as displayexports + from . import fetchexports as fetchexports + from . import inputexports as inputexports + from . import loaderexports as loaderexports + from . import mediaexports as mediaexports + from . import menuexports as menuexports + from . import persistentexports as persistentexports + from . import platformexports as platformexports + from . import predictexports as predictexports + from . import restartexports as restartexports + from . import rollbackexports as rollbackexports + from . import sayexports as sayexports + from . import scriptexports as scriptexports + from . import statementexports as statementexports diff --git a/renpy/gl2/__init__.py b/renpy/gl2/__init__.py index 1450d9f9c..790937954 100644 --- a/renpy/gl2/__init__.py +++ b/renpy/gl2/__init__.py @@ -5,18 +5,20 @@ renpy.update_path() # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import gl2debug - from . import gl2draw - from . import gl2functions - from . import gl2mesh - from . import gl2mesh2 - from . import gl2mesh3 - from . import gl2model - from . import gl2polygon - from . import gl2shader - from . import gl2shadercache - from . import gl2texture - from . import live2d - from . import live2dmodel - from . import live2dmotion +import typing + +if typing.TYPE_CHECKING: + from . import gl2debug as gl2debug + from . import gl2draw as gl2draw + from . import gl2functions as gl2functions + from . import gl2mesh as gl2mesh + from . import gl2mesh2 as gl2mesh2 + from . import gl2mesh3 as gl2mesh3 + from . import gl2model as gl2model + from . import gl2polygon as gl2polygon + from . import gl2shader as gl2shader + from . import gl2shadercache as gl2shadercache + from . import gl2texture as gl2texture + from . import live2d as live2d + from . import live2dmodel as live2dmodel + from . import live2dmotion as live2dmotion diff --git a/renpy/sl2/__init__.py b/renpy/sl2/__init__.py index ed08a4a55..4823a7def 100644 --- a/renpy/sl2/__init__.py +++ b/renpy/sl2/__init__.py @@ -8,8 +8,10 @@ renpy.update_path() # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import slast - from . import sldisplayables - from . import slparser - from . import slproperties +import typing + +if typing.TYPE_CHECKING: + from . import slast as slast + from . import sldisplayables as sldisplayables + from . import slparser as slparser + from . import slproperties as slproperties diff --git a/renpy/styledata/__init__.py b/renpy/styledata/__init__.py index 81ac0943b..2e1856df0 100644 --- a/renpy/styledata/__init__.py +++ b/renpy/styledata/__init__.py @@ -45,17 +45,19 @@ def import_style_functions(): # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import style_activate_functions - from . import style_functions - from . import style_hover_functions - from . import style_idle_functions - from . import style_insensitive_functions - from . import style_selected_activate_functions - from . import style_selected_functions - from . import style_selected_hover_functions - from . import style_selected_idle_functions - from . import style_selected_insensitive_functions - from . import styleclass - from . import stylesets - from . import styleutil +import typing + +if typing.TYPE_CHECKING: + from . import style_activate_functions as style_activate_functions + from . import style_functions as style_functions + from . import style_hover_functions as style_hover_functions + from . import style_idle_functions as style_idle_functions + from . import style_insensitive_functions as style_insensitive_functions + from . import style_selected_activate_functions as style_selected_activate_functions + from . import style_selected_functions as style_selected_functions + from . import style_selected_hover_functions as style_selected_hover_functions + from . import style_selected_idle_functions as style_selected_idle_functions + from . import style_selected_insensitive_functions as style_selected_insensitive_functions + from . import styleclass as styleclass + from . import stylesets as stylesets + from . import styleutil as styleutil diff --git a/renpy/test/__init__.py b/renpy/test/__init__.py index 7bc994750..1f7c2bec4 100644 --- a/renpy/test/__init__.py +++ b/renpy/test/__init__.py @@ -29,10 +29,12 @@ renpy.update_path() # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import testast - from . import testexecution - from . import testfocus - from . import testkey - from . import testmouse - from . import testparser +import typing + +if typing.TYPE_CHECKING: + from . import testast as testast + from . import testexecution as testexecution + from . import testfocus as testfocus + from . import testkey as testkey + from . import testmouse as testmouse + from . import testparser as testparser diff --git a/renpy/text/__init__.py b/renpy/text/__init__.py index 1db71dc56..c6954f612 100644 --- a/renpy/text/__init__.py +++ b/renpy/text/__init__.py @@ -29,13 +29,15 @@ renpy.update_path() # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import emoji_trie - from . import extras - from . import font - from . import ftfont - from . import hbfont - from . import shader - from . import text - from . import textsupport - from . import texwrap +import typing + +if typing.TYPE_CHECKING: + from . import emoji_trie as emoji_trie + from . import extras as extras + from . import font as font + from . import ftfont as ftfont + from . import hbfont as hbfont + from . import shader as shader + from . import text as text + from . import textsupport as textsupport + from . import texwrap as texwrap diff --git a/renpy/translation/__init__.py b/renpy/translation/__init__.py index c0d589bee..0fde2e1fb 100644 --- a/renpy/translation/__init__.py +++ b/renpy/translation/__init__.py @@ -1146,9 +1146,11 @@ def detect_user_locale(): # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import dialogue - from . import extract - from . import generation - from . import merge - from . import scanstrings +import typing + +if typing.TYPE_CHECKING: + from . import dialogue as dialogue + from . import extract as extract + from . import generation as generation + from . import merge as merge + from . import scanstrings as scanstrings diff --git a/renpy/uguu/__init__.py b/renpy/uguu/__init__.py index 0fcf12aac..7483bad61 100644 --- a/renpy/uguu/__init__.py +++ b/renpy/uguu/__init__.py @@ -7,6 +7,8 @@ from renpy.uguu.uguu import * # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import gl - from . import uguu +import typing + +if typing.TYPE_CHECKING: + from . import gl as gl + from . import uguu as uguu diff --git a/renpy/update/__init__.py b/renpy/update/__init__.py index 11a223f0d..3670c1e73 100644 --- a/renpy/update/__init__.py +++ b/renpy/update/__init__.py @@ -24,8 +24,10 @@ from renpy.compat import PY2, basestring, bchr, bord, chr, open, pystr, range, r # Generated by scripts/relative_imports.py, do not edit below this line. -if 1 == 0: - from . import common - from . import download - from . import generate - from . import update +import typing + +if typing.TYPE_CHECKING: + from . import common as common + from . import download as download + from . import generate as generate + from . import update as update diff --git a/scripts/relative_imports.py b/scripts/relative_imports.py index aba19758e..699e0deb8 100755 --- a/scripts/relative_imports.py +++ b/scripts/relative_imports.py @@ -7,27 +7,40 @@ import re ROOT = pathlib.Path(__file__).parent.parent HEADER = "# Generated by scripts/relative_imports.py, do not edit below this line." +GENERATED_MODULES : str = """ +renpy.styledata.style_activate_functions +renpy.styledata.style_functions +renpy.styledata.style_hover_functions +renpy.styledata.style_idle_functions +renpy.styledata.style_insensitive_functions +renpy.styledata.style_selected_activate_functions +renpy.styledata.style_selected_functions +renpy.styledata.style_selected_hover_functions +renpy.styledata.style_selected_idle_functions +renpy.styledata.style_selected_insensitive_functions +""" + def find_modules(): """ Finds the names of all modules. """ - modules = [ ] + modules : list[str] = GENERATED_MODULES.split() - # .py modules. - for i in ROOT.glob("renpy/**/*.py"): - i = i.relative_to(ROOT) - mod = str(i.with_suffix("")).replace("/", ".") - if mod.endswith(".__init__"): - mod = mod[:-9] + # A list of root, pattern pairs. + patterns = [ + (ROOT, "renpy/**/*.py"), + (ROOT, "renpy/**/*.pyx"), + ] - modules.append(mod) + for root, pattern in patterns: + for i in ROOT.glob(pattern): + i = i.relative_to(ROOT) + mod = str(i.with_suffix("")).replace("/", ".") + if mod.endswith(".__init__"): + mod = mod[:-9] - # Generated modules. - for i in (ROOT / "module" / "gen3").glob("*.c"): - mod = str(i.stem) - - modules.append(mod) + modules.append(mod) modules.sort() @@ -48,8 +61,6 @@ def generate(package, modules): if package == "renpy.common": return - print(package) - fn = package.replace(".", "/") + "/__init__.py" p = ROOT / fn @@ -70,10 +81,12 @@ def generate(package, modules): text = text + "\n\n\n" text += HEADER + "\n" - text += "if 1 == 0:\n" + text += "import typing\n" + text += "\n" + text += "if typing.TYPE_CHECKING:\n" for mod in modules: - text += f" from . import {mod}\n" + text += f" from . import {mod} as {mod}\n" p.write_text(text)