Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate HXE's SFX library, replacing the use of WinRAR to create releases. #6

Merged
merged 75 commits into from
May 16, 2021

Conversation

BinToss
Copy link
Member

@BinToss BinToss commented May 8, 2021

Resolves #1
Resolves #4

Milestone b46db60 is fully functional, but lacks certain features and relies on code that has no business being in AmaiSosu.GUI

TODO:

  • Install: temp. extract to Temp directory, "%temp%\AmaiSosu.tmp\"
  • Install: Backup Kornner Studios directory.
  • Compile: Integrate AmaiSosu.Common.Package.Compile().
    Nearly done. Needs testing.
  • Compile: Get an Output instance from the Factory class for use in AmaiSosu.Compilation.Compiler.Compile().
  • Refactor "Installation.InstallerFactory" to "Common.PackageFactory"
  • Rename PackageFactory's _installationPath to just _path
  • Refactor AmaiSosu.Installation.IO to AmaiSosu.Common.IO
  • Install: Fix "clean up backup directory". Working as intended; only deletes backupDir if empty.
  • Install: Add checkbox (default: checked) to delete/cleanup extracted files afterward. Always delete Temp dir.
  • Display HXE's console output in AmaiSosu.GUI. It needs to be copied to AmaiSosu.GUI AND a standard console output so the output can still be displayed or caught if the GUI is skipped with "--auto". Moved to issue Catch and display console output in AmaiSosu's GUI #7 .
  • Merge PackageFactory's "GetInstaller" and "GetCompiler" Not worth the effort.

BinToss added 30 commits April 9, 2021 04:37
Add reference to HXE for AmaiSosu.GUI Solution
Update Copyright info
Bump versions to 0.4.3
There's no need to reinvent the wheel at this point in time.
Tweak Context.Infer() to allow three possibilities: Compile, Help, and default to Install.
Add Compile UserControl.
Add Install UserControl.
Name the Grid and StackPanel elements in MainWindow.
Rename Compile and Install UserControls.
Create instances of each UserControl in the MainWindow.
Rename AmaiSosu.GUI.MainInstall.Install() to AmaiSosu.GUI.Install.Invoke()
Move Startup out of AmaiSosu.Main to AmaiSosu.Startup.
Fix UserControl.Install.xaml's indentation.
Re-attempt getting DataContext bindings working.
- Main's UserControl instances aren't needed; only the underlying DataContext Bindings.
- Now that the UserControls' DataContexts are set in the MainWindow.xaml, we don't need them in Main.cs
- Move Contextual work to the Main class.
- Tweak nearly every binding in a desparate attempt to get them to work.
- In Compile and Install UserControls, brute-force past the DataContext NullReference issue by overwriting it anyway.
fix: DataContexts are now assigned to local instances of relevant classes in MainWindow rather than in their UserControls.
One curly bracket...
…for packaging.

Incidentally, this deprecates the AmaiSosu.Common.Package class.
Bootstrap .NET Framework 4.6.1
BinToss added 23 commits May 13, 2021 22:18
refactor: Change HXE.SFX and AmaiSosu.Common.Paths references to use "using x = namepace.x" Usings convention.

1. Keeping the namespace prefixes in member accessors should clarify where certain variables are declared and defined. We don't do this for the System namespace unless necessary.
2. This definitive Usings convention will help prevent unused namespaces and classes from overlapping which could lead to ambiguous references during development.
refactor(Compile): Remove old, temporary code
refactor: Remove PackageFactory's unused "_selection" variable.
It was required to package OpenSauce, but that file isn't present in any previous releases. Why did I add in the first place?
…n.Installer classes to AmaiSosu.Core namespace

refactor: Rename PackageFactory's Installation Path parameters to 'path'
refactor: remove unnecessary Using from AmaiSosu.Startup
… location

fix: Package Verification no longer checks if the Path parameter is an existing Directory
… will include the Packages directory when needed.

refactor(Install): Remove redundant deletion of Kornner Studios directory
@BinToss BinToss merged commit 14116a4 into master May 16, 2021
@BinToss BinToss deleted the SFX branch May 16, 2021 03:41
@BinToss BinToss linked an issue May 16, 2021 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Polish the new Compile UserControl Use HXE's SFX Installer
1 participant