-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into openhands-fix-issue-5716
- Loading branch information
Showing
459 changed files
with
18,501 additions
and
9,459 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
#!/usr/bin/env python3 | ||
import os | ||
import re | ||
import sys | ||
from typing import Set, Tuple | ||
|
||
|
||
def find_version_references(directory: str) -> Tuple[Set[str], Set[str]]: | ||
openhands_versions = set() | ||
runtime_versions = set() | ||
|
||
version_pattern_openhands = re.compile(r'openhands:(\d{1})\.(\d{2})') | ||
version_pattern_runtime = re.compile(r'runtime:(\d{1})\.(\d{2})') | ||
|
||
for root, _, files in os.walk(directory): | ||
# Skip .git directory | ||
if '.git' in root: | ||
continue | ||
|
||
for file in files: | ||
if file.endswith( | ||
('.md', '.yml', '.yaml', '.txt', '.html', '.py', '.js', '.ts') | ||
): | ||
file_path = os.path.join(root, file) | ||
try: | ||
with open(file_path, 'r', encoding='utf-8') as f: | ||
content = f.read() | ||
|
||
# Find all openhands version references | ||
matches = version_pattern_openhands.findall(content) | ||
openhands_versions.update(matches) | ||
|
||
# Find all runtime version references | ||
matches = version_pattern_runtime.findall(content) | ||
runtime_versions.update(matches) | ||
except Exception as e: | ||
print(f'Error reading {file_path}: {e}', file=sys.stderr) | ||
|
||
return openhands_versions, runtime_versions | ||
|
||
|
||
def main(): | ||
repo_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..')) | ||
openhands_versions, runtime_versions = find_version_references(repo_root) | ||
|
||
exit_code = 0 | ||
|
||
if len(openhands_versions) > 1: | ||
print('Error: Multiple openhands versions found:', file=sys.stderr) | ||
print('Found versions:', sorted(openhands_versions), file=sys.stderr) | ||
exit_code = 1 | ||
elif len(openhands_versions) == 0: | ||
print('Warning: No openhands version references found', file=sys.stderr) | ||
|
||
if len(runtime_versions) > 1: | ||
print('Error: Multiple runtime versions found:', file=sys.stderr) | ||
print('Found versions:', sorted(runtime_versions), file=sys.stderr) | ||
exit_code = 1 | ||
elif len(runtime_versions) == 0: | ||
print('Warning: No runtime version references found', file=sys.stderr) | ||
|
||
sys.exit(exit_code) | ||
|
||
|
||
if __name__ == '__main__': | ||
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
--- | ||
name: repo | ||
type: repo | ||
agent: CodeActAgent | ||
--- | ||
This repository contains the code for OpenHands, an automated AI software engineer. It has a Python backend | ||
(in the `openhands` directory) and React frontend (in the `frontend` directory). | ||
|
||
## General Setup: | ||
To set up the entire repo, including frontend and backend, run `make build`. | ||
You don't need to do this unless the user asks you to, or if you're trying to run the entire application. | ||
|
||
Before pushing any changes, you should ensure that any lint errors or simple test errors have been fixed. | ||
|
||
* If you've made changes to the backend, you should run `pre-commit run --all-files --config ./dev_config/python/.pre-commit-config.yaml` | ||
* If you've made changes to the frontend, you should run `cd frontend && npm run lint:fix && npm run build ; cd ..` | ||
|
||
If either command fails, it may have automatically fixed some issues. You should fix any issues that weren't automatically fixed, | ||
then re-run the command to ensure it passes. | ||
|
||
## Repository Structure | ||
Backend: | ||
- Located in the `openhands` directory | ||
- Testing: | ||
- All tests are in `tests/unit/test_*.py` | ||
- To test new code, run `poetry run pytest tests/unit/test_xxx.py` where `xxx` is the appropriate file for the current functionality | ||
- Write all tests with pytest | ||
|
||
Frontend: | ||
- Located in the `frontend` directory | ||
- Prerequisites: A recent version of NodeJS / NPM | ||
- Setup: Run `npm install` in the frontend directory | ||
- Testing: | ||
- Run tests: `npm run test` | ||
- To run specific tests: `npm run test -- -t "TestName"` | ||
- Building: | ||
- Build for production: `npm run build` | ||
- Environment Variables: | ||
- Set in `frontend/.env` or as environment variables | ||
- Available variables: VITE_BACKEND_HOST, VITE_USE_TLS, VITE_INSECURE_SKIP_VERIFY, VITE_FRONTEND_PORT | ||
- Internationalization: | ||
- Generate i18n declaration file: `npm run make-i18n` |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.