Skip to content
This repository has been archived by the owner on Feb 1, 2025. It is now read-only.

Releases: SibTiger/PowerShell-Compact-Archive-Tool

v1.2.0 Release of the PowerShell Compact-Archive Tool

31 Jan 06:25
Compare
Choose a tag to compare

Information about this Release:

In this version of the PowerShell Compact-Archive Tool, I wanted to simplify the codebase and focus purely on doing one thing - just compile the ZDoom project and be done with it. No more, no less. While this tool can do so much more, such as compile ACS/BCS/et al. scripts, re-organize the project's file structure from a development environment to ZDoom's structure, provide efficient reports that shows the project's development cycle from Git, ability to support PK7, while also being completely user-friendly as a terminal program. This task in itself is extremely difficult and time consuming. With this release, while in Beta, I wanted to keep PSCAT codebase clean and straight to the point with its primary goal.

Overview of Changes:

  • Project File is Officially Supported
  • Simplified the codebase
  • Fixed the Make script
  • Removed the Ability to Generate Reports
  • Removed 7Zip Support
  • Removed Git-SCM Support
  • Removed Windows Toast notifications
  • Removed User Configurations
  • Removed Settings

Features in this Release

Enhancements:

  • Project File is officially supported! While optional, a project can use a 'Project File' in their project's source files, which instructs PSCAT the following details: Project's Name, Compiled Output Filename, and Project's Homepage. If a project does not have this file, then PSCAT will use the root directory name as the project's name and compiled output filename. #118, #119, #124
    • Further details to come later.

Changes

  • Revised the Copyright date to 2025 for all files.
  • Simplified the PowerShell Compact-Archive Tool codebase. #73
  • Added various improvements within the ArchiveZip class. #94
  • Renamed the DefaultCompress class to ArchiveZip. This is to help simplify the class names and allow for easier expansion for different compression software tools \ modules in the future. #95
  • When generating new archive data files, the compression level will now be forced to 'Optimal' -- the highest possible in the Microsoft.PowerShell.Archive class. #110
  • The ArchiveZip class is now static, no longer needing to be instantiated at startup nor needing to use the singleton approach to obtain the object. #115
  • Revised the Builder to provide better messages and with the latest changes within the codebase. #123
  • Brought back to check for PSCAT updates from the Main Menu screen. #129
  • Updated the Installation Documentation for v1.2.0. #137
  • Updated the UML Class Diagrams for v1.2.0. #136
  • PSCAT Installer will now include the License File as part of the installation. #145

Bug Fixes:

  • Resolved an issue with the Make script. When trying to make a new PowerShell Compact-Archive Tool build, the Add-Content CMDlet would still have the output file open while at the same time try to write the same output file in a new Add-Content call. #89
  • Builder does not try to remove the temporary directory if something were to fail. #125
  • PSCAT Installer would automatically create directories within the %AppData% intended to be used for the User Configuration Management, but this feature was removed.
  • PSCAT Installer would include the Toast Notification assets within %LocalAppData%, despite that the BurntToast dependency was removed.

Removed:

  • Removed a global variable LOGGINGLOCKKEY and replenished the same functionality as a member variable within the Logging object. This resolves an Unused Variable warning and localizes the variable to its correct scope.
  • Removed the ability to toggle Windows Explorer features. Instead, this feature will be always enabled - regardless. This functionality, if available within the instance, will offer ease to all users with a familiar GUI for basic operations. Slightly minimize the terminal intimidation a bit.
  • Removed 7Zip Support. This was removed to reduce the code complexity within the codebase. #75
  • Removed Git-SCM Support. This was removed to reduce the code complexity within the codebase. #76
  • Removed the ability to create PDF's off from a text file using Microsoft Office Word. It is ultimately better to remove this functionality to help greatly reduce the code complexity within the codebase, and to move far away from Microsoft's products. #83
  • Removed the ability for the ArchiveZip to generate reports of a compressed file. This was removed to help reduce the code complexity within the codebase. #96
  • Removed the ability for the ArchiveZip class to verify a compressed file. After much testing, I had concluded that the functionality to 'extract' an archive datafile that is corrupted - some how works according to Microsoft.PowerShell.Archive, yet 7Zip successfully pointed out every fault I was able to brainlessly inject in the hex-data of the compressed file. I have absolutely no trust with Microsoft.PowerShell.Archive's extracting capabilities. Also, just a reminder - there is no built-in verification method within that module as well. #109
  • Removed the User Configuration functionality entirely. Because there is really no configurable option within PSCAT, there's no need to keep this functionality within the codebase. #112, #121
  • Removed Windows Toast notifications using BurntToast. Removed to help reduce complexity within the codebase. This feature was going to be primarily used for the Project Manager, but was removed. #113
  • Removed Settings entirely. Because there is really no configurable option within PSCAT, there's no need to keep this functionality within the codebase. #114
  • Removed Project Manager [Alpha Builds]. This feature was going to be extremely expensive to fully implement it. #116
  • Removed Common PowerShell Static Class [Alpha Builds]. This feature was going to be extremely expensive to fully implement it. #117
  • Removed the ability to extract compressed files. Removed as there's no real need to have this function kept - yet unused. #122
  • Removed Deep-Clean Mode. Because User Configurations are no longer part of PSCAT in this version, this mode is no longer needed.

Merge Request History:


Hash Verification

Algorithm Hash Value
MD5 ed89ba020dbc8aadc6887fbb08afffe6
SHA1 07e1e1638573b20dd958662d16e7b4ab7129609a

Resources:

v1.2.0-Beta Release of the PowerShell Compact-Archive Tool

18 Jan 07:51
7e16c4a
Compare
Choose a tag to compare

Information about this Release:

In this version of the PowerShell Compact-Archive Tool, I wanted to simplify the codebase and focus purely on doing one thing - just compile the ZDoom project and be done with it. No more, no less. While this tool can do so much more, such as compile ACS/BCS/et al. scripts, re-organize the project's file structure from a development environment to ZDoom's structure, provide efficient reports that shows the project's development cycle from Git, ability to support PK7, while also being completely user-friendly as a terminal program. This task in itself is extremely difficult and time consuming. With this release, while in Beta, I wanted to keep PSCAT codebase clean and straight to the point with its primary goal.

Overview of Changes:

  • Project File is Officially Supported
  • Simplified the codebase
  • Fixed the Make script
  • Removed the Ability to Generate Reports
  • Removed 7Zip Support
  • Removed Git-SCM Support
  • Removed Windows Toast notifications
  • Removed User Configurations
  • Removed Settings

Features in this Release

Enhancements:

  • Project File is officially supported! While optional, a project can use a 'Project File' in their project's source files, which instructs PSCAT the following details: Project's Name, Compiled Output Filename, and Project's Homepage. If a project does not have this file, then PSCAT will use the root directory name as the project's name and compiled output filename. #118, #119, #124
    • Further details to come later.

Changes

  • Revised the Copyright date to 2025 for all files.
  • Simplified the PowerShell Compact-Archive Tool codebase. #73
  • Added various improvements within the ArchiveZip class. #94
  • Renamed the DefaultCompress class to ArchiveZip. This is to help simplify the class names and allow for easier expansion for different compression software tools \ modules in the future. #95
  • When generating new archive data files, the compression level will now be forced to 'Optimal' -- the highest possible in the Microsoft.PowerShell.Archive class. #110
  • The ArchiveZip class is now static, no longer needing to be instantiated at startup nor needing to use the singleton approach to obtain the object. #115
  • Revised the Builder to provide better messages and with the latest changes within the codebase. #123
  • Brought back to check for PSCAT updates from the Main Menu screen. #129

Bug Fixes:

  • Resolved an issue with the Make script. When trying to make a new PowerShell Compact-Archive Tool build, the Add-Content CMDlet would still have the output file open while at the same time try to write the same output file in a new Add-Content call. #89
  • Builder does not try to remove the temporary directory if something were to fail. #125

Removed:

  • Removed a global variable LOGGINGLOCKKEY and replenished the same functionality as a member variable within the Logging object. This resolves an Unused Variable warning and localizes the variable to its correct scope.
  • Removed the ability to toggle Windows Explorer features. Instead, this feature will be always enabled - regardless. This functionality, if available within the instance, will offer ease to all users with a familiar GUI for basic operations. Slightly minimize the terminal intimidation a bit.
  • Removed 7Zip Support. This was removed to reduce the code complexity within the codebase. #75
  • Removed Git-SCM Support. This was removed to reduce the code complexity within the codebase. #76
  • Removed the ability to create PDF's off from a text file using Microsoft Office Word. It is ultimately better to remove this functionality to help greatly reduce the code complexity within the codebase, and to move far away from Microsoft's products. #83
  • Removed the ability for the ArchiveZip to generate reports of a compressed file. This was removed to help reduce the code complexity within the codebase. #96
  • Removed the ability for the ArchiveZip class to verify a compressed file. After much testing, I had concluded that the functionality to 'extract' an archive datafile that is corrupted - some how works according to Microsoft.PowerShell.Archive, yet 7Zip successfully pointed out every fault I was able to brainlessly inject in the hex-data of the compressed file. I have absolutely no trust with Microsoft.PowerShell.Archive's extracting capabilities. Also, just a reminder - there is no built-in verification method within that module as well. #109
  • Removed the User Configuration functionality entirely. Because there is really no configurable option within PSCAT, there's no need to keep this functionality within the codebase. #112, #121
  • Removed Windows Toast notifications using BurntToast. Removed to help reduce complexity within the codebase. This feature was going to be primarily used for the Project Manager, but was removed. #113
  • Removed Settings entirely. Because there is really no configurable option within PSCAT, there's no need to keep this functionality within the codebase. #114
  • Removed Project Manager [Alpha Builds]. This feature was going to be extremely expensive to fully implement it. #116
  • Removed Common PowerShell Static Class [Alpha Builds]. This feature was going to be extremely expensive to fully implement it. #117
  • Removed the ability to extract compressed files. Removed as there's no real need to have this function kept - yet unused. #122
  • Removed Deep-Clean Mode. Because User Configurations are no longer part of PSCAT in this version, this mode is no longer needed.

Merge Request History:


Hash Verification

Algorithm Hash Value
MD5 975ec539b0584dcda8042ba1d157a137
SHA1 c3c6c70254d33c4bdb84dc4286818a8889c8c46a

Resources:

v1.1.0 Release of the PowerShell Compact-Archive Tool

05 Feb 19:53
68abc89
Compare
Choose a tag to compare

Information about this Release:

In this version of the PowerShell Compact-Archive Tool, there is a focus on making vast improvements as well as providing enhancements that well help you to use the application with ease. Because PSCAT runs within a terminal, it is understandable that the environment is initially intimidating for a lot users. Within this update, there is a focus on using a Graphical Interface for some operations within PSCAT, in doing so, this will greatly help to make using the program much easier to use than ever before.

Overview of Changes:

  • Windows Installer
  • Startup Splash Screen
  • Windows Toast Notifications using BurntToast
  • GUI for some interactions
  • Clean-up Modes

Features in this Release:

Enhancements:

  • PowerShell Compact-Archive Tool now includes an installer! With the installer, the environment will be generated for the user within the Windows scheme. Thus, the user can be able to execute PSCAT seamlessly directly from their Start Menu. Further, the user can also be able to uninstall the program as well - if needed.

  • Added Graphical User Interfaces into operations that could greatly help the user to configure and drive the program, or simply - to help break down the intimidation factor just a bit more. Thus, now, when wanting to find a directory or a specific file, a Select File or Select Folder Browser will now be available to the user. And, confirmation message boxes will also be presented to the user as well for deemed necessary circumstances. All GUIs are default from Windows' graphical library, so any GUI presented to the user - the user is already familiarized with the interface.

  • Added a new startup splash screen. When PSCAT is loading at startup, the user will now be presented with a splash screen that provides: the author's name, program's title, program's version, license, as well as the PowerShell Core version being used within the environment.

  • PowerShell Compact-Archive Tool now supports, BurntToast notifications. Thus, now it is possible to provide a visual notification using Windows 10 Toast notifications! This can be extremely useful for the user to know when a project had been compiled successfully or if an issue had arisen during the operation.

  • PSCAT allows the ability for the user to perform a Clean Up operation using one of two modes: Clean Up and Deep Clean Up. Clean Up operation expunges the following: Log Files and Compiled Builds, while the Deep Clean Up operation removes: Log Files, Compiled Builds, and User Configuration. This feature incorporates Program Modes: 0 = Normal Mode, 1 = Clean Up Mode, and 2 = Deep Clean Up Mode.

  • Added "About PowerShell Compact-Archive Tool" within the Main Menu. This will allow the user to view the program's basic information, such as: contributors, copyright, license, version, download website address, and other information that could be useful.

Changes:

  • Removed the ability for the user to configure the Multithreaded capabilities from the 7Zip Setup Menu. Instead, 7Zip will use its default functionalities. Automatically, 7Zip will use Multithreaded capabilities if the host system can support it.

  • Disallowed the ability for the user to configure the audible notifications. Every application has the ability to alert the user through multiple sources - including audible. With that, I believe that PSCAT should alert the user regardless. Further, it is quite unnatural for a program to alert the user - without some sort of a audible notification.

  • Globalized variables will be properly discarded once PSCAT had been closed. This will only benefit those that use PowerShell through their end-to-end daily drive. Otherwise, previously, the global variables - after PSCAT had been closed, would linger on until the PowerShell session had been terminated.

  • Applied more notices that the program uses the GPLv3 License.


Hash Verification

Algorithm Hash Value
MD5 315A7F2676121AD2B7E47AD7CFA90097
SHA1 F319394B5280F5D8664F749A1EAAFA2800B72E4F

Resources

v1.1.0-Beta Release of the PowerShell Compact-Archive Tool

23 Oct 21:57
0426b03
Compare
Choose a tag to compare

Information about this Release:

This beta release focuses on the improvements and enhancements provided in 1.1.0. An overview of changes: Windows Installer, Startup Splash Screen, Windows 10 Notifications using BurntToast, GUI for some interactions, and Clean Ups!


Features in this Release:

Enhancements:

  • PowerShell Compact-Archive Tool now includes an installer! With the installer, the environment will be generated for the user within the Windows scheme. Thus, the user can be able to execute PSCAT seamlessly directly from their Start Menu. Further, the user can also be able to uninstall the program as well - if needed.

  • Added Graphical User Interfaces into operations that could greatly help the user to configure and drive the program, or simply - to help break down the intimidation factor just a bit more. Thus, now, when wanting to find a directory or a specific file, a Select File or Select Folder Browser will now be available to the user. And, confirmation message boxes will also be presented to the user as well for deemed necessary circumstances. All GUIs are default from Windows' graphical library, so any GUI presented to the user - the user is already familiarized with the interface.

  • Added a new startup splash screen. When PSCAT is loading at startup, the user will now be presented with a splash screen that provides: the author's name, program's title, program's version, license, as well as the PowerShell Core version being used within the environment.

  • PowerShell Compact-Archive Tool now supports, BurntToast notifications. Thus, now it is possible to provide a visual notification using Windows 10 Toast notifications! This can be extremely useful for the user to know when a project had been compiled successfully or if an issue had arisen during the operation.

  • PSCAT allows the ability for the user to perform a Clean Up operation using one of two modes: Clean Up and Deep Clean Up. Clean Up operation expunges the following: Log Files and Compiled Builds, while the Deep Clean Up operation removes: Log Files, Compiled Builds, and User Configuration. This feature incorporates Program Modes: 0 = Normal Mode, 1 = Clean Up Mode, and 2 = Deep Clean Up Mode.

  • Added "About PowerShell Compact-Archive Tool" within the Main Menu. This will allow the user to view the program's basic information, such as: contributors, copyright, license, version, download website address, and other information that could be useful.

Changes:

  • Removed the ability for the user to configure the Multithreaded capabilities from the 7Zip Setup Menu. Instead, 7Zip will use its default functionalities. Automatically, 7Zip will use Multithreaded capabilities if the host system can support it.

  • Disallowed the ability for the user to configure the audible notifications. Every application has the ability to alert the user through multiple sources - including audible. With that, I believe that PSCAT should alert the user regardless. Further, it is quite unnatural for a program to alert the user - without some sort of a audible notification.

  • Globalized variables will be properly discarded once PSCAT had been closed. This will only benefit those that use PowerShell through their end-to-end daily drive. Otherwise, previously, the global variables - after PSCAT had been closed, would linger on until the PowerShell session had been terminated.

  • Applied more notices that the program uses the GPLv3 License.


Hash Verification

Algorithm Hash Value
MD5 0F25948851C27422ED3510AAC0853E73
SHA1 7AD872B9026D23491F978DF98629318AFB713D87

Resources

v1.0.0 Release of the PowerShell Compact-Archive Tool

28 Nov 18:37
Compare
Choose a tag to compare

About the Program:

This is the first official mature build of the PowerShell Compact-Archive Tool, which allows anyone to expeditiously compile their favorite projects using the dotNET Core or 7Zip compression tools.


Information about this Release:

This marks the first official major release of the PowerShell Compact-Archive Tool. While the changes compared to the first beta was minor, I am confident that this release should be helpful to project developers and their communities to expeditiously compile the builds.


Features in this Release:

  • Compiles the user's desired projects.
  • Maintaining the user's settings within a roaming profile.
  • Capable of running and using Microsoft Windows functionalities.
  • Supports Git's functionalities, such as:
    • Updating the local repository
    • Pulling information about a specific repository.
    • Retrieving Logs
    • Ability to retrieve the local repository's branch SHA
  • Generates internal logfiles for inspecting the program's health and how it operates. Useful if something were to go horribly wrong.
  • Generates reports for:
    • Archive datafile
      • Provides basic information regarding the archive file
      • Provides Hash information for validations
      • Provides information as to what contents are within the compressed archive data file.
    • Local repository
      • Provides basic project information regarding the project.
      • Provides a list of those that contributed to the project.
      • Displays a list of available branches within the repository.
      • Provides an overview list of commits.
  • Capable of using the internal dotNET Core framework to compile builds
    • Only PK3 is supported
  • Capable of using, if detected, 7Zip to compile builds.
    • Supported archive types:
  • Ability to test the archive datafile's health and integrity.

Hash Verification

Algorithm Hash Value
MD5 4B23585EE8C4731CCB0640C98ED585A3
SHA1 802686EB63AFAB2DD3FBD67C59979BAC16AC948A

Resources

v1.0.0-Beta Release of the PowerShell Compact-Archive Tool

30 Oct 14:19
Compare
Choose a tag to compare

About the Program:

This is a beta build of the PowerShell Compact-Archive Tool, which allows anyone to expeditiously compile their favorite projects using the dotNET Core or 7Zip compression tools.


Information about this Release:

I originally intended that the very first release would be on 31.October.2021, however I need a bit more time to finish the documentation required for this application. In the meantime, I can go ahead and still push for a release - but as a beta quality build. As such, and a much needed added bonus, allows anyone to test the application as well as provide feedback. So please do share your feedback and I hope this tool meets up to your expectations! 😃


Features in this Release:

  • Compiles the user's desired projects.
  • Maintaining the user's settings within a roaming profile.
  • Capable of running and using Microsoft Windows functionalities.
  • Supports Git's functionalities, such as:
    • Updating the local repository
    • Pulling information about a specific repository.
    • Retrieving Logs
    • Ability to retrieve the local repository's branch SHA
  • Generates internal logfiles for inspecting the program's health and how it operates. Useful if something were to go horribly wrong.
  • Generates reports for:
    • Archive datafile
      • Provides basic information regarding the archive file
      • Provides Hash information for validations
      • Provides information as to what contents are within the compressed archive data file.
    • Local repository
      • Provides basic project information regarding the project.
      • Provides a list of those that contributed to the project.
      • Displays a list of available branches within the repository.
      • Provides an overview list of commits.
  • Capable of using the internal dotNET Core framework to compile builds
    • Only PK3 is supported
  • Capable of using, if detected, 7Zip to compile builds.
    • Supported archive types:
  • Ability to test the archive datafile's health and integrity.

Hash Verification

Algorithm Hash Value
MD5 6623A91A13C936639A8F77431D790141
SHA1 B92ECC78031A22D24BE0C504EC28D84C351EE22A

Resources