diff --git a/src/dynare/dynare.py b/src/dynare/dynare.py index d0be35596dd310809ea0ec50435376b2d9ab1983..bb17fab2ff7bf4bacb4e9577ce6bca87daea49c1 100644 --- a/src/dynare/dynare.py +++ b/src/dynare/dynare.py @@ -182,18 +182,14 @@ def dynare(model: str | Path) -> Context: end """ ) - jl.seval(f'@dynare "{resolved_path}"') - - jls_path = model.parent / model.stem / "output" / f"{model.stem}.jls" - - if not jls_path.exists(): - raise DynareError( - f"Model evaluation failed. No JLS file found at {jls_path}" - ) - context = jl.seval( - f"""ctx = Serialization.deserialize("{jls_path.resolve()}"); - convert_to_pycontext(ctx)""" + f"""ctx = @dynare "{resolved_path}"; + if !(ctx isa Dynare.Context) + throw(error("Failed to produce a Dynare context.")) + else + convert_to_pycontext(ctx) + end + """ ) return Context.from_julia(context) except JuliaError as e: