Skip to content

Releases: ormidales/microgl

v1.1.17

02 Apr 13:45
7a9a149

Choose a tag to compare

What's Changed

  • docs(GltfLoader): move strict baseline URI protections into remarks block by @Copilot in #401
  • docs(ShaderCache): add rationale JSDoc to MAX_KEY_LENGTH and enforce with tests by @Copilot in #402
  • docs(RenderSystem): clarify CONSECUTIVE_MESH_BUFFER_FAILURE_WARNING_THRESHOLD JSDoc by @Copilot in #403
  • Export wrapGltfError with JSDoc from GltfLoader.ts by @Copilot in #404
  • docs(ShaderCache): move remarks before code example and add see tags to getProgramKey by @Copilot in #405
  • Move DEFAULT_VERTEX_SOURCE / DEFAULT_FRAGMENT_SOURCE JSDoc from re-export to declaration site by @Copilot in #406
  • docs(RenderSystem): add param em and returns to flushStaleMeshBuffers JSDoc by @Copilot in #407
  • docs(GltfLoader): document Promise requirement, rejection propagation, and add param/returns to resolveUri by @Copilot in #408
  • Release v1.1.17 by @ormidales in #409

Full Changelog: 1.1.16...1.1.17

v1.1.16

26 Mar 13:24
0e0ce12

Choose a tag to compare

What's Changed

  • docs(MeshComponent): document min/max reset in dispose() JSDoc by @Copilot in #384
  • Add JSDoc to StressMovementSystem by @Copilot in #385
  • docs: explain intentional MeshComponent sharing and ref-counting in runStressDemo by @Copilot in #386
  • docs(Time): clarify reset() does not remove the visibilitychange listener by @Copilot in #387
  • docs: add full JSDoc to createDemoLayout by @Copilot in #388
  • Add JSDoc to OrbitalCameraSystem.update() by @Copilot in #389
  • docs(ecs): add example block and render-loop warning to clearEmptyViews() JSDoc by @Copilot in #390
  • docs: add JSDoc to RenderSystem.resetGpuResources() by @Copilot in #391
  • Release v1.1.16 by @ormidales in #392

Full Changelog: 1.1.15...1.1.16

v1.1.15

25 Mar 13:07
a5efdcf

Choose a tag to compare

What's Changed

  • docs(GltfLoader): promote resolveUri security tag to top of JSDoc block by @Copilot in #367
  • docs(ShaderCache): add remarks to getProgramKey JSDoc documenting key-stability invariant by @Copilot in #368
  • docs(RenderSystem): JSDoc constructor — document all three parameters by @Copilot in #369
  • OrbitalCameraSystem: document and warn on maxElevationDeg out-of-range assignment by @Copilot in #370
  • docs(EntityManager): document ref-counting side-effects on addComponent/removeComponent by @Copilot in #371
  • docs(TransformComponent): add JSDoc for needsModelMatrixUpdate and markModelMatrixClean by @Copilot in #372
  • docs(GltfLoader): split strict JSDoc into labelled Quaternion and URI whitelist/length-cap sections by @Copilot in #373
  • Fix test robustness and OrbitalCameraSystem Infinity clamping (review feedback) by @Copilot in #375
  • Release v1.1.15 by @ormidales in #374

Full Changelog: 1.1.14...1.1.15

v1.1.14

13 Mar 21:24
3d7cbc5

Choose a tag to compare

What's Changed

  • fix(GltfLoader): pass percent-decoded URI to resolveUri callback to prevent SSRF bypass by @Copilot in #352
  • fix(ShaderCache): hash GLSL source to derive shader cache keys instead of storing raw strings by @Copilot in #353
  • fix: enforce maxJsonBufferBytes on decoded string before JSON.parse by @Copilot in #354
  • CSP: replace bare script-src 'self' with hash+strict-dynamic or 'none' by @Copilot in #355
  • fix(ShaderCache): bound explicit cache key length to prevent unbounded Map allocation by @Copilot in #356
  • fix(security): add URI length cap in validateExternalUri to prevent ReDoS by @Copilot in #357
  • Fix GltfLoader JSON size limits and ShaderCache key validation centralization by @Copilot in #359
  • Release v1.1.14 by @ormidales in #358

Full Changelog: 1.1.13...1.1.14

v1.1.13

12 Mar 15:11
4509123

Choose a tag to compare

What's Changed

  • fix(GltfLoader): validate external buffer URIs to prevent SSRF and path traversal by @Copilot in #336
  • fix: neutralise prototype-pollution vectors and validate asset.version in GltfLoader by @Copilot in #337
  • Fix OrbitalCameraSystem window listener leak on repeated attach() calls by @Copilot in #338
  • Fix decodeDataUri: decode base64 data URIs locally to avoid Service Worker exposure by @Copilot in #339
  • Validate resolved buffer byteLength against glTF JSON declaration by @Copilot in #340
  • Add security JSDoc warnings to GLSL shader source constants and Material constructor by @Copilot in #341
  • fix: mask FNV-1a intermediate hash values to uint32 on every step by @Copilot in #342
  • Add Content-Security-Policy meta tag to all HTML entry points by @Copilot in #343
  • fix: harden deepCloneToDataOnly, resolveBuffers uri guard, CSP 127.0.0.1, safer CSP tests by @Copilot in #345
  • Release v1.1.13 by @ormidales in #344

Full Changelog: 1.1.12...1.1.13

v1.1.12

11 Mar 09:13
3c88cc4

Choose a tag to compare

What's Changed

  • docs: add returns JSDoc tag to ShaderCache.getProgramKey by @Copilot in #313
  • docs: add safeUpdate cross-reference to flushStaleMeshBuffers JSDoc by @Copilot in #314
  • docs: add JSDoc nullability contract to Material.program by @Copilot in #315
  • docs: enumerate wheel listener leak in OrbitalCameraSystem.attach JSDoc by @Copilot in #316
  • fix: replace bare in Material.ts prose in index.ts re-export JSDoc with {link Material} by @Copilot in #317
  • docs: complete Time.reset() JSDoc with post-call guarantees and context-restore example by @Copilot in #318
  • Release v1.1.12 by @ormidales in #319

Full Changelog: 1.1.11...1.1.12

v1.1.11

10 Mar 17:47
74eaf7a

Choose a tag to compare

What's Changed

  • docs: add a_normal and a_uv attribute entries to DEFAULT_VERTEX_SOURCE JSDoc by @Copilot in #300
  • docs: expand GltfLoaderOptions JSDoc for normalizeNormals and strict by @Copilot in #301
  • docs(OrbitalCameraSystem): document idempotent behaviour of detach() by @Copilot in #302
  • docs: add example block to TransformComponent.setDirty() JSDoc by @Copilot in #303
  • docs(RenderSystem): add example and update() auto-cleanup note to flushStaleMeshBuffers JSDoc by @Copilot in #304
  • docs: add param JSDoc tags to Renderer.clear() by @Copilot in #305
  • Release v1.1.11 by @ormidales in #306

Full Changelog: 1.1.10...1.1.11

v1.1.10

10 Mar 09:26
b50eabe

Choose a tag to compare

What's Changed

  • docs: add JSDoc see annotations to DEFAULT_VERTEX_SOURCE and DEFAULT_FRAGMENT_SOURCE barrel exports by @Copilot in #286
  • docs: add JSDoc to undocumented GltfLoaderOptions properties by @Copilot in #287
  • docs: add JSDoc to Time.reset() by @Copilot in #288
  • docs: add missing param/returns JSDoc to ShaderCache.fnv1aSources by @Copilot in #289
  • docs: add JSDoc to CONSECUTIVE_MESH_BUFFER_FAILURE_WARNING_THRESHOLD by @Copilot in #290
  • docs: add JSDoc to GltfAccessor and GltfBufferView by @Copilot in #291
  • docs: enrich package.json description with ECS, glTF 2.0, and TypeScript strict by @Copilot in #292
  • Enhance documentation with JSDoc comments and update package description by @ormidales in #293

Full Changelog: 1.1.9...1.1.10

v1.1.9

09 Mar 20:58
51055a8

Choose a tag to compare

What's Changed

  • fix: skip gl.delete* calls in resetGpuResources after WebGL context loss by @Copilot in #264
  • fix(gltf): prevent silent binChunk reuse for multiple URI-less buffers in GLB by @Copilot in #265
  • fix: remove OrbitalCameraSystem window listeners on pagehide to prevent memory leak by @Copilot in #266
  • fix: Time.elapsed no longer advances during an active pause by @Copilot in #267
  • perf(ShaderCache): eliminate combinedSource allocation on cache hits via dual-hash scheme by @Copilot in #268
  • perf: TypedArray fast paths for tightly-packed GL_SHORT and GL_UNSIGNED_BYTE in readAccessorFloat by @Copilot in #269
  • fix: guard ensureMeshBuffers against stale cache during WebGL context loss by @Copilot in #270
  • fix: guard loadModel() against concurrent calls with AbortController by @Copilot in #271
  • feat(ecs): add zero-allocation forEachEntityWith iteration API by @Copilot in #272
  • fix(a11y): wrap nav links in <ul>/<li> in gallery.html and demos.html by @Copilot in #273
  • feat(gltf): validate and normalize quaternions in buildNodeLocalMatrix by @Copilot in #274
  • docs: add JSDoc to DEFAULT_VERTEX_SOURCE and DEFAULT_FRAGMENT_SOURCE by @Copilot in #275
  • fix: call Time.reset() on WebGL context restore to prevent elapsed drift by @Copilot in #276
  • fix(tsconfig): include vite.config.ts and tests/ in TypeScript compilation by @Copilot in #277
  • Fix GPU resource management and enhance performance optimizations by @ormidales in #278

Full Changelog: 1.1.8...1.1.9

v1.1.8

08 Mar 17:01
a4e6f08

Choose a tag to compare

What's Changed

  • feat(GltfLoader): wrap parsing phases in try/catch with descriptive error context by @Copilot in #243
  • Limit deltaTime in the main loop to prevent numerical instability on tab return by @Copilot in #244
  • test: harden MockResizeObserver to validate post-dispose resize isolation by @Copilot in #245
  • feat(ShaderCache): add program reference counting to prevent GPU memory leaks by @Copilot in #246
  • feat(TransformComponent): skip redundant model-matrix recomputation via dirty flag by @Copilot in #247
  • Fix ShaderCache collision-resolved program orphan on hash-key removal by @Copilot in #249
  • Enhance error handling, memory management, and shader caching by @ormidales in #248

Full Changelog: 1.1.7...1.1.8