Skip to content

feat: release v5 #563

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

Open
wants to merge 35 commits into
base: main
Choose a base branch
from
Open

feat: release v5 #563

wants to merge 35 commits into from

Conversation

alvarosabu
Copy link
Member

No description provided.

@alvarosabu alvarosabu added the p3-significant High-priority enhancement (priority) label Dec 13, 2024
Copy link

netlify bot commented Dec 13, 2024

Deploy Preview for cientos-tresjs ready!

Name Link
🔨 Latest commit 14afe95
🔍 Latest deploy log https://app.netlify.com/projects/cientos-tresjs/deploys/6829cb0ded8e22000886fe7b
😎 Deploy Preview https://deploy-preview-563--cientos-tresjs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

alvarosabu and others added 2 commits December 13, 2024 10:39
* feat(Helper): add component, demo, docs

* refactor(useHelper): use destructuring

* refactor(useHelper): remove

---------

Co-authored-by: Alvaro Saburido <[email protected]>
Copy link

pkg-pr-new bot commented Dec 13, 2024

Open in StackBlitz

npm i https://pkg.pr.new/@tresjs/cientos@563

commit: 14afe95

andretchen0 and others added 13 commits December 14, 2024 10:43
* feat(PointMaterial): add component, demo, docs

* chore: lint

* refactor: remove unused function argument

* feat: deconstruct points material imports

---------

Co-authored-by: alvarosabu <[email protected]>
* feat(MarchingCubes): add component, demo, docs

* feat(MarchingCubes): add default material

* chore: lint

---------

Co-authored-by: alvarosabu <[email protected]>
* feat(CubicBezierLine): add component, demo, docs

* docs: revert broken link
* feat(AccumulativeShadows): add component, demo, docs

* refactor(RandomizedLights): rename interface

* refactor(AccumulativeShadows): change default alphaTest value

* refactor(AccumulativeShadows): expose update function
* feat(Bounds): add component, demo, docs

* refactor(Bounds): useScreenSize -> useResize

* refactor(Bounds): rename variables, remove unneeded state

* docs: fix material items merge issue

---------

Co-authored-by: alvarosabu <[email protected]>
* feat(CircleShadow): add component, demo, docs

* docs(CircleShadow): fix prop name

---------

Co-authored-by: alvarosabu <[email protected]>
* feat(AccumulativeShadows): add component, demo, docs

* feat(Bounds): add component, demo, docs

* refactor(Bounds): useScreenSize -> useResize

* refactor(Bounds): rename variables, remove unneeded state

* refactor(Align): change callback to emit, improve naming

* refactor(RandomizedLights): rename interface

* refactor(AccumulativeShadows): change default alphaTest value

* refactor(AccumulativeShadows): expose update function

* feat(Stage): add component, demo, docs

* docs: fix material items

* feat: import RandomizedLightsProps from correct file

* refactor(Stage): update types

---------

Co-authored-by: alvarosabu <[email protected]>
@andretchen0 andretchen0 mentioned this pull request Jan 5, 2025
alvarosabu and others added 4 commits January 5, 2025 19:13
- Bump versions for several dependencies including:
  - @vueuse/core from ^12.0.0 to ^12.3.0
  - three-stdlib from ^2.34.0 to ^2.35.2
  - eslint from ^9.16.0 to ^9.17.0
  - release-it from ^17.10.0 to ^18.0.0
  - typescript-eslint packages to ^8.19.0
  - Update various other dependencies to their latest versions for improved compatibility and performance.

- Update pnpm-lock.yaml to reflect the changes in package.json and ensure consistency across the project.
@alvarosabu alvarosabu self-assigned this Jan 6, 2025
andretchen0 and others added 2 commits January 17, 2025 11:19
* docs(Environment): remove demo

- page contained multiple instances of useProgress
- useProgress instances interfere with one another

* docs(sidebar): use data from component-list

* docs: add unlisted components

* docs(Environment): fix code snippet formatting

* docs: remove non-existant directives from component list

* docs(Backdrop): fix demo errors

- TS errors
- traverse and cast-shadows on null

* fix(Lensflare): add THREE src

* three-stdlib Lensflare is not working
* use THREE examples/jsm src in the meantime

* chore(Lensflare): add TODO
@alvarosabu alvarosabu changed the title feat: Release v4.1 feat: Release v4.2 Jan 17, 2025
Copy link
Contributor

@andretchen0 andretchen0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

I'd suggest we remove <Helper /> until Tres core can unmount them without throwing.

@@ -39,6 +43,7 @@ export default [
{ text: 'KeyboardControls', link: '/guide/controls/keyboard-controls' },
{ text: 'ScrollControls', link: '/guide/controls/scroll-controls' },
{ text: 'MapControls', link: '/guide/controls/map-controls' },
{ text: 'Helper', link: '/guide/controls/helper' },
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not limited to the component, Tres core still causes helpers to throw when unmounted. Wait to release until fixed?

- Updated `@Tresjs/core` dependency to next version
- Removed the `useLogger` composable and replaced its usage with direct calls to `logError` and `logWarning` in various files for improved clarity and performance.
- Updated `package.json` and `pnpm-lock.yaml` to reflect the changes in dependencies.
@alvarosabu alvarosabu changed the title feat: Release v4.2 feat: release v5 Mar 22, 2025
@alvarosabu alvarosabu linked an issue Apr 4, 2025 that may be closed by this pull request
17 tasks
* feat!: refactor useGLTF to use new useLoader based on `useAsyncState`

BREAKING CHANGE: useGLTF no longer returns the plain obj, it now returns an object with reactive data (state, isLoading, error) and a load method.

- Refactored GLTF loading in components to use the updated `useGLTF` composable, improving state management and performance.
- Removed unnecessary `Suspense` wrappers in demo components for cleaner rendering.
- Added new demo components for showcasing GLTF model loading with DRACO compression.
- Updated documentation to reflect changes in GLTF model usage.

* fix: update import syntax and clean up unused code

- Changed import statement for `TresObject` in `gltf-model.md` to use the correct TypeScript syntax.
- Removed unused imports in `use-gltf/index.vue` for cleaner code.
- Added ESLint directive to disable console warnings in `TheModel.vue` for development purposes.

* docs: update useGLTF implementation and clean up components

- Refactored components to utilize the new `useGLTF` structure, replacing direct access to nodes with reactive state management.
- Removed unused imports and commented-out code for improved clarity and maintainability.
- Updated documentation references to reflect changes in component usage and structure.

* feat: adapt useAnimations to new useAsyncState loader's model

- Added a new demo page for `use-animations` showcasing the animated GLTF model.
- Refactored the `useAnimations` composable to support reactive animations using `MaybeRef`.
- Updated the `TheModel.vue` component to utilize the new reactive state for animations.
- Enhanced the main demo layout with `TresCanvas`, `OrbitControls`, and lighting for improved visualization.

* chore: update @Tresjs/core dependency to version 5.0.0-next.0

- Changed the dependency for @Tresjs/core in package.json and playground/vue/package.json to the stable version 5.0.0-next.0 from a previous URL reference.
- Updated pnpm-lock.yaml to reflect the new version of @Tresjs/core across all relevant sections.
- Adjusted the useGLTF implementation in documentation to align with the new state management approach.
* feat: return nodes and materials computed directly

* docs: correct lint issues in markdown and update latest changes of useLoader
* feat: update to latest core v5 next

* feat: update renderer access in components to use instance reference

- Updated various components to access the renderer through `renderer.instance.value` instead of `renderer.value`, ensuring compatibility with the latest core changes.
- Adjusted related watch and invalidate calls to check for `renderer.canBeInvalidated.value` before invoking invalidate, improving performance and stability.
- Refactored multiple files including shapes, controls, and materials to reflect these changes, enhancing overall code consistency and maintainability.
…es (#621)

* feat: adapt core camera ctx changes to cientos

* fix: remove unused Camera type import in useFBO module

- Removed the unused `Camera` type import from `index.ts` in the `useFBO` module to clean up the code and improve maintainability.
- Upgraded several dependencies in `package.json` and `pnpm-lock.yaml` to their latest versions, including:
  - `@release-it/conventional-changelog` from `10.0.0` to `10.0.1`
  - `@types/three` from `0.172.0` to `0.176.0`
  - `@vitejs/plugin-vue` from `5.2.1` to `5.2.4`
  - `eslint` from `9.17.0` to `9.27.0`
  - `eslint-plugin-vue` from `9.32.0` to `10.1.0`
  - `gsap` from `3.12.5` to `3.13.0`
  - `three` from `0.173.0` to `0.176.0`
  - `typescript` from `5.7.2` to `5.8.3`
  - `vite` from `6.0.7` to `6.3.5`
  - `vite-plugin-banner` from `0.8.0` to `0.8.1`
  - `vite-plugin-dts` from `4.4.0` to `4.5.4`
  - `vite-plugin-glsl` from `1.3.1` to `1.4.1`
  - `vitepress` from `1.5.0` to `1.6.3`
- Adjusted related dependencies in `pnpm-lock.yaml` to ensure compatibility and stability across the project.
…5.14

- Updated the dependency for `@Tresjs/core` in `package.json` and `playground/vue/package.json` to the new version `965`.
- Upgraded Vue from `3.5.13` to `3.5.14` in `pnpm-lock.yaml` to ensure compatibility with the latest features and improvements.
- Adjusted related references in the codebase to utilize the updated context and camera handling methods, enhancing overall functionality and maintainability.
- Updated the dependency for `@Tresjs/core` in `package.json` and `pnpm-lock.yaml` to the new version `0731c19`.
- Adjusted related references in the lock file to ensure consistency and compatibility across the project.
* feat: add useTexture composable and related documentation

- Introduced the `useTexture` composable for loading textures in TresJS scenes using THREE.js's texture loader.
- Created a new demo component `UseTextureDemo.vue` to showcase the usage of the `useTexture` composable.
- Updated the documentation to include a guide for `useTexture`, detailing its options and providing usage examples.
- Added new routes and components in the playground for testing and demonstrating the `useTexture` functionality.
- Ensured all new components follow best practices and TypeScript standards.

* feat: introduce useTextures composable and related documentation

- Added the `useTextures` composable for loading multiple textures simultaneously in TresJS scenes using THREE.js's texture loader.
- Created a new demo component `PBRTexturesDemo.vue` to showcase the usage of the `useTextures` composable with PBR textures.
- Updated the documentation to include a guide for `useTextures`, detailing its parameters, return values, and providing usage examples.
- Added new routes and components in the playground for testing and demonstrating the `useTextures` functionality.
- Ensured all new components adhere to best practices and TypeScript standards.

* fix: clean up logging and formatting in PBRTexturesDemo and related documentation

- Removed unnecessary console logging of loading state in `PBRTexturesDemo.vue` for cleaner output.
- Adjusted formatting in `use-textures.md` for improved readability.
- Updated import statements in `PBRTextures.vue` to remove unused dependencies, streamlining the component.
- Ensured all changes adhere to TypeScript standards and best practices.

* chore: disable console warnings in PBRTextures.vue for cleaner development output

- Added an ESLint directive to disable console warnings in `PBRTextures.vue`, allowing for a more streamlined development experience without cluttering the console.
- This change is aimed at improving the usability of the component during development while maintaining adherence to TypeScript standards.

* fix: set new texture as initial value for textue loader

* fix: added initial value to useTextures

* chore: update @Tresjs/core dependency to latest version

- Updated the @Tresjs/core dependency from version be3280b to 0731c19 in package.json and playground/vue/package.json for improved functionality.
- Adjusted pnpm-lock.yaml to reflect the updated version of @Tresjs/core across all relevant sections.

* refactor: abstractions using useTextures from core now use local useTexture

* refactor: update texture loading in Ocean and Precipitation components

- Replaced the use of destructured state from `useTexture` with direct texture loading using `TextureLoader` in the `Ocean.vue` component for improved clarity and performance.
- Updated the `watchEffect` in `Precipitation.vue` to use a more descriptive variable name for the texture state, enhancing code readability.
- Ensured that texture loading logic is consistent across components, aligning with best practices for resource management.

* chore: fix some demos shenanigans
* chore(vite): update output formats and remove UMD globals

- Added 'es' format to the Vite configuration for better module compatibility.
- Removed the UMD globals section from the output configuration as it is no longer necessary, streamlining the build process.

* feat!: update output formats and remove UMD globals

BREAKING CHANGE: cientos  is now ESM only

- Added 'es' format to the Vite configuration for better module compatibility.
- Removed the UMD globals section from the output configuration as it is no longer necessary, streamlining the build process.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
p3-significant High-priority enhancement (priority)
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

V5
2 participants