v6.3.4

grokability/snipe-itv6.3.4Mar 29, 2024by snipe

AI Summary

A bug fix release that adds new features like column selectors and signatures to reports, adds Somali translation, and fixes API scoping issues. It warns about a future breaking change for Jamf2Snipe.

Key Highlights

  • Added column selectors and signatures to print all assigned pages.
  • Added AVIF image format support.
  • Fixed API scoping issues where results were too broad.
  • Added Somali translation.
  • Added 2FA reset logging.

New Features

  • Column selectors and signatures on print pages
  • AVIF image format support
  • 2FA reset logging
  • Deep linking to search results

Full Release Notes

> [!CAUTION]  
>  **The upcoming v7 release of Snipe-IT will require PHP 8.1 or greater**

Happy Friday! Lots of fixes and improvements in this version. Here's the tldr;, with the full changelog below:

- Added Somali translation
- Fixed several label setting glitches
- Fixed some API scoping issues where results were not as constrained as they should have been when searching
- Added column selectors and signatures to the "print all assigned" page
- Added 2FA reset logging (this shows up as a separate action, not a normal user edit)
- Added AVIF as an accepted image format
- Added ability to "toggle all" columns in the list views on most pages
- Added the ability to "deep link" to search results in those list views
- Updated the documentation to reflect that the [php exif](https://www.php.net/manual/en/exif.setup.php) library is required

> [!WARNING]  
>  **Upcoming Breaking API change!** In between the last release and this one, we also discovered that a change we made midway through releases broke the [Jamf2Snipe](https://github.com/grokability/jamf2snipe) integration for adding/updating assets. We had changed the "shape" of the asset response to be more consistent with how we present that JSON in other API responses - however in doing so, we broke some of the Jamf2Snipe capabilities. We've reverted that change for now, but in the next release, we'll be adding that change back *and* updating the Jamf2Snipe library to match that capability. 

We *are* noticing in some of the translations in CrowdIn that some `trans_choice()` translations are showing with a weird `<unk>` symbol instead of the pipe (`|`) symbol that the translations strings need in order to decide whether or not to pluralize a string. We've been fixing them as we find them, but if you see anything unusual, open an issue here or [propose the change in our CrowdIn project](https://crowdin.com/project/snipe-it).

## What's Changed
* Updated language strings, added Somali by @snipe in https://github.com/snipe/snipe-it/pull/14400
* Fixed uninitialized string offset error in labels in new label engine when field label was blank by @snipe in https://github.com/snipe/snipe-it/pull/14404
* Fixed `checkout_date` for licenses on print all assigned for users by @snipe in https://github.com/snipe/snipe-it/pull/14407
* Fixed deprecation warning on `strtoupper()` by @snipe in https://github.com/snipe/snipe-it/pull/14413
* Fixed requestable search API scoping by @snipe in https://github.com/snipe/snipe-it/pull/14430
* Removes the unused `mediconesystems/livewire-datatables` package by @marcusmoore in https://github.com/snipe/snipe-it/pull/14427
* Fixed z-index of date-picker by @Godmartinz in https://github.com/snipe/snipe-it/pull/14415
* Fix [sc-25008] - correct and improve legacy language warnings by @uberbrady in https://github.com/snipe/snipe-it/pull/14401
* Removed dead test code by @marcusmoore in https://github.com/snipe/snipe-it/pull/14437
* Hide/Show ecnrypted values when click on the lock icon by @mauro-miatello in https://github.com/snipe/snipe-it/pull/14406
* Organized notification test cases by @marcusmoore in https://github.com/snipe/snipe-it/pull/14436
* Make sure the category is still valid before displaying on view assets by @snipe in https://github.com/snipe/snipe-it/pull/14445
* Add additional options to print all assigned view by @snipe in https://github.com/snipe/snipe-it/pull/14447
* Fixed Bulk delete locations bug by @Godmartinz in https://github.com/snipe/snipe-it/pull/14457
* [Snyk] Upgrade bootstrap-table from 1.22.2 to 1.22.3 #14455 by @snipe in https://github.com/snipe/snipe-it/pull/14461
* Wider country dropdown by @snipe in https://github.com/snipe/snipe-it/pull/14462
* Added #14460 add avif format by @snipe in https://github.com/snipe/snipe-it/pull/14465
* Added default location to print all assigned by @snipe in https://github.com/snipe/snipe-it/pull/14468
* Added "toggle all" to column selector by @snipe in https://github.com/snipe/snipe-it/pull/14464
* Removed the need to add `InteractsWithSettings` to each test case by @marcusmoore in https://github.com/snipe/snipe-it/pull/14438
* Adds a minimal amount of validation around asset_tags in AssetsController by @marcusmoore in https://github.com/snipe/snipe-it/pull/14421
* Added 2FA reset log entry by @snipe in https://github.com/snipe/snipe-it/pull/14469
* Use `htmlentities()` instead of `htmlspecialcharacters()` on Custom Field Listbox Values by @spencerrlongg in https://github.com/snipe/snipe-it/pull/14089
* Added validation for `last_audit_date` and `next_audit_date` by @snipe in https://github.com/snipe/snipe-it/pull/14472
* Created Dymo LabelWriter Label 2112283 by @PP-JN-RL in https://github.com/snipe/snipe-it/pull/14485
* Fixes `last_audit_date` not being stored via API correctly by @marcusmoore in https://github.com/snipe/snipe-it/pull/14486
* Handle badly formatted `last_audit_date` in `StoreAssetRequest` by @marcusmoore in https://github.com/snipe/snipe-it/pull/14488
* Fixed #14482 - bad method call model restore from view by @snipe in https://github.com/snipe/snipe-it/pull/14490
* Added Dymo Labelwriter 1933081 by @PP-JN-RL in https://github.com/snipe/snipe-it/pull/14491
* Fixed #14483 - Added deeplinking to search/sort/pagination by @snipe in https://github.com/snipe/snipe-it/pull/14492
* Added supplier details to license view by @snipe in https://github.com/snipe/snipe-it/pull/14494
* Fixed #14495 - Allow user_id to be passed to limit to only specific admins by @snipe in https://github.com/snipe/snipe-it/pull/14498
* Add new validator for custom field checkboxes and fix asset model default updates  by @spencerrlongg in https://github.com/snipe/snipe-it/pull/14369
* Added validation around `pwd_secure_complexity` by @marcusmoore in https://github.com/snipe/snipe-it/pull/14502
* Added ability to filter in user's assigned assets by category ID and model ID by @snipe in https://github.com/snipe/snipe-it/pull/14509
* Last Checkin Date added to Hardware View and Index by @akemidx in https://github.com/snipe/snipe-it/pull/14262
* Added signature to user print report for Accessories and Consumables by @Godmartinz in https://github.com/snipe/snipe-it/pull/14500
* Fixes #14289: /reports/activity API endpoint scoping by @squintfox in https://github.com/snipe/snipe-it/pull/14515
* Fixed sorting on last checkin assets api by @snipe in https://github.com/snipe/snipe-it/pull/14516
* Check that the array key exists in the label engine by @snipe in https://github.com/snipe/snipe-it/pull/14517
* Default Locale database value changed to en-US by @akemidx in https://github.com/snipe/snipe-it/pull/14456

## New Contributors
* @PP-JN-RL made their first contribution in https://github.com/snipe/snipe-it/pull/14485
* @squintfox made their first contribution in https://github.com/snipe/snipe-it/pull/14515

**Full Changelog**: https://github.com/snipe/snipe-it/compare/v6.3.3...v6.3.4