Build Graph

The ActiveState Build Graph is a graph-based API that provides access to our Platform for contributors so they can:

  • Create a list of requirements for a package.
  • Resolve the requirements to a build plan that includes a complete list of transitive dependencies, as well as native operating system dependencies from our open source catalog.
  • Build and retrieve the result of the build plan on various operating systems and hardware platforms, including Windows, Linux, and macOS.
  • Generate an SBOM for active projects.

With our Build Graph, using only GraphQL queries, ActiveState Platform contributors can define and compose steps for building complex open source software for any operating system and language without having to worry about sourcing, maintaining, and updating their own infrastructure. Instead, you can take advantage of the ActiveState Platform’s build infrastructure, which includes:

  • An innovative solver for dependency resolution.
  • The ability to parallelize steps for quicker builds.
  • Caching of build artifacts.
  • Automated packaging for Windows, macOS, and Linux.

About the GraphQL API

GraphQL APIs offer a number of advantages over the REST APIs including:

  • Ability to execute complex queries with a single call, resulting in less network overhead and faster development
  • Provides a query language for APIs, which makes it both simpler to expose API based on databases on the backend, and easier to consume on the front end
  • Self-documenting, thereby eliminating out of sync API documentation
  • Maps to the build graph domain model, allowing easier manipulation of information in the form of directed acyclic graphs (DAG)