Skip to content

Commit a44780c

Browse files
authored
feat: integrate pyodide helper (#206)
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
1 parent b8fbb3b commit a44780c

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

docs/webapp.js

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -229,12 +229,9 @@ class App extends React.Component {
229229
var families_checks;
230230
try {
231231
families_checks = pyodide.runPython(`
232-
from pyodide.http import open_url
233232
from repo_review.processor import process, md_as_html
234233
from repo_review.ghpath import GHPath
235234
236-
GHPath.open_url = staticmethod(open_url)
237-
238235
package = GHPath(repo="${state.repo}", branch="${state.branch}")
239236
result = process(package)
240237

pyproject.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,8 +113,9 @@ disallow_untyped_defs = true
113113

114114

115115
[tool.pylint]
116-
master.py-version = "3.10"
117-
master.ignore-paths= ["src/repo_review/_version.py"]
116+
py-version = "3.10"
117+
ignore-paths = ["src/repo_review/_version.py"]
118+
ignored-modules = ["pyodide"]
118119
reports.output-format = "colorized"
119120
similarities.ignore-imports = "yes"
120121
messages_control.disable = [
@@ -131,6 +132,7 @@ messages_control.disable = [
131132
"no-member", # better handled by mypy, etc.
132133
"used-before-assignment", # False positive on conditional import
133134
"unnecessary-ellipsis", # Not correct for typing
135+
"import-outside-toplevel", # better handled elsewhere
134136
]
135137

136138

src/repo_review/ghpath.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import dataclasses
88
import io
99
import json
10+
import sys
1011
import typing
1112
from collections.abc import Iterator
1213
from typing import Literal
@@ -47,7 +48,12 @@ class GHPath(Traversable):
4748

4849
@staticmethod
4950
def open_url(url: str) -> io.StringIO:
50-
"This method can be overridden for pyodide with pyodide.open_url"
51+
"This method can be overridden manually for WASM. Supports pyodide currently."
52+
if sys.platform == "emscripten":
53+
import pyodide.http
54+
55+
return pyodide.http.open_url(url)
56+
5157
import urllib.request # pylint: disable=import-outside-toplevel
5258

5359
with urllib.request.urlopen(url) as response:

0 commit comments

Comments
 (0)