// Copyright (c) 2017-2022 Cloudflare, Inc. // Licensed under the Apache 2.0 license found in the LICENSE file or at: // https://opensource.org/licenses/Apache-2.0 #pragma once #include #include #include #include namespace workerd::api::pyodide { capnp::json::Value::Reader getField( capnp::List<::capnp::json::Value::Field, capnp::Kind::STRUCT>::Reader &object, kj::StringPtr name); kj::String canonicalizePythonPackageName(kj::StringPtr name); // map from requirement to list of dependencies using DepMap = kj::HashMap>; DepMap getDepMapFromPackagesLock( capnp::List::Reader &packages); kj::Own::Reader> parseLockFile( kj::StringPtr lockFileContents); kj::HashSet getPythonPackageNames( capnp::List::Reader packages, const DepMap &depMap, kj::ArrayPtr requirements, kj::StringPtr packagesVersion); } // namespace workerd::api::pyodide