v.2.8.1RC6
版本发布时间: 2023-08-15 04:33:54
autopkg/autopkg最新发布版本:v3.0.0RC2(2023-09-26 00:05:31)
https://github.com/autopkg/autopkg/compare/v2.8.1RC5...dev?expand=1
Recipe Map Changes
The Recipe map is now consulted only on verbs that require it (such as anything involving listing, auditing, generating, or handling recipes and repos). The Recipe map is built when you add or remove a repo, or if you generate a new recipe.
If you do not have a recipe map, or the recipe map is invalid when it is needed, autopkg now tells you what to do next (add or remove a repo to fix it). In the future, I'll add a preference or a command line argument to automatically rebuild vs. failing. (In a CI environment, you probably want it to fail rather than to attempt to build one, as it may have incomplete state at that point. In a regular desktop environment, you probably want it to automatically build and proceed).
autopkglib separation
Rather than throw everything into primarily two files (autopkg and init.py), it's now separated into some smaller libraries - at the moment, prefs and common.
autopkglib.common
contains some basic common functions - determining platform, and all default path constants.
autopkglib.prefs
has all the Preference objects and getting/saving preferences code.
WARNING: if you have any custom processors that loaded functions from autopkglib, such as log
or is_mac()
, they will need to be adjusted for this change in order to work. You may need to wrap your import in a try/except block while we make this transition. All Core processors have already been fixed.
More sub-libraries will come as I continue to break the monolith apart and add more tests. AutoPkg still generally assumes "autopkglib" is one big folder of processors, so the Core processors will likely move to their own subfolder once I fix the logic everywhere.
GitHub integration and token usage
The only option now for reading a GitHub token is via the preference GITHUB_TOKEN_PATH. The old GITHUB_TOKEN preference key is no longer used anywhere. You must now store your GH token in a flat text file.
The GitHub logic is being completely rewritten in a different branch, so I've only barely touched it here, and there may be things that break. I don't intend to spend any more effort on the existing GitHub code except to keep it from breaking as I touch things around it. Once this dev branch is done, I'll merge in those changes and work on that next. In the meantime, if you do have existing issues with anything GitHub-related specifically, please file an Issue and I'll make sure that is tested against the new branch.
1、 autopkg-2.8.1RC6.pkg 48MB