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

Update all non-major dependencies #330

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 11, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@cloudflare/workers-types 4.20241022.0 -> 4.20250129.0 age adoption passing confidence
@leeoniya/ufuzzy 1.0.14 -> 1.0.18 age adoption passing confidence
@types/node (source) 22.8.7 -> 22.12.0 age adoption passing confidence
better-sqlite3 11.5.0 -> 11.8.1 age adoption passing confidence
discord-api-types (source) 0.37.103 -> 0.37.118 age adoption passing confidence
dotenv 16.4.5 -> 16.4.7 age adoption passing confidence
drizzle-kit (source) 0.27.1 -> 0.30.4 age adoption passing confidence
drizzle-orm (source) 0.36.0 -> 0.39.1 age adoption passing confidence
esbuild 0.24.0 -> 0.24.2 age adoption passing confidence
hono (source) 4.6.8 -> 4.6.19 age adoption passing confidence
miniflare (source) 3.20241022.0 -> 3.20250124.1 age adoption passing confidence
p-queue 8.0.1 -> 8.1.0 age adoption passing confidence
pnpm (source) 9.12.3 -> 9.15.4 age adoption passing confidence
prettier (source) 3.3.3 -> 3.4.2 age adoption passing confidence
rambda 9.3.0 -> 9.4.2 age adoption passing confidence
tsup (source) 8.3.5 -> 8.3.6 age adoption passing confidence
typescript (source) 5.6.3 -> 5.7.3 age adoption passing confidence
undici-types (source) 6.20.0 -> 6.21.0 age adoption passing confidence
vitest (source) 3.0.2 -> 3.0.4 age adoption passing confidence
wrangler (source) 3.84.1 -> 3.107.0 age adoption passing confidence

Release Notes

cloudflare/workerd (@​cloudflare/workers-types)

v4.20250129.0

Compare Source

v4.20250124.3

Compare Source

v4.20250121.0

Compare Source

v4.20250109.0

Compare Source

v4.20241230.0

Compare Source

v4.20241224.0

Compare Source

v4.20241218.0

Compare Source

v4.20241216.0

Compare Source

v4.20241214.0

Compare Source

v4.20241205.0

Compare Source

v4.20241202.0

Compare Source

v4.20241127.0

Compare Source

v4.20241112.0

Compare Source

v4.20241106.0

Compare Source

leeoniya/uFuzzy (@​leeoniya/ufuzzy)

v1.0.18

Compare Source

v1.0.17

Compare Source

fixes default export

v1.0.16

Compare Source

v1.0.15

Compare Source

BUSTED RELEASE, DOES NOT WORK, DO NOT USE

WiseLibs/better-sqlite3 (better-sqlite3)

v11.8.1

Compare Source

What's Changed

New Contributors

Full Changelog: WiseLibs/better-sqlite3@v11.8.0...v11.8.1

v11.8.0

Compare Source

What's Changed

Full Changelog: WiseLibs/better-sqlite3@v11.7.2...v11.8.0

v11.7.2

Compare Source

What's Changed

Full Changelog: WiseLibs/better-sqlite3@v11.7.1...v11.7.2

v11.7.0

Compare Source

What's Changed

Full Changelog: WiseLibs/better-sqlite3@v11.6.0...v11.7.0

v11.6.0

Compare Source

What's Changed

New Contributors

Full Changelog: WiseLibs/better-sqlite3@v11.5.0...v11.6.0

discordjs/discord-api-types (discord-api-types)

v0.37.118

Compare Source

Features

v0.37.117

Compare Source

v0.37.116

Compare Source

Features

v0.37.115

Compare Source

v0.37.114

Compare Source

Bug Fixes

v0.37.113

Compare Source

Bug Fixes
  • skip encoded url parts from re-encoding (fc4e7be)
Features

v0.37.112

Compare Source

Features

v0.37.111

Compare Source

v0.37.110

Compare Source

Features

v0.37.109

Compare Source

Features

v0.37.108

Compare Source

Features

v0.37.107

Compare Source

Bug Fixes
  • security: escape path parameters (1ba3472)

v0.37.106

Compare Source

v0.37.105

Compare Source

Features

v0.37.104

Compare Source

Bug Fixes
motdotla/dotenv (dotenv)

v16.4.7

Compare Source

Changed
  • Ignore .tap folder when publishing. (oops, sorry about that everyone. - @​motdotla) #​848

v16.4.6

Compare Source

Changed
  • Clean up stale dev dependencies #​847
  • Various README updates clarifying usage and alternative solutions using dotenvx
drizzle-team/drizzle-orm (drizzle-kit)

v0.30.4

Compare Source

  • Fix bug that generates incorrect syntax when introspect in mysql
  • Fix a bug that caused incorrect syntax output when introspect in unsigned columns

v0.30.3

Compare Source

SingleStore push and generate improvements

As SingleStore did not support certain DDL statements before this release, you might encounter an error indicating that some schema changes cannot be applied due to a database issue. Starting from this version, drizzle-kit will detect such cases and initiate table recreation with data transfer between the tables

Bug fixes

v0.30.2

Compare Source

v0.30.1

Compare Source

New Features

drizzle-kit export

To make drizzle-kit integration with other migration tools, like Atlas much easier, we've prepared a new command called export. It will translate your drizzle schema in SQL representation(DDL) statements and outputs to the console

// schema.ts
import { pgTable, serial, text } from 'drizzle-orm/pg-core'

export const users = pgTable('users', {
	id: serial('id').primaryKey(),
	email: text('email').notNull(),
	name: text('name')
});

Running

npx drizzle-kit export

will output this string to console

CREATE TABLE "users" (
        "id" serial PRIMARY KEY NOT NULL,
        "email" text NOT NULL,
        "name" text
);

By default, the only option for now is --sql, so the output format will be SQL DDL statements. In the future, we will support additional output formats to accommodate more migration tools

npx drizzle-kit export --sql

v0.30.0

Compare Source

Starting from this update, the PostgreSQL dialect will align with the behavior of all other dialects. It will no longer include IF NOT EXISTS, $DO, or similar statements, which could cause incorrect DDL statements to not fail when an object already exists in the database and should actually fail.

This change marks our first step toward several major upgrades we are preparing:

  • An updated and improved migration workflow featuring commutative migrations, a revised folder structure, and enhanced collaboration capabilities for migrations.
  • Better support for Xata migrations.
  • Compatibility with CockroachDB (achieving full compatibility will only require removing serial fields from the migration folder).

v0.29.1

Compare Source

Fixes
New Features/Helpers
🎉 Detailed JSDoc for all query builders in all dialects - thanks @​realmikesolo

You can now access more information, hints, documentation links, etc. while developing and using JSDoc right in your IDE. Previously, we had them only for filter expressions, but now you can see them for all parts of the Drizzle query builder

🎉 New helpers for aggregate functions in SQL - thanks @​L-Mario564

Remember, aggregation functions are often used with the GROUP BY clause of the SELECT statement. So if you are selecting using aggregating functions and other columns in one query,
be sure to use the .groupBy clause

Here is a list of functions and equivalent using sql template

count

await db.select({ value: count() }).from(users);
await db.select({ value: count(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`count('*'))`.mapWith(Number) 
}).from(users);
await db.select({ 
  value: sql`count(${users.id})`.mapWith(Number) 
}).from(users);

countDistinct

await db.select({ value: countDistinct(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`count(${users.id})`.mapWith(Number) 
}).from(users);

avg

await db.select({ value: avg(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`avg(${users.id})`.mapWith(String) 
}).from(users);

avgDistinct

await db.select({ value: avgDistinct(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`avg(distinct ${users.id})`.mapWith(String) 
}).from(users);

sum

await db.select({ value: sum(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`sum(${users.id})`.mapWith(String) 
}).from(users);

sumDistinct

await db.select({ value: sumDistinct(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`sum(distinct ${users.id})`.mapWith(String) 
}).from(users);

max

await db.select({ value: max(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`max(${expression})`.mapWith(users.id) 
}).from(users);

min

await db.select({ value: min(users.id) }).from(users);

// It's equivalent to writing
await db.select({ 
  value: sql`min(${users.id})`.mapWith(users.id) 
}).from(users);
New Packages
🎉 ESLint Drizzle Plugin

For cases where it's impossible to perform type checks for specific scenarios, or where it's possible but error messages would be challenging to understand, we've decided to create an ESLint package with recommended rules. This package aims to assist developers in handling crucial scenarios during development

Big thanks to @​Angelelz for initiating the development of this package and transferring it to the Drizzle Team's npm

Install
[ npm | yarn | pnpm | bun ] install eslint eslint-plugin-drizzle

You can install those packages for typescript support in your IDE

[ npm | yarn | pnpm | bun ] install @​typescript-eslint/eslint-plugin @​typescript-eslint/parser
Usage

Create a .eslintrc.yml file, add drizzle to the plugins, and specify the rules you want to use. You can find a list of all existing rules below

root: true
parser: '@​typescript-eslint/parser'
parserOptions:
  project: './tsconfig.json'
plugins:
  - drizzle
rules:
  'drizzle/enforce-delete-with-where': "error"
  'drizzle/enforce-update-with-where': "error"
All config

This plugin exports an all config that makes use of all rules (except for deprecated ones).

root: true
extends:
  - "plugin:drizzle/all"
parser: '@​typescript-eslint/parser'
parserOptions:
  project: './tsconfig.json'
plugins:
  - drizzle

At the moment, all is equivalent to recommended

root: true
extends:
  - "plugin:drizzle/recommended"
parser: '@​typescript-eslint/parser'
parserOptions:
  project: './tsconfig.json'
plugins:
  - drizzle
Rules

enforce-delete-with-where: Enforce using delete with the.where() clause in the .delete() statement. Most of the time, you don't need to delete all rows in the table and require some kind of WHERE statements.

Error Message:

Without `.where(...)` you will delete all the rows in a table. If you didn't want to do it, please use `db.delete(...).where(...)` instead. Otherwise you can ignore this rule here

Optionally, you can define a drizzleObjectName in the plugin options that accept a string or string[]. This is useful when you have objects or classes with a delete method that's not from Drizzle. Such a delete method will trigger the ESLint rule. To avoid that, you can define the name of the Drizzle object that you use in your codebase (like db) so that the rule would only trigger if the delete method comes from this object:

Example, config 1:

"rules": {
  "drizzle/enforce-delete-with-where": ["error"]
}
class MyClass {
  public delete() {
    return {}
  }
}

const myClassObj = new MyClass();

// ---> Will be triggered by ESLint Rule
myClassObj.delete()

const db = drizzle(...)
// ---> Will be triggered by ESLint Rule
db.delete()

Example, config 2:

"rules": {
  "drizzle/enforce-delete-with-where": ["error", { "drizzleObjectName": ["db"] }],
}
class MyClass {
  public delete() {
    return {}
  }
}

const myClassObj = new MyClass();

// ---> Will NOT be triggered by ESLint Rule
myClassObj.delete()

const db = drizzle(...)
// ---> Will be triggered by ESLint Rule
db.delete()

enforce-update-with-where: Enforce using update with the.where() clause in the .update() statement. Most of the time, you don't need to update all rows in the table and require some kind of WHERE statements.

Error Message:

Without `.where(...)` you will update all the rows in a table. If you didn't want to do it, please use `db.update(...).set(...).where(...)` instead. Otherwise you can ignore this rule here

Optionally, you can define a drizzleObjectName in the plugin options that accept a string or string[]. This is useful when you have objects or classes with a delete method that's not from Drizzle. Such as update method will trigger the ESLint rule. To avoid that, you can define the name of the Drizzle object that you use in your codebase (like db) so that the rule would only trigger if the delete method comes from this object:

Example, config 1:

"rules": {
  "drizzle/enforce-update-with-where": ["error"]
}
class MyClass {
  public update() {
    return {}
  }
}

const myClassObj = new MyClass();

// ---> Will be triggered by ESLint Rule
myClassObj.update()

const db = drizzle(...)
// ---> Will be triggered by ESLint Rule
db.update()

Example, config 2:

"rules": {
  "drizzle/enforce-update-with-where": ["error", { "drizzleObjectName": ["db"] }],
}
class MyClass {
  public update() {
    return {}
  }
}

const myClassObj = new MyClass();

// ---> Will NOT be triggered by ESLint Rule
myClassObj.update()

const db = drizzle(...)
// ---> Will be triggered by ESLint Rule
db.update()

v0.29.0

Compare Source

New Dialects

🎉 SingleStore dialect is now available in Drizzle

Thanks to the SingleStore team for creating a PR with all the necessary changes to support the MySQL-compatible part of SingleStore. You can already start using it with Drizzle. The SingleStore team will also help us iterate through updates and make more SingleStore-specific features available in Drizzle

import 'dotenv/config';
import { defineConfig } from 'drizzle-kit';

export default defineConfig({
  dialect: 'singlestore',
  out: './drizzle',
  schema: './src/db/schema.ts',
  dbCredentials: {
    url: process.env.DATABASE_URL!,
  },
});

You can check out our Getting started guides to try SingleStore!

New Drivers

🎉 SQLite Durable Objects driver is now available in Drizzle

You can now query SQLite Durable Objects in Drizzle!

For the full example, please check our Get Started Section

import 'dotenv/config';
import { defineConfig } from 'drizzle-kit';
export default defineConfig({
  out: './drizzle',
  schema: './src/db/schema.ts',
  dialect: 'sqlite',
  driver: 'durable-sqlite',
});

v0.28.1

Compare Source

Bug fixes

v0.28.0

Compare Source

Improvements

Bug Fixes

v0.27.2

Compare Source

evanw/esbuild (esbuild)

v0.24.2

Compare Source

  • Fix regression with --define and import.meta (#​4010, #​4012, #​4013)

    The previous change in version 0.24.1 to use a more expression-like parser for define values to allow quoted property names introduced a regression that removed the ability to use --define:import.meta=.... Even though import is normally a keyword that can't be used as an identifier, ES modules special-case the import.meta expression to behave like an identifier anyway. This change fixes the regression.

    This fix was contributed by @​sapphi-red.

v0.24.1

Compare Source

  • Allow es2024 as a target in tsconfig.json (#​4004)

    TypeScript recently added es2024 as a compilation target, so esbuild now supports this in the target field of tsconfig.json files, such as in the following configuration file:

    {
      "compilerOptions": {
        "target": "ES2024"
      }
    }

    As a reminder, the only thing that esbuild uses this field for is determining whether or not to use legacy TypeScript behavior for class fields. You can read more in the documentation.

    This fix was contributed by @​billyjanitsch.

  • Allow automatic semicolon insertion after get/set

    This change fixes a grammar bug in the parser that incorrectly treated the following code as a syntax error:

    class Foo {
      get
      *x() {}
      set
      *y() {}
    }

    The above code will be considered valid starting with this release. This change to esbuild follows a similar change to TypeScript which will allow this syntax starting with TypeScript 5.7.

  • Allow quoted property names in --define and --pure (#​4008)

    The define and pure API options now accept identifier expressions containing quoted property names. Previously all identifiers in the identifier expression had to be bare identifiers. This change now makes --define and --pure consistent with --global-name, which already supported quoted property names. For example, the following is now possible:

    // The following code now transforms to "return true;\n"
    console.log(esbuild.transformSync(
      `return process.env['SOME-TEST-VAR']`,
      { define: { 'process.env["SOME-TEST-VAR"]': 'true' } },
    ))

    Note that if you're passing values like this on the command line using esbuild's --define flag, then you'll need to know how to escape quote characters for your shell. You may find esbuild's JavaScript API more ergonomic and portable than writing shell code.

  • Minify empty try/catch/finally blocks (#​4003)

    With this release, esbuild will now attempt to minify empty try blocks:

    // Original code
    try {} catch { foo() } finally { bar() }
    
    // Old output (with --minify)
    try{}catch{foo()}finally{bar()}
    
    // New output (with --minify)
    bar();

    This can sometimes expose additional minification opportunities.

  • Include entryPoint metadata for the copy loader (#​3985)

    Almost all entry points already include a entryPoint field in the outputs map in esbuild's build metadata. However, this wasn't the case for the copy loader as that loader is a special-case that doesn't behave like other loaders. This release adds the entryPoint field in this case.

  • Source mappings may now contain null entries (#​3310, #​3878)

    With this change, sources that result in an empty source map may now emit a null source mapping (i.e. one with a generated position but without a source index or original position). This change improves source map accuracy by fixing a problem where minified code from a source without any source mappings could potentially still be associated with a mapping from another source file earlier in the generated output on the


Configuration

📅 Schedule: Branch creation - "* 0-3 * * 1" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) November 11, 2024 01:28
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 11 times, most recently from f054556 to 6c5dddc Compare November 18, 2024 03:36
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 17 times, most recently from 3ebee2e to 2e517cf Compare November 26, 2024 13:54
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 13 times, most recently from e67c33c to 6af5289 Compare January 21, 2025 01:30
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 13 times, most recently from c944cd5 to 3d5f939 Compare January 28, 2025 13:45
@renovate renovate bot force-pushed the renovate/all-minor-patch branch 2 times, most recently from 7f43298 to ec1b10a Compare January 30, 2025 14:10
@renovate renovate bot force-pushed the renovate/all-minor-patch branch from ec1b10a to 951b403 Compare January 30, 2025 19:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants