Skip to content

chore: update eta on sqlite in actorcore #968

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

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
59686d7
feat: add actor proxy support for HTTP fallback
NathanFlurry May 11, 2025
bff1882
refactor: clean up logging style and reduce verbosity
NathanFlurry May 11, 2025
9dfa32c
chore: remove transport negotiation
NathanFlurry May 16, 2025
d164dfe
test: test both websockets & sse in drivers
NathanFlurry May 16, 2025
33e0685
fix(core): fix sse support
NathanFlurry May 17, 2025
55e25a8
fix(core): fix reporting errors for sse initiation
NathanFlurry May 17, 2025
c116b67
feat: add stateless get/create/getWithId
NathanFlurry May 19, 2025
7c7e92a
chore: move `connect*` endpoints to be a method on `ActorHandle`
NathanFlurry May 19, 2025
262e496
feat: add `ActorHandle.resolve` to resolve actor ID
NathanFlurry May 19, 2025
ffdf65d
chore: standardize typescript files to use kebab case names
NathanFlurry May 19, 2025
6d54739
chore: throw error if attempting to create actor multiple times
NathanFlurry May 20, 2025
c5d61c6
chore: move test suite to actor-core package
NathanFlurry May 20, 2025
f5ebdf3
chore: add user agent to all fetch requests
NathanFlurry May 20, 2025
e00938d
chore: move parameters & other properties to headers for e2ee
NathanFlurry May 20, 2025
3c94612
test: complete coverage of actor tests
NathanFlurry May 21, 2025
7ad85eb
refactor: rename all uses of "rpc" to "action" internally
NathanFlurry May 21, 2025
9ff6544
chore: fix type checks
NathanFlurry May 21, 2025
445ebba
docs: add openapi docs
NathanFlurry May 21, 2025
8ddf966
chore: auto-generate openapi.json
NathanFlurry May 21, 2025
58bb0c1
chore: update eta on sqlite in actorcore
NathanFlurry May 21, 2025
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
16 changes: 8 additions & 8 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@ jobs:
with:
node-version: '22.14'
# Note: We're not using the built-in cache here because we need to use corepack

- name: Setup Corepack
run: corepack enable

- id: yarn-cache-dir-path
name: Get yarn cache directory path
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT

- name: Cache dependencies
uses: actions/cache@v3
id: cache
Expand All @@ -50,14 +50,14 @@ jobs:
restore-keys: |
${{ runner.os }}-deps-${{ hashFiles('**/yarn.lock') }}-
${{ runner.os }}-deps-

- name: Install dependencies
run: yarn install

# - name: Run actor-core tests
# # TODO: Add back
# # run: yarn test
# run: yarn check-types
- name: Run actor-core tests
# TODO: Add back
# run: yarn test
run: yarn check-types

# - name: Install Rust
# uses: dtolnay/rust-toolchain@stable
Expand Down
4 changes: 4 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
- **Build:** `yarn build` - Production build using Turbopack
- **Build specific package:** `yarn build -F actor-core` - Build only specified package
- **Format:** `yarn fmt` - Format code with Biome
- Do not run the format command automatically.

## Core Concepts

Expand Down Expand Up @@ -85,6 +86,9 @@ This ensures imports resolve correctly across different build environments and p
- Extend from `ActorError` base class
- Use `UserError` for client-safe errors
- Use `InternalError` for internal errors
- Don't try to fix type issues by casting to unknown or any. If you need to do this, then stop and ask me to manually intervene.
- Write log messages in lowercase
- Instead of returning raw HTTP responses with c.json, use or write an error in packages/actor-core/src/actor/errors.ts and throw that instead. The middleware will automatically serialize the response for you.

## Project Structure

Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Each unit of compute is like a tiny server that remembers things between request

<img src=".github/media/icons/database-regular.svg" height="16" />&nbsp;&nbsp;**Durable State Without a Database**

Your code's state is saved automatically—no database, ORM, or config needed. Just use regular JavaScript objects or SQLite (available in April).
Your code's state is saved automatically—no database, ORM, or config needed. Just use regular JavaScript objects or SQLite (available in June).

<br/>

Expand Down Expand Up @@ -96,7 +96,7 @@ Browse snippets for how to use ActorCore with different use cases.
| Multiplayer Game | [actor.ts](/examples/snippets/game/actor-json.ts) | [actor.ts](/examples/snippets/game/actor-sqlite.ts) | [App.tsx](/examples/snippets/game/App.tsx) |
| Rate Limiter | [actor.ts](/examples/snippets/rate/actor-json.ts) | [actor.ts](/examples/snippets/rate/actor-sqlite.ts) | [App.tsx](/examples/snippets/rate/App.tsx) |

_SQLite will be available in late April. We’re working on publishing full examples related to these snippets. If you find an error, please create an issue._
_SQLite will be available in June. We’re working on publishing full examples related to these snippets. If you find an error, please create an issue._

## Runs On Your Stack

Expand Down Expand Up @@ -142,7 +142,7 @@ Seamlessly integrate ActorCore with your favorite frameworks, languages, and too
- <img src="docs/images/platforms/vercel.svg" height="16" alt="AI SDK" />&nbsp;&nbsp;[AI SDK](https://github.com/rivet-gg/actor-core/issues/907) *(On The Roadmap)*

### Local-First Sync
- <img src="docs/images/integrations/livestore.svg" height="16" alt="LiveStore" />&nbsp;&nbsp;[LiveStore](https://github.com/rivet-gg/actor-core/issues/908) *(Available In May)*
- <img src="docs/images/integrations/livestore.svg" height="16" alt="LiveStore" />&nbsp;&nbsp;[LiveStore](https://github.com/rivet-gg/actor-core/issues/908) *(Available In June)*
- <img src="docs/images/integrations/zerosync.svg" height="16" alt="ZeroSync" />&nbsp;&nbsp;[ZeroSync](https://github.com/rivet-gg/actor-core/issues/909) *(Help Wanted)*
- <img src="docs/images/integrations/tinybase.svg" height="16" alt="TinyBase" />&nbsp;&nbsp;[TinyBase](https://github.com/rivet-gg/actor-core/issues/910) *(Help Wanted)*
- <img src="docs/images/integrations/yjs.svg" height="16" alt="Yjs" />&nbsp;&nbsp;[Yjs](https://github.com/rivet-gg/actor-core/issues/911) *(Help Wanted)*
Expand Down
1 change: 0 additions & 1 deletion docs/concepts/interacting-with-actors.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -569,7 +569,6 @@ Other common errors you might encounter:

- `InternalError`: Error from your actor that's not a subclass of `UserError`
- `ManagerError`: Issues when connecting to or communicating with the actor manager
- `NoSupportedTransport`: When the client and server have no compatible transport

## Disconnecting and Cleanup

Expand Down
2 changes: 1 addition & 1 deletion docs/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ import FAQ from "/snippets/landing-faq.mdx";
<Icon icon="database" color="#ff4f00" size={24} />
<h3 className="not-prose">Durable State Without a Database</h3>
<div className="feature-description">
<p>Your code's state is saved automatically—no database, ORM, or config needed. Just use regular JavaScript objects or SQLite (available in April).</p>
<p>Your code's state is saved automatically—no database, ORM, or config needed. Just use regular JavaScript objects or SQLite (available in June).</p>
</div>
</div>
<div className="feature-box group">
Expand Down
Loading