LinuxServer Changes:
Add php81-pecl-redis for redis support.
snipe-it Changes:
⚠️ IMPORTANT: Future versions of Snipe-IT will require PHP8.0 or greater
Happy Friday everyone! Version 6.1.0 is out! As you can see from the changelog below, it's a big one! (It will be less dramatic if you've been pulling from master
this whole time, but some folks only use tagged releases.)
We've made a ton of bug fixes and query optimizations in this release, and enhanced many aspects of the UI, including some big improvements to the importer UI (with more on the way.) Additionally, we've made lots more progress in replacing hard-coded English strings with translatable strings (much more work on that to come as well.)
We've also introduced a new "Merge Users" tool for those unfortunate scenarios where users were importer or added manually but the usernames didn't match, so duplicates were created by LDAP sync or SCIM:
Which writes to the action log:
Since our last release, we've added two new developers to the team, @marcusmoore and @spencerrlongg! We're excited to see what great contributions they make to the project!
This will be the last release (barring emergency bugfixes and security patches) in the v6 line. Next up is v7 of Snipe-IT, which will bring even more good stuff like expanding webhooks, improved notifications, more logging and tons more.
What's Changed
- Fixed #12215 - string for “Hello, :name” in pt-BR was using
%
by @snipe in snipe/snipe-it#12233 - Add email in assigned_to on asset transformer by @snipe in snipe/snipe-it#12238
- Adds asset age to asset index and asset view pages by @Godmartinz in snipe/snipe-it#12181
- Added: serial to components tab of assets by @Godmartinz in snipe/snipe-it#12247
- Fixed: Grey out email inventory button if user has nothing assigned by @akemidx in snipe/snipe-it#12243
- Adds remote field to the user importer by @Godmartinz in snipe/snipe-it#12205
- Upgraded font awesome to 6.2.1 by @snipe in snipe/snipe-it#12251
- Fixed #9875: Make locations deletable for non Superuser-Accounts with FullMultipleCompanySupport by @Toreg87 in snipe/snipe-it#9876
- Adds a permission group selection for directory sync by @Godmartinz in snipe/snipe-it#11736
- Fixed: Grey out password reset button for consistency by @akemidx in snipe/snipe-it#12250
- Removed extra logging case that was very noisy by @snipe in snipe/snipe-it#12188
- Added
purchase_cost
to user's default view [sc-19680] by @inietov in snipe/snipe-it#12242 - Fixed 500 when downloading the Unaccepted Assets report [sc-19555] by @inietov in snipe/snipe-it#12209
- Bump actions/checkout from 3.1.0 to 3.2.0 by @dependabot in snipe/snipe-it#12260
- Commenting on a scope in Models/Company.php by @akemidx in snipe/snipe-it#12254
- Fixed: Bug with BS tables' select-all which showed an incorrect list of elements by @uberbrady in snipe/snipe-it#12266
- Fixed: Dashboard user count scoping when full company support is enabled by @inietov in snipe/snipe-it#12268
- Added: notes to the accessories tab for user detail view by @Godmartinz in snipe/snipe-it#12264
- Added: validation for department names at Company locations by @Godmartinz in snipe/snipe-it#12090
- Fixed db seeder when company id is not present by @snipe in snipe/snipe-it#12298
- Fixed: Change license_seat changing method to properly 'true up' license seats by @uberbrady in snipe/snipe-it#12305
- Fixed incomplete sentence in translation file for audit interval by @snipe in snipe/snipe-it#12306
- Updated less-loader and css-loader libraries by @snipe in snipe/snipe-it#12307
- Fixed missing translation string by @snipe in snipe/snipe-it#12308
- Fixed: page-break and padding at the end of document for labels by @Godmartinz in snipe/snipe-it#12263
- Added default values to model api GET endpoint by @snipe in snipe/snipe-it#12315
- Chunk sync script by @snipe in snipe/snipe-it#12316
- Truncate URL with ellipsis if too long by @snipe in snipe/snipe-it#12317
- Bump actions/checkout from 3.2.0 to 3.3.0 by @dependabot in snipe/snipe-it#12320
- Updated language strings by @snipe in snipe/snipe-it#12323
- Fixed #12288 - LDAP default group feature refactor by @uberbrady in snipe/snipe-it#12325
- Added username to display in asset listings by @snipe in snipe/snipe-it#12324
- The cache system in getSettings() cached values "forever." That's bad. by @uberbrady in snipe/snipe-it#12326
- Fixed #12236 - Determine which transformer to use based on number of assets in byTag and bySerial API endpoint by @snipe in snipe/snipe-it#12327
- Fixed bySerial endpoint to always return a list by @snipe in snipe/snipe-it#12328
- Fixed UX issue where assets sidenav would collapse if custom status label is selected by @snipe in snipe/snipe-it#12330
- Updated installer script for multiple fixes and features by @subdriven in snipe/snipe-it#12158
- Fixed rollbar integration if ROLLBAR_TOKEN is provided by @snipe in snipe/snipe-it#12329
- Refactor category API for fewer queries by @snipe in snipe/snipe-it#12336
- Added jamf-snipe-rename script to third party list by @snipe in snipe/snipe-it#12337
- Fixed #12004: Snipe-IT restore didn't work on Windows by @uberbrady in snipe/snipe-it#12335
- Check that the
$use_db_field
has a value before attempting a delete by @snipe in snipe/snipe-it#12351 - Added South Sudan to country list by @snipe in snipe/snipe-it#12352
- Only add rollbar to the logging array if the app is in production by @snipe in snipe/snipe-it#12353
- Backed out less-loader version requirement so that builds still work by @uberbrady in snipe/snipe-it#12354
- Added categories to default visiable set on asset models by @snipe in snipe/snipe-it#12355
- Fixed #12362: Bug With Passwords Including Ampersands? by @corydlamb in snipe/snipe-it#12363
- BREAKING: Partial fix for #12356: Make 2FA sortable in user list by @snipe in snipe/snipe-it#12364
- Fixed file uploads for accessories, components, and consumables by @marcusmoore in snipe/snipe-it#12370
- Added BYOD to assets by @snipe in snipe/snipe-it#12369
- Fixed #12340 Deleting imported files visually drops first element in table. by @inietov in snipe/snipe-it#12377
- Allow users to set a blank asset name during checkout by @marcusmoore in snipe/snipe-it#12378
- Updated dev assets by @snipe in snipe/snipe-it#12380
- Fix minor visual bug on asset show page by @marcusmoore in snipe/snipe-it#12379
- Fixed #12388 - Add CSS to the div to correct the weird indenting by @snipe in snipe/snipe-it#12389
- Fixed "Backup before importing?" checkbox on import page by @jerm in snipe/snipe-it#12400
- Fixed: translations for EULA Acceptance Summary by @akemidx in snipe/snipe-it#12398
- Updated - Refactored ImageHandler request to be more re-usable, and checkboxes with missing
minimal
class for iCheck by @snipe in snipe/snipe-it#12387 - Fixed buttons colors in high contrast theme by @Godmartinz in snipe/snipe-it#12405
- Resolved Rollbar error 16746 - missing array key 'extension' by @uberbrady in snipe/snipe-it#12411
- Redo SCIM config; use latest laravel-scim-server from our fork by @uberbrady in snipe/snipe-it#12341
- Fixed the endpoint for user notification with all their assigned assets by @lukasfehling in snipe/snipe-it#12435
- Fixed #9694 Replace iOS "Add to homescreen icon" by @inietov in snipe/snipe-it#12438
- Fixed: username doubles on 'checked-out-to' column if display is resized [sc-19869], [fd-33242] by @uberbrady in snipe/snipe-it#12439
- Cherry-picked Feature: Add DB_PORT to pgsql connection by @svpernova09 in snipe/snipe-it#12429
- Fixed Invalid date value on assets acceptance mail notification by @inietov in snipe/snipe-it#12433
- Fixed #12382 - added checked out count to accessories by @snipe in snipe/snipe-it#12386
- Fixed: Checkin limit string translation for components by @akemidx in snipe/snipe-it#12409
- Fixed: Active Directory "not-delegated+dont-expire-password+normal-accounts" can now login by @uberbrady in snipe/snipe-it#12437
- Fixed #12418 - added ability to edit custom field names via GUI by @snipe in snipe/snipe-it#12423
- Fixed: translation for slack message notification by @akemidx in snipe/snipe-it#12407
- Fixed: Short-circuit the LDAP sync if LDAP is disabled by @snipe in snipe/snipe-it#12444
- Added an exit for the LDAP disabled sync short-circuit by @snipe in snipe/snipe-it#12445
- Fixed Dusk Test Suite by @marcusmoore in snipe/snipe-it#12342
- Handle missing userfiles more gracefully by @snipe in snipe/snipe-it#12454
- Fixed #12449 - Added checkout/checkin note to user history by @snipe in snipe/snipe-it#12456
- Fixed: translations added for the hardware blades by @akemidx in snipe/snipe-it#12421
- Fixed regression in fieldset -> field association by @snipe in snipe/snipe-it#12457
- Updated model restore route by @snipe in snipe/snipe-it#12459
- Fixed mismatched field/fieldset by @snipe in snipe/snipe-it#12474
- Fixed UI bug where download button was missing for non-images by @snipe in snipe/snipe-it#12480
- Fixed #12064 Mail-Template missing translation strings by @inietov in snipe/snipe-it#12478
- Improve error messaging around invalid characters in import by @marcusmoore in snipe/snipe-it#12489
- Fixed: Removed "required" marker for manufacturer on asset models (since it is not actually required) by @akemidx in snipe/snipe-it#12490
- Fixed: Translated the QuickStart screens by @akemidx in snipe/snipe-it#12498
- Added functionality to Apple Warranty link by @akemidx in snipe/snipe-it#12477
- Use translation strings for importer exceptions by @marcusmoore in snipe/snipe-it#12506
- Fixed #12503 - asset names being removed during API checkout requests by @marcusmoore in snipe/snipe-it#12514
- Added a red icon next to the undeployable status by @Godmartinz in snipe/snipe-it#12513
- Fixed #12252 Quotes in Custom Field regex are being HTML-escaped by @inietov in snipe/snipe-it#12516
- Style fixes by @snipe in snipe/snipe-it#12466
- Silence E_WARNING "exceptions" by @uberbrady in snipe/snipe-it#12517
- Fixed ErrorException: Attempt to read property "id" on null [sc-19855] by @inietov in snipe/snipe-it#12473
- Fixed Rollbar 16883 Error: Attempt to assign property "assigned_to" on null by @inietov in snipe/snipe-it#12470
- Enforce Y-m-d as date format for date fields by @snipe in snipe/snipe-it#12408
- Adds Livewire slack inputs by @Godmartinz in snipe/snipe-it#12446
- Fixes slack livewire translations, UI by @snipe in snipe/snipe-it#12522
- Fixed awkward checkout text in checkedout side panel by @akemidx in snipe/snipe-it#12521
- Fixes slack settings submit button availability by @Godmartinz in snipe/snipe-it#12523
- Cleanup some small UI bugaboos (padding, etc) by @snipe in snipe/snipe-it#12524
- Have acceptance result notifications adhere to alerts enabled setting by @marcusmoore in snipe/snipe-it#12422
- Added ability for users to clear their slack settings by @Godmartinz in snipe/snipe-it#12529
- Fixed #12531: hotfix by @snipe in snipe/snipe-it#12533
- Updated translations with new strings and new translations by @snipe in snipe/snipe-it#12541
- Updated the general translation file with new strings by @snipe in snipe/snipe-it#12544
- Two more translations by @snipe in snipe/snipe-it#12545
- Add libsodium shim, and mark the sodium extension as 'optional' by @uberbrady in snipe/snipe-it#12525
- Added #12532: add version endpoint by @AndrewSav in snipe/snipe-it#12538
- Fixed translations on the User Creation setup page by @akemidx in snipe/snipe-it#12447
- Adds Boolean to Users Table for Auto Assigning Licenses by @Godmartinz in snipe/snipe-it#12124
- Correct assignedusers relation setting by @nh314 in snipe/snipe-it#11984
- Added images to emailed user inventory report [sc-19801] by @inietov in snipe/snipe-it#12509
- Fixed #12531 Expected Checkin Date on Asset Checkout throws an error by @inietov in snipe/snipe-it#12537
- Properly close tag in mail template by @marcusmoore in snipe/snipe-it#12550
- Fix full company scoping in user selects by @marcusmoore in snipe/snipe-it#12467
- Added a checkbox to notate VIP status by @akemidx in snipe/snipe-it#12406
- Paginate accessories report by @uberbrady in snipe/snipe-it#12410
- Update dompdf by @snipe in snipe/snipe-it#12555
- Fix purchase date field in asset seeder by @marcusmoore in snipe/snipe-it#12556
- Fixed ErrorException: A non-numeric value encountered in app/Models/License [sc-20187] by @inietov in snipe/snipe-it#12558
- Pass the existing asset name to the bulk checkout form by @snipe in snipe/snipe-it#12560
- Fixed #12559 Unable to import Purchase Date field by @inietov in snipe/snipe-it#12561
- Upgrade Acorn by @uberbrady in snipe/snipe-it#12564
- Added max results limit to report index by @snipe in snipe/snipe-it#12572
- Added table aliases to fix ambiguous SQL clause by @snipe in snipe/snipe-it#12573
- Fixed Address in mailbox given does not comply with RFC 2822, 3.6.2. [sc-202022] by @inietov in snipe/snipe-it#12574
- Adding ability to see boolean values when using normal table export by @akemidx in snipe/snipe-it#12582
- Fixed User start and end date throws validation error [sc-20228] by @inietov in snipe/snipe-it#12583
- Convert string to date object for formatting by @snipe in snipe/snipe-it#12584
- Fix license seeder by @marcusmoore in snipe/snipe-it#12585
- Fixed: TypeError: get_class(): Argument #1 ($object) must be of type object, null given by @inietov in snipe/snipe-it#12575
- Added EOL as de-normed and sortable on assets by @snipe in snipe/snipe-it#12393
- Add GitHub Action to push translation sources to Crowdin by @marcusmoore in snipe/snipe-it#12580
- Fixes the sidebar margin top by @Godmartinz in snipe/snipe-it#12579
- Compiled dev assets by @snipe in snipe/snipe-it#12586
- Fixed Undefined variable
$total
by @inietov in snipe/snipe-it#12578 - Updated font-awesome to ^6.3.0 by @snipe in snipe/snipe-it#12589
- Check for array in linux setup by @snipe in snipe/snipe-it#12590
- Actually display name of company in Accessories Report by @uberbrady in snipe/snipe-it#12591
- The 'download activity report' displayed the wrong value for 'admin' (fixes FD-33368) by @uberbrady in snipe/snipe-it#12592
- Added ability to clone location by @snipe in snipe/snipe-it#12593
- Fixed #12601 Error checkin license seats by @inietov in snipe/snipe-it#12602
- enable sortable for ID column by @veenone in snipe/snipe-it#12610
- Fixed #10779: Add Reverse Proxy support to Pre-Flight URL check by @manuteleco in snipe/snipe-it#12611
- Fixed #11800: Include path in the expected URL during Pre-Flight by @manuteleco in snipe/snipe-it#12612
- Fixes depreciation model rule for months by @Godmartinz in snipe/snipe-it#12621
- Suppress SCIMExceptions from cluttering up Rollbar by @uberbrady in snipe/snipe-it#12625
- Check that the file exists before trying to stat it for filesize by @snipe in snipe/snipe-it#12623
- Fix seeder so assets are checked out to users by @marcusmoore in snipe/snipe-it#12626
- Added
vip
andbyod
to importer by @snipe in snipe/snipe-it#12624 - Maintain asset name during import with checkout by @marcusmoore in snipe/snipe-it#12628
- Dynamically determine target route for expected checkin emails by @snipe in snipe/snipe-it#12631
- Fixed 500 when admin erroneously tries to upload a tiff as logo, cleaned up logo upload layout by @snipe in snipe/snipe-it#12633
- Fixed #12249: fix csv importer for serial_number field by @kenchan0130 in snipe/snipe-it#12617
- Fixes unit and feature test suite by @marcusmoore in snipe/snipe-it#12640
- Fixed #12647: fix translation and adds icon on property reassignable by @floschoepfer in snipe/snipe-it#12648
- Fixed #12635 - dashboard category should not show archived by @snipe in snipe/snipe-it#12638
- fixes alerts to notifications in notification settings by @Godmartinz in snipe/snipe-it#12659
- Bumped codacy workflow by @snipe in snipe/snipe-it#12660
- Adds General option to the webhooks settings by @Godmartinz in snipe/snipe-it#12570
- fixes webhook variables to lowercase by @Godmartinz in snipe/snipe-it#12663
- Removed loading and reduced chunking to 10 by @snipe in snipe/snipe-it#12665
- Small visual tweaks to slack/webhook UI by @snipe in snipe/snipe-it#12667
- Fixed Column not found: 1054 Unknown column '0' in 'field list' [sc-20004] by @inietov in snipe/snipe-it#12599
- Catch Duplicate Headers in Asset History Import by @spencerrlongg in snipe/snipe-it#12670
- Fixed Consumable Factory Seeder by @inietov in snipe/snipe-it#12672
- Fixed Component factory by @marcusmoore in snipe/snipe-it#12673
- The final lowercase in webhooks by @Godmartinz in snipe/snipe-it#12664
- Fixed ErrorException: Undefined array key 0 [sc-20424] by @inietov in snipe/snipe-it#12668
- Fixed missing variable in Slack hook test by @snipe in snipe/snipe-it#12674
- Updated webpack by @snipe in snipe/snipe-it#12675
- Fixed #12607 - Datestamp on "Print All Assigned" generated form by @akemidx in snipe/snipe-it#12636
- Handle already-deleted license files more gracefully by @snipe in snipe/snipe-it#12679
- Added additional sort ordering for first_name, last_name in users API by @snipe in snipe/snipe-it#12683
- Added console command to normalize capitalization on names by @snipe in snipe/snipe-it#12684
- Added user merge by @snipe in snipe/snipe-it#12685
- Added email and username to merge user confirmation screen by @snipe in snipe/snipe-it#12686
- Made the table wider, used icons to compact space by @snipe in snipe/snipe-it#12687
- Added password lock restriction and and uses new strings in user merge by @snipe in snipe/snipe-it#12689
- More merge-user polishing by @snipe in snipe/snipe-it#12690
- Small cleanup for bulk delete checkin by @snipe in snipe/snipe-it#12691
- Corrected gates, added fillable by @snipe in snipe/snipe-it#12692
- Updates the Gate “use” statement to be more specific by @snipe in snipe/snipe-it#12693
- Fixed #12671: Re-enable config:cache when there's no Rollbar by @uberbrady in snipe/snipe-it#12694
- Bump docker/build-push-action from 3 to 4 by @dependabot in snipe/snipe-it#12696
- Clone accessories by @akemidx in snipe/snipe-it#12680
- Fixed #12682 - add default location to maintenance report by @snipe in snipe/snipe-it#12701
- Added next audit date override in bulk asset edit by @snipe in snipe/snipe-it#12704
- Purifies model factories by @marcusmoore in snipe/snipe-it#12700
- adds clear and save button, save button updates accordingly by @Godmartinz in snipe/snipe-it#12703
- Slack webhook UI tweaks, added select2 by @snipe in snipe/snipe-it#12705
- Forgot the static method declaration in new isDemoMode method - derp by @snipe in snipe/snipe-it#12706
- Fixes back-in-time Slack v slack migration by @snipe in snipe/snipe-it#12707
- Made asset checkinbytag consistent with existingAPI by @ntbutler-nbcs in snipe/snipe-it#11431
- Ability to remove user location from users by @snipe in snipe/snipe-it#12709
- Livewire importer without subcomponent by @uberbrady in snipe/snipe-it#12708
- Handled a few more hard-coded strings by @snipe in snipe/snipe-it#12710
- #20178: Added Dell and Lenovo to warranty link function by @akemidx in snipe/snipe-it#12669
- Fixes calls to changed webhook properties names by @marcusmoore in snipe/snipe-it#12717
- Fixes the migration of sqlite databases by @marcusmoore in snipe/snipe-it#12721
- Fixed Undefined array key 266 rollbar 17086 by @inietov in snipe/snipe-it#12720
- Fixed Trying to access array offset on value of type null [sc-20528] by @inietov in snipe/snipe-it#12713
- Fixed #12724 - fieldset not saving on model by @snipe in snipe/snipe-it#12726
- Fixed #12655 - Adds translations for category types to index and edit of categories by @Godmartinz in snipe/snipe-it#12661
- Use single “accessory” translation by @snipe in snipe/snipe-it#12728
- Fixed #12641 - added JSON to mimes by @snipe in snipe/snipe-it#12727
- Fixed translation string for importer by @snipe in snipe/snipe-it#12729
- User preflight fix translation strings w/ bad path by @svpernova09 in snipe/snipe-it#12732
- Changed log level to debug vs info/error in the new Livewire importer by @snipe in snipe/snipe-it#12743
- Use named route with params for requestable asset model links by @snipe in snipe/snipe-it#12744
- Pre-Flight String fixes for step 2 by @svpernova09 in snipe/snipe-it#12747
- Added links to kandji2snipe and UnifiSnipeSync by @snipe in snipe/snipe-it#12750
- Added link to SnipeAgent by @snipe in snipe/snipe-it#12751
- Fixed ErrorException: Attempt to read property "rtd_location_id" on null [sc-20562] by @inietov in snipe/snipe-it#12752
- Fixes translation strong for "group not found" error by @snipe in snipe/snipe-it#12753
- Fixes potential unwanted overwrites in asset imports by @marcusmoore in snipe/snipe-it#12764
- Fixed Call to a member function present() on null [sc-20594] by @inietov in snipe/snipe-it#12758
- Bulk Restore from Deleted by @spencerrlongg in snipe/snipe-it#12762
- Updating Apple warranty link to match current Apple webpage by @akemidx in snipe/snipe-it#12760
- Fixed Call to a Member Function Licenses() on null [sc-20606] by @inietov in snipe/snipe-it#12763
- Quick fix for bulk restore menu by @snipe in snipe/snipe-it#12767
- Color picker UI fix by @snipe in snipe/snipe-it#12781
- Publishes test stubs by @marcusmoore in snipe/snipe-it#12769
- Change protected $dates to casts by @spencerrlongg in snipe/snipe-it#12765
- Update CrowdIn configuration to allow nested translations by @marcusmoore in snipe/snipe-it#12782
- Updated support URL by @snipe in snipe/snipe-it#12790
- Fixed #12776 - larger EOL field by @snipe in snipe/snipe-it#12792
- Fixed #12772 - use the APP_URL config more consistently by @snipe in snipe/snipe-it#12793
- Move from iCheck to pure CSS for radio and checkboxes by @snipe in snipe/snipe-it#12779
- Added unavailable message to prevent over-checkout of Accessories by @Godmartinz in snipe/snipe-it#12787
- Fixed accessories verifying that enough remain to be checked out by @snipe in snipe/snipe-it#12800
- Added BM JS by @snipe in snipe/snipe-it#12799
- Translations updated for v6.1.0 by @snipe in snipe/snipe-it#12801
- Check for available quantity on consumables before checkout by @snipe in snipe/snipe-it#12802
- Removed extraneous text from bpay.blade.php by @insert-waffle in snipe/snipe-it#12804
- Small component UI/validation/API fixes by @snipe in snipe/snipe-it#12803
- Echo out the array values in withInput() by @snipe in snipe/snipe-it#12807
New Contributors
- @subdriven made their first contribution in snipe/snipe-it#12158
- @corydlamb made their first contribution in snipe/snipe-it#12363
- @marcusmoore made their first contribution in snipe/snipe-it#12370
- @AndrewSav made their first contribution in snipe/snipe-it#12538
- @manuteleco made their first contribution in snipe/snipe-it#12611
- @kenchan0130 made their first contribution in snipe/snipe-it#12617
- @floschoepfer made their first contribution in snipe/snipe-it#12648
- @spencerrlongg made their first contribution in snipe/snipe-it#12670
Full Changelog: snipe/snipe-it@v6.0.14...v6.1.0