Releases: strobejb/q22
Releases · strobejb/q22
Release list
q22 3.3.0
3.3.0 - 2026-09-12
Added
- Added Unicode-aware string scanning, with modes for Latin/Roman text and all-script multilingual text.
- Added CPIO Structure View support.
- Added lazy loading for dynamic Strata arrays so large archive and filesystem structures expand on demand.
- Added QIODevice-backed sequence access for faster and more consistent file, search, export, checksum, entropy, and disassembly workflows.
- Added copy-path support to the File Information panel.
Changed
- Improved Structure View usability with a separate type column, clearer entry-point naming, and better nested/semantic row handling.
- Improved file opening and search/export performance through shared device-backed data access.
- Improved ISO, WOFF, ZIP, and dynamic-array Strata definitions.
Fixed
- Fixed Joliet supplementary ISO directory entries so semantic filesystem rows show readable UTF-16BE names.
- Fixed PE/entry-point detection and disassembly integration issues.
- Fixed string scanning false positives from broad Unicode detection by defaulting to Latin/Roman Unicode scanning.
- Fixed File Information path/location behavior so the full file path can be shown and copied.
- Fixed several Structure View robustness issues around lazy arrays, large containers, and malformed referenced data.
q22 3.2.0
3.2.0 - 2026-07-20
Added
- Added broad Structure View support for archives, nested files, compressed streams, fonts, media containers, images, disk images, and WebAssembly modules.
- Added nested-source navigation so embedded files and file slices can be opened directly from Structure View.
- Added transformed nested-source support for gzip, zlib, and deflate-backed data.
- Added declarative Strata semantic views for richer high-level summaries without native renderer code.
- Added Strata language support for reusable bitfields, row diagnostics, richer formatting, compound
sizeof(...), explicit array-element behavior, table-relative offsets, and keyed scalar lookups.
Changed
- Improved Structure View navigation with nested-source breadcrumbs and clearer context-menu actions.
- Improved Strata authoring documentation, keyword coverage, and guidance for large or archive-like formats.
- Improved archive and container handling for ZIP/JAR/APK-style files, TAR/GZip files, ISO images, ICO/CUR images, and WOFF fonts.
- Improved executable-code integration for PE, ELF, and WebAssembly Structure View rows.
Fixed
- Fixed several Structure View robustness issues with malformed files, unsupported nested data, transformed streams, and invalid format selections.
- Fixed major Structure View performance problems in large ZIP/archive views.
- Fixed project/build portability issues around generated CMake configurations and Windows builds.
- Fixed UI consistency issues in nested-source prompts, Structure View context menus, and breadcrumb styling.
q22 3.1.0
3.1.0 - 2026-07-13
Added
- Added Android DEX Structure View support with raw DEX tables and a semantic summary for strings, types, fields, methods, and classes.
- Added Strata
uleb128andsleb128primitive integer types for variable-width encodings used by DEX, WebAssembly-style formats, and related binary formats. - Added Strata export
version(...)metadata so user definitions can intentionally override built-in definitions. - Added Qt Creator highlighting for canonical
.stratafiles while keeping legacy.structhighlighting.
Changed
- Renamed shipped Strata definitions from
.structto.strata; legacy.structuser definitions remain supported. - Moved user Strata definitions to
~/.config/catch22/q22/strata, with migration from the olderstructsdirectory. - Moved q22 settings, palettes, bookmarks, and Strata files under the
catch22/q22config directory. - Changed Strata
magic(...)metadata to use byte-sequence-first syntax, with the optional offset second. - Improved duplicate built-in/user Strata definition logging, including clear picked/ignored entries.
- Updated Strata documentation, keyword reference, examples, and Qt Creator highlighter metadata.
Fixed
- Improved rendering of tagged byte arrays as strings in Structure View.
- Improved decoded DEX string display, including modified UTF-8 handling and cleaner summary labels.
- Removed noisy early DEX dynamic rows that duplicated raw table data without adding useful names.
- Fixed stale copied built-in
.structfiles from being loaded beside renamed.stratadefinitions.
q22 3.0.2
3.0.2 - 2026-07-07
Added
- First public Q22 release package for Linux and Windows.
- Qt 6 desktop application based on the original Catch22 HexEdit editing model.
- Hex editor with overwrite and insert editing, undo/redo, selection, search, goto, and bookmark workflows.
- File properties, checksums, string extraction, and entropy/statistics panels.
- Structure View for inspecting PE, ELF, and custom Strata structure definitions.
- Disassembly panel using Capstone, with x86, x86-64, ARM, ARM Thumb, and AArch64 support.
- Function discovery, function bookmarks, and HexView "Disassemble This" integration.
- Light, dark, and system theme modes with custom palettes.
- Linux AppImage and Windows zip release artifacts.
Changed
- Modernized the UI around Qt docked panels, custom status bar controls, preferences, and platform-aware window chrome.
- Added GNOME/Mutter and KDE/KWin-specific frameless-window handling.
- Added AppStream metadata for Linux packaging.
- Added third-party notices for Qt, Capstone, and GNOME/Adwaita icons.
Notes
- Linux packaging currently targets AppImage.
- Windows packages are unsigned zip archives.
- This release should be smoke-tested on Fedora GNOME, KDE Plasma, Windows 11, and an Ubuntu LTS AppImage run before publication.