Skip to content

Use Workpool for actions: enables retries & parallelism limits #30

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

Merged
merged 51 commits into from
Apr 5, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
1df3e0c
small things
ianmacartney Apr 2, 2025
36c768e
install workflow
ianmacartney Apr 2, 2025
6e52453
update logging to separate fn, global config
ianmacartney Apr 2, 2025
93aa055
lint
ianmacartney Apr 2, 2025
c41cacb
more logging
ianmacartney Apr 2, 2025
559895e
lint
ianmacartney Apr 2, 2025
78470b3
pass through function name for workpool tracing
ianmacartney Apr 2, 2025
906698d
readme
ianmacartney Apr 2, 2025
79184e5
move workpool to own file and configure default retries
ianmacartney Apr 2, 2025
e2062d1
pass through retry config
ianmacartney Apr 2, 2025
c26a353
0.2.0-alpha.0
ianmacartney Apr 3, 2025
deb3df0
contribute!
ianmacartney Apr 3, 2025
eff3489
github test
ianmacartney Apr 3, 2025
2dde127
alpha and release scripts
ianmacartney Apr 3, 2025
853eb42
convex tests
ianmacartney Apr 3, 2025
8be4e90
readme
ianmacartney Apr 3, 2025
01dbd1c
console.log for logger
ianmacartney Apr 3, 2025
136e5ec
oncomplete in pool
ianmacartney Apr 3, 2025
290f2c5
return step status
ianmacartney Apr 3, 2025
b29e20e
unify load and blockedBy in mutation
ianmacartney Apr 3, 2025
643d63b
run workflow handle more reliably from onComplete
ianmacartney Apr 3, 2025
8e4837e
create and run the first iteration to sanity check it'll work
ianmacartney Apr 3, 2025
bb62388
api update
ianmacartney Apr 3, 2025
c46ed6d
move workpool to client
ianmacartney Apr 3, 2025
9838722
0.2.0-alpha.1
ianmacartney Apr 3, 2025
f48e704
readme
ianmacartney Apr 3, 2025
bf08e60
load all things in one
ianmacartney Apr 3, 2025
49199df
make logger match workpool
ianmacartney Apr 3, 2025
7a43e7f
add workpool back to component
ianmacartney Apr 3, 2025
c637e15
use runResult
ianmacartney Apr 3, 2025
66cf891
add events
ianmacartney Apr 3, 2025
7aa7224
move transcription example to dedicated file
ianmacartney Apr 3, 2025
c16777a
export workflowId validator
ianmacartney Apr 3, 2025
544d3bf
update example
ianmacartney Apr 3, 2025
a367d8f
0.2.0-alpha.2
ianmacartney Apr 3, 2025
5f81128
cleanup
ianmacartney Apr 4, 2025
15bb686
add oncomplete
ianmacartney Apr 4, 2025
b914a64
returns validator working
ianmacartney Apr 4, 2025
d52008a
0.2.0-alpha.3
ianmacartney Apr 4, 2025
4e9628b
pass through runAt and runAfter
ianmacartney Apr 4, 2025
09b8279
fix event name
ianmacartney Apr 4, 2025
66f56a9
parallel works
ianmacartney Apr 4, 2025
5d1ee34
0.2.0-alpha.4
ianmacartney Apr 4, 2025
0123bd3
readme
ianmacartney Apr 4, 2025
ebd8feb
0.2.0-alpha.5
ianmacartney Apr 4, 2025
52907a1
workpool
ianmacartney Apr 4, 2025
df2d386
0.2.0-alpha.6
ianmacartney Apr 4, 2025
6aa5bbc
update eslint for github
ianmacartney Apr 4, 2025
1919b33
lint
ianmacartney Apr 4, 2025
d2c86de
readme
ianmacartney Apr 4, 2025
3f97e00
defaults
ianmacartney Apr 5, 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
19 changes: 19 additions & 0 deletions .github/workflows/node.js.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Run tests
on:
push:
branches: ["main"]
pull_request:
branches: ["main"]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js
uses: actions/setup-node@v4
- run: npm i
- run: npm ci
- run: cd example && npm i && cd ..
- run: npm run typecheck
- run: cd example && npm run lint && cd ..
- run: npm test
50 changes: 50 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Developing guide

## Running locally

```sh
npm i
cd example
npm i
npx convex dev
```

## Testing

```sh
rm -rf dist/ && npm run build
npm run typecheck
npm run test
cd example
npm run lint
cd ..
```

## Deploying

### Building a one-off package

```sh
rm -rf dist/ && npm run build
npm pack
```

### Deploying a new version

```sh
# this will change the version and commit it (if you run it in the root directory)
npm version patch
npm publish --dry-run
# sanity check files being included
npm publish
git push --tags
```

#### Alpha release

The same as above, but it requires extra flags so the release is only installed with `@alpha`:

```sh
npm version prerelease --preid alpha
npm publish --tag alpha
```
Loading