diff --git a/.github/README.md b/.github/README.md
index 5f0b123..bffd952 100644
--- a/.github/README.md
+++ b/.github/README.md
@@ -1,22 +1,11 @@
-```
- ██╗ ██╗███╗ ██╗██╗████████╗██╗ ██╗ █████╗ ███████╗███████╗███████╗████████╗
- ██║ ██║████╗ ██║██║╚══██╔══╝╚██╗ ██╔╝ ██╔══██╗██╔════╝██╔════╝██╔════╝╚══██╔══╝
- ██║ ██║██╔██╗ ██║██║ ██║ ╚████╔╝ ███████║███████╗███████╗█████╗ ██║
- ██║ ██║██║╚██╗██║██║ ██║ ╚██╔╝ ██╔══██║╚════██║╚════██║██╔══╝ ██║
- ╚██████╔╝██║ ╚████║██║ ██║ ██║ ██║ ██║███████║███████║███████╗ ██║
- ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝ ╚═╝
-```
+
+ Unity Asset CLI
English | 简体中文
-
-
-
-
-
### ⚙ 安装
@@ -51,15 +40,21 @@
Unity PackageManager
-> openupm *中国版*
->> `Name: package.openupm.cn`
-> > `URL: https://package.openupm.cn`
-> > `Scope(s): com.aio.cli.asset`
->
-> openupm *国际版*
->> `Name: package.openupm.com`
-> > `URL: https://package.openupm.com`
-> > `Scope(s): com.aio.cli.asset`
+> open upm *中国版*
+
+````
+Name: package.openupm.cn
+URL: https://package.openupm.cn
+Scope(s): com.aio.cli.asset
+````
+
+> open upm *国际版*
+
+ ````
+Name: package.openupm.com
+URL: https://package.openupm.com
+Scope(s): com.aio.cli.asset
+ ````
@@ -68,14 +63,17 @@
Command Line
-> *openupm-cli*
->> `openupm add com.aio.cli.asset`
+> *open upm-cli*
+
+````
+openupm add com.aio.cli.asset
+````
### ⭐ 关于
-- **这是 Unity 的资源加载接口(CLI)包。它提供了一组命令和工具来增强效率和开发体验。**
+- **这是 Unity 的资源加载接口(CLI)包。它提供了一组命令,来增强效率和开发体验。**
> [!IMPORTANT]
> - ✅ **支持 Unity 2019.4 及以上版本**
@@ -102,7 +100,7 @@
### 🔗 第三方参考资料和工具
-**Please refer to the wiki for a list of references and tools used in this package.**
+**Unity Asset CLI** 依赖于以下第三方工具和资料:
| **Doc** | **Description** |
|:--------------------------------------------------------:|:-------------------------------------------------------:|
@@ -122,13 +120,6 @@
xinansky
-
-
-
-
-
- Starkappa
-
|
diff --git a/.github/README_EN.md b/.github/README_EN.md
index 015dc34..4cbef44 100644
--- a/.github/README_EN.md
+++ b/.github/README_EN.md
@@ -1,22 +1,13 @@
-
-
-
- AIO Unity CLI Asset
- 简体中文 | English
+
+ Unity Asset CLI
-
-
-
-
-
-
-## ⚙ Install
+### ⚙ Install
@@ -48,21 +39,22 @@
Unity PackageManager
-openupm 中国版
+> open upm *Chinese version*
-~~~
+````
Name: package.openupm.cn
URL: https://package.openupm.cn
-Scope(s): com.aio.cli.asset
-~~~
+Scope(s): com.aio.cli.asset
+````
-openupm 国际版
+>
+> open upm *International version*
-~~~
+````
Name: package.openupm.com
URL: https://package.openupm.com
Scope(s): com.aio.cli.asset
-~~~
+````
@@ -71,57 +63,71 @@ Scope(s): com.aio.cli.asset
Command Line
-openupm-cli
+> *open upm-cli*
-~~~
+````
openupm add com.aio.cli.asset
-~~~
+````
-## ⭐ About
+### ⭐ About
+
+- **Unity Asset CLI** is a Unity asset management system that provides a simple and efficient way to manage assets in Unity projects.
-- **This is a Unity resource loading interface (CLI) package. It provides a set of commands and tools to enhance efficiency and development experience.**
> [!IMPORTANT]
-> - ✅ **Supports Unity 2019.4 and above**
-> - ✅ **Supports resource synchronous loading/asynchronous loading/coroutine loading interfaces**
-> - ✅ **Supports resource local mode/remote mode/compiler mode interfaces**
-> - ✅ **Supports empty package/first package/whole package/custom subpackages**
-> - ✅ **Supports Android/iOS/Windows/Mac/WebGL**
-> - ✅ **Supports CI/CD pipeline resource packaging**
-> - ✅ **Supports .NET 4.x**
-> - ✅ **Supports il2cpp**
-> - ✅ **Supports Unity incremental build**
-> - ✅ **Supports [UniTask](https://github.com/Cysharp/UniTask)**
-> - ✅ **Supports [YooAsset](https://github.com/tuyoogame/YooAsset)**
-> - ❌ **Does not support [XAsset](https://github.com/xasset/xasset)**
-> - ❌ **Does not support [Addressable](https://github.com/Unity-Technologies/Addressables-Sample)**
-> - ❌ **Does not support custom proxy third-party plugins**
-
-## 📖 Documentation
-
-- [_**Documentation Directory**_](https://github.com/AIO-GAME/Unity.Asset.CLI/wiki)
+> - ✅ **Support Unity 2019.4 and above**
+> - ✅ **Support resource synchronous loading/asynchronous loading/coroutine loading interface**
+> - ✅ **Support resource local mode/remote mode/compiler mode interface**
+> - ✅ **Support empty package/first package/whole package/custom subpackage**
+> - ✅ **Support Android/iOS/Windows/Mac/WebGL**
+> - ✅ **Support CI/CD pipeline resource packaging**
+> - ✅ **Support .NET 4.x**
+> - ✅ **Support il2cpp**
+> - ✅ **Support Unity incremental build**
+> - ✅ **Support [UniTask](https://github.com/Cysharp/UniTask)**
+> - ✅ **Support [YooAsset](https://github.com/tuyoogame/YooAsset)**
+> - ❌ **Support [XAsset](https://github.com/xasset/xasset)**
+> - ❌ **Support [Addressable](https://github.com/Unity-Technologies/Addressables-Sample)**
+> - ❌ **Support custom proxy third-party plugins**
+
+### 📖 Documentation
+
+- [_**Documentation**_](https://github.com/AIO-GAME/Unity.Asset.CLI/wiki)
- [_**API**_](./API_USAGE/AssetSystem.md)
-- [_**Configuration Explanation**_](./API_USAGE/Config.md)
+- [_**Configuration**_](./API_USAGE/Config.md)
- [_**Tool Usage**_](./API_USAGE/ToolWindow.md)
-## 🔗 Third-Party References and Tools
+### 🔗 References
**Please refer to the wiki for a list of references and tools used in this package.**
-| **Doc** | **Description** |
-| :----: | :-----: |
-| **[Common](https://github.com/AIO-GAME/Common)**| _**C# Unity common utility library to help development teams quickly build frameworks.**_ |
-| **[UniTask](https://github.com/Cysharp/UniTask#readme)** | _**Provides an efficient allocation-free async/await integration for Unity.**_ |
-| **[YooAsset](https://www.yooasset.com)**| _**YooAsset is a resource management system for Unity3D designed to help development teams deploy and deliver games quickly.**_ |
-## ✨ Contributors
+| **Doc** | **Description** |
+|:--------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------:|
+| **[Common](https://github.com/AIO-GAME/Common)** | _**C# Unity common basic function library, used to help development team quickly build the framework.**_ |
+| **[UniTask](https://github.com/Cysharp/UniTask#readme)** | _**Provides an efficient async/await integration for Unity.**_ |
+| **[YooAsset](https://www.yooasset.com)** | _**YooAsset is a resource management system for Unity3D, used to help development teams quickly deploy and deliver games.**_ |
+
+### ✨ Contributors
+
-## 📢 Acknowledgments
+### 📢 Thanks
- **Thank you for choosing our extension package.**
- **If this package is helpful to you.**
-- **Please consider showing support by adding a ⭐.**
-
+- **Please give us a star. ⭐**
\ No newline at end of file
diff --git a/.github/RES/Logo.svg b/.github/RES/Logo.svg
index 9603e5c..5c0e941 100644
--- a/.github/RES/Logo.svg
+++ b/.github/RES/Logo.svg
@@ -1 +1,577 @@
-
\ No newline at end of file
+
+
+
diff --git a/.github/upversion.py b/.github/upversion.py
index de7c0c8..57d7ecc 100644
--- a/.github/upversion.py
+++ b/.github/upversion.py
@@ -1,13 +1,14 @@
-import shutil
-import time
import json
import os
+import shutil
import subprocess
-from tqdm import tqdm
+import time
+
import requests
+from tqdm import tqdm
-def get_latest_github_tag(repo_url) -> str:
+def get_latest_github_tag(repo_url) -> str | None:
# 从仓库 URL 提取用户和仓库名称
repo_path = repo_url.split("https://github.com/")[1].replace(".git", "")
print(f"Fetching tags from {repo_path}")
@@ -62,14 +63,12 @@ def delete_remote_tag() -> None:
delete_local_tag(tag)
-# 处理只读文件删除问题的回调函数
def remove_readonly(func, path, _) -> None:
# os.chmod(path, stat.S_IWRITE)
subprocess.run(['attrib', '-R', path], shell=True)
func(path)
-# 删除文件夹
def delete_folder(folder_path) -> None:
try:
if os.path.exists(folder_path):
@@ -88,12 +87,27 @@ def read_current_branch() -> str: # 判断当前分支
return branch.replace("* ", "")
-def read_current_version() -> str:
- subprocess.run(['git', 'fetch', '--tags'], check=True)
- tags = os.popen("git tag").read().split("\n")
- # 所有标签去掉空字符串 -preview标签去掉preview 然后按照version排序 1.2.3-preview -> 1.3.0-preview
- tags = sorted([tag.replace("-preview", "") for tag in tags if tag], key=lambda x: list(map(int, x.split("."))))
- return tags[-1]
+def read_local_username() -> str:
+ result = subprocess.run(['git', 'config', 'user.name'], stdout=subprocess.PIPE)
+ return result.stdout.decode('utf-8').strip()
+
+
+def read_local_email() -> str:
+ result = subprocess.run(['git', 'config', 'user.email'], stdout=subprocess.PIPE)
+ return result.stdout.decode('utf-8').strip()
+
+
+def read_current_version() -> str | None:
+ try:
+ subprocess.run(['git', 'fetch', '--tags'], check=True)
+ tags = os.popen("git tag").read().split("\n")
+ if len(tags) == 0: # 需要判断是否有标签列表
+ return None
+ # 所有标签去掉空字符串 -preview标签去掉preview 然后按照version排序 1.2.3-preview -> 1.3.0-preview
+ tags = sorted([tag.replace("-preview", "") for tag in tags if tag], key=lambda x: list(map(int, x.split("."))))
+ return tags[-1]
+ except Exception:
+ return None
# 切换上一级目录
@@ -101,8 +115,8 @@ def read_current_version() -> str:
current_path = os.getcwd()
print("当前路径: " + current_path)
-username = "Star fire"
-email = "xinansky99@gmail.com"
+username = read_local_username()
+email = read_local_email()
print("用户名称: " + username)
print("用户邮箱: " + email)
@@ -136,14 +150,18 @@ def read_current_version() -> str:
step_function()
version = read_current_version() # 读取当前版本号
-print("当前版本号: " + version)
-# 递增版本号
-version_list = version.split(".")
-if is_preview:
- version_list[2] = str(int(version_list[2]) + 1) + "-preview"
+if version is None:
+ version = "1.0.0" + ("-preview" if is_preview else "")
+ new_version = "1.0.0" + ("-preview" if is_preview else "")
else:
- version_list[2] = str(int(version_list[2]) + 1)
-new_version = ".".join(version_list)
+ # 递增版本号
+ version_list = version.split(".")
+ if is_preview:
+ version_list[2] = str(int(version_list[2]) + 1) + "-preview"
+ else:
+ version_list[2] = str(int(version_list[2]) + 1)
+ new_version = ".".join(version_list)
+print("版本号: {0} -> {1}".format(version, new_version))
# 写入新版本号
with open("package.json", "r+") as f:
@@ -151,10 +169,10 @@ def read_current_version() -> str:
current_version = package["version"]
package["version"] = new_version
package["relatedPackages"]["com.aio.package"] = get_latest_github_tag('https://github.com/AIO-GAME/Common.git')
+ package["relatedPackages"]["com.aio.runner"] = get_latest_github_tag('https://github.com/AIO-GAME/Unity.Runner.git')
f.seek(0)
json.dump(package, f, indent=2)
print("写入配置: 版本号 {0} -> {1}".format(current_version, new_version))
- print("写入配置: 依赖库 {0} -> {1}".format("com.aio.package", package["relatedPackages"]["com.aio.package"]))
f.close()
# 上传到远程仓库 捕获异常
@@ -222,6 +240,14 @@ def read_current_version() -> str:
else:
print("删除成功")
+# 写入新版本号
+with open("package.json", "r+") as f:
+ package = json.load(f)
+ package["type"] = "module"
+ f.seek(0)
+ json.dump(package, f, indent=2)
+ f.close()
+
steps = [
("删除标签", lambda: delete_remote_tag()),
("设置用户名",
@@ -247,4 +273,5 @@ def read_current_version() -> str:
]
for step_description, step_function in tqdm(steps, desc="上传标签"):
step_function()
+
print("升级标签版本成功")
\ No newline at end of file
diff --git a/Editor/AIO.Asset.Editor.asmdef b/Editor/AIO.Asset.Editor.asmdef
index f19a604..f88ad00 100644
--- a/Editor/AIO.Asset.Editor.asmdef
+++ b/Editor/AIO.Asset.Editor.asmdef
@@ -1,32 +1,32 @@
{
- "name": "AIO.Asset.Editor",
- "rootNamespace": "",
- "references": [
- "AIO.Asset.Runtime",
- "AIO.Core.Runtime",
- "AIO.Core.Editor",
- "YooAsset.Editor"
- ],
- "includePlatforms": [
- "Editor"
- ],
- "excludePlatforms": [],
- "allowUnsafeCode": true,
- "overrideReferences": false,
- "precompiledReferences": [],
- "autoReferenced": true,
- "defineConstraints": [],
- "versionDefines": [
- {
- "name": "com.tuyoogame.yooasset",
- "expression": "",
- "define": "SUPPORT_YOOASSET"
- },
- {
- "name": "com.cysharp.unitask",
- "expression": "",
- "define": "SUPPORT_UNITASK"
- }
- ],
- "noEngineReferences": false
+ "name": "AIO.Asset.Editor",
+ "references": [
+ "AIO.Asset.Runtime",
+ "AIO.Core.Runtime",
+ "AIO.Core.Editor",
+ "YooAsset.Editor",
+ "AIO.Unity.Runner"
+ ],
+ "includePlatforms": [
+ "Editor"
+ ],
+ "excludePlatforms": [],
+ "allowUnsafeCode": true,
+ "overrideReferences": false,
+ "precompiledReferences": [],
+ "autoReferenced": true,
+ "defineConstraints": [],
+ "versionDefines": [
+ {
+ "name": "com.tuyoogame.yooasset",
+ "expression": "",
+ "define": "SUPPORT_YOOASSET"
+ },
+ {
+ "name": "com.cysharp.unitask",
+ "expression": "",
+ "define": "SUPPORT_UNITASK"
+ }
+ ],
+ "noEngineReferences": false
}
\ No newline at end of file
diff --git a/Extensions/YooAsset.CLI/Runtime/AIO.CLI.YooAsset.Runtime.asmdef b/Extensions/YooAsset.CLI/Runtime/AIO.CLI.YooAsset.Runtime.asmdef
index 43118b9..44b30a6 100644
--- a/Extensions/YooAsset.CLI/Runtime/AIO.CLI.YooAsset.Runtime.asmdef
+++ b/Extensions/YooAsset.CLI/Runtime/AIO.CLI.YooAsset.Runtime.asmdef
@@ -4,7 +4,8 @@
"YooAsset",
"UniTask.YooAsset",
"AIO.Core.Runtime",
- "AIO.Asset.Runtime"
+ "AIO.Asset.Runtime",
+ "AIO.Unity.Runner"
],
"includePlatforms": [],
"excludePlatforms": [],
diff --git a/Runtime/AIO.Asset.Runtime.asmdef b/Runtime/AIO.Asset.Runtime.asmdef
index f06239c..b8b8004 100644
--- a/Runtime/AIO.Asset.Runtime.asmdef
+++ b/Runtime/AIO.Asset.Runtime.asmdef
@@ -1,36 +1,36 @@
{
- "name": "AIO.Asset.Runtime",
- "rootNamespace": "AIO",
- "references": [
- "UniTask",
- "UniTask.Addressables",
- "UniTask.DOTween",
- "UniTask.Linq",
- "UniTask.YooAsset",
- "UniTask.TextMeshPro",
- "YooAsset",
- "AIO.Core.Runtime",
- "com.bbbirder.injection",
- "com.bbbirder.directattribute"
- ],
- "includePlatforms": [],
- "excludePlatforms": [],
- "allowUnsafeCode": true,
- "overrideReferences": false,
- "precompiledReferences": [],
- "autoReferenced": true,
- "defineConstraints": [],
- "versionDefines": [
- {
- "name": "com.tuyoogame.yooasset",
- "expression": "",
- "define": "SUPPORT_YOOASSET"
- },
- {
- "name": "com.cysharp.unitask",
- "expression": "",
- "define": "SUPPORT_UNITASK"
- }
- ],
- "noEngineReferences": false
+ "name": "AIO.Asset.Runtime",
+ "references": [
+ "UniTask",
+ "UniTask.Addressables",
+ "UniTask.DOTween",
+ "UniTask.Linq",
+ "UniTask.YooAsset",
+ "UniTask.TextMeshPro",
+ "YooAsset",
+ "AIO.Core.Runtime",
+ "com.bbbirder.injection",
+ "com.bbbirder.directattribute",
+ "AIO.Unity.Runner"
+ ],
+ "includePlatforms": [],
+ "excludePlatforms": [],
+ "allowUnsafeCode": true,
+ "overrideReferences": false,
+ "precompiledReferences": [],
+ "autoReferenced": true,
+ "defineConstraints": [],
+ "versionDefines": [
+ {
+ "name": "com.tuyoogame.yooasset",
+ "expression": "",
+ "define": "SUPPORT_YOOASSET"
+ },
+ {
+ "name": "com.cysharp.unitask",
+ "expression": "",
+ "define": "SUPPORT_UNITASK"
+ }
+ ],
+ "noEngineReferences": false
}
\ No newline at end of file
diff --git a/package.json b/package.json
index 8bcd06f..defd197 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "com.aio.cli.asset",
"displayName": "AIO Unity CLI Asset",
"description": "unity3d resources management system.",
- "version": "1.1.10-preview",
+ "version": "1.1.11-preview",
"unity": "2019.4",
"category": "Runtime",
"unityRelease": "0f1",
@@ -15,7 +15,8 @@
"url": "https://github.com/AIO-GAME/Unity.Asset.CLI.git"
},
"relatedPackages": {
- "com.aio.package": "1.0.45-preview"
+ "com.aio.package": "1.0.46-preview",
+ "com.aio.runner": "1.0.0-preview"
},
"keywords": [
"Asset",
@@ -25,8 +26,9 @@
],
"author": {
"name": "AIO GAME",
- "url": "https://github.com/AIO-GAME/Unity.Asset.CLI"
+ "url": "https://github.com/AIO-GAME"
},
+ "type": "library",
"dependencies": {
"com.unity.modules.assetbundle": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0",
@@ -34,6 +36,5 @@
"com.unity.modules.unitywebrequesttexture": "1.0.0",
"com.unity.modules.unitywebrequestwww": "1.0.0",
"com.unity.modules.unitywebrequestassetbundle": "1.0.0"
- },
- "type": "library"
+ }
}
\ No newline at end of file