KhronosGroup / glTF-Sample-Viewer

Physically-Based Rendering in glTF 2.0 using WebGL
Apache License 2.0
1.2k stars 227 forks source link

Move root-level library into a folder #535

Open emackey opened 1 month ago

emackey commented 1 month ago

I'd like the root-level library to move down into a folder.

The structure of this repository places the main library, an npm package called @khronosgroup/gltf-viewer, at the root level. There are separate npm packages in subfolders app_web and app_headless that reference the root-level package. The root-level package uses an npmignore file to prevent the packages that depend on it from being inadvertently included with it.

However, this organization produces issues, at least on Windows, where links are set up from subfolders back to a parent folder, for example:

glTF-Sample-Viewer\app_web\node_modules\@khronosgroup\gltf-viewer

Some third-party software, such as disk space calculation tools and find-in-files functions, can become very confused by this, because it forms an infinite recursion if the software doesn't understand the link. For example, this path is valid:

C:\...\Git\glTF-Sample-Viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\app_web\node_modules\@khronosgroup\gltf-viewer\app_web\
node_modules\@khronosgroup\gltf-viewer\package.json

Ideally, gltf-viewer should be in its own subfolder, as a sibling of app_web and other packages. This will avoid the infinite recursion.

emackey commented 1 month ago

screenshot

emackey commented 1 month ago

At today's Tooling TSG meeting, it sounds like the plan may be to migrate gltf-viewer to a new separate repo, rather than moving it down. This would also solve the above issue.