Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3398 commits
Select commit Hold shift + click to select a range
dfa43c6
Rename SKStore interface to Context
bennostein Oct 7, 2024
988d589
Rename Watermarked to UpdatedValues and fix JSON object keys
bennostein Oct 7, 2024
08b873c
Document UpdatedValues fields
bennostein Oct 7, 2024
fc3fcef
[sktest] Remove unnecessary `skbuild` dependency.
beauby Oct 7, 2024
1ad408c
[prelude] Get rid of stale `build_wasm32.mk`.
beauby Oct 7, 2024
a4bc63d
[skc] Remove support for `SKC_LIBRARIES`.
beauby Oct 7, 2024
1f329cc
[skc] Remove support for `SKC_LINK`.
beauby Oct 7, 2024
500dd27
[skc] Fix `test` target in `Makefile`.
beauby Oct 7, 2024
8cb6a7b
[skc] Fix `test` target in `Makefile`. (#370)
beauby Oct 7, 2024
7e69f4e
[skc] Remove support for `SKC_LINK`/`SKC_LIBRARIES` env vars. (#369)
beauby Oct 7, 2024
9dfa4dc
[sktest] Remove unnecessary `skbuild` dependency. (#367)
beauby Oct 7, 2024
f5b49cb
SkipRuntime cleanups and doc comments (#362)
bennostein Oct 7, 2024
27128d6
[skc] Factor out `getOrInitializeBackend()`.
beauby Oct 5, 2024
da46e2c
[skc] Handle `--version` flag outside of `Config`.
beauby Oct 6, 2024
d037699
[skc] Pass only `ptrBitSize` to back-end initialization.
beauby Oct 7, 2024
a92b879
[skc] Clean up `compile()`. (#366)
beauby Oct 7, 2024
ee718a3
[prelude] Get rid of stale `build_wasm32.mk`. (#368)
beauby Oct 7, 2024
f992d41
[skjson] Add toString to Proxies join to ArrayProxy
skiplabsdaniel Oct 7, 2024
0b704e8
[skjson] Fix createCJInt
skiplabsdaniel Oct 4, 2024
15fdc73
[skjson] Add toString to Proxies join to ArrayProxy (#372)
skiplabsdaniel Oct 7, 2024
025b6bb
[skstore] Remove sub directories on EagerDir delete.
skiplabsdaniel Oct 4, 2024
31992f4
[skstore] Add persistents user data
skiplabsdaniel Sep 30, 2024
af34ce9
[skstore] Add onDirDelete mechanism
skiplabsdaniel Oct 2, 2024
639202e
[sktore] Remove sub directories on EagerDir delete. (#373)
skiplabsdaniel Oct 7, 2024
be7fe9c
Fix CI after moving skip code under `skiplang/`.
beauby Oct 7, 2024
3af346b
Fix CI after moving skip code under `skiplang/`. (#374)
beauby Oct 7, 2024
9566127
[sktest] Fix `build.sk`.
beauby Oct 7, 2024
98b905d
[sktest] Fix `build.sk`. (#375)
beauby Oct 7, 2024
e5fbe4c
[skc] Move `getLastModificationTime()` into stdlib.
beauby Oct 7, 2024
f5dc214
[skipruntime] Implement Skip runtime directly in Skip
skiplabsdaniel Oct 2, 2024
ad4e837
[skipruntime] New wasm mapping
skiplabsdaniel Oct 2, 2024
39b7d81
Add remote basic example
skiplabsdaniel Oct 4, 2024
2a38ab2
Add http call example
skiplabsdaniel Oct 7, 2024
d37154c
[skipruntime] Manage skip runtime in SKIPLang (#364)
skiplabsdaniel Oct 7, 2024
4193fcb
[skc] Move `getLastModificationTime()` into stdlib. (#376)
beauby Oct 8, 2024
f7be7df
Unify type for `CollectionUpdate` in diff/subscribe operations; use b…
bennostein Oct 7, 2024
a71facc
Make watermarks opaque instead of raw bigint
bennostein Oct 7, 2024
556f361
Use opaque type for subscription IDs instead of raw bigint
bennostein Oct 7, 2024
290750a
Address minor dangling code-review comments from #362
bennostein Oct 7, 2024
07bb7b8
Use AsyncParams instead of P as type variable on async calls
bennostein Oct 7, 2024
52b39cc
[skipruntime] Type cleanups and improvements (#371)
bennostein Oct 8, 2024
02166af
[skipruntime] Multiple resources call in same remote service badly in…
skiplabsdaniel Oct 8, 2024
0ac66fc
[skipruntime] Fix multiple resources call in same remote service (#378)
skiplabsdaniel Oct 8, 2024
e7728d0
[skipruntime] Fix watermark serialization
skiplabsdaniel Oct 8, 2024
47dbe34
[skipruntime] Fix watermark serialization (#379)
skiplabsdaniel Oct 8, 2024
e8f04ac
Rename NonEmptyIterator.convert to map
jberdine Oct 8, 2024
1077730
Apply discussed API renamings around resources & external sources
bennostein Oct 9, 2024
5be4bc3
Make params optional and default-empty in useExternalResource
bennostein Oct 9, 2024
756ccbd
Rename NonEmptyIterator.convert to map (#380)
jberdine Oct 9, 2024
c505d8a
s/ExternalResources/ExternalService/
bennostein Oct 9, 2024
bb4c56d
s/RemoteResources/ExternalSkipService/
bennostein Oct 9, 2024
e313326
More renamings and cleanups around external resource API (#381)
bennostein Oct 9, 2024
2d401ba
Refactor x-reactive-response header extraction logic out to util
bennostein Oct 9, 2024
35f19f7
Typo fixes
bennostein Oct 9, 2024
76836ab
s/x-reactive-response/Skip-Reactive-Response-Token/
bennostein Oct 9, 2024
e2120a2
Handle string as well as HTTP header objects in parseReactiveResponse…
bennostein Oct 9, 2024
9aaf0d9
Refactor out some shared logic for reactive-response HTTP header extr…
bennostein Oct 9, 2024
8bebe99
[stdlib] Fix error message for JSON `KeyNotFound` exception.
beauby Oct 8, 2024
ee6090c
[stdlib] Fix error message for JSON `KeyNotFound` exception. (#386)
beauby Oct 9, 2024
e21c16a
[skipruntime] Fix makefile run examples server
skiplabsdaniel Oct 9, 2024
932d9ba
[skipruntime] Fix makefile run examples server (#390)
skiplabsdaniel Oct 9, 2024
be8b624
[skc] Store sklib sources in `lib.skmeta`.
beauby Oct 7, 2024
87ad44e
[skc] Store sklib sources in `lib.skmeta`. (#383)
beauby Oct 9, 2024
d7f8a38
[skargo] Fix `build`/`check` for dependency-free packages.
beauby Oct 9, 2024
3be5c93
Update .gitignore to manage changes to skiplang directory
skiplabsdaniel Oct 9, 2024
2bdc147
Update .gitignore to manage changes to skiplang directory (#392)
skiplabsdaniel Oct 10, 2024
83d6d01
[skipruntime] Fix spelling
skiplabsdaniel Oct 10, 2024
41b3030
[skipruntime] Fix spelling (#394)
skiplabsdaniel Oct 10, 2024
84f4f01
[skipruntime] Share ReactiveResponse to header
skiplabsdaniel Oct 9, 2024
0fc6504
[skargo] Fix `build`/`check` for dependency-free packages. (#393)
beauby Oct 10, 2024
dec21a4
Fix Dockerfile after skiplang directory change
jberdine Oct 10, 2024
2bb323b
[skipruntime] Share ReactiveResponse to header (#389)
skiplabsdaniel Oct 10, 2024
64744a5
[skipruntime] Manage gracefull shutdown
skiplabsdaniel Oct 10, 2024
60ec99e
[skipruntime] Fix SkipRuntime_Runtime__subscribe return type
skiplabsdaniel Oct 10, 2024
b04e1c9
[skipruntime] Fix SkipRuntime_Runtime__subscribe return type (#398)
skiplabsdaniel Oct 10, 2024
b2b9cb9
[skipruntime] Manage gracefull shutdown (#399)
skiplabsdaniel Oct 10, 2024
02403e4
Fix Dockerfile after skiplang directory change (#396)
jberdine Oct 10, 2024
598920d
[skipruntime] Use Entry for input initial values
skiplabsdaniel Oct 9, 2024
61371f5
[skipruntime] Use Entry for input initial values (#388)
skiplabsdaniel Oct 10, 2024
0abb139
[sktest] Do not monkey-patch `Inspect` with `Equality`.
beauby Oct 10, 2024
051d038
[sktest] Do not monkey-patch `Inspect` with `Equality`. (#401)
beauby Oct 10, 2024
b34232b
[skstore] Fix tests
skiplabsdaniel Oct 10, 2024
bdf5994
[skstore] Fix tests (#402)
skiplabsdaniel Oct 10, 2024
ea6de49
Renamed http into externalDepartureAPI in the departure example
pikatchu Oct 11, 2024
c834499
Fixed formatting
pikatchu Oct 11, 2024
64aac24
Renamed http into externalDepartureAPI in the departure example (#406)
pikatchu Oct 11, 2024
9281af8
[skiprutime-server] Respond with 404 error on UnknownCollectionError
skiplabsdaniel Oct 11, 2024
7070121
[skiprutime-server] Respond with 404 error on UnknownCollectionError …
skiplabsdaniel Oct 11, 2024
7f585c3
[skiprutime] Renaming
skiplabsdaniel Oct 11, 2024
60f2835
[skiprutime] Renaming (#403)
skiplabsdaniel Oct 11, 2024
b0b4721
[skipruntime] Add some API doc comments
skiplabsdaniel Oct 11, 2024
19c5c35
[skipruntime] Add some API doc comments (#404)
skiplabsdaniel Oct 11, 2024
f15f89b
[examples] Fix hackernews service
skiplabsdaniel Oct 11, 2024
0dd80f6
[examples] Fix hackernews service (#411)
skiplabsdaniel Oct 11, 2024
17296bc
Refactor useExternalResource to take an object as a parameter.
pikatchu Oct 11, 2024
d2d3498
Fixed formatting
pikatchu Oct 11, 2024
a261e06
Replaced ternary operator with ?? to make the linter happy
pikatchu Oct 11, 2024
46cdf76
updated @param docs
pikatchu Oct 11, 2024
a95d7d8
Pass object to use external resource (#408)
pikatchu Oct 11, 2024
a5c6e33
Prefer `npm run build` over `bun run build`
jberdine Oct 9, 2024
ebabfd5
Fix check targets
jberdine Oct 3, 2024
7905394
Add target to check ts sources
jberdine Oct 9, 2024
c5c90b6
Improve check targets (#412)
jberdine Oct 14, 2024
6d34c35
[skc] Get rid of stale functions.
beauby Oct 14, 2024
9b9fbb4
[skc] Get rid of unused method.
beauby Oct 14, 2024
3aa33ba
[skc] Get rid of stale `memoized`-specific code.
beauby Oct 14, 2024
00580b9
[skc] Remove dead code. (#413)
beauby Oct 14, 2024
57d0f63
[skip/client] Specify minimum nodejs version in `package.json`.
beauby Oct 17, 2024
a5dc17c
[skipruntime] Fix departures example
skiplabsdaniel Oct 17, 2024
257a6ab
[skipruntime] Fix departures example (#418)
skiplabsdaniel Oct 17, 2024
a6d97b1
Fix test targets
jberdine Oct 16, 2024
6156b76
Fix async usage in examples/utils
jberdine Oct 16, 2024
6a636a4
Enable noUncheckedIndexedAccess
jberdine Oct 9, 2024
a6fd9eb
Enable noUncheckedIndexedAccess (#416)
jberdine Oct 18, 2024
0350d57
[skip/client] Specify minimum nodejs version in `package.json`. (#417)
beauby Oct 18, 2024
f0b2ded
Update js deps
jberdine Oct 18, 2024
1a0f60e
Update js deps (#420)
jberdine Oct 18, 2024
17150a9
[skipruntime] Manage external resources reuse
skiplabsdaniel Oct 9, 2024
635eedb
[skipruntime] Prevent to read a collection in it's creator to prevent…
skiplabsdaniel Oct 17, 2024
d0b1cd5
[skipruntime] Manage external resources reuse (#387)
skiplabsdaniel Oct 21, 2024
6c4b7e3
[example/hackernews] Prevent text selection upon upvote click.
beauby Oct 21, 2024
865e037
[examples/hackernews] Update front-end `README.md`.
beauby Oct 21, 2024
0f21adc
[examples/hackernews] Make example part of the root workspace.
beauby Oct 21, 2024
760506f
[example/hackernews] Add `server.js` for `npm start`.
beauby Oct 21, 2024
5ebdf21
[skipruntime/client] Make `creds` public.
beauby Oct 22, 2024
f8f0383
[examples/hackernews] Add missing `requests` dependency to `requireme…
beauby Oct 22, 2024
1e3aede
[example/hackernews] Update example.
beauby Oct 22, 2024
f43e533
Cleanup hackernews example (#422)
beauby Oct 22, 2024
ba052bb
Add README template.
beauby Oct 22, 2024
1e8b06f
Move `freeze` util from skipruntime_init to skipruntime_utils
bennostein Oct 22, 2024
95cbabf
Move/rename SkipRuntime from public API to ServiceInstance in skiprun…
bennostein Oct 22, 2024
5ca7a87
Add README template. (#424)
bennostein Oct 23, 2024
22d7ea9
git-ignore *.tsbuildinfo
bennostein Oct 23, 2024
c80e9ff
Move `freeze` alongside `Constant`; export from `skipruntime_api.ts`
bennostein Oct 23, 2024
41740e8
Reshuffle/rename things around SkipRuntime/Services (#426)
bennostein Oct 23, 2024
c0c8d39
rename symbol values used only for their types
jberdine Oct 18, 2024
f5012ee
tighten type to remove type error
jberdine Oct 18, 2024
07edb7d
avoid type error using Object.defineProperty
jberdine Oct 18, 2024
456040d
explicitly drop return value of PromiseWorker subscription functions
jberdine Oct 18, 2024
82466fa
revise UnmanagedMessage constructor type
jberdine Oct 18, 2024
4189325
tighten type of __heap_base
jberdine Oct 18, 2024
abc23e6
Minor possibly-functional cleanups (#421)
jberdine Oct 23, 2024
2a543da
Remove empty Payload interface
jberdine Oct 25, 2024
b6e71d6
[skipruntime] Fix resource data name unicity
skiplabsdaniel Oct 25, 2024
293301f
[skipruntime] Fix resource data name unicity (#432)
skiplabsdaniel Oct 25, 2024
9076696
Remove empty Payload interface (#429)
bennostein Oct 25, 2024
f2f7bb6
[skipruntime] Allow to wait for external resources
skiplabsdaniel Oct 23, 2024
44db22e
s/runtime/service/ in runtime.spec.ts
bennostein Oct 25, 2024
e15c2b8
Reorder args in getOne/getAll and default to empty params record
bennostein Oct 25, 2024
e900281
Disambiguate `values` vs. `payload` fields in `GetResult`/`Values`
bennostein Oct 25, 2024
f71c160
Clean up tests and drop getAll/getOne helpers
bennostein Oct 25, 2024
216677a
s/Identified/Identifier/
bennostein Oct 25, 2024
0c66ed3
Rename `todo` callbacks and simplify logic
bennostein Oct 25, 2024
bd36149
Fix comments, variable names, and method names on ServiceInstance
bennostein Oct 28, 2024
372ccdf
Use ReactiveResponse type instead of unpacking collection/watermark
bennostein Oct 28, 2024
598b811
[skipruntime] Allow to wait for external resources (#425)
bennostein Oct 28, 2024
88a54f1
Add deps to react useEffect calls in hackernews example
jberdine Oct 25, 2024
2786918
Add deps to react useEffect calls in hackernews example (#428)
jberdine Oct 28, 2024
70db79d
[docs] Add overview for "Writing Functions" section
bennostein Sep 23, 2024
664f94f
English prose fixes
bennostein Oct 23, 2024
716d2e3
Replace `it` argument name by more-descriptive `values` for mappers
bennostein Oct 23, 2024
9a5dc13
[docs] Update glossary: drop obsolete info and add service/resource
bennostein Oct 23, 2024
0ef8fd3
[docs] Update introduction.md
bennostein Oct 28, 2024
4f69abe
[docs] Change markdown files from 80-column-wrapped to one-sentence-p…
bennostein Oct 28, 2024
83ca566
[docs] Batch of updates to www/docs (#433)
bennostein Oct 29, 2024
5b45ca8
Handle undefined result from getPost in hackernews front-end
jberdine Oct 23, 2024
e113363
Fix typescript-eslint/restrict-plus-operands
jberdine Oct 24, 2024
fcc2ff2
Fix typescript-eslint/no-unused-expressions
jberdine Oct 25, 2024
421ec4d
Remove unnecessary reassignment
jberdine Oct 25, 2024
ffc9cb3
Array types do not admit any falsy values
jberdine Oct 25, 2024
2c31e83
Function types do not admit any falsy values
jberdine Oct 25, 2024
8c6f4ea
ToWasmManager type does not admit null or undefined values
jberdine Oct 25, 2024
3c9303c
Record types do not admit falsy values
jberdine Oct 25, 2024
9fba44d
TextEncoderEncodeIntoResult type does not admit falsy values
jberdine Oct 25, 2024
b88ad1d
Type string does not admit null or undefined values
jberdine Oct 25, 2024
f30bfa6
IDBDatabase type does not admit null or undefined values
jberdine Oct 25, 2024
0c74172
Opaque<number, _> types do not admit null or undefined values
jberdine Oct 25, 2024
929d0c3
Revise Message constructors
jberdine Oct 25, 2024
2adb865
Appease typescript-eslint/prefer-optional-chain
jberdine Oct 25, 2024
42913bb
Fix stream type and replace range type assumption with runtime check
jberdine Oct 25, 2024
7ee3602
Not strictly NFC cleanups toward being lint-clean (#434)
jberdine Oct 29, 2024
bb8ff0a
Fix comment typo
jberdine Oct 18, 2024
fec6a39
Prefer ts-expect-error over ts-ignore
jberdine Oct 18, 2024
c2061f1
Suppress typescript-eslint/no-unsafe-return
jberdine Oct 18, 2024
6858d93
Suppress typescript-eslint/no-unsafe-argument
jberdine Oct 18, 2024
cbbbb9b
Suppress typescript-eslint/no-unsafe-call
jberdine Oct 18, 2024
c1293d5
Prefer const over let over var
jberdine Oct 18, 2024
6528542
Disable no-unused-vars lint rule
jberdine Oct 18, 2024
6c5a0df
Disable linter on sql/ts/tests
jberdine Oct 18, 2024
8132998
Explicitly drop promises returned by upvotePost, getInitialData, getPost
jberdine Oct 24, 2024
17f30b3
Appease typescript-eslint/use-unknown-in-catch-callback-variable
jberdine Oct 24, 2024
fde4894
Appease typescript-eslint/no-empty-function
jberdine Oct 25, 2024
df256ca
Suppress typescript-eslint/no-this-alias
jberdine Oct 25, 2024
f589659
Fix type of sk_worker runner
jberdine Oct 25, 2024
1c446da
Suppress typescript-eslint/no-unnecessary-condition on while(true) loops
jberdine Oct 25, 2024
9d34a0c
Suppress typescript-eslint/no-unnecessary-condition false alarm
jberdine Oct 25, 2024
979e774
Appease typescript-eslint/no-unnecessary-type-assertion
jberdine Oct 25, 2024
f4cf93b
Appease typescript-eslint/no-useless-constructor
jberdine Oct 25, 2024
5520ec1
Appease typescript-eslint/no-array-constructor
jberdine Oct 25, 2024
807addf
Appease typescript-eslint/array-type
jberdine Oct 25, 2024
54adbab
Appease stylistic/js/lines-between-class-members
jberdine Oct 25, 2024
df6e5c1
Run linter as part of `make check-ts`
jberdine Oct 25, 2024
970f68c
Make TS sources lint-clean and enable linter in check-ts target (#435)
jberdine Oct 29, 2024
872c75a
Add CI job to build and lint ts
jberdine Oct 29, 2024
701fa2b
Add CI job to build and lint ts (#436)
jberdine Oct 29, 2024
65b8501
Rename `it` argument of `mapElement` to `values`
jberdine Oct 29, 2024
ee66c76
Rename `it` argument of `mapElement` to `values` (#437)
jberdine Oct 29, 2024
ac9c395
Rename Skip REST service and fix getOne/getArray there
bennostein Oct 29, 2024
09cb97b
[nfc] Rename Skip REST service and fix getOne/getArray there (#439)
bennostein Oct 29, 2024
5a589ed
Rename ValueMapper, add ManyToOneMapper and use it to simplify examples
jberdine Oct 29, 2024
fc98ce8
Rename ValueMapper, add ManyToOneMapper and use it to simplify exampl…
jberdine Oct 30, 2024
933e2a3
Reorder args of reactiveCompute to allow omitting context
jberdine Oct 29, 2024
adb8e26
Reorder args of reactiveCompute to allow omitting context (#438)
jberdine Oct 30, 2024
c3e35ea
[skipruntime] Fix GetResult type
skiplabsdaniel Oct 30, 2024
0d53e99
[skipruntime] Fix ServiceInstance.getAll return type (#442)
skiplabsdaniel Oct 30, 2024
678cd71
Rename SkipService inputCollections to initialData
jberdine Oct 31, 2024
4cd4d54
Rename SkipService inputCollections to initialData (#445)
jberdine Oct 31, 2024
f5c5d45
Switch French to English spelling (#447)
jberdine Oct 31, 2024
2973e48
Print error message when client cannot connect to the websocket
pikatchu Oct 14, 2024
7c0a34d
Print error message when client cannot connect to the websocket (#414)
jberdine Nov 1, 2024
651ebaa
Tighten URI terminology to URL
jberdine Oct 30, 2024
87e8888
Tighten URI terminology to URL (#444)
jberdine Nov 1, 2024
3f813b1
[skiprutime] Create api package
skiplabsdaniel Oct 30, 2024
bcacca3
[skipruntime] Create helper package
skiplabsdaniel Oct 30, 2024
bdcb6d2
[skipruntime] Move skiplang code from core package
skiplabsdaniel Oct 30, 2024
a9a180d
[skipruntime] Rename core wasm and @skipruntime/core skip-wasm
skiplabsdaniel Oct 30, 2024
5626a47
[prelude] Manage @skip-wasm group
skiplabsdaniel Oct 30, 2024
80ae98b
[skiprutime] Split tests to allow run in wasm and native
skiplabsdaniel Oct 30, 2024
b49e36b
Prepare publish
skiplabsdaniel Oct 30, 2024
7cdcf46
Publish @skip-wasm packages
skiplabsdaniel Oct 31, 2024
a1fb2cc
[skiprutime] Prepare npm packages (#443)
skiplabsdaniel Nov 1, 2024
2c4d041
Fix Timeout type (and typo)
bennostein Oct 31, 2024
eeb464b
Fix inlined interval type in Polled external resources
bennostein Oct 31, 2024
a710a5b
Fix Timeout type (and typo in name) (#446)
bennostein Nov 1, 2024
9c5dfe5
[nfc] Clearly mark externals in tests as "Mock"
bennostein Oct 31, 2024
7b87ea7
Simplify and document external service vs. supplier
bennostein Nov 1, 2024
8ed2a6a
Use consistent name for SkipExternalService
bennostein Nov 1, 2024
350f809
Propagate deletion of "ExternalSupplier" through FFI/skiplang code
bennostein Nov 1, 2024
e04f9ff
Fix up renamings after rebase over npm-packaging PR
bennostein Nov 1, 2024
4298d17
Fix TimeCollection misnomer; rename to TimerResource
bennostein Nov 1, 2024
9aa0617
[docs] Update "functions" page with some examples
bennostein Oct 30, 2024
d1eded2
Add generic `CountMapper` utility
bennostein Oct 30, 2024
326db8e
[docs] Add note pointing to CountMapper utility
bennostein Oct 30, 2024
f920fb0
[docs] Update functions.md with some examples; add a generic CountMap…
bennostein Nov 4, 2024
10a3364
Simplify nomenclature around external services (#449)
bennostein Nov 4, 2024
f6137db
[skipruntime] Fix SkipRuntime_createAccumulator
skiplabsdaniel Nov 4, 2024
a013694
[skipruntime] Fix SkipRuntime_createAccumulator (#450)
skiplabsdaniel Nov 4, 2024
a60fdf8
[skipruntime] publish packages
skiplabsdaniel Nov 4, 2024
2dfb28d
[skipruntime] publish packages (#451)
skiplabsdaniel Nov 4, 2024
4d826e1
Mini social network written with the Skip Framework
pikatchu Nov 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
120 changes: 120 additions & 0 deletions .circleci/base.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
version: 2.1

commands:
setup:
description: "Setup skip toolchain"
steps:
- run:
name: Fetch submodules
command: |
git submodule update --init --recursive

jobs:
check-format:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- run:
name: Check code is formatted
command: |
make check-fmt

check-ts:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Typecheck and lint typescript sources
command: bun install && npm run build && npm run lint

compiler:
docker:
- image: skiplabs/skdb-base:latest
resource_class: xlarge
steps:
- checkout
- setup
- run:
name: Run compiler tests
no_output_timeout: 30m
command: |
mkdir -p ~/test-results
cd skiplang/compiler && make STAGE=1
PATH=$(realpath ./stage1/bin):$PATH skargo test --jobs 8 --junitxml ~/test-results/skc.xml
- store_test_results:
path: ~/test-results/skc.xml

skstore:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Run skstore tests
command: |
mkdir -p ~/test-results
cd skiplang/prelude && skargo test --jobs 8 --junitxml ~/test-results/skstore.xml
- store_test_results:
path: ~/test-results/skstore.xml

skdb:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Run native skdb tests
command: |
make test-native

skdb-wasm:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Run wasm skdb tests
no_output_timeout: 15m
command: |
mkdir -p ~/test-results
make test-wasm
- store_test_results:
path: ~/test-results/skdb-wasm.xml

skjson:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Run skjson tests
command: |
mkdir -p ~/test-results
cd skiplang/skjson && skargo test --junitxml ~/test-results/skjson.xml
- store_test_results:
path: ~/test-results/skjson.xml

skipruntime-wasm:
docker:
- image: skiplabs/skdb-base:latest
steps:
- checkout
- setup
- run:
name: Typecheck and lint skip runtime
command: cd skipruntime-ts && make check-all
- run:
name: Run wasm skip runtime tests
no_output_timeout: 10m
command: |
mkdir -p ~/test-results
cd skipruntime-ts && make test
- store_test_results:
path: ~/test-results/skipruntime-wasm.xml
23 changes: 23 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: 2.1

setup: true

orbs:
continuation: circleci/[email protected]

jobs:
setup:
executor: continuation/default
steps:
- checkout
- run:
name: Generate config
command: |
.circleci/generate_config.sh > generated_config.yml
- continuation/continue:
configuration_path: generated_config.yml

workflows:
setup:
jobs:
- setup
79 changes: 79 additions & 0 deletions .circleci/generate_config.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
#!/bin/bash

# TODO: This is flaky as it relies on coarse directory-level diffs.
git diff --quiet HEAD $(git merge-base main HEAD) -- $(jq --raw-output ".workspaces[]" package.json)
check_ts=$?
git diff --quiet HEAD $(git merge-base main HEAD) -- skiplang/compiler/ skiplang/prelude/ :^skiplang/prelude/ts
skc=$?
git diff --quiet HEAD $(git merge-base main HEAD) -- skiplang/prelude/src/skstore/ skiplang/compiler/runtime/
skstore=$?
git diff --quiet HEAD $(git merge-base main HEAD) -- sql/ skiplang/sqlparser/ skiplang/skbuild/
skdb=$?
git diff --quiet HEAD $(git merge-base main HEAD) -- skipruntime-ts/
skipruntime_wasm=$?
git diff --quiet HEAD $(git merge-base main HEAD) -- skiplang/prelude/ts/
ts_prelude=$?

cat .circleci/base.yml

echo "workflows:"

cat <<EOF
check-format:
jobs:
- check-format
EOF

if (( $check_ts != 0 ))
then
cat <<EOF
check-ts:
jobs:
- check-ts
EOF
fi

if (( $skc != 0 ))
then
cat <<EOF
compiler:
jobs:
- compiler
EOF
fi

if (( $skstore != 0 ))
then
cat <<EOF
skstore:
jobs:
- skstore
EOF
fi

if (( $skdb != 0 || $skstore != 0 ))
then
cat <<EOF
skdb:
jobs:
- skdb
EOF
fi

if (( $skdb != 0 || $skstore != 0 || $ts_prelude != 0 ))
then
cat <<EOF
skdb-wasm:
jobs:
- skdb-wasm
EOF
fi

if (( $skdb != 0 || $skstore != 0 || $skipruntime_wasm != 0 || $ts_prelude != 0 ))
then
cat <<EOF
skipruntime-wasm:
jobs:
- skipruntime-wasm
EOF
fi
Loading