@@ -94,52 +94,51 @@ jobs:
9494 composer_version = version_match.group(1)
9595 print(f"Extracted composer version from release name: {composer_version}")
9696
97- # Extract assets that start with module name
97+ # Extract assets
9898 # Special handling for composer (uses .phar files)
9999 assets = []
100100 for asset in release_data.get('assets', []):
101101 filename = asset['name']
102102
103- # Check if file starts with module name
104- if filename.startswith(module_name):
105- # For composer, accept .phar files; for others, accept .7z or .zip
106- if module_name == 'composer':
107- if filename.endswith('.phar'):
108- download_url = asset['browser_download_url']
109- # Use version from release name, or extract from filename
110- if composer_version:
111- ver = composer_version
103+ # For composer, accept any .phar file (doesn't need to start with "composer")
104+ # For other modules, file must start with module name
105+ if module_name == 'composer':
106+ if filename.endswith('.phar'):
107+ download_url = asset['browser_download_url']
108+ # Use version from release name, or extract from filename
109+ if composer_version:
110+ ver = composer_version
111+ else:
112+ version_match = re.search(r'(\d+\.\d+\.\d+(?:\.\d+)?)', filename)
113+ if version_match:
114+ ver = version_match.group(1)
112115 else:
113- version_match = re.search(r'(\d+\.\d+\.\d+(?:\.\d+)?)', filename)
114- if version_match:
115- ver = version_match.group(1)
116- else:
117- print(f"ERROR: Could not extract version for composer from release name or filename: {filename}")
118- print(f"Release name: {release_data.get('name', 'N/A')}")
119- exit(1)
116+ print(f"ERROR: Could not extract version for composer from release name or filename: {filename}")
117+ print(f"Release name: {release_data.get('name', 'N/A')}")
118+ exit(1)
119+ assets.append({
120+ 'version': ver,
121+ 'url': download_url,
122+ 'filename': filename
123+ })
124+ print(f"Found: {filename} -> Version: {ver}")
125+ elif filename.startswith(module_name):
126+ # Standard modules use .7z or .zip and must start with module name
127+ if filename.endswith('.7z') or filename.endswith('.zip'):
128+ download_url = asset['browser_download_url']
129+
130+ # Extract version number (flexible pattern)
131+ version_match = re.search(r'(\d+\.\d+\.\d+(?:\.\d+)?)', filename)
132+ if version_match:
133+ ver = version_match.group(1)
120134 assets.append({
121135 'version': ver,
122136 'url': download_url,
123137 'filename': filename
124138 })
125139 print(f"Found: {filename} -> Version: {ver}")
126- else:
127- # Standard modules use .7z or .zip
128- if filename.endswith('.7z') or filename.endswith('.zip'):
129- download_url = asset['browser_download_url']
130-
131- # Extract version number (flexible pattern)
132- version_match = re.search(r'(\d+\.\d+\.\d+(?:\.\d+)?)', filename)
133- if version_match:
134- ver = version_match.group(1)
135- assets.append({
136- 'version': ver,
137- 'url': download_url,
138- 'filename': filename
139- })
140- print(f"Found: {filename} -> Version: {ver}")
141- else:
142- print(f"Warning: Could not extract version from: {filename}")
140+ else:
141+ print(f"Warning: Could not extract version from: {filename}")
143142
144143 if not assets:
145144 if module_name == 'composer':
0 commit comments