Skip to content

3.6.2

Latest

Choose a tag to compare

@github-actions github-actions released this 28 Sep 21:07
· 76 commits to main since this release
7d07ece

Added

  • Add SpriteSettingsApplierAPI.TryApplyProfiles to batch-apply and save sprite importer profiles from scripts without opening the window (#821).
  • Add TextureSettingsApplierAPI.TryApplyTextureSettings to apply and save texture import settings from scripts without opening the window (#821).
  • Add AnalyzerPolicyAPI.TrySetEnabled so editor scripts can enable or disable Unity Helpers analyzer policies without opening the window (#821).
  • Add ScriptableSpriteAtlasGenerator.TryCreateConfig and TrySetSourceTexturesUncompressed to create atlas configs and manage source sprite import settings without opening the window (#821).
  • Add DisposableScope for allocation-free using cleanup with copy-safe, reverse-order disposal (#875).
  • Add SpriteSettingsApplierAPI.TrySaveProfiles and TryLoadProfiles so editor scripts can persist sprite settings without opening the window, with explicit overwrite and independent profile copies (#862).
  • Add UnityMethodAnalyzerReportExportAPI so editor scripts can save Markdown and JSON findings with compiler coverage status without opening the window (#861).
  • Add ValidationReportExportAPI so editor scripts can write Sentinel JSON and JUnit reports from a validation run without opening the workspace (#821).
  • Add SpriteSheetAnimationAPI.TryCreate so editor scripts can preview or create sprite sheet animation clips from ordered frames without opening the window (#821).
  • Add SpriteSheetAnimationAPI.TryDiscoverFrames so editor scripts can load ordered sprite frames and choose whether to update import settings without opening the window (#821).
  • Add AnimationClipFrameSaveAPI.TrySaveFrames so editor scripts can save sprite frames and FPS to an existing clip without opening the window. See Sprite Animation Editor (#851).
  • Add PrefabChecker.ScanFolders so editor scripts can inspect prefab findings from explicit folders and options without opening the window (#821).
  • Add PrefabChecker.TryRemoveMissingScripts so editor scripts can preview or repair missing script slots in prefabs without opening the window (#821).
  • Add TextureResizerAPI.TryResizeTextures so editor scripts can resize or preview PNGs from explicit textures and asset folders without opening the window. Textures process in natural name order (#821).
  • Add an encoding-aware DurableFile.TryWriteAllText overload that preserves the encoding's byte order mark for staged writes.

Fixed

  • Fix sprite atlas generation losing unsaved config sprite entries while creating an atlas asset (#821).
  • Fix the Sprite Atlas Generator's Force Uncompressed action so its default-platform compression setting stays uncompressed after reimport (#821).
  • Fix editor folder discovery and atlas generation so paths with Windows separators work from scripts and batch mode (#821).
  • Fix DurableFile ownership so append, create, and delete operations cannot change a destination during a staged write; competing operations also report failure without crashing Windows IL2CPP players (#871).
  • Fix Image Blur and Sprite Sheet Extractor output publication so a competing staged-file writer cannot change the destination during publication (#871).
  • Fix Sprite Sheet Animation Creator so declining an import-settings prompt leaves the texture importer unchanged (#821).
  • Fix Texture Resizer batch calls so whitespace-only source folder entries are ignored like empty entries (#867).
  • Fix cached package path conversion so blank package IDs return no path (#867).
  • Fix Sentinel validation runs so targets with whitespace-only GUIDs or asset paths are skipped (#867).
  • Ignore whitespace-only file paths in Unity Method Analyzer source selection, compiler messages, navigation, and report export (#867).
  • Fix SpriteRendererMetadata so material copies are released after replacement, pop, or destruction, and moving the top material to the back restores the prior top (#855).
  • Fix Sprite Cropper padding so borderless sprites stay borderless and larger outputs retain their full resolution (#857).
  • Fix competing Sentinel suppression edits and Undo so a stale action reports a conflict instead of replacing another action's decisions (#817).
  • Fix prefab validation Undo and stale-key repair rollback so they reject observed byte changes before restoring a snapshot; competing staged-replacement DurableFile writers share the check's lock (#817, #827).
  • Fix animation creation APIs to return the created asset path when saving fails after Unity creates the clip (#821).
  • Fix Image Blur and Sprite Sheet Extractor new image publication so readers see complete outputs and competing publishers preserve the first file (#827).
  • Fix the Sprite Animation Editor's Preview FPS field on Unity 2021.3 so its window opens correctly (#851).
  • Fix Sprite Animation Editor saves for clips with multiple sprite bindings so frames from other bindings are not written into the selected curve (#851).
  • Fix Odin Migration menu placement under Tools > Wallstop Studios > Unity Helpers (#849).
  • Fix JSON Type values and pool type settings to recover constructed generics after unique component assembly moves (#846).
  • Fix SerializableType references to constructed generic types after their component types move between assemblies (#845).
  • Fix Texture Resizer so it rejects invalid sizing settings and colliding output names before changing source, importer, or destination files (#821).
  • Fix Test Run Reporter summary claims so one run owns a marker and a stale callback cannot replace or delete a newer run (#827).
  • Fix concurrent processes publishing another DurableFile writer's staged bytes. A competing writer now fails while the first owns the stage (#838).
  • Stage subtype manifests, exported proto schemas, and sprite or animation configs before replacement so failed staging leaves the previous file intact (#827).
  • Stage original asset bytes before stale-key repair rollback and prefab validation undo, so failed staging does not truncate the asset (#827).
  • Keep issue template version choices stable across local hooks and release preparation by rendering both forms from a tracked version manifest.
  • Fix asset change detection warnings caused by deserializing imported assets while checking for matching sub-assets. Sprite and nested asset watchers still receive matching paths (#834).
  • Fix FileHelper.InitializePath to return false for invalid paths and directory failures while preserving existing files. See File Operations (#827).

Improved

  • Improve tuple-to-coroutine adapters by removing extra callback allocations (#781).
  • Improve Sprite Cropper scan speed for images of at least one million pixels (#782).
  • Improve JesseSort on large, sustained random-looking inputs with a direct-sort route while retaining pile merging for structured runs (#747).
  • Improve subset sampling from queues and hash sets by copying each source once (#781).
  • Improve loading of missing SerializableType references without building the type-picker catalog (#783).

Install

  • Import the attached .unitypackage into a Unity project, or
  • install com.wallstop-studios.unity-helpers@3.6.2 from npm / OpenUPM through Unity Package Manager.

The release includes the npm tarball and the .unitypackage, each with a .sha256 checksum.