@@ -37,15 +37,15 @@ def _create_build_metadata():
37
37
with open (version_file , "r" ) as f :
38
38
version = f .read ().strip ()
39
39
else :
40
- version = "0.0.0"
40
+ version = "0.0.0+unknown "
41
41
42
42
# Add dev suffix if specified
43
43
dev_suffix = os .environ .get ("FLASHINFER_DEV_RELEASE_SUFFIX" , "" )
44
44
if dev_suffix :
45
45
version = f"{ version } .dev{ dev_suffix } "
46
46
47
47
# Get git version
48
- git_version = get_git_version ()
48
+ git_version = get_git_version (cwd = Path ( __file__ ). parent . parent )
49
49
50
50
# Append CUDA version suffix if available
51
51
cuda_suffix = os .environ .get ("CUDA_VERSION_SUFFIX" , "" )
@@ -63,7 +63,7 @@ def _create_build_metadata():
63
63
return version
64
64
65
65
66
- def compile_jit_cache (output_dir : Path , verbose : bool = True ):
66
+ def _compile_jit_cache (output_dir : Path , verbose : bool = True ):
67
67
"""Compile AOT modules using flashinfer.aot functions directly."""
68
68
from flashinfer import aot
69
69
@@ -91,7 +91,7 @@ def _build_aot_modules():
91
91
92
92
try :
93
93
# Compile AOT modules
94
- compile_jit_cache (aot_package_dir )
94
+ _compile_jit_cache (aot_package_dir )
95
95
96
96
# Verify that some modules were actually compiled
97
97
so_files = list (aot_package_dir .rglob ("*.so" ))
@@ -198,6 +198,16 @@ def prepare_metadata_for_build_wheel(metadata_directory, config_settings=None):
198
198
)
199
199
200
200
201
+ def prepare_metadata_for_build_editable (metadata_directory , config_settings = None ):
202
+ """Prepare metadata for editable install, creating build metadata first."""
203
+ _create_build_metadata ()
204
+
205
+ with _MonkeyPatchBdistWheel ():
206
+ return _orig .prepare_metadata_for_build_editable (
207
+ metadata_directory , config_settings
208
+ )
209
+
210
+
201
211
# Export the required interface
202
212
get_requires_for_build_wheel = _orig .get_requires_for_build_wheel
203
213
get_requires_for_build_editable = getattr (
0 commit comments