5 Commits
Author SHA1 Message Date
Michael e2356c09bc Modify migration logic
Extracted bulk of migration logic out of TPCResourceManager into its own class named TPCSandboxMigration.
Some logic of the migration remained in a private category of TPCResourceManager as it makes sense given the methods are related to resources / file access.
The entire migration system has been modified to be completely modular. Everything relies on the unified `installation` argument to perform migration on any number of containers.
The container for Standard Release was renamed to conform to Apple's standards. No more warnings. The migrator includes an entry for migrating beta users which will be removed before this goes into stable.
2024-07-07 11:44:16 -04:00
Michael 5df3dd6fe8 Rename group container 2024-07-05 13:39:52 -04:00
Michael 07c0d3b6a0 Move Standard Release and Debug to sandbox
This is a work in progress to move Standard Release and Debug build schemes to sandboxed environment.

To accomplish this, the group identifier has changed to com.codeux.apps.textual-common so that it does not clash with the bundle identifier of the app. Because of this change, all contents from the previous group container has to be migrated. TPCResourceManager has been extended to accomplish this.

TPCResourceManager will automatically copy files to the new group container then prompt the user asking if they want to delete the old. File migration is tuned so that failure to copy one file does not stop the entire operation.

It will also migrate preference keys.

TPCResourceManager will also be setup to migrate Mac App Store installations at a later date using nearly the same logic patterns. That is not implemented yet.
2024-07-04 21:39:36 -04:00
Michael def99cdb9d Add a prebuild script to declare feature flags in FeatureFlags.h
GCC preprocessor configuration flag was a bit cumbersome to work with. A pre-build script now abstracts known feature flag configuration definitions into macros that appear in a public header file.
2021-06-18 15:23:27 -04:00
Michael 2e236abb64 Reorganize project
Many resources have been added to Textual with little thought for long term maintenance. This commit is an overdue overhaul of the entire project. The goals of this overhaul was to introduce as much consistency as possible to the project.

Some notable changes:

• Code signing identity file has moved to "Configurations/Build"
• All build configuration files, including entitlements, moved to "Configurations"
• Source code for the app has moved to "Sources/App"
• Shared source code has moved to "Sources/Shared"
• Source code for extensions have moved to "Sources/Plugins"
• The project file for the app has moved along with its source code. It's recommended to use the Textual.xcworkspace workspace file.
• Build scripts are no longer packaged within the project files.
• Folders are now used throughout most projects instead of groups.
• Removed a lot of redundant framework linking.
• The preference panel sample plugin has been modified to use standard Cocoa facilities instead of those that are project specific. e.g. NSUserDefaults and NSLog() instead of TPCPreferencesUserDefaults and LogToConsole()
2018-07-04 04:55:28 -04:00