Skip to content

Commit

Permalink
Merge branch 'main' into docs
Browse files Browse the repository at this point in the history
  • Loading branch information
bmschmidt authored Jul 31, 2024
2 parents a4f6a3e + b55eff3 commit dda1728
Show file tree
Hide file tree
Showing 22 changed files with 8,259 additions and 546 deletions.
47 changes: 47 additions & 0 deletions .github/workflows/npm-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Publish Next Tag Version

on:
push:
branches:
- main

jobs:
publish-next-tag-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0

- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: '18'
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
run: npm ci

- name: Install release-please
run: npm install -g release-please

- name: Determine next version and update package.json
run: |
# Determine next version
OUTPUT=$(release-please release-pr --dry-run --token=${{ secrets.GITHUB_TOKEN }} --repo-url=${{ github.repository }} --default-branch=main)
NEXT_VERSION=$(echo "$OUTPUT" | grep "chore(main): release atlas" | sed 's/.*atlas //')
echo "Next version: $NEXT_VERSION"
# Count existing pre-releases
NEXT_VERSION_COUNT=$(npm view . versions --json | jq "[.[] | select(startswith(\"$NEXT_VERSION-next.\"))] | length")
echo "Number of existing pre-releases: $NEXT_VERSION_COUNT"
# Create final version string
FINAL_VERSION="${NEXT_VERSION}-next.${NEXT_VERSION_COUNT}"
echo "Final version: $FINAL_VERSION"
# Update package.json
npm version $FINAL_VERSION --no-git-tag-version
npm publish --tag=next
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
39 changes: 39 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
on:
push:
branches:
- main

permissions:
contents: write
pull-requests: write

name: Release Please

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
release-type: node

# The logic below handles the npm publication:
- uses: actions/checkout@v3
# these if statements ensure that a publication only occurs when
# a new release is created:
if: ${{ steps.release.outputs.release_created }}

- uses: actions/setup-node@v3
with:
node-version: 16
registry-url: 'https://registry.npmjs.org'
if: ${{ steps.release.outputs.release_created }}

- run: npm ci
if: ${{ steps.release.outputs.release_created }}

- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
if: ${{ steps.release.outputs.release_created }}
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.10.1"
}
72 changes: 45 additions & 27 deletions RELEASE_NOTES.md → CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,125 +1,143 @@
# 0.9.6
# Changelog

## [0.10.1](https://github.com/nomic-ai/ts-nomic/compare/v0.10.0...v0.10.1) (2024-07-24)

_Introduced Release-Please for Release Management_

### Bug Fixes

- openapi script and file ([#54](https://github.com/nomic-ai/ts-nomic/issues/54)) ([65631bf](https://github.com/nomic-ai/ts-nomic/commit/65631bfc6649fda0b0fd9641fa1437359e199b46))

## 0.10.0

- Add `fetchAttr`, `withLoadedAttr`, and `attr` methods to `BaseAtlasClass` to allow for a single reliable
way to await attributes with cache-busting.
- Add support for nearest-neighbor search by vector.

## 0.9.6

- Rename "AtlasProject" to "AtlasDataset" with backwards compatible alias.

# 0.9.5
## 0.9.5

- Fixed issue with duplicate detection parameters

# 0.9.4
## 0.9.4

- Deprecated 'update_indices' method

# 0.9.3
## 0.9.3

- Change default projection hyperparameters.

# 0.9.2
## 0.9.2

- Support for different embedding tasks
- Support for nomic-embed-text-v1.5

# 0.9.1
## 0.9.1

- Minor patch

# 0.9.0
## 0.9.0

- Full support of embedding endpoints with API keys.

# 0.8.0
## 0.8.0

- Support new Nomic API keys for requests.
- Improved support of tagging.

# 0.7.0
## 0.7.0

- Methods for creating, updating, deleting tags and tag masks
- Tests for tagging methods
- Adding default organization to user info so tests get run in tester's organization

# 0.6.2
## 0.6.2

- Improve typing of index creation function

# 0.6.1
## 0.6.1

- Export APIError for external usage
- uploadArrow now accepts a serialized arrow IPC file in addition to an arrow table
- Fix URL for projection information

# 0.6.0
## 0.6.0

- Remove all use of `/public` endpoints.

# 0.5.1
## 0.5.1

- Improved handling of API Errors with APIError class

# 0.5.0
## 0.5.0

- Switch to more consistent constructor patter of `new AtlasProject(id, user, options)
- Switch to more consistent `info()` pattern as promise.
- Bundle `info()` as a promise to avoid multiple dispatch at once.
- Add `AtlasProject.clear()` to clear cache, and call at the end of the `waitForProjectLock` method.
- Have `AtlasProject` use `AtlasUser` for its `info()` method to allow private method.

# 0.4.4
## 0.4.4

- Allow passing tables as Uint8Arrays rather than Arrow.Table objects.

# 0.4.3
## 0.4.3

- `Project.info` calls `User.apiCall()` instead of `Project.apiCall()` to avoid infinite recursion in certain cases.

# 0.4.2
## 0.4.2

- autocorrect requests

# 0.4.1
## 0.4.1

- add boolean flag to identify unauthenticated users.

# 0.4.0
## 0.4.0

- Refactored User.apiCall to deserialize JSON and Arrow before returning (breaking change)

# 0.3.4
## 0.3.4

- Added protocol switch for localhost development
- Updated apache-arrow to 12.0.1

# 0.3.3
## 0.3.3

- Re-added env variable for setting domain

# 0.3.2
## 0.3.2

- Bump code for commit.

# 0.3.1
## 0.3.1

- Move tests from typescript to javascript
- Add '.js' suffix to all imports
- Move remote URL model from struct called 'tenants' to a single 'apiLocation'.

# 0.3.0
## 0.3.0

- Refactoring of environment setting
- Change to AtlasUser initialization

# 0.2.0
## 0.2.0

2023-06-23

- Refactor for new authorization scheme.
- Remove build artifacts from repo.
- Change 'create_project' to be method on `AtlasOrganization`.

# 0.1.1 - 0.1.6
## 0.1.1 - 0.1.6

Private releases

# 0.1.0
## 0.1.0

First release

> > > > > > > main
17 changes: 17 additions & 0 deletions ellipsis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
version: 1.3

about:
- This is a codebase for the Typescript SDK of Nomic Atlas. Atlas is a web based service that allows users to store and interact with unstructure datasets. The SDK should be useful for developers who want to interact with the Atlas API in both Node and browser environments.

pr_review:
confidence_threshold: 0.7
rules:
- "Code should be DRY (Don't Repeat Yourself)"
- 'There should no secrets or credentials in the code'
- 'Extremely Complicated Code Needs Comments'
- 'Use Descriptive Variable and Constant Names'
- "Requests to APIs must have error handling, they shouldn't solely just the network error"
- 'Use retries when calling external API services'
- "Don't log sensitive data"
- 'Follow the Single Responsibility Principle'
- 'Function and Method Naming Should Follow Consistent Patterns'
Loading

0 comments on commit dda1728

Please sign in to comment.