What's going on with v4?!

Okay people, someone’s gotta say it. What in the world is going on with v4 launch?!

The documentation on the site is outdated and lacks essential getting-started info.

The news release from PMPC says to simply launch:

New-ADTTemplate -Destination C:MyDeployment

Is this the new toolkit?! This thing is 42MB with 100+ files and 70+ folders:

The old one is 2MB with 12 files and 3 folders…that’s a 21x size increase!

As Albert Einstein said, “Everything should be made as simple as possible, but no simpler.” The v4 release seems to have strayed from this principle.

The original target audience - support staff and system administrators - relied on PSADT for its straightforwardness and gentle learning curve. To quote Leonardo da Vinci, “Simplicity is the ultimate sophistication.” The new version’s complexity risks alienating this core user base.

As Steve Jobs famously noted, “Design is not just what it looks like and feels like. Design is how it works.” The dramatic increase in complexity without clear justification or documentation suggests a disconnect between the developers and their users’ needs.

Come on team, I know you can do better than this!

2 Likes

100% Agree!!!
I use the toolkit to manage 200k devices! The size increase is not acceptable when I deploy to “all systems”

I agree with the size but I think it just needs baking a tad longer.

Be good to see how this works with Intune.

Whoa, that’s 8 TB of extra network traffic overhead vs the previous 400GB. I feel for ya on that one!

1 Like

I didnt get it… You are replacing all “old” v3 Templates with v4? Or how do you come to this math?

Hi There! My name’s Mitch and I’m one of the new developers on the PSAppDeployToolkit team. I can only apologise for joining the Discourse server just now, most of my time is spent in GitHub and the Discord server.

Firstly, an explanation on the file size. One of the primary development considerations for v4 was PowerShell 7 support to ensure our project remains portable and can be used in all supported PowerShell interpreters. As such, for our C# code, which comprises of support code and the new UI dialogs, we compile these for .NET Framework 4.6.2 and .NET 8.0, which is what PowerShell 7.4 is built against.

During the push to get PSAppDeployToolkit released just prior to our webinar with Patch My PC, we ran into an issue pushing the module to PSGallery as we were targeting net8.0-windows, without specifying a Windows SDK version. NuGet did not allow this, so I selected net8.0-windows10.0.17763, the lowest supported version of Windows 10 to address this, however it did drag in significant dependencies that .NET Core stopped including with .NET 6.0 and above.

Below is a screenshot from the commit tree where you can see these files came into the project immediately before the release commit:

As the .NET Framework 4.6.2 DLL files will load into PowerShell 7, while not as nice as native code, we’ve removed the .NET 8.0 files from the compiled output of the project and the released ZIP files are now 3x smaller. This can be independently verified by review this GitHub Action’s artifacts, and this will make it into the next point release.

Regarding the remainder of the project’s size, this is simply unavoidable. One of our targets for v4 was refreshed, modern dialogs that fit the design langage of Windows 11 (and to some extent, Windows 10). This is only achievable with support libraries, for which we use WPF UI, and its uncompressed DLL files equate to 5.35 MB of extra dependencies.

Regarding the other comments, I’ll agree that the documentation upon launch was insufficient and its something the team is working very hard on. Our core development team on v4 has been just four people, with one of those being largely unavailable due to a personal family matter. I’m proud of our v4 release and a lot of people have completed successful deployments with the latest toolkit, and that number will increase as the documentation and adoption improves.

Regarding the design of PSAppDeployToolkit v4, the project was always going to become a PowerShell module even before my involvement. The existing design of v3 was growing tired which is why development quietened down in recent years. The rewrite of the project as a PowerShell module will ensure the longevity of PSAppDeployToolkit for years to come and provide a solid foundational base for future development. There’s already people out there writing extension modules for PSAppDeployToolkit, with myself currently developing a WinGet module for people to add on and use if they wish.

Lastly, while I understand, appreciate, and agree with your expressed concerns, everything could have been said without the Albert Einstein/Leonardo da Vinci/Steve Jobs melodrama. All these issues are explainable, and I get this post may not have come to be if the documentation explained these things, but it doesn’t add anything constructive to the conversation.

2 Likes

TLDR: Coming soon:


.

UPDATE: I DL’d PSAppDeployToolkit_Template_v4.zip and it extracted to ~13MB

4 Likes

In laymen’s terms, what can we remove from v4 so that it doesnt break the script? I removed the language files but this is still at 22mb+.

I just learned why there are 2 Strings folders

Unless you need to modify messages, you can delete the \Assets and the \Strings folders.
Yon might even be able to remove the \PSAppDeployToolkit_Template_v4\PSAppDeployToolkit\Strings<LanguageCode> folders that you don’t need.

Either-way, I’d be patient. They just killed 20+ issues.
We might get a new version soon.

The release size of the next patch release, unzipped, is ~13MB

There’s no real way to make it smaller, doing modern UI development requires extra libraries such as wpfui, which is what increases the size and constitutes ~50% of the weight.

I appreciate that the size of the project is large compared to before, but in terms of a module, 13MB is miniscule. Typical Graph API modules on the PSGallery, etc are in excess of 100MB for comparison.

2 Likes

Thank you for the reply. 13mb is acceptable but I wouldn’t be able to justify to tenant admins an increase of 50mb each for 98% of our apps.

Much better…and the documentation is following suit as well. Thanks for listening and responding with action, let’s see how it goes for those of us who had this thing fully automated before!

Doesn’t look like 4.0.3 is the release you’re referring to, so we’ll pay attention to the next one.

1 Like

@MonteMcFly, just wanted to let you know that 4.0.4 has been released and is available here: Releases · PSAppDeployToolkit/PSAppDeployToolkit · GitHub