Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update README #38

Merged
merged 31 commits into from
Aug 1, 2024
Merged

Update README #38

merged 31 commits into from
Aug 1, 2024

Conversation

emily-emily
Copy link
Contributor

Problem

Lacking detail in README and did not have a CONTRIBUTING file

Solution

This PR updates the README and adds a CONTRIBUTING file. Also updates some metadata in Cargo.toml

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Infrastructure change (CI configs, etc)
  • Non-code change (docs, etc)
  • None of the above: (explain here)

Test Plan

Does not change functional code, all existing test cases pass.

@emily-emily emily-emily marked this pull request as ready for review July 29, 2024 18:45
CONTRIBUTING.md Outdated Show resolved Hide resolved
CONTRIBUTING.md Outdated
Comment on lines 12 to 39
### Clone the repository

This repository relies on a git submodule to get access to our openapi spec. To clone the repository, use the command:

```
git clone --recurse-submodules [email protected]:pinecone-io/pinecone-rust-client.git
```

Or, if you have already cloned the repository, you can update the submodules with

```
git submodule update --init --recursive
```

### Generating code from OpenAPI and Proto specs

The generated code is already checked into the repository, but it can be regenerated by following these steps.

You will require access to the `apis` repository.
- Follow setup instructions for the `apis` repository: [apis setup](https://github.com/pinecone-io/apis)

OpenAPI

- You need [Docker Desktop](https://www.docker.com/products/docker-desktop/) in order to generate code using openapi. Look at `codegen/build-oas.sh` to see how this is used.
- Make sure Docker is running.
- `just build-openapi`
- References the spec files from the `codegen/apis` submodule
- Outputs the generated code to `src/openapi`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just to confirm developer experience if someone doesn't have access to our apis repo -- Are they still able to contribute fixes? They just couldn't run the build-protos step, right?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that's the case, yeah. We should make that explicit in the documentation (I'm working on the same thing in Go atm for the CONTRIBUTING.md).

My understanding is since we check in the generated code, and there's no dependency on the submodule for general development, this shouldn't hinder folks who are looking to submit changes publicly.

Cargo.toml Outdated Show resolved Hide resolved
Cargo.toml Outdated Show resolved Hide resolved
@ericapywang ericapywang merged commit 7169a9f into main Aug 1, 2024
1 check passed
@ericapywang ericapywang deleted the emily/update-readme branch August 1, 2024 14:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants