Commit Graph

99 Commits

Author SHA1 Message Date
github-actions[bot] 85d35c0516 Merge pull request #2 from vercel-labs/changeset-release/main
Version Packages
@chat-adapter/slack@4.0.1 chat@4.0.1 @chat-adapter/teams@4.0.1 @chat-adapter/state-redis@4.0.1 @chat-adapter/state-memory@4.0.1 @chat-adapter/state-ioredis@4.0.1 @chat-adapter/gchat@4.0.1
2026-01-02 14:33:31 -08:00
Malte Ubl b27ea10bce READMEs 2026-01-02 14:20:41 -08:00
Malte Ubl d2ffcc2cbe The great rename
We've acquired `chat` on npm. This plan covers renaming all packages and setting up automated publishing.

| Current Name | New Name | Version |
|--------------|----------|---------|
| `chat-sdk` | `chat` | 4.0.0 |
| `@chat-sdk/slack` | `@chat-adapter/slack` | 4.0.0 |
| `@chat-sdk/gchat` | `@chat-adapter/gchat` | 4.0.0 |
| `@chat-sdk/teams` | `@chat-adapter/teams` | 4.0.0 |
| `@chat-sdk/state-memory` | `@chat-adapter/state-memory` | 4.0.0 |
| `@chat-sdk/state-redis` | `@chat-adapter/state-redis` | 4.0.0 |
| `@chat-sdk/state-ioredis` | `@chat-adapter/state-ioredis` | 4.0.0 |

1. **Main package** (`packages/chat-sdk/package.json`):
   - Change `"name": "chat-sdk"` → `"name": "chat"`
   - Change `"version": "0.1.0"` → `"version": "4.0.0"`

2. **Adapter packages**:
   - `packages/adapter-slack/package.json`: `@chat-sdk/slack` → `@chat-adapter/slack`
   - `packages/adapter-gchat/package.json`: `@chat-sdk/gchat` → `@chat-adapter/gchat`
   - `packages/adapter-teams/package.json`: `@chat-sdk/teams` → `@chat-adapter/teams`
   - Update all versions to `4.0.0`
   - Update dependency on `chat-sdk` → `chat`

3. **State packages**:
   - `packages/state-memory/package.json`: `@chat-sdk/state-memory` → `@chat-adapter/state-memory`
   - `packages/state-redis/package.json`: `@chat-sdk/state-redis` → `@chat-adapter/state-redis`
   - `packages/state-ioredis/package.json`: `@chat-sdk/state-ioredis` → `@chat-adapter/state-ioredis`
   - Update all versions to `4.0.0`
   - Update dependency on `chat-sdk` → `chat`

Update `peerDependencies` and `dependencies` in each package:

```json
// Before
"peerDependencies": {
  "chat-sdk": "workspace:*"
}

// After
"peerDependencies": {
  "chat": "workspace:*"
}
```

Search and replace across the codebase:

| Find | Replace |
|------|---------|
| `from "chat-sdk"` | `from "chat"` |
| `from 'chat-sdk'` | `from 'chat'` |
| `import("chat-sdk")` | `import("chat")` |
| `from "@chat-sdk/slack"` | `from "@chat-adapter/slack"` |
| `from "@chat-sdk/gchat"` | `from "@chat-adapter/gchat"` |
| `from "@chat-sdk/teams"` | `from "@chat-adapter/teams"` |
| `from "@chat-sdk/state-memory"` | `from "@chat-adapter/state-memory"` |
| `from "@chat-sdk/state-redis"` | `from "@chat-adapter/state-redis"` |
| `from "@chat-sdk/state-ioredis"` | `from "@chat-adapter/state-ioredis"` |

Update any references to old package names in:
- `pnpm-workspace.yaml`
- `turbo.json` (task filters)
- Root `package.json` scripts

1. **README.md files** in each package
2. **Examples** (`examples/nextjs-chat/`)
3. **AGENTS.md** and other docs
4. **JSDoc comments** referencing package names

1. **Install changesets**:
   ```bash
   pnpm add -D @changesets/cli
   pnpm changeset init
   ```

2. **Configure `.changeset/config.json`**:
   ```json
   {
     "$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
     "changelog": "@changesets/cli/changelog",
     "commit": false,
     "fixed": [],
     "linked": [
       ["chat", "@chat-adapter/*"]
     ],
     "access": "public",
     "baseBranch": "main",
     "updateInternalDependencies": "patch",
     "ignore": ["example-nextjs-chat"]
   }
   ```

3. **Add GitHub Action** (`.github/workflows/release.yml`):
   ```yaml
   name: Release

   on:
     push:
       branches:
         - main

   concurrency: ${{ github.workflow }}-${{ github.ref }}

   jobs:
     release:
       name: Release
       runs-on: ubuntu-latest
       steps:
         - uses: actions/checkout@v4
         - uses: pnpm/action-setup@v2
           with:
             version: 9
         - uses: actions/setup-node@v4
           with:
             node-version: 20
             cache: 'pnpm'

         - run: pnpm install
         - run: pnpm build
         - run: pnpm test

         - name: Create Release Pull Request or Publish
           uses: changesets/action@v1
           with:
             publish: pnpm changeset publish
           env:
             GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
             NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
   ```

4. **Add publish config to each package.json**:
   ```json
   "publishConfig": {
     "access": "public"
   }
   ```

1. Run full build: `pnpm build`
2. Run typecheck: `pnpm typecheck`
3. Run lint: `pnpm lint`
4. Run tests: `pnpm test`
5. Test local linking in example app

| File | Changes |
|------|---------|
| `packages/chat-sdk/package.json` | Rename to `chat`, version 4.0.0 |
| `packages/adapter-slack/package.json` | Rename to `@chat-adapter/slack`, update deps |
| `packages/adapter-gchat/package.json` | Rename to `@chat-adapter/gchat`, update deps |
| `packages/adapter-teams/package.json` | Rename to `@chat-adapter/teams`, update deps |
| `packages/state-memory/package.json` | Rename to `@chat-adapter/state-memory`, update deps |
| `packages/state-redis/package.json` | Rename to `@chat-adapter/state-redis`, update deps |
| `packages/state-ioredis/package.json` | Rename to `@chat-adapter/state-ioredis`, update deps |
| `examples/nextjs-chat/package.json` | Update all dependencies |
| `packages/integration-tests/package.json` | Update all dependencies |
| `turbo.json` | Update package references |
| All `*.ts` files | Update import statements |
| All `README.md` files | Update package names in docs |
| `.changeset/config.json` | Create new |
| `.github/workflows/release.yml` | Create new |

1. Update all `package.json` files (names, versions, dependencies)
2. Run `pnpm install` to update lockfile
3. Update all import statements in source files
4. Update all import statements in test files
5. Update documentation
6. Set up changesets
7. Run full validation
8. Create initial changeset for 4.0.0 release
9. Commit and push

If issues arise:
1. Git revert the rename commit
2. Run `pnpm install` to restore lockfile
3. Previous npm versions remain available
@chat-adapter/gchat@4.0.0 chat@4.0.0 @chat-adapter/teams@4.0.0 @chat-adapter/state-redis@4.0.0 @chat-adapter/state-memory@4.0.0 @chat-adapter/state-ioredis@4.0.0 @chat-adapter/slack@4.0.0
2026-01-02 13:56:55 -08:00
Malte Ubl 514b0281ac DM tests 2026-01-02 10:50:32 -08:00
Malte Ubl 494772cf73 teams-test 2026-01-02 10:35:46 -08:00
Malte Ubl 7712b529b2 teams-dm 2026-01-02 10:26:50 -08:00
Malte Ubl a4ec15e792 replay-dm 2026-01-02 10:21:07 -08:00
Malte Ubl 3785643146 fixes 2026-01-02 06:35:14 -08:00
Malte Ubl b749049b3a dmn 2026-01-02 06:04:14 -08:00
Malte Ubl 21b7581cd6 errror 2026-01-02 06:00:29 -08:00
Malte Ubl 09fa4efaab impersonate 2026-01-02 05:53:29 -08:00
Malte Ubl ec90937f5b teams 2026-01-01 20:37:54 -08:00
Malte Ubl 39270b8b5d DM 2026-01-01 20:28:14 -08:00
Malte Ubl 0895cdd8a6 always-param 2026-01-01 19:53:08 -08:00
Malte Ubl 402629204d logging 2026-01-01 19:48:29 -08:00
Malte Ubl 8045f012f3 logging 2026-01-01 19:46:28 -08:00
Malte Ubl 67720bf7ec fixes2 2026-01-01 19:28:01 -08:00
Malte Ubl 31b003f66a fixes 2026-01-01 19:22:46 -08:00
Malte Ubl 7d7277787d bugs 2026-01-01 19:16:58 -08:00
Malte Ubl 146e832930 JSX2 2026-01-01 19:11:48 -08:00
Malte Ubl 2af76fe7b4 better-id 2026-01-01 19:04:19 -08:00
Malte Ubl da0b16fa9a JSX 2026-01-01 19:01:37 -08:00
Malte Ubl c75b9bc17d features 2026-01-01 17:25:27 -08:00
Malte Ubl 39c7427b56 New properties 2026-01-01 14:19:50 -08:00
Malte Ubl f241927bd7 ci-faster4 2026-01-01 13:37:27 -08:00
Malte Ubl aa84a17883 ci-faster3 2026-01-01 13:29:56 -08:00
Malte Ubl a5709e4749 ci-faster2 2026-01-01 13:26:48 -08:00
Malte Ubl 509e766e1e ci-faster 2026-01-01 13:22:12 -08:00
Malte Ubl b2136c8ada CI 2026-01-01 13:15:56 -08:00
Malte Ubl 961013c171 README 2026-01-01 13:14:37 -08:00
Malte Ubl 82c9e10d34 More logging 2026-01-01 13:09:42 -08:00
Malte Ubl 7e2350aaf9 test 2026-01-01 13:04:55 -08:00
Malte Ubl e8cd04e86d Teams thread context 2026-01-01 13:01:32 -08:00
Malte Ubl 980692a5b0 Teams response 2026-01-01 12:55:19 -08:00
Malte Ubl 05ab550947 gchat-fetch 2026-01-01 12:50:08 -08:00
Malte Ubl d008a719e1 teams-response 2026-01-01 12:42:44 -08:00
Malte Ubl 69b3ee7aa4 lint 2026-01-01 12:34:54 -08:00
Malte Ubl 08d740b4fc type-safe 2026-01-01 12:27:36 -08:00
Malte Ubl 6580f73280 More emoji 2026-01-01 12:00:28 -08:00
Malte Ubl ce4baf2183 Type-safe emoji 2026-01-01 11:46:44 -08:00
Malte Ubl f812ce198c gchat-limitation 2026-01-01 11:23:44 -08:00
Malte Ubl ca0e91035d permissions 2026-01-01 11:18:10 -08:00
Malte Ubl 8174bce544 emoji bug 2026-01-01 11:10:13 -08:00
Malte Ubl 02dd531545 Emoji support 2026-01-01 11:01:44 -08:00
Malte Ubl 76752101b5 replay 2026-01-01 09:40:04 -08:00
Malte Ubl 092baf8fdb Better tests 2026-01-01 09:38:22 -08:00
Malte Ubl 93a82ffc08 IORedis and better validate 2026-01-01 09:11:52 -08:00
Malte Ubl 0b02a3a048 Fix race in connector 2026-01-01 08:52:28 -08:00
Malte Ubl 7236e88374 Ensure README is always in good shape 2026-01-01 08:33:57 -08:00
Malte Ubl d696201e98 Refactor 2025-12-31 16:25:22 -08:00