v6.3.0
⚠️ IMPORTANT: Future versions of Snipe-IT will require PHP 8.1 or greater
Happy New Year, everyone! This update is a big one as we ramp up for the release of v7. We've got tons of bug-fixes, big and small, and we're stoked to announce support for Microsoft Teams in the notification integrations. As we continue work on v7, expect even more improvements and flexibility in notifications down the line.
We've also added the ability to specify custom fields that you would like to appear on the requestable assets page, and added user edit logging to track changes to users in the system (minus passwords, 2fa tokens, etc, of course), along with some bulk editing, LDAP and SAML improvements.
The full list of changes is below - enjoy!
What's Changed
- Check that the location is valid before debugging by @snipe in https://github.com/snipe/snipe-it/pull/13753
- Fixed #13652 - Labels Using Wrong Logo by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13756
- Fixed RB-17334 - ErrorException: Undefined variable
$user_formatted_arrayby @snipe in https://github.com/snipe/snipe-it/pull/13757 - Check for true/false explicitly on api table view by @snipe in https://github.com/snipe/snipe-it/pull/13759
- Check for valid date in custom report by @snipe in https://github.com/snipe/snipe-it/pull/13761
- Make sure order number is not an array by @snipe in https://github.com/snipe/snipe-it/pull/13762
- Fixed ErrorException: Array to String Conversion rb17355 by @inietov in https://github.com/snipe/snipe-it/pull/13758
- Fixed custom report date fields error by @Robert-Azelis in https://github.com/snipe/snipe-it/pull/13777
- Fixed accessory not found string by @snipe in https://github.com/snipe/snipe-it/pull/13784
- Map Snipe-IT logs to storage logs folder in Docker by @svpernova09 in https://github.com/snipe/snipe-it/pull/13786
- Fixed ErrorException: Undefined array key in importer blade [sc-23864] by @inietov in https://github.com/snipe/snipe-it/pull/13787
- Added an option to bulk edit location & fixed location bug by @Godmartinz in https://github.com/snipe/snipe-it/pull/13584
- Added optional custom fields to requestable assets page by @snipe in https://github.com/snipe/snipe-it/pull/13796
- Added employee number as a searchable field to the asset table by @Godmartinz in https://github.com/snipe/snipe-it/pull/13797
- Fixed #13795 Unlogged checkin action post updating the username of an asset through the CSV import by @inietov in https://github.com/snipe/snipe-it/pull/13799
- Improvements to EOL rate and EOL date by @Robert-Azelis in https://github.com/snipe/snipe-it/pull/13776
- Fixed FD-38641 - Bulk asset edit unable to update
model_id, misc other bugs by @snipe in https://github.com/snipe/snipe-it/pull/13800 - Fixes EOL on Custom Report by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13802
- Added User Phone & Address Fields to Custom Asset Report by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13803
- Added
min_amtvalue to model detail page by @snipe in https://github.com/snipe/snipe-it/pull/13809 - Fixed #11179:
APP_FORCE_TLSmissing from the example.env.dockerby @mmanjos in https://github.com/snipe/snipe-it/pull/13810 - Added
trim()to import values by @snipe in https://github.com/snipe/snipe-it/pull/13731 - Added missing translation string by @Godmartinz in https://github.com/snipe/snipe-it/pull/13811
- Handle redirect from after
POSTrequest from backup restore by @snipe in https://github.com/snipe/snipe-it/pull/13812 - Added additional fields to Download All in Activity Report by @snipe in https://github.com/snipe/snipe-it/pull/13815
- Added checkboxes to intentionally remove field values in bulk user edit by @snipe in https://github.com/snipe/snipe-it/pull/13817
- Fixed validation handling on backup uploads by @snipe in https://github.com/snipe/snipe-it/pull/13818
- Check that the category exists on user print page by @snipe in https://github.com/snipe/snipe-it/pull/13819
- Fixed Attempt to read property fields on null [sc-23903] by @inietov in https://github.com/snipe/snipe-it/pull/13820
- Fixed datetime displayed on license edit for fields that should be date by @snipe in https://github.com/snipe/snipe-it/pull/13816
- More graceful failure if
ldap_resultsJSON decode isn’t set by @snipe in https://github.com/snipe/snipe-it/pull/13821 - Fixed ldap location sync by @Godmartinz in https://github.com/snipe/snipe-it/pull/13828
- Added employee number to user merge screen by @snipe in https://github.com/snipe/snipe-it/pull/13837
- Removed Refresh button on Client Tables by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13847
- Fixed notes not saving to action log when licenses are checked in/out by @marcusmoore in https://github.com/snipe/snipe-it/pull/13842
- Added #13754 - asset history tab to locations view by @ntbutler-nbcs in https://github.com/snipe/snipe-it/pull/13814
- New translation strings for Custom Asset report by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13823
- Clarified address column under locations by @Godmartinz in https://github.com/snipe/snipe-it/pull/13769
- Fixed URL to favicon on default blade (used in 404 messages) by @snipe in https://github.com/snipe/snipe-it/pull/13852
- Fixed
undefined array key 266in dashboard pie when over 265 status labels exist by @akemidx in https://github.com/snipe/snipe-it/pull/13857 - Security upgrade alpine from 3.17.3 to 3.17.5 by @snipe in https://github.com/snipe/snipe-it/pull/13871
- Link back to asset on create by @snipe in https://github.com/snipe/snipe-it/pull/13853
- Fixed exception when an array is incorrectly submitted and the exception occurs before validation by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13830
- Added multi-location sync for ldap by @Godmartinz in https://github.com/snipe/snipe-it/pull/13831
- Fixed error
Attempt to read property "id" on bool[sc-23945] by @inietov in https://github.com/snipe/snipe-it/pull/13859 - Changed data source input to select in new label engine by @marcusmoore in https://github.com/snipe/snipe-it/pull/13680
- Added default map back to the importer by @snipe in https://github.com/snipe/snipe-it/pull/13876
- Clarified upload error text by @snipe in https://github.com/snipe/snipe-it/pull/13878
- Fix for Unique Serial validation by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13887
- Added
empty()aroundlocation_idto fix ldap sync bug by @Godmartinz in https://github.com/snipe/snipe-it/pull/13892 - Redirect if category is missing or invalid by @snipe in https://github.com/snipe/snipe-it/pull/13903
- Redirect back to the specific consumable for correction by @snipe in https://github.com/snipe/snipe-it/pull/13904
- Fixed #13850:
Too few arguments to function in App\Importer\UserImporter::fetchManager()by @Azooz2014 in https://github.com/snipe/snipe-it/pull/13898 - Fixed #13905 - Use
unique_undeletedinstead ofunique_serialby @snipe in https://github.com/snipe/snipe-it/pull/13913 - Fixed missing translation string for
validation.two_column_unique_undeletedby @snipe in https://github.com/snipe/snipe-it/pull/13914 - Created mutator on category checkin_email by @snipe in https://github.com/snipe/snipe-it/pull/13922
- Quick revert for #13830 by @snipe in https://github.com/snipe/snipe-it/pull/13923
- Fixed issue where delete then restore could result in duplicate asset tags by @snipe in https://github.com/snipe/snipe-it/pull/13926
- Fixes double logging on asset restore by @snipe in https://github.com/snipe/snipe-it/pull/13928
- Added user observer by @snipe in https://github.com/snipe/snipe-it/pull/13930
- Use updated icons for activity report by @snipe in https://github.com/snipe/snipe-it/pull/13931
- Use allowlist for user observer logging by @snipe in https://github.com/snipe/snipe-it/pull/13932
- Removed extra return statement in consumables API checkout method by @snipe in https://github.com/snipe/snipe-it/pull/13933
- Escape the asset tag before passing it to the view by @snipe in https://github.com/snipe/snipe-it/pull/13934
- Added default location to user view assets by @snipe in https://github.com/snipe/snipe-it/pull/13940
- Upgraded webpack to 5.89.0 by @snipe in https://github.com/snipe/snipe-it/pull/13941
- Updated acorn to 8.11.2 by @snipe in https://github.com/snipe/snipe-it/pull/13942
- Upgrade alpinejs from 3.12.3 to 3.13.2 #13936 by @snipe in https://github.com/snipe/snipe-it/pull/13943
- Upgrade jspdf-autotable from 3.5.31 to 3.7.1 #13937 by @snipe in https://github.com/snipe/snipe-it/pull/13944
- Higher contrast on green dark skin (#13915 for develop) by @snipe in https://github.com/snipe/snipe-it/pull/13945
- SCIM active flag must be a boolean by @uberbrady in https://github.com/snipe/snipe-it/pull/13948
- Refactored checkout for items with bad or missing category by @snipe in https://github.com/snipe/snipe-it/pull/13947
- Check for the array key in
$activeFile->first_rowin importer by @snipe in https://github.com/snipe/snipe-it/pull/13950 - Hiding Order Column in Custom Fieldsets by @akemidx in https://github.com/snipe/snipe-it/pull/13909
- Updated language strings by @snipe in https://github.com/snipe/snipe-it/pull/13953
- Modified re-crypter to also work when given a CLI old-key by @uberbrady in https://github.com/snipe/snipe-it/pull/13958
- Fixed sqlite exception in migration by @marcusmoore in https://github.com/snipe/snipe-it/pull/13955
- Translation of No Group notice on User edit page by @akemidx in https://github.com/snipe/snipe-it/pull/13965
- Fixed status and model in bulk edit by @snipe in https://github.com/snipe/snipe-it/pull/13959
- Fixed user total asset cost to appear conditionally by @Godmartinz in https://github.com/snipe/snipe-it/pull/13954
- Created mutator for requestable attribute by @snipe in https://github.com/snipe/snipe-it/pull/13970
- Fixes CVE-2023-49316 by upgrading
phpseclib/phpseclibby @joelpittet in https://github.com/snipe/snipe-it/pull/13975 - Fixed black dark theme, contrast issues etc by @Godmartinz in https://github.com/snipe/snipe-it/pull/13976
- Fixed the Column header Serial to Product Key for Licenses by @Godmartinz in https://github.com/snipe/snipe-it/pull/13981
- Added test suite for LDAP by @uberbrady in https://github.com/snipe/snipe-it/pull/13978
- Added eula-pdfs to allow-list on restore by @snipe in https://github.com/snipe/snipe-it/pull/13992
- Changed the column header Serial to Product Key on a User View by @Godmartinz in https://github.com/snipe/snipe-it/pull/13993
- Added help text to RTD location field by @snipe in https://github.com/snipe/snipe-it/pull/13998
- Updated to alpine 3.18.5 (PR to #13989) by @snipe in https://github.com/snipe/snipe-it/pull/13999
- Improve backup directory array by @uberbrady in https://github.com/snipe/snipe-it/pull/14005
- Fixed maintenances patch endpoint by @snipe in https://github.com/snipe/snipe-it/pull/14007
- Change log level on status label colors above 256 by @akemidx in https://github.com/snipe/snipe-it/pull/14008
- Updated importer icons by @snipe in https://github.com/snipe/snipe-it/pull/14015
- Set default sorting on backups to latest first by @snipe in https://github.com/snipe/snipe-it/pull/14016
- Smaller icon size for activity reports, other action icons by @snipe in https://github.com/snipe/snipe-it/pull/14017
- Added model name and number to quickscan by @snipe in https://github.com/snipe/snipe-it/pull/14018
- Added
$user->created_byto API user create method by @snipe in https://github.com/snipe/snipe-it/pull/14020 - Fixed HTML double-encoded on checkout emails. by @snipe in https://github.com/snipe/snipe-it/pull/14021
- Added GH test action status badge by @snipe in https://github.com/snipe/snipe-it/pull/14022
- Added a missing table header on requested table for checkout by @Godmartinz in https://github.com/snipe/snipe-it/pull/14014
- Fixed checkbox/radio button display on models edit for default fields by @snipe in https://github.com/snipe/snipe-it/pull/14026
- Upgrade alpinejs from 3.12.3 to 3.13.3 #14013 by @snipe in https://github.com/snipe/snipe-it/pull/14028
- Added
user agent,remote_ip,action_sourcetoaction_logstable by @snipe in https://github.com/snipe/snipe-it/pull/14036 - Fixed
undefined $search_baseby @snipe in https://github.com/snipe/snipe-it/pull/14031 - Removed jquery-ui-bundle by @marcusmoore in https://github.com/snipe/snipe-it/pull/13966
- Fixed #14037 - record current time on accessory checkin by @snipe in https://github.com/snipe/snipe-it/pull/14042
- Added Status Label names to Asset history/Action log by @Godmartinz in https://github.com/snipe/snipe-it/pull/14001
- Bump
github/codeql-actionfrom 2 to 3 by @dependabot in https://github.com/snipe/snipe-it/pull/14047 - Added log message for who is being sent expected checkin notifications by @marcusmoore in https://github.com/snipe/snipe-it/pull/14050
- Added licensed to name and email in user profile license view by @Godmartinz in https://github.com/snipe/snipe-it/pull/13994
- Make sure we're getting an object instead of a collection on Asset API for model_id by @snipe in https://github.com/snipe/snipe-it/pull/14055
- Fixes CVE-2023-43655 Composer Remote Code Execution vulnerability public composer.phar by @joelpittet in https://github.com/snipe/snipe-it/pull/14039
- Fixes CVE-2023-50251 and CVE-2023-50262 DoS on parsing SVG by @joelpittet in https://github.com/snipe/snipe-it/pull/14038
- Implement 1D barcode for label "Tapes\Dymo\LabelWriter_30252" #13987 by @snipe in https://github.com/snipe/snipe-it/pull/14056
- Fixed bad migration namespace by @snipe in https://github.com/snipe/snipe-it/pull/14060
- Added back-migration for Big Locale Refactoring by @uberbrady in https://github.com/snipe/snipe-it/pull/14062
- Normalize language codes, updated strings by @snipe in https://github.com/snipe/snipe-it/pull/14059
- Set fallback locale to new locale code by @snipe in https://github.com/snipe/snipe-it/pull/14064
- Update ResetSettings command to en-US vs en by @snipe in https://github.com/snipe/snipe-it/pull/14072
- Tests For API Asset Store + Refactor For Auto Increment & Form Requests by @spencerrlongg in https://github.com/snipe/snipe-it/pull/13964
- Syncs readme to DockerHub description by @marcusmoore in https://github.com/snipe/snipe-it/pull/14092
- Fixes language source directory for crowdin by @marcusmoore in https://github.com/snipe/snipe-it/pull/14093
- Updated language strings by @snipe in https://github.com/snipe/snipe-it/pull/14094
- Upgrade @fortawesome/fontawesome-free from 6.4.0 to 6.5.0 by @snipe in https://github.com/snipe/snipe-it/pull/14095
- Upgrade jspdf-autotable from 3.5.31 to 3.8.0 by @snipe in https://github.com/snipe/snipe-it/pull/14096
- Use Query Builder instead of Model for Update to Skip Observer in EOL de-normalization migration by @spencerrlongg in https://github.com/snipe/snipe-it/pull/14097
- Fixed invalid query with null values by @marcusmoore in https://github.com/snipe/snipe-it/pull/14101
- Fixed
departmentNameLinkFormatterurl by @Godmartinz in https://github.com/snipe/snipe-it/pull/14100 - Run sqlite tests in GitHub action by @marcusmoore in https://github.com/snipe/snipe-it/pull/14090
- Moved limit and offset in user API to after additional qualifiers by @snipe in https://github.com/snipe/snipe-it/pull/14103
- Moved Google Login prompt higher, made it bigger by @snipe in https://github.com/snipe/snipe-it/pull/14104
- Check that the asset exists before trying to get properties by @snipe in https://github.com/snipe/snipe-it/pull/14107
- Added supplier name as a searchable relation on the asset maintenance report by @Godmartinz in https://github.com/snipe/snipe-it/pull/14108
- Moved contributors to dedicated file by @marcusmoore in https://github.com/snipe/snipe-it/pull/14109
- Added license expiration date in "view asset" by @mauro-miatello in https://github.com/snipe/snipe-it/pull/14115
- Fixed CVE-2023-51651 Potential URI resolution path traversal in the AWS SDK for PHP by @joelpittet in https://github.com/snipe/snipe-it/pull/14087
- Guard against passing non-integer for
company_idwhen creating asset by @marcusmoore in https://github.com/snipe/snipe-it/pull/14116 - Search on supplier name attached to maintenance by @snipe in https://github.com/snipe/snipe-it/pull/14118
- Fixed multiple click checkouts for consumables, accessories and components by @Godmartinz in https://github.com/snipe/snipe-it/pull/14121
- Added way to preserve sort order when generating asset labels by @uberbrady in https://github.com/snipe/snipe-it/pull/14114
- Added
REDIS_DATABASEsupport by @fe80 in https://github.com/snipe/snipe-it/pull/14143 - Updated URL for apple manufacturer by @snipe in https://github.com/snipe/snipe-it/pull/14144
- Fix for LDAP syncing with
base_dnandlocation_idandlocation[FD-39651] by @uberbrady in https://github.com/snipe/snipe-it/pull/14155 - Bump
actions/cachefrom 3 to 4 by @dependabot in https://github.com/snipe/snipe-it/pull/14149 - Improved radio button values in custom report form by @marcusmoore in https://github.com/snipe/snipe-it/pull/14132
- Adds translations for Label example by @Godmartinz in https://github.com/snipe/snipe-it/pull/14131
- Moved URL string to general by @snipe in https://github.com/snipe/snipe-it/pull/14158
- Fixed license seats id turning to zero when sorting by department by @Godmartinz in https://github.com/snipe/snipe-it/pull/14102
- Fixed english and attribute placeholder by @snipe in https://github.com/snipe/snipe-it/pull/14159
- Updated language strings by @snipe in https://github.com/snipe/snipe-it/pull/14161
- Email in License Seat Table by @akemidx in https://github.com/snipe/snipe-it/pull/14051
- Set
qtymutators by @snipe in https://github.com/snipe/snipe-it/pull/13924 - Fixed Ldap sync test table and table data from overflowing by @Godmartinz in https://github.com/snipe/snipe-it/pull/14058
- Added overflow scroll to ldap test table by @Godmartinz in https://github.com/snipe/snipe-it/pull/14163
- Fixed #14114 - correctly sort related fields for labels by @snipe in https://github.com/snipe/snipe-it/pull/14162
- Avoid unnecessarily hydrating models on asset model show page by @marcusmoore in https://github.com/snipe/snipe-it/pull/14164
- Added support for Microsoft Teams Notifications by @Godmartinz in https://github.com/snipe/snipe-it/pull/14153
- Enforce SAML assertion ID uniqueness and notValidOnOrAfter attribute [FD-37019] by @uberbrady in https://github.com/snipe/snipe-it/pull/14170
- Removed attribute assigning blank EOL as 0 by @snipe in https://github.com/snipe/snipe-it/pull/14171
- Fixed #14173: Use new SnipeTranslator to handle pluralized localizations by @uberbrady in https://github.com/snipe/snipe-it/pull/14175
New Contributors
- @mmanjos made their first contribution in https://github.com/snipe/snipe-it/pull/13810
- @Azooz2014 made their first contribution in https://github.com/snipe/snipe-it/pull/13898
- @mauro-miatello made their first contribution in https://github.com/snipe/snipe-it/pull/14115
- @fe80 made their first contribution in https://github.com/snipe/snipe-it/pull/14143
Full Changelog: https://github.com/snipe/snipe-it/compare/v6.2.3...v6.3.0