Skip to content

Bump lucide-svelte from 0.577.0 to 1.0.1#180

Merged
tylergraydev merged 2 commits into
mainfrom
dependabot/npm_and_yarn/lucide-svelte-1.0.1
May 16, 2026
Merged

Bump lucide-svelte from 0.577.0 to 1.0.1#180
tylergraydev merged 2 commits into
mainfrom
dependabot/npm_and_yarn/lucide-svelte-1.0.1

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 3, 2026

Bumps lucide-svelte from 0.577.0 to 1.0.1.

Release notes

Sourced from lucide-svelte's releases.

Lucide V1 🚀

After years of work and dedication, Lucide Version 1 has been officially released!. This milestone marks a significant achievement in our journey to provide a comprehensive and versatile icon library for developers and designers alike.

It's been quite a ride — especially over the past year. Lucide has grown to over 30 million downloads per week and is used by million of projects worldwide. This release is a testament to the hard work of our community and contributors who have helped shape Lucide into what it is today.

Thank you to everyone who has supported us along the way. We couldn't have done this without you!

What's New in Version 1? TLDR;

  • Removed brand icons, see our brand logo statement for more details.
  • Improved documentation, guides per framework.
  • Improved accessibility, aria-hidden is now set by default on icons.
  • Removed UMD build, only ESM and CJS now (exception for the lucide package).
  • Package rename from lucide-vue-next to @lucide/vue.
  • A modern, standalone implementation for Angular, @lucide/angular
  • Support for context providers in React, Vue, Svelte, and Solid.
  • Stable code points for Lucide font.
  • Support for shadow DOM in the lucide package.
  • Many bug fixes and improvements.

See more at Lucide Version 1

Version 1.0.0

[!WARNING] This release was published unintentionally. We've corrected this in v1.0.1, which should be used instead.

What's Changed

New Contributors

... (truncated)

Commits

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Apr 3, 2026
@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/lucide-svelte-1.0.1 branch from 6f39a01 to 2f0b86b Compare April 8, 2026 21:04
tylergraydev added a commit that referenced this pull request Apr 20, 2026
Roll up Dependabot patch/minor bumps (#181-#186, #188, #189):
- Frontend: @tauri-apps/cli 2.10.0→2.10.1, @types/node 25.5.0→25.6.0,
  svelte-check 4.4.4→4.4.6
- Rust: tokio 1.50.0→1.52.1, rmcp 1.2.0→1.5.0, once_cell 1.21.3→1.21.4
  (soundness fix), pulldown-cmark 0.13.1→0.13.3 (tar 0.4.45 security
  bump), env_logger 0.11.9→0.11.10

All 1996 Rust tests and 1564 frontend tests pass.

TypeScript 6 (#187) and lucide-svelte 1.0 (#180) deferred to a separate
migration effort — lucide 1.0 removed the Github brand icon used in 2
components.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tylergraydev
Copy link
Copy Markdown
Owner

Deferred from v3.8.5 — lucide-svelte 1.0 removed the Github brand icon (imported in src/routes/marketplace/+page.svelte and src/lib/components/settings/tabs/SettingsCloudSyncTab.svelte) and the new version ships a default aria-hidden on icons, which needs a full audit across 136 files. Leaving open for a dedicated major-version migration.

@tylergraydev
Copy link
Copy Markdown
Owner

Reopening for a rebase — this PR is over a month stale, so the Rust/Clippy failures are just branch drift. The real signal is the one frontend test failure (Marketplace page header never renders), which looks like a genuine break from the lucide-svelte 1.x major (consistent with the Group D type drift tracked in #214).

@dependabot rebase

@dependabot dependabot Bot force-pushed the dependabot/npm_and_yarn/lucide-svelte-1.0.1 branch from 2f0b86b to b2cf5ad Compare May 14, 2026 18:06
Bumps [lucide-svelte](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-svelte) from 0.577.0 to 1.0.1.
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/1.0.1/packages/lucide-svelte)

---
updated-dependencies:
- dependency-name: lucide-svelte
  dependency-version: 1.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@tylergraydev tylergraydev force-pushed the dependabot/npm_and_yarn/lucide-svelte-1.0.1 branch from b2cf5ad to 875b4ca Compare May 16, 2026 18:49
@tylergraydev
Copy link
Copy Markdown
Owner

Rebased onto current main (was very stale, ~2 months behind) and added a follow-up commit to fix the breakage the bare bump caused.

Two issues this bump introduced

  1. `Github` icon removed from lucide. lucide v1.0 dropped many brand icons for trademark reasons — bare bump produced 2 `[MISSING_EXPORT]` build failures in `marketplace/+page.svelte` and `SettingsCloudSyncTab.svelte`.
  2. Type check: 75 TypeScript errors on main, classified into 5 fixable clusters #214 Group D — 7 TS errors. `ActionMenuItem` / `EmptyState` typed `icon` as Svelte 5's `Component`, which lucide-svelte 1.x doesn't satisfy: it still exports icons as the legacy `SvelteComponentTyped` shape (renders fine at runtime, types don't unify). These existed in main since Bump @tailwindcss/vite from 4.2.2 to 4.2.4 #210 but aren't visible until you actually try to use lucide 1.x.

Fix on top of the bump

  • New `GithubIcon.svelte` (~40 lines) using lucide's original Github SVG path. Props mirror lucide's shape so call sites stay one-liners (`<GithubIcon class="w-5 h-5" />`). Visual identical to pre-upgrade.
  • Loosened `icon` prop type in `ActionMenuItem` and `EmptyState` to a documented `IconLike = any` alias. Comment explains why (lucide uses legacy types, accepting both shapes via a union would be uglier and gain nothing — icons are leaf concerns with no real type contract to enforce).

Verification

  • `npm run check` — 11 errors (down from 18 on main; closes all 7 Group D errors)
  • `npm run build` — succeeds
  • `npx vitest run` — 1567/1567 pass

🤖 Generated with Claude Code

…214 Group D

## What was wrong

Two separate problems blocked this dependabot bump:

1. **Github icon removed from lucide.** lucide v1.0 dropped many brand
   icons (Github, Discord, etc.) for trademark reasons. The bare bump
   produced two `[MISSING_EXPORT]` build failures in marketplace and
   settings cloud-sync tab.

2. **#214 Group D — 7 TS errors on icon props.** Existing errors on
   `ActionMenuItem` / `EmptyState` `icon={SomeIcon}` call sites in
   `ProjectCard`, `ProjectList`, `McpLibrary`. Both consumers typed
   the prop as Svelte 5's `Component<any>`, which lucide-svelte 1.x
   doesn't satisfy: it still exports icons as the legacy
   `SvelteComponentTyped` class shape (renders fine at runtime, but
   TS treats `typeof RefreshCw` as incompatible with `Component<...>`).
   Pre-existing in main since #210/lucide major bumps.

## Fix

- Inlined a `GithubIcon.svelte` component using lucide's original
  stroke-style Github SVG path so the visual is identical to what we
  had pre-upgrade. Props mirror lucide's shape (`class`, `size`,
  `color`, `strokeWidth`) so call sites stay one-liners. Replaced the
  4 `<Github ...>` usages in `marketplace/+page.svelte` and
  `SettingsCloudSyncTab.svelte` with `<GithubIcon ...>`.
- Loosened `icon` prop type in `ActionMenuItem` and `EmptyState` via
  a documented `IconLike = any` alias. Comment explains why (lucide
  uses legacy SvelteComponentTyped — accepting both shapes via a
  union would be uglier and gain little). This is the canonical
  resolution for #214 Group D — also closes the 7 errors when the
  bump lands.

## Verification

- `npm run check` — **11 errors** (down from 18 on `main`; closes all
  7 Group D errors)
- `npm run build` — succeeds
- `npx vitest run` — 1567/1567 pass

## Net file changes

- `package.json` / `package-lock.json` — lucide-svelte 0.577 -> 1.0.1
- `src/lib/components/shared/GithubIcon.svelte` (new, ~40 lines)
- `src/lib/components/shared/ActionMenuItem.svelte` — icon type
- `src/lib/components/shared/EmptyState.svelte` — icon type
- `src/lib/components/settings/tabs/SettingsCloudSyncTab.svelte` — import swap
- `src/routes/marketplace/+page.svelte` — import swap

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tylergraydev tylergraydev force-pushed the dependabot/npm_and_yarn/lucide-svelte-1.0.1 branch from 875b4ca to 1f657bb Compare May 16, 2026 18:51
@tylergraydev tylergraydev merged commit 3432a10 into main May 16, 2026
11 checks passed
@dependabot dependabot Bot deleted the dependabot/npm_and_yarn/lucide-svelte-1.0.1 branch May 16, 2026 19:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant