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

v3 CLI Migration Audit #3090

Closed
16 of 17 tasks
endigo9740 opened this issue Jan 8, 2025 · 9 comments
Closed
16 of 17 tasks

v3 CLI Migration Audit #3090

endigo9740 opened this issue Jan 8, 2025 · 9 comments
Assignees
Labels
bug Something isn't working enhancement New feature or request
Milestone

Comments

@endigo9740
Copy link
Contributor

endigo9740 commented Jan 8, 2025

The following issues have been identified as part of our first pass through the new v3 migration CLI.

Known Issues

  • CLI will handle package updates but is not yet installing the correct versions
  • CLI description contains a typo, both in package.json and src/index.ts, relating -> related
  • If a package.json uses spaces, it will change it to tabs.
  • <packagemanager> install needs to be manually ran after migrating.
  • src/app.html isn't included in the migration.
  • If FileButton and FileDropzone are imported together they will both be renamed to FileUpload causing a duplicate identifier error.
  • Tabs changes: v3 CLI Migration Audit #3090 (comment)

Plugin Configuration

The Skeleton plugin configuration needs to be updated to adhere to the new format.

  • Preserve the base option: https://next.skeleton.dev/docs/get-started/plugin#base
  • For all preset themes, add the new import, and use the new dot notation names (ex: themes.cerberus)
  • Make sure to convert legacy presets; noting that a couple have been renamed in v3
    • skeleton renamed to legacy
    • gold-nouveau renamed to nouveau
  • Additionally custom themes should be commented out with a note instructing users on where/how to migrate their v2 themes to v3 format. We should substitute the Cerberus theme as a temporary fallback.
plugins: [
  skeleton({
    themes: [
      themes.cerberus

      // SKELETON-MIGRATION: your custom theme has been disabled.
      // myCustomTheme

      // Please import your v2 theme here to begin migrating to the v3 format:
      // https://themes.skeleton.dev/themes/import
    ]
  })
];

Variants -> Presets

image

  • We had a typo in the reference docs - the v3 option should be preset-filled-[...]
  • We need to ensure we're converting generic variants to generic presets. The only exception is Gradients, which do not have a generic version.

Generic changes are as follows from v2 -> v3:

  • variant-filled -> preset-filled
  • variant-soft -> preset-tonal
  • variant-ringed -> preset-outlined
  • variant-ghost -> preset-tonal + the surface-tone border

Highlight.js -> Shiki

  • Skeleton no longer depends on Highlight.js for code blocks or syntax highlighting. However, it's possible users have branched out and used Highlight directly outside of Skeleton (such as parsing CMS or blog post code blocks). So we should likely prompt users remove and/or replace with Shiki.

If possible, point them to the new integration page:
https://skeleton.dev/docs/integrations/code-block/svelte

NOTE: I've removed the next. subdomain above. This is intentional.

Nice to Haves

The following are not hard requirements, but would be ideal for the full release:

  • Update the import path from @skeletonlabs/skeleton -> @skeletonlabs/skeleton-svelte
  • Prune non-supported import feature imports (ex: AppShell)
  • Rename components as applicable (ex: AppRail -> Navigation)

Component changes can be referenced in the migration guide. See the table lists:

@endigo9740 endigo9740 added the bug Something isn't working label Jan 8, 2025
@endigo9740 endigo9740 added this to the v3.0 (Next) milestone Jan 8, 2025
@endigo9740 endigo9740 changed the title v3 CLI Audit v3 CLI Migration Audit Jan 8, 2025
@Hugos68 Hugos68 mentioned this issue Jan 8, 2025
7 tasks
@endigo9740 endigo9740 pinned this issue Jan 8, 2025
@endigo9740

This comment was marked as outdated.

@endigo9740 endigo9740 added the enhancement New feature or request label Jan 9, 2025
@endigo9740

This comment was marked as outdated.

@endigo9740

This comment was marked as outdated.

@knd775

This comment was marked as resolved.

@Hugos68

This comment was marked as resolved.

@endigo9740
Copy link
Contributor Author

endigo9740 commented Jan 16, 2025

@Hugos68

Per Eric's comment in the beta channel on Discord, this is currently an undocumented change and not included in the CLI:

<!-- v2 -->
<TabGroup>
    <Tab>
</TabGroup>
<!-- v3 -->
<Tabs>
    <!-- (snippets here) -->
    <!-- <Tab> was removed. -->
</Tabs>

I'll update the guide if you can please ensure this handle in the CLI.

@Hugos68
Copy link
Contributor

Hugos68 commented Jan 16, 2025

@endigo9740 to add to that, we're missing a lot more components, specifically a bunch of "subcomponents" like AccordionItem, etc. Let's sync on this and create a list.

@Hugos68
Copy link
Contributor

Hugos68 commented Jan 20, 2025

Remindee for myself: remove the +1 -1 offsets for quotes in svelte and simply grab full text and replace.

@endigo9740
Copy link
Contributor Author

Moving to here for the public beta:

@endigo9740 endigo9740 unpinned this issue Jan 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants