Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 2 additions & 20 deletions .github/workflows/create-releases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,27 +22,12 @@ jobs:
repo: ${{ github.event.repository.full_name }}
stainless-api-key: ${{ secrets.STAINLESS_API_KEY }}

- name: Generate a token
id: generate_token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.APP_ID }}
private-key: ${{ secrets.APP_PRIVATE_KEY }}
owner: 'openai'
repositories: 'openai-node,openai-deno-build'

- name: Set up Node
if: ${{ steps.release.outputs.releases_created }}
uses: actions/setup-node@v3
with:
node-version: '18'

- name: Set up Deno
if: ${{ steps.release.outputs.releases_created }}
uses: denoland/setup-deno@v1
with:
deno-version: v1.35.1

- name: Install dependencies
if: ${{ steps.release.outputs.releases_created }}
run: |
Expand All @@ -55,11 +40,8 @@ jobs:
env:
NPM_TOKEN: ${{ secrets.OPENAI_NPM_TOKEN || secrets.NPM_TOKEN }}

- name: Publish to Deno
- name: Publish to JSR
if: ${{ steps.release.outputs.releases_created }}
run: |
bash ./scripts/git-publish-deno.sh
env:
DENO_PUSH_REMOTE_URL: https://username:${{ steps.generate_token.outputs.token }}@github.com/openai/openai-deno-build.git
DENO_PUSH_BRANCH: main
bash ./bin/publish-jsr

44 changes: 0 additions & 44 deletions .github/workflows/publish-deno.yml

This file was deleted.

30 changes: 30 additions & 0 deletions .github/workflows/publish-jsr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# workflow for re-running publishing to JSR in case it fails for some reason
# you can run this workflow by navigating to https://www.github.com/openai/openai-node/actions/workflows/publish-jsr.yml
name: Publish JSR
on:
workflow_dispatch:

jobs:
publish:
name: publish
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
environment: publish

steps:
- uses: actions/checkout@v4

- name: Set up Node
uses: actions/setup-node@v3
with:
node-version: '18'

- name: Install dependencies
run: |
yarn install

- name: Publish to JSR
run: |
bash ./bin/publish-jsr
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ yarn-error.log
codegen.log
Brewfile.lock.json
dist
/deno
dist-deno
/*.tgz
.idea/
tmp
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "4.69.0"
".": "4.70.0"
}
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,23 @@
# Changelog

## 4.70.0 (2024-11-01)

Full Changelog: [v4.69.0...v4.70.0](https://github.com/openai/openai-node/compare/v4.69.0...v4.70.0)

### Features

* publish to jsr ([#1165](https://github.com/openai/openai-node/issues/1165)) ([5aa93a7](https://github.com/openai/openai-node/commit/5aa93a7fe704ef1ad077787852db38dc29104534))


### Chores

* **internal:** fix isolated modules exports ([9cd1958](https://github.com/openai/openai-node/commit/9cd19584dcc6f4004ea1adcee917aa88a37d5f1c))


### Refactors

* use type imports for type-only imports ([#1159](https://github.com/openai/openai-node/issues/1159)) ([07bbaf6](https://github.com/openai/openai-node/commit/07bbaf6ecac9a5e36471a35488020853ddf9214f))

## 4.69.0 (2024-10-30)

Full Changelog: [v4.68.4...v4.69.0](https://github.com/openai/openai-node/compare/v4.68.4...v4.69.0)
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# OpenAI Node API Library

[![NPM version](https://img.shields.io/npm/v/openai.svg)](https://npmjs.org/package/openai) ![npm bundle size](https://img.shields.io/bundlephobia/minzip/openai)
[![NPM version](https://img.shields.io/npm/v/openai.svg)](https://npmjs.org/package/openai) ![npm bundle size](https://img.shields.io/bundlephobia/minzip/openai) [![JSR Version](https://jsr.io/badges/@openai/openai)](https://jsr.io/@openai/openai)

This library provides convenient access to the OpenAI REST API from TypeScript or JavaScript.

Expand All @@ -14,12 +14,12 @@ To learn how to use the OpenAI API, check out our [API Reference](https://platfo
npm install openai
```

You can import in Deno via:
You can also import from jsr:

<!-- x-release-please-start-version -->

```ts
import OpenAI from 'https://deno.land/x/[email protected]/mod.ts';
import OpenAI from 'jsr:@openai/openai';
```

<!-- x-release-please-end -->
Expand Down
11 changes: 11 additions & 0 deletions bin/publish-jsr
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#!/usr/bin/env bash

set -eux

# Build the project
yarn build

# Navigate to the dist directory
cd dist-deno

npx jsr publish ${JSR_TOKEN:+"--token=$JSR_TOKEN"}
8 changes: 8 additions & 0 deletions jsr.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"name": "@openai/openai",
"version": "4.47.1",
"exports": "./index.ts",
"publish": {
"exclude": ["!."]
}
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "openai",
"version": "4.69.0",
"version": "4.70.0",
"description": "The official TypeScript library for the OpenAI API",
"author": "OpenAI <[email protected]>",
"types": "dist/index.d.ts",
Expand Down
2 changes: 1 addition & 1 deletion release-please-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,6 @@
"extra-files": [
"src/version.ts",
"README.md",
"scripts/build-deno"
"jsr.json"
]
}
41 changes: 5 additions & 36 deletions scripts/build-deno
Original file line number Diff line number Diff line change
Expand Up @@ -4,47 +4,16 @@ set -exuo pipefail

cd "$(dirname "$0")/.."

rm -rf deno; mkdir deno
cp -rp src/* deno
rm -rf dist-deno; mkdir dist-deno
cp -rp src/* jsr.json dist-deno

# x-release-please-start-version
cat << EOF > deno/README.md
# OpenAI Node API Library - Deno build

This is a build produced from https://github.com/openai/openai-node – please go there to read the source and docs, file issues, etc.

Usage:

\`\`\`ts
import OpenAI from "https://deno.land/x/[email protected]/mod.ts";

const client = new OpenAI();
\`\`\`

Note that in most Deno environments, you can also do this:

\`\`\`ts
import OpenAI from "npm:openai";
\`\`\`
EOF
# x-release-please-end

rm deno/_shims/auto/*-node.ts
for dir in deno/_shims deno/_shims/auto; do
rm dist-deno/_shims/auto/*-node.ts
for dir in dist-deno/_shims dist-deno/_shims/auto; do
rm "${dir}"/*.{d.ts,js,mjs}
for file in "${dir}"/*-deno.ts; do
mv -- "$file" "${file%-deno.ts}.ts"
done
done
for file in LICENSE CHANGELOG.md; do
if [ -e "${file}" ]; then cp "${file}" deno; fi
if [ -e "${file}" ]; then cp "${file}" dist-deno; fi
done
npm exec ts-node -T -- scripts/utils/denoify.ts
deno fmt deno
deno check deno/mod.ts
if [ -e deno_tests ]; then
deno test deno_tests --allow-env
fi

# make sure that nothing crashes when we load the Deno module
(cd deno && deno run mod.ts)
77 changes: 0 additions & 77 deletions scripts/git-publish-deno.sh

This file was deleted.

Loading