Git Product home page Git Product logo

api's Introduction

deps.cloud

⚠️ After much internal conflict, I've decided to move this project into maintenance mode. This comes after a long 3+ years of working on this project in open source with little to no involvement from others. After trying to present this at several conferences, it's clear either the community isn't ready for or does not require such a building block. Most individuals that have come to the project open issues, but have not seemed interested in contributing anything beyond a ticket. IF interest picks up again, I'm always happy to take the project off the back burner. For now, I'm just too burnt out managing a project that doesn't seem wanted / needed / desired.

deps.cloud is a tool to help companies understand what libraries and projects their systems use. It works by detecting dependencies defined in common manifest files (pom.xml, package.json, go.mod, etc). Using this information, we’re able to answer questions about project dependencies.

  • What versions of k8s.io/client-go do we depend on?
  • Which projects use eslint as a non-dev dependency?
  • What open source libraries do we use the most?

To start using deps.cloud

See our documentation on deps.cloud.

To start developing deps.cloud

Take a look at our contributing guidelines and project board.

# setup a workspace for all depscloud
mkdir depscloud && cd $_

# clone repository
git clone [email protected]:depscloud/depscloud.git

Support

Join our mailing list to get access to virtual events and ask any questions there.

We also have a Slack channel.

Checks

Branch

branch workflow coverage dockerfiles workflow goreleaser branch workflow

Release

nightly workflow extractor-tag workflow goreleaser-tag workflow

Image

extractor docker hub extractor image extractor pulls

gateway docker hub gateway image gateway pulls

indexer docker hub indexer image indexer pulls

tracker docker hub tracker image tracker pulls

License

fossa analytics

api's People

Contributors

dependabot[bot] avatar madhuvanthg avatar mjpitz avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

api's Issues

Improve documentation

The readme makes it difficult to know what the clients enable projects to do. We should break out separate getting started guides (one for nodejs and one for golang) as well as an overview of the system.

Add example client usage to python README

The README documentation is pretty bare and it would be good to get a few good code samples in each of them. This ticket is scoped to updating the README for packages/depscloud-api-python.

Add example client usage to golang README

The README documentation is pretty bare and it would be good to get a few good code samples in each of them. This ticket is scoped to updating the README.md for Golang.

Generate python clients

Should be pretty easy to do since the gRPC plugin is in place. Figuring out how to publish the pipi module is a different story.

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update jest monorepo (@types/jest, jest)
  • chore(deps): update golang docker tag to v1.20
  • chore(deps): update actions/checkout action to v4
  • chore(deps): update dependency typescript to v5
  • chore(deps): update node.js to v16
  • chore(deps): update node.js to v20
  • fix(deps): update module github.com/grpc-ecosystem/grpc-gateway to v2
  • 🔐 Create all rate-limited PRs at once 🔐

Edited/Blocked

These updates have been manually edited so Renovate will no longer make changes. To discard all commits and start over, click on a checkbox.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

dockerfile
docker/builder-grpc-golang/Dockerfile
  • golang 1.16-buster
docker/builder-grpc-nodejs/Dockerfile
  • node 12-buster
docker/builder-grpc-python/Dockerfile
  • python 3-buster
github-actions
.github/workflows/tag.yaml
  • actions/checkout v2
  • actions/checkout v2
  • node 12-alpine3.11
  • python 3-alpine3.11
gomod
go.mod
  • go 1.16
  • github.com/golang/protobuf v1.4.3
  • github.com/grpc-ecosystem/grpc-gateway v1.15.2
  • google.golang.org/grpc v1.33.1
  • google.golang.org/protobuf v1.24.0
npm
packages/depscloud-api-nodejs/package.json
  • @grpc/grpc-js 1.1.8
  • @grpc/proto-loader 0.5.5
  • @types/jest 26.0.15
  • jest 26.6.1
  • ts-jest 26.4.3
  • typescript 4.1.2
pip_setup
packages/depscloud-api-python/setup.py
  • protobuf ==3.14.0
  • grpcio ==1.33.2

  • Check this box to trigger a request for Renovate to run again on this repository

Add github actions

Noticed the other day that there is no CI/CD for this library. We should have at least two:

  • branch build - run generation, ensure no changes, quick test
  • tag build - publish to npm

Warning when consuming the JavaScript API

Things appear to continue to function, but seems related to some changes I have out in a PR for python:

(node:26140) Warning: github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis/google/api/annotations.proto not found in any of the include paths 

API v0.3 Discussion

Ticket to track discussion around enhancements to this repository in v0.3. Some initial thoughts:

  1. I'd like to keep this pinned to v1alpha.
  2. Move generated code into language-specific sub-directories.
  3. Put gRPC clients into a grpc directory.
  4. Put REST clients into a rest directory.
  5. Remove topology service.
  6. Use more colloquial terms (group, name instead of organization, module)
  7. Design a traversal api (https://github.com/deps-cloud/cli/issues/8)

Action Required: Fix Renovate Configuration

There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.

Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.

Remove need for double import in node js

Right now, importing a client in nodejs requires a trailing suffix. It would be great if they only needed to import once. For example @deps-cloud/api/v1alpha/extractor instead of @deps-cloud/api/v1alpha/extractor/extractor

v1beta

Here are a couple of goals:

  • Start a "hard" break between graphstore definition and depscloud definitions
  • Remove duplication of modules where possible
  • Reduce number of imports
  • Consolidate into fewer services
  • Start to consider how we filter on edge data.

Add example client usage to nodejs README

The README documentation is pretty bare and it would be good to get a few good code samples in each of them. This ticket is scoped to updating the README for packages/depscloud-api-nodejs.

Setup docker github workflows

We should have workflows to build and push the docker images.

On branches, docker images should be built. Since these are largely SDK containers, there isn't much to test about them. When the branch is main, we should push a :latest tag to dockerhub.

Setup default tests

Since this project is largely generated, it would be good to ensure that the generation is happening properly. For example, when a change is checked in on any branch we should re-run code generation and look for a clean working tree. If files were modified, it's likely the code wasn't generated before commit.

In the event of an unclean working tree, the build should fail.

Add search support for sources and modules

I managed to pull together a PR that supports indexing a handful of fields in our data model for better access... In order to access some of that information, we need some new apis added.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.