# Changelog

<!-- order: Added, Fixed, Changed, Improved, Removed -->

## [1.4.2] - 2026-08-04

### Added

- **HDRI previews now work without OpenCV**: "Generate Previews" (Preferences ▸ Preview) builds a small .jpg beside each HDRI so even very large files preview instantly. The generator previously needed OpenCV, which the add-on does not ship, so it could never actually run. Verified on a 410MB 16K HDRI: preview in under 3 seconds.
- The Generate Previews button is visible again and its operator is registered, so the feature is finally reachable. Press Esc to stop a long run; re-running continues where it left off.

### Fixed

- **Broken or half-downloaded assets left a dead card**: if an asset folder existed but held no .blend, the panel drew no buttons at all. It now offers the download again ("Re-download" for subscribers; signed-out users see Login and non-subscribers see Subscribe, as elsewhere). This covers an interrupted download, a manually emptied folder, and a product whose .zip was mistakenly a .png.
- **A failed download no longer leaves junk behind**: the download now checks it actually received a zip archive, says so plainly if it did not, and removes the archive and the asset's own folder if it is empty. Previously the leftovers made the asset look installed. A partly-extracted folder is left alone rather than deleted, and the card offers the download again.
- **Assets with incomplete metadata no longer resolve to the wrong folder**: a product missing its download and thumbnail names pointed at its category folder, which exists, so it wrongly appeared downloaded.
- **Asset folder paths reverted every time you opened a file**: setting the Models/Materials/Geo Nodes/Effects/Scenes folders and saving preferences worked, but opening or creating any .blend stamped older values back over them, so the settings appeared not to save at all. The add-on's preferences file is now kept up to date as you change things instead of being written only when a message banner was dismissed.
- **"Load File Paths" restored only four of the five folders** — Scenes was missing from the backup.
- The panel header (the update notification) is now covered by the same one-report-per-session error handling as the rest of the panel.
- **Only real HDRI files are listed under Local ▸ HDRIs**: loose .jpg/.png images in an HDRI folder — vendor previews, backplates, and the previews this add-on generates — were each listed as an HDRI in their own right. On a 3,819-file library that added 4,090 phantom entries and pushed 2,909 real ones past the 5,000-asset discovery limit.
- **Corrupt cache files no longer print on every redraw**: an unreadable message or favourites cache was re-read and re-reported continuously. Each is now reported once and not retried until the file changes.
- Assets with a null name or modification date no longer break the Pending Updates filter, the asset label, or a download.

## [1.4.1] - 2026-08-04

### Fixed

- **Console flooded with "Error drawing API message"**: The add-on printed this line on every single redraw, making Blender's terminal unusable. The message banner now ignores any server response that isn't a message, and reports a problem once per session instead of once per redraw.
- **Search box crashing on brackets and symbols**: Typing `(`, `)`, `[`, `*`, `+`, `?` or `\` into the asset search printed a full error on every redraw until the box was cleared. Search now matches plain text, as it always should have.
- **Errors from assets with incomplete catalogue data**: An asset missing a thumbnail date, a modification date, a name, or a category name caused a repeating error and stopped the rest of the panel drawing. These are now handled.
- **Scenes path not saving**: The Scenes folder was never written to `userprefs.json` or included in the "Save File Paths" backup, so it was lost on restart. Both now include it, along with the Preview Scale setting.
- **Loading preferences wiped unsaved settings**: Opening a .blend reset any preference that wasn't present in `userprefs.json` — which is what kept clearing the Scenes path. Missing entries are now left alone.
- **Linux: "Save File Paths" wrote to the wrong folder**: The backup went to `~/imeshh` while every other add-on file lives in `~/.config/imeshh`. It now saves alongside the others, and still reads an existing backup from the old location.
- **HDRI tab error in scenes with no world**: Opening Local ▸ HDRIs in a file whose world had been deleted raised an error on every redraw.
- **Download progress could read over 100%**: A download reporting more bytes than expected showed percentages like "134.6%". The figure is now capped.
- **Panel could stop drawing entirely**: A stale asset-variant selection could break the Local view. The panel now also degrades to a short message instead of a wall of errors if anything unexpected happens while drawing.

### Changed

- The Scenes folder field now highlights when it is empty, matching the other path fields.
- "Save/Load File Paths" tooltips show the real file location instead of a hardcoded Windows path.

## [1.4.0] - 2026-07-03

### Added

- **iMeshh Pro login**: Sign in with your iMeshh Pro (pro.imeshh.com) account, including "Sign in with Google". Your existing shop.imeshh.com login keeps working exactly as before.
- **Pro asset downloads**: Download the asset library through an iMeshh Pro subscription, with automatic fallback to the legacy shop.imeshh.com download flow for existing subscribers.
- **Ignore Cameras Option**: Added preference to skip cameras when appending or linking assets. This is particularly useful for user assets that contain cameras. The option is enabled by default and can be found in the addon preferences under the "Import" section.
- **HDRI Preview Size Limit**: Added configurable size limit for HDRI preview loading to prevent memory issues with large files. Users can adjust the limit in preferences (default: 100MB).
- **HDRI Cache Management**: Added operators to view cache statistics and clear cached HDRI previews to free disk space. Available in Preferences > Preview tab.
- **Improved Variant Navigation**: Moved variant navigation arrows from beside the preview image to beside the asset name for both local and online assets. This provides better visual organization and cleaner layout with navigation arrows integrated with the asset labels.
- **Reorganized Asset UI Layout**: Moved detail and favorite buttons to a separate row above the preview area for better visual hierarchy and cleaner layout organization.
- **Pending Updates Filter**: Added a filter button to show only assets that have updates available. This helps users keep their library up to date by easily identifying which downloaded assets have newer versions available.

### Fixed

- **Local assets not showing with multiple folders**: Fixed an issue where assets would not display in the Local view when more than one folder was added for the same asset type. You can now switch between your folders with the root selector.
- **Safer asset extraction**: Downloaded asset archives are now validated so they cannot write files outside your chosen folder.
- **Large HDRI Display Issue**: Fixed issue where large local HDRIs (16K and some 8K files) would not display in the Local HDRI view. Large files now automatically generate small preview images instead of failing to load.
- **Variant Navigation Not Showing**: Fixed issue where variant navigation arrows were not appearing for both online and local assets. Corrected asset type detection logic, improved filepath parameter passing, and enhanced base name detection for variant matching.
- **Message Cooldown Persistence**: Fixed issue where pop-up message cooldown was not persisting across Blender restarts. Messages dismissed by users will now stay dismissed according to the cooldown period even after restarting Blender.

### Changed

- **Asset library / Local switch**: The iMeshh and Local switch now appears as buttons in the panel header.
