Skip to content
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

v0.28 #1278

Open
wants to merge 34 commits into
base: master
Choose a base branch
from
Open

v0.28 #1278

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
2edebde
`InferResult` should output plural. (#1064)
igalklebanov Jul 7, 2024
00d147d
Support update table1, table2, ... query support. Closes #192 (#1079)
koskimas Jul 14, 2024
52f6b6e
Speedup types with huge databases. Fixes #867 (#1080)
koskimas Jul 19, 2024
e98f7a8
add reusable helpers recipe and implement missing expression features…
koskimas Jul 22, 2024
12a0989
feat: support refresh materialized view (#990)
QuentinJanuel Aug 2, 2024
42cd482
Remove preventAwait (#1160)
wirekang Sep 29, 2024
56f6702
ci: run 22.x
igalklebanov Oct 5, 2024
3f04689
add `ControlledTransaction`. (#962)
igalklebanov Oct 5, 2024
21003d1
`await using kysely = new Kysely()` support. (#1167)
igalklebanov Oct 19, 2024
b34de79
fix TS backwards compat following `ControlledTransaction`. (#1193)
igalklebanov Oct 24, 2024
9f73a9d
chore: enforce min TS version (#1194)
igalklebanov Nov 4, 2024
96a1069
fix package-lock.
igalklebanov Nov 24, 2024
42e1bcb
fix jsdocs.
igalklebanov Dec 1, 2024
3ef34de
add `returning` support in `MERGE` queries. (#1171)
igalklebanov Dec 1, 2024
c39d51b
feat: add HandleEmtpyInListsPlugin. (#925)
igalklebanov Jan 5, 2025
098f8d3
Add `Date` as a valid return type for `max` and `min` (#1062)
samclearman Jan 5, 2025
f719126
SQLite's OR CONFLICT clause for inserts (#976)
vincentiusvin Jan 6, 2025
8c639c6
Add `within group` clause support for aggregate function builder (#1024)
ivashog Jan 9, 2025
95ce153
add TypeScript benchmarks. (#1314)
igalklebanov Jan 11, 2025
5f47dfd
Add outer and cross apply (mssql) (#1074)
drew-marsh Jan 12, 2025
7bee0c3
Support json_agg(column_ref) (#1316)
SimonSimCity Jan 17, 2025
10b83f0
Add support for cross join and cross join lateral (#1325)
ersinakinci Jan 18, 2025
e1a3f19
dry up joins.
igalklebanov Jan 18, 2025
142c728
improve join tests dialect coverage.
igalklebanov Jan 18, 2025
0fc7b1f
minor ci tweaks.
igalklebanov Jan 18, 2025
ca13d57
revisiting `orderBy`. (#1326)
igalklebanov Jan 25, 2025
600db9c
add `queryId` to `CompiledQuery` to allow async communication between…
igalklebanov Jan 26, 2025
8d3785d
feat: Add disableTransactions option to Migrator (#1335)
reidswan Feb 1, 2025
5ab9935
feat: expands limit in select accepting null value (#1347)
alenap93 Feb 8, 2025
d488840
feat: Allow read-only transactions in Postgres and MySQL (#1342)
B4nan Feb 9, 2025
d9bbe29
refactor: separate isolation level and access mode with a comma in My…
B4nan Feb 9, 2025
6a14afd
Redundant export UpdateValuesNode removed (#1379)
Ciantic Mar 8, 2025
3323dd3
refactor: extract connection configurations to root, deprecate old on…
igalklebanov Mar 16, 2025
dff749c
create type as enum readonly values. (#1390)
igalklebanov Mar 16, 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: 18 additions & 1 deletion .github/workflows/preview.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
name: preview

on: [push, pull_request]
on:
push:
branches:
- master
pull_request:
paths-ignore:
- '.github/workflows/test.yml'
- 'assets/**'
- 'docs/**'
- 'example/**'
- 'site/**'
- 'test/**'
- '.npmignore'
- '.prettierignore'
- '.prettierrc'
- '.renovaterc.json'
- '*.md'
- 'LICENSE'

jobs:
release:
Expand Down
65 changes: 58 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,34 @@ name: tests

on:
push:
branches: [master, v*]
branches:
- master
paths-ignore:
- '.github/workflows/preview.yml'
- 'assets/**'
- 'docs/**'
- 'example/**'
- 'site/**'
- '.npmignore'
- '.prettierignore'
- '.prettierrc'
- '.renovaterc.json'
- '*.md'
- 'LICENSE'
pull_request:
branches: [master, v*]
paths-ignore:
- '.github/workflows/preview.yml'
- 'assets/**'
- 'docs/**'
- 'example/**'
- 'site/**'
- '.npmignore'
- '.prettierignore'
- '.prettierrc'
- '.renovaterc.json'
- '*.md'
- 'LICENSE'
workflow_dispatch:

jobs:
node:
Expand All @@ -14,7 +39,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [18.x, 20.x, 22.x]
node-version: [18.x, 20.x, 22.x, 23.x]

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -44,7 +69,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [18.x, 20.x, 22.x]
node-version: [18.x, 20.x, 22.x, 23.x]

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -208,10 +233,17 @@ jobs:
- name: Run build with newer TypeScript
run: npm run build

- name: Install older TypeScript
run: npm i -D typescript@${{ matrix.typescript-version }} tsd@${{ fromJson('{ "^4.6":"0.20.0", "^4.7":"0.22.0", "^4.8":"0.24.1", "^4.9":"0.27.0", "^5.0":"0.28.1", "^5.2":"0.29.0", "^5.3":"0.30.7", "^5.4":"0.31.2" }')[matrix.typescript-version] }}
- run: |
echo "TS_VERSION=${{ matrix.typescript-version }}" >> $GITHUB_ENV
echo "TSD_VERSION=${{ fromJson('{ "^4.6":"0.20.0", "^4.7":"0.22.0", "^4.8":"0.24.1", "^4.9":"0.27.0", "^5.0":"0.28.1", "^5.2":"0.29.0", "^5.3":"0.30.7", "^5.4":"0.31.2" }')[env.TS_VERSION] }} >> $GITHUB_ENV"

- name: Run tests with older TypeScript
- name: Install Typescript (${{ env.TS_VERSION }}) and TSD (${{ env.TSD_VERSION }})
run: npm i -D typescript@${{ env.TS_VERSION }} tsd@${{ env.TSD_VERSION }}

- name: Exclude non-backward compatible tests
run: npx tsx ./scripts/exclude-test-files-for-backwards-compat.mts

- name: Run tests with older TypeScript version
run: npm run test:typings && npm run test:node:build

jsdocs:
Expand Down Expand Up @@ -240,3 +272,22 @@ jobs:

- name: Type-check JSDocs code blocks
run: npm run test:jsdocs

typescript-benchmarks:
name: TypeScript Benchmarks
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 22.x
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Run benchmarks
run: npm run bench:ts
2 changes: 1 addition & 1 deletion .npmignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ package-lock.json
tsconfig-base.json
tsconfig-cjs.json
tsconfig.json

CONTRIBUTING.md
7 changes: 7 additions & 0 deletions deno.check.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,19 @@ import type {
} from './dist/esm'

export interface Database {
audit: AuditTable
person: PersonTable
person_backup: PersonTable
pet: PetTable
toy: ToyTable
wine: WineTable
wine_stock_change: WineStockChangeTable
}

interface AuditTable {
action: string
}

interface PersonTable {
id: Generated<number>
address: { city: string } | null
Expand Down Expand Up @@ -51,6 +57,7 @@ interface PetTable {

interface ToyTable {
id: Generated<number>
name: string
pet_id: number
price: number
}
Expand Down
5 changes: 5 additions & 0 deletions outdated-typescript.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import type { KyselyTypeError } from './dist/cjs/util/type-error'

declare const Kysely: KyselyTypeError<'The installed TypeScript version is outdated and cannot guarantee type-safety with Kysely. Please upgrade to version 4.6 or newer.'>
declare const RawBuilder: KyselyTypeError<'The installed TypeScript version is outdated and cannot guarantee type-safety with Kysely. Please upgrade to version 4.6 or newer.'>
declare const sql: KyselyTypeError<'The installed TypeScript version is outdated and cannot guarantee type-safety with Kysely. Please upgrade to version 4.6 or newer.'>
Loading