From a644ddf58adbf04978ce4458ed8ef5db418e6d12 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Wed, 22 Jan 2025 11:47:50 -0800 Subject: [PATCH 01/15] feat: sdk 0.9.0 ecsact deps --- BUILD.bazel | 4 ++-- MODULE.bazel | 32 ++++++++++++++++---------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index 6812770..21bb2dc 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -24,9 +24,9 @@ bzlws_copy( bzlws_copy( name = "copy_dist_include", srcs = [ + "@ecsact_codegen//:headers", "@ecsact_lang_cpp//:headers", "@ecsact_runtime//:headers", - "@ecsact_codegen//:headers", ], out = "dist/include/{FILEPATH}", force = True, @@ -58,7 +58,7 @@ bzlws_copy( name = "copy_dist_recipe_bundles", srcs = [ "@ecsact_rt_entt", - "@ecsact_rt_reference//async_reference", + # "@ecsact_rt_reference//async_reference", "@ecsact_rt_reference//serialize_reference", ], out = "dist/share/ecsact/recipes/{FILENAME}", diff --git a/MODULE.bazel b/MODULE.bazel index 1ed743a..c2431a8 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,29 +1,29 @@ module(name = "ecsact_sdk") -bazel_dep(name = "rules_cc", version = "0.0.9") +bazel_dep(name = "rules_cc", version = "0.1.0") bazel_dep(name = "platforms", version = "0.0.10") -bazel_dep(name = "rules_pkg", version = "0.10.1") +bazel_dep(name = "rules_pkg", version = "1.0.1") bazel_dep(name = "bazel_skylib", version = "1.7.1") -bazel_dep(name = "ecsact_si_wasm", version = "0.1.2") -bazel_dep(name = "rules_ecsact", version = "0.5.5") -bazel_dep(name = "ecsact_rt_entt", version = "0.3.7") -bazel_dep(name = "ecsact_rt_reference", version = "0.1.1") -bazel_dep(name = "ecsact_codegen", version = "0.4.1") -bazel_dep(name = "ecsact_parse", version = "0.5.1") -bazel_dep(name = "ecsact_runtime", version = "0.6.7") -bazel_dep(name = "ecsact_interpret", version = "0.6.4") -bazel_dep(name = "ecsact_lang_cpp", version = "0.4.6") -bazel_dep(name = "ecsact_cli", version = "0.3.16") -bazel_dep(name = "ecsact_lsp_server", version = "0.2.1") -bazel_dep(name = "ecsact_lang_json", version = "0.1.5") -bazel_dep(name = "ecsact_lang_csharp", version = "0.1.5") +bazel_dep(name = "ecsact_si_wasm", version = "0.1.7") +bazel_dep(name = "rules_ecsact", version = "0.5.8") +bazel_dep(name = "ecsact_rt_entt", version = "0.3.11") +bazel_dep(name = "ecsact_rt_reference", version = "0.1.2") +bazel_dep(name = "ecsact_codegen", version = "0.4.3") +bazel_dep(name = "ecsact_parse", version = "0.5.4") +bazel_dep(name = "ecsact_runtime", version = "0.8.0") +bazel_dep(name = "ecsact_interpret", version = "0.6.6") +bazel_dep(name = "ecsact_lang_cpp", version = "0.4.10") +bazel_dep(name = "ecsact_cli", version = "0.3.23") +bazel_dep(name = "ecsact_lsp_server", version = "0.2.2") +bazel_dep(name = "ecsact_lang_json", version = "0.1.6") +bazel_dep(name = "ecsact_lang_csharp", version = "0.1.6") bazel_dep(name = "yaml-cpp", version = "0.8.0") bazel_dep(name = "boost.dll", version = "1.83.0.bzl.2") bazel_dep(name = "boost.process", version = "1.83.0.bzl.2") bazel_dep(name = "bzlws", version = "0.2.0") bazel_dep(name = "ecsact_logo", version = "0.1.11") -bazel_dep(name = "toolchains_llvm", version = "1.0.0", dev_dependency = True) +bazel_dep(name = "toolchains_llvm", version = "1.2.0", dev_dependency = True) bazel_dep(name = "hedron_compile_commands", dev_dependency = True) git_override( module_name = "hedron_compile_commands", From 03f72f61fb4612ea438c80df91a556e2f6fe3074 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Wed, 22 Jan 2025 12:43:38 -0800 Subject: [PATCH 02/15] chore: update ecsact deps --- BUILD.bazel | 2 +- MODULE.bazel | 25 +++++++++++++++---------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index 21bb2dc..0b0b3bf 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -59,7 +59,7 @@ bzlws_copy( srcs = [ "@ecsact_rt_entt", # "@ecsact_rt_reference//async_reference", - "@ecsact_rt_reference//serialize_reference", + # "@ecsact_rt_reference//serialize_reference", ], out = "dist/share/ecsact/recipes/{FILENAME}", force = True, diff --git a/MODULE.bazel b/MODULE.bazel index c2431a8..a5e77cf 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -4,19 +4,24 @@ bazel_dep(name = "rules_cc", version = "0.1.0") bazel_dep(name = "platforms", version = "0.0.10") bazel_dep(name = "rules_pkg", version = "1.0.1") bazel_dep(name = "bazel_skylib", version = "1.7.1") -bazel_dep(name = "ecsact_si_wasm", version = "0.1.7") + +# NOTE: this si the first ecsact dependency and if you see a bazel 'compatibility' error it may _NOT_ be from this one and could be from many others. +# SEE: https://github.com/bazelbuild/bazel/issues/22972 +bazel_dep(name = "ecsact_si_wasm", version = "0.1.10") bazel_dep(name = "rules_ecsact", version = "0.5.8") -bazel_dep(name = "ecsact_rt_entt", version = "0.3.11") -bazel_dep(name = "ecsact_rt_reference", version = "0.1.2") -bazel_dep(name = "ecsact_codegen", version = "0.4.3") -bazel_dep(name = "ecsact_parse", version = "0.5.4") +bazel_dep(name = "ecsact_rt_entt", version = "0.3.16") + +# TODO: add ecsact_runtime 0.8.0 support +# bazel_dep(name = "ecsact_rt_reference", version = "0.1.2") +bazel_dep(name = "ecsact_codegen", version = "0.4.4") +bazel_dep(name = "ecsact_parse", version = "0.5.5") bazel_dep(name = "ecsact_runtime", version = "0.8.0") -bazel_dep(name = "ecsact_interpret", version = "0.6.6") -bazel_dep(name = "ecsact_lang_cpp", version = "0.4.10") +bazel_dep(name = "ecsact_interpret", version = "0.6.7") +bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") bazel_dep(name = "ecsact_cli", version = "0.3.23") -bazel_dep(name = "ecsact_lsp_server", version = "0.2.2") -bazel_dep(name = "ecsact_lang_json", version = "0.1.6") -bazel_dep(name = "ecsact_lang_csharp", version = "0.1.6") +bazel_dep(name = "ecsact_lsp_server", version = "0.2.3") +bazel_dep(name = "ecsact_lang_json", version = "0.1.7") +bazel_dep(name = "ecsact_lang_csharp", version = "0.1.7") bazel_dep(name = "yaml-cpp", version = "0.8.0") bazel_dep(name = "boost.dll", version = "1.83.0.bzl.2") bazel_dep(name = "boost.process", version = "1.83.0.bzl.2") From d0a386b022064f5de2ae503b6abd6d2297f936bf Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 30 Jan 2025 11:50:47 -0800 Subject: [PATCH 03/15] feat: update rt_entt, si_wasm, and include wasm headers --- BUILD.bazel | 1 + MODULE.bazel | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index 0b0b3bf..c566df0 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -27,6 +27,7 @@ bzlws_copy( "@ecsact_codegen//:headers", "@ecsact_lang_cpp//:headers", "@ecsact_runtime//:headers", + "@ecsact_si_wasm//:headers", ], out = "dist/include/{FILEPATH}", force = True, diff --git a/MODULE.bazel b/MODULE.bazel index a5e77cf..00cce41 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -7,9 +7,9 @@ bazel_dep(name = "bazel_skylib", version = "1.7.1") # NOTE: this si the first ecsact dependency and if you see a bazel 'compatibility' error it may _NOT_ be from this one and could be from many others. # SEE: https://github.com/bazelbuild/bazel/issues/22972 -bazel_dep(name = "ecsact_si_wasm", version = "0.1.10") +bazel_dep(name = "ecsact_si_wasm", version = "0.1.11") bazel_dep(name = "rules_ecsact", version = "0.5.8") -bazel_dep(name = "ecsact_rt_entt", version = "0.3.16") +bazel_dep(name = "ecsact_rt_entt", version = "0.3.17") # TODO: add ecsact_runtime 0.8.0 support # bazel_dep(name = "ecsact_rt_reference", version = "0.1.2") From f87c338e31e556d2d9f6ccc5a44ef43404ef37c6 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 30 Jan 2025 15:01:43 -0800 Subject: [PATCH 04/15] feat: temporarily bring back rt_reference with override --- .bazelrc | 1 + BUILD.bazel | 4 ++-- MODULE.bazel | 11 +++++++++-- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.bazelrc b/.bazelrc index c776090..0c6e68c 100644 --- a/.bazelrc +++ b/.bazelrc @@ -4,6 +4,7 @@ common --registry=https://raw.githubusercontent.com/ecsact-dev/bazel_registry/ma common --registry=https://raw.githubusercontent.com/zaucy/bazel-central-registry/add-curl-config2 # temporary common --registry=https://raw.githubusercontent.com/bazelboost/registry/main common --registry=https://bcr.bazel.build +common --@docopt.cpp//:use_boost_regex build --enable_platform_specific_config build --incompatible_enable_cc_toolchain_resolution build --incompatible_strict_action_env diff --git a/BUILD.bazel b/BUILD.bazel index c566df0..9e85fb9 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -59,8 +59,8 @@ bzlws_copy( name = "copy_dist_recipe_bundles", srcs = [ "@ecsact_rt_entt", - # "@ecsact_rt_reference//async_reference", - # "@ecsact_rt_reference//serialize_reference", + "@ecsact_rt_reference//async_reference", + "@ecsact_rt_reference//serialize_reference", ], out = "dist/share/ecsact/recipes/{FILENAME}", force = True, diff --git a/MODULE.bazel b/MODULE.bazel index 00cce41..0d6dd37 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -10,9 +10,13 @@ bazel_dep(name = "bazel_skylib", version = "1.7.1") bazel_dep(name = "ecsact_si_wasm", version = "0.1.11") bazel_dep(name = "rules_ecsact", version = "0.5.8") bazel_dep(name = "ecsact_rt_entt", version = "0.3.17") +bazel_dep(name = "ecsact_rt_reference", version = "0.2.0") +git_override( + module_name = "ecsact_rt_reference", + commit = "01d3a9026ae7515a9fbfa9076d4d485d8aab0ea0", + remote = "git@github.com:ecsact-dev/ecsact_rt_reference.git", +) -# TODO: add ecsact_runtime 0.8.0 support -# bazel_dep(name = "ecsact_rt_reference", version = "0.1.2") bazel_dep(name = "ecsact_codegen", version = "0.4.4") bazel_dep(name = "ecsact_parse", version = "0.5.5") bazel_dep(name = "ecsact_runtime", version = "0.8.0") @@ -30,6 +34,9 @@ bazel_dep(name = "ecsact_logo", version = "0.1.11") bazel_dep(name = "toolchains_llvm", version = "1.2.0", dev_dependency = True) bazel_dep(name = "hedron_compile_commands", dev_dependency = True) + +bazel_dep(name = "docopt.cpp", version = "0.6.2") + git_override( module_name = "hedron_compile_commands", commit = "204aa593e002cbd177d30f11f54cff3559110bb9", From af0bc93fd30f28e003e65d4bb87f50830bec500d Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 30 Jan 2025 15:04:47 -0800 Subject: [PATCH 05/15] chore: update rt_entt --- MODULE.bazel | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index 0d6dd37..fd51b44 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -9,7 +9,7 @@ bazel_dep(name = "bazel_skylib", version = "1.7.1") # SEE: https://github.com/bazelbuild/bazel/issues/22972 bazel_dep(name = "ecsact_si_wasm", version = "0.1.11") bazel_dep(name = "rules_ecsact", version = "0.5.8") -bazel_dep(name = "ecsact_rt_entt", version = "0.3.17") +bazel_dep(name = "ecsact_rt_entt", version = "0.3.18") bazel_dep(name = "ecsact_rt_reference", version = "0.2.0") git_override( module_name = "ecsact_rt_reference", From 37b6aa936f609714a18143e37892933fbd105e44 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 30 Jan 2025 16:05:23 -0800 Subject: [PATCH 06/15] chore: update ecsact_runtime --- MODULE.bazel | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index fd51b44..f936ab4 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -19,7 +19,7 @@ git_override( bazel_dep(name = "ecsact_codegen", version = "0.4.4") bazel_dep(name = "ecsact_parse", version = "0.5.5") -bazel_dep(name = "ecsact_runtime", version = "0.8.0") +bazel_dep(name = "ecsact_runtime", version = "0.8.1") bazel_dep(name = "ecsact_interpret", version = "0.6.7") bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") bazel_dep(name = "ecsact_cli", version = "0.3.23") From 6edd5a9311149c6adf4505eed9307670ce3ba03a Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Fri, 31 Jan 2025 16:21:43 -0800 Subject: [PATCH 07/15] chore: update more deps --- BUILD.bazel | 2 +- MODULE.bazel | 14 ++++---------- README.md | 2 +- 3 files changed, 6 insertions(+), 12 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index 9e85fb9..7e521c8 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -27,7 +27,6 @@ bzlws_copy( "@ecsact_codegen//:headers", "@ecsact_lang_cpp//:headers", "@ecsact_runtime//:headers", - "@ecsact_si_wasm//:headers", ], out = "dist/include/{FILEPATH}", force = True, @@ -61,6 +60,7 @@ bzlws_copy( "@ecsact_rt_entt", "@ecsact_rt_reference//async_reference", "@ecsact_rt_reference//serialize_reference", + "@ecsact_si_wasmer", ], out = "dist/share/ecsact/recipes/{FILENAME}", force = True, diff --git a/MODULE.bazel b/MODULE.bazel index f936ab4..4381dbe 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -7,22 +7,16 @@ bazel_dep(name = "bazel_skylib", version = "1.7.1") # NOTE: this si the first ecsact dependency and if you see a bazel 'compatibility' error it may _NOT_ be from this one and could be from many others. # SEE: https://github.com/bazelbuild/bazel/issues/22972 -bazel_dep(name = "ecsact_si_wasm", version = "0.1.11") -bazel_dep(name = "rules_ecsact", version = "0.5.8") -bazel_dep(name = "ecsact_rt_entt", version = "0.3.18") +bazel_dep(name = "ecsact_si_wasmer", version = "0.2.0") +bazel_dep(name = "rules_ecsact", version = "0.5.10") +bazel_dep(name = "ecsact_rt_entt", version = "0.3.19") bazel_dep(name = "ecsact_rt_reference", version = "0.2.0") -git_override( - module_name = "ecsact_rt_reference", - commit = "01d3a9026ae7515a9fbfa9076d4d485d8aab0ea0", - remote = "git@github.com:ecsact-dev/ecsact_rt_reference.git", -) - bazel_dep(name = "ecsact_codegen", version = "0.4.4") bazel_dep(name = "ecsact_parse", version = "0.5.5") bazel_dep(name = "ecsact_runtime", version = "0.8.1") bazel_dep(name = "ecsact_interpret", version = "0.6.7") bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") -bazel_dep(name = "ecsact_cli", version = "0.3.23") +bazel_dep(name = "ecsact_cli", version = "0.3.24") bazel_dep(name = "ecsact_lsp_server", version = "0.2.3") bazel_dep(name = "ecsact_lang_json", version = "0.1.7") bazel_dep(name = "ecsact_lang_csharp", version = "0.1.7") diff --git a/README.md b/README.md index 0373126..489716b 100644 --- a/README.md +++ b/README.md @@ -24,4 +24,4 @@ Here are some core repositories that are most interesting if you're considering * https://github.com/ecsact-dev/ecsact_interpret * https://github.com/ecsact-dev/ecsact_cli * https://github.com/ecsact-dev/ecsact_rt_entt -* https://github.com/ecsact-dev/ecsact_si_wasm +* https://github.com/ecsact-dev/ecsact_si_wasmer From 3bcde71fcbc3424d3d346362eac5b6a760688e39 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Sat, 1 Feb 2025 13:04:04 -0800 Subject: [PATCH 08/15] chore: update ecsact sdk --- MODULE.bazel | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index 4381dbe..73d1da7 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -16,7 +16,7 @@ bazel_dep(name = "ecsact_parse", version = "0.5.5") bazel_dep(name = "ecsact_runtime", version = "0.8.1") bazel_dep(name = "ecsact_interpret", version = "0.6.7") bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") -bazel_dep(name = "ecsact_cli", version = "0.3.24") +bazel_dep(name = "ecsact_cli", version = "0.3.25") bazel_dep(name = "ecsact_lsp_server", version = "0.2.3") bazel_dep(name = "ecsact_lang_json", version = "0.1.7") bazel_dep(name = "ecsact_lang_csharp", version = "0.1.7") From 7b97a5eebfc1b7a566000769df20afd60470f1ba Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Fri, 7 Feb 2025 08:45:06 -0800 Subject: [PATCH 09/15] chore: update ecsact cli --- MODULE.bazel | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MODULE.bazel b/MODULE.bazel index 73d1da7..479316f 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -16,7 +16,7 @@ bazel_dep(name = "ecsact_parse", version = "0.5.5") bazel_dep(name = "ecsact_runtime", version = "0.8.1") bazel_dep(name = "ecsact_interpret", version = "0.6.7") bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") -bazel_dep(name = "ecsact_cli", version = "0.3.25") +bazel_dep(name = "ecsact_cli", version = "0.3.26") bazel_dep(name = "ecsact_lsp_server", version = "0.2.3") bazel_dep(name = "ecsact_lang_json", version = "0.1.7") bazel_dep(name = "ecsact_lang_csharp", version = "0.1.7") From 17bb60d0ac156a9086a48969e565b16796d9db98 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Fri, 7 Feb 2025 10:22:19 -0800 Subject: [PATCH 10/15] feat: add ecsact unreal codegen tool --- BUILD.bazel | 9 ++++++++- CheckDist.sh | 1 + CreateMsix.ps1 | 3 ++- MODULE.bazel | 18 ++++++++++++++++++ dist/AppxManifest.xml | 11 +++++++++++ prebuilt-tools.bzl | 18 ++++++++++++++++++ 6 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 prebuilt-tools.bzl diff --git a/BUILD.bazel b/BUILD.bazel index 7e521c8..c1e768c 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -5,7 +5,14 @@ bzlws_copy( srcs = [ "@ecsact_cli", "@ecsact_lsp_server", - ], + ] + select({ + "@platforms//os:windows": [ + "@ecsact_unreal_codegen_win64//file", + ], + "@platforms//os:linux": [ + "@ecsact_unreal_codegen_linux//file", + ], + }), out = "dist/bin/{FILENAME}", force = True, ) diff --git a/CheckDist.sh b/CheckDist.sh index d8853e4..2d4a0cf 100755 --- a/CheckDist.sh +++ b/CheckDist.sh @@ -15,5 +15,6 @@ echo [ ! -d "dist/include/ecsact" ] && echo "Missing ecsact include directory" && exit 1 [ ! -f "dist/bin/ecsact" ] && echo "Missing ecsact CLI" && exit 1 [ ! -f "dist/bin/ecsact_lsp_server" ] && echo "Missing ecsact lsp CLI" && exit 1 +[ ! -f "dist/bin/EcsactUnrealCodegen" ] && echo "Missing EcsatUnrealCodegen tool" && exit 1 exit 0 diff --git a/CreateMsix.ps1 b/CreateMsix.ps1 index 21e5371..f64317e 100644 --- a/CreateMsix.ps1 +++ b/CreateMsix.ps1 @@ -38,7 +38,8 @@ try $ExecutablesToSign = @( '.\dist\bin\ecsact.exe', - '.\dist\bin\ecsact_lsp_server.exe' + '.\dist\bin\ecsact_lsp_server.exe', + '.\dist\bin\EcsactUnrealCodegen.exe' ) foreach($Executable in $ExecutablesToSign) diff --git a/MODULE.bazel b/MODULE.bazel index 479316f..cea77a5 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -26,6 +26,24 @@ bazel_dep(name = "boost.process", version = "1.83.0.bzl.2") bazel_dep(name = "bzlws", version = "0.2.0") bazel_dep(name = "ecsact_logo", version = "0.1.11") +prebuilt_tools = use_extension("//:prebuilt-tools.bzl", "prebuilt_tools") +use_repo( + prebuilt_tools, + "ecsact_unreal_codegen_linux", + "ecsact_unreal_codegen_win64", +) + +# local_path_override( +# module_name = "ecsact_unreal_codegen", +# path = "../ecsact_unreal/Tools/EcsactUnrealCodegen", +# ) +# git_override( +# module_name = "ecsact_unreal_codegen", +# commit = "1a2c65d45a9a697bbbe61c643ff7926ad28243be", +# remote = "git@github.com:ecsact-dev/ecsact_unreal.git", +# strip_prefix = "Tools/EcsactUnrealCodegen", +# ) + bazel_dep(name = "toolchains_llvm", version = "1.2.0", dev_dependency = True) bazel_dep(name = "hedron_compile_commands", dev_dependency = True) diff --git a/dist/AppxManifest.xml b/dist/AppxManifest.xml index ba330e3..dc608ae 100644 --- a/dist/AppxManifest.xml +++ b/dist/AppxManifest.xml @@ -36,6 +36,17 @@ + + + + + + + + + + + diff --git a/prebuilt-tools.bzl b/prebuilt-tools.bzl new file mode 100644 index 0000000..1051bb8 --- /dev/null +++ b/prebuilt-tools.bzl @@ -0,0 +1,18 @@ +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file") + +def _prebuilt_tools(mctx): + http_file( + name = "ecsact_unreal_codegen_win64", + downloaded_file_path = "EcsactUnrealCodegen.exe", + executable = True, + integrity = "sha256-HIra76wJlgsBAR+Oaj90INFCYLIS3QyPSWDDhvqUFCo=", + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.0/EcsactUnrealCodegen-Win64.exe", + ) + http_file( + name = "ecsact_unreal_codegen_linux", + downloaded_file_path = "EcsactUnrealCodegen", + executable = True, + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.0/EcsactUnrealCodegen-Linux", + ) + +prebuilt_tools = module_extension(_prebuilt_tools) From e55899e381292c1f76c959e509b5b26fa06961f6 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Fri, 7 Feb 2025 11:44:19 -0800 Subject: [PATCH 11/15] chore: update prebuilt tools --- prebuilt-tools.bzl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/prebuilt-tools.bzl b/prebuilt-tools.bzl index 1051bb8..bedc43d 100644 --- a/prebuilt-tools.bzl +++ b/prebuilt-tools.bzl @@ -5,14 +5,15 @@ def _prebuilt_tools(mctx): name = "ecsact_unreal_codegen_win64", downloaded_file_path = "EcsactUnrealCodegen.exe", executable = True, + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.1/EcsactUnrealCodegen-Win64.exe", integrity = "sha256-HIra76wJlgsBAR+Oaj90INFCYLIS3QyPSWDDhvqUFCo=", - url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.0/EcsactUnrealCodegen-Win64.exe", ) http_file( name = "ecsact_unreal_codegen_linux", downloaded_file_path = "EcsactUnrealCodegen", executable = True, - url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.0/EcsactUnrealCodegen-Linux", + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.1/EcsactUnrealCodegen-Linux", + integrity = "sha256-nwcXevEQn1RJrm/7/Nq+HtR3nBLMbhlovfPSgXR923A=", ) prebuilt_tools = module_extension(_prebuilt_tools) From 9598d6bff7f940598d42a61037e71a3b52ad2f30 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 13 Feb 2025 15:40:22 -0800 Subject: [PATCH 12/15] feat: update ecsact unreal --- MODULE.bazel | 11 ----------- prebuilt-tools.bzl | 8 +++++--- 2 files changed, 5 insertions(+), 14 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index cea77a5..2de8587 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -33,17 +33,6 @@ use_repo( "ecsact_unreal_codegen_win64", ) -# local_path_override( -# module_name = "ecsact_unreal_codegen", -# path = "../ecsact_unreal/Tools/EcsactUnrealCodegen", -# ) -# git_override( -# module_name = "ecsact_unreal_codegen", -# commit = "1a2c65d45a9a697bbbe61c643ff7926ad28243be", -# remote = "git@github.com:ecsact-dev/ecsact_unreal.git", -# strip_prefix = "Tools/EcsactUnrealCodegen", -# ) - bazel_dep(name = "toolchains_llvm", version = "1.2.0", dev_dependency = True) bazel_dep(name = "hedron_compile_commands", dev_dependency = True) diff --git a/prebuilt-tools.bzl b/prebuilt-tools.bzl index bedc43d..c791272 100644 --- a/prebuilt-tools.bzl +++ b/prebuilt-tools.bzl @@ -1,18 +1,20 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file") +ECSACT_UNREAL_VERSION = "0.2.2" + def _prebuilt_tools(mctx): http_file( name = "ecsact_unreal_codegen_win64", downloaded_file_path = "EcsactUnrealCodegen.exe", executable = True, - url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.1/EcsactUnrealCodegen-Win64.exe", - integrity = "sha256-HIra76wJlgsBAR+Oaj90INFCYLIS3QyPSWDDhvqUFCo=", + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/{}/EcsactUnrealCodegen-Win64.exe".format(ECSACT_UNREAL_VERSION), + integrity = "sha256-ynFQTRdnN4k7s3t2Z3dJ2fnxoQ8hV/P5y2cvgRMvxSg=", ) http_file( name = "ecsact_unreal_codegen_linux", downloaded_file_path = "EcsactUnrealCodegen", executable = True, - url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/0.2.1/EcsactUnrealCodegen-Linux", + url = "https://github.com/ecsact-dev/ecsact_unreal/releases/download/{}/EcsactUnrealCodegen-Linux".format(ECSACT_UNREAL_VERSION), integrity = "sha256-nwcXevEQn1RJrm/7/Nq+HtR3nBLMbhlovfPSgXR923A=", ) From 938239655aac5c396a66297c6888ac65efb38791 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 13 Feb 2025 15:50:02 -0800 Subject: [PATCH 13/15] chore: revert a thing --- MODULE.bazel | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 2de8587..5a55ef0 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,6 +1,6 @@ module(name = "ecsact_sdk") -bazel_dep(name = "rules_cc", version = "0.1.0") +bazel_dep(name = "rules_cc", version = "0.0.17") bazel_dep(name = "platforms", version = "0.0.10") bazel_dep(name = "rules_pkg", version = "1.0.1") bazel_dep(name = "bazel_skylib", version = "1.7.1") @@ -13,7 +13,7 @@ bazel_dep(name = "ecsact_rt_entt", version = "0.3.19") bazel_dep(name = "ecsact_rt_reference", version = "0.2.0") bazel_dep(name = "ecsact_codegen", version = "0.4.4") bazel_dep(name = "ecsact_parse", version = "0.5.5") -bazel_dep(name = "ecsact_runtime", version = "0.8.1") +bazel_dep(name = "ecsact_runtime", version = "0.8.2") bazel_dep(name = "ecsact_interpret", version = "0.6.7") bazel_dep(name = "ecsact_lang_cpp", version = "0.4.11") bazel_dep(name = "ecsact_cli", version = "0.3.26") From 3f21bfebb692e6006a2117988f96119dc17c1790 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 13 Feb 2025 16:50:20 -0800 Subject: [PATCH 14/15] feat: update release script to remove chore content --- .editorconfig | 12 ++++--- release-notes-template | 76 +++++++++++++++++++++++------------------- release.nu | 23 ++++++++++--- 3 files changed, 67 insertions(+), 44 deletions(-) diff --git a/.editorconfig b/.editorconfig index 57779a4..2402e61 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,4 +1,8 @@ -root = true - -[*] -end_of_line = lf +root = true + +[*] +end_of_line = lf + +[release-notes-template] +indent_style = space +indent_size = 4 diff --git a/release-notes-template b/release-notes-template index 02697a3..a7d995c 100644 --- a/release-notes-template +++ b/release-notes-template @@ -1,35 +1,41 @@ -{% if version.tag -%} - ## [{{ version.tag }}]({{repository_url}}/releases/tag/{{ version.tag }}) -{% else -%} - {% set from = commits | last -%} - {% set to = version.id-%} - {% set from_shorthand = from.id | truncate(length=7, end="") -%} - {% set to_shorthand = to | truncate(length=7, end="") -%} - ## Unreleased ({{ from_shorthand ~ ".." ~ to_shorthand }}) -{% endif -%} - -{% for type, typed_commits in commits | sort(attribute="type")| group_by(attribute="type")-%} -#### {{ type | upper_first }} -{% for scope, scoped_commits in typed_commits | group_by(attribute="scope") -%} - -{% for commit in scoped_commits | sort(attribute="scope") -%} - {% set shorthand = commit.id | truncate(length=7, end="") -%} - - **({{ scope }})** {{ commit.summary }} - ([{{ shorthand }}]({{ repository_url }}/commit/{{ commit.id }})) - {{ commit.body }} -{% endfor -%} - -{% endfor -%} - -{%- for commit in typed_commits | unscoped -%} - {% if commit.author -%} - {% set author = commit.author -%} - {% else -%} - {% set author = commit.signature -%} - {% endif -%} - - {% set shorthand = commit.id | truncate(length=7, end="") -%} - - {{ commit.summary }} - ([{{ shorthand }}]({{ repository_url }}/commit/{{ commit.id }})) - {{ commit.body }} -{% endfor -%} - -{% endfor -%} +{% if version.tag -%} + ## [{{ version.tag }}]({{repository_url}}/releases/tag/{{ version.tag }}) +{% else -%} + {% set from = commits | last -%} + {% set to = version.id-%} + {% set from_shorthand = from.id | truncate(length=7, end="") -%} + {% set to_shorthand = to | truncate(length=7, end="") -%} + ## Unreleased ({{ from_shorthand ~ ".." ~ to_shorthand }}) +{% endif -%} + +{% for type, typed_commits in commits | sort(attribute="type") | group_by(attribute="type") -%} + {% if type != "Miscellaneous Chores" -%} + #### {{ type | upper_first }} + {% endif -%} +{% for scope, scoped_commits in typed_commits | group_by(attribute="scope") -%} + +{% for commit in scoped_commits | sort(attribute="scope") -%} + {% if commit.type != "Miscellaneous Chores" -%} + {% set shorthand = commit.id | truncate(length=7, end="") -%} + - **({{ scope }})** {{ commit.summary }} - ([{{ shorthand }}]({{ repository_url }}/commit/{{ commit.id }})) + {{ commit.body }} + {% endif -%} +{% endfor -%} + +{% endfor -%} + +{%- for commit in typed_commits | unscoped -%} + {% if commit.type != "Miscellaneous Chores" -%} + {% if commit.author -%} + {% set author = commit.author -%} + {% else -%} + {% set author = commit.signature -%} + {% endif -%} + + {% set shorthand = commit.id | truncate(length=7, end="") -%} + - {{ commit.summary }} - ([{{ shorthand }}]({{ repository_url }}/commit/{{ commit.id }})) + {{ commit.body }} + {% endif -%} +{% endfor -%} + +{% endfor -%} diff --git a/release.nu b/release.nu index a12fb89..e887e67 100644 --- a/release.nu +++ b/release.nu @@ -7,18 +7,31 @@ def get-ecsact-deps [] { ) } -def main [version: string, --dry-run] { +def main [version, --dry-run, --update] { let start_dir = $env.PWD; + let tmp_repo_dir = mktemp -d --suffix "EcsactSdkRelease"; + let last_release = (gh release view --json tagName | from json).tagName; + git worktree add $tmp_repo_dir $last_release; + cd $tmp_repo_dir; let before_update_deps = get-ecsact-deps; + git worktree remove $tmp_repo_dir --force | complete; # this sometimes fails + cd $start_dir; let changelog_template = [$start_dir, "release-notes-template"] | path join; - - $before_update_deps | each {|dep| bzlmod add $dep.name; }; + + if $update { + $before_update_deps | each {|dep| bzlmod add $dep.name; }; + } # sanity check - bazel build //...; + bazel build "//..."; let release_notes = (get-ecsact-deps | each {|dep| - let before_version = $before_update_deps | where name == $dep.name | get version | get 0; + print $"Generating release notes for ($dep.name)"; + let before_version = ($before_update_deps | where name == $dep.name); + if ($before_version | length) == 0 { + return $"## NEW dependency ($dep.name)\n\n"; + } + let before_version = $before_version | get version | get 0; let after_version = $dep | get version; let dep_repo_remote = $"https://github.com/ecsact-dev/($dep.name)"; let cached_repo_dir = $".cache/repos/($dep.name)"; From 89dd52054e92db9e5504b84ac9a370d12921bbe6 Mon Sep 17 00:00:00 2001 From: Ezekiel Warren Date: Thu, 13 Feb 2025 16:51:17 -0800 Subject: [PATCH 15/15] feat: release script has update flag: --- release.nu | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/release.nu b/release.nu index e887e67..b0e0c06 100644 --- a/release.nu +++ b/release.nu @@ -56,9 +56,11 @@ def main [version, --dry-run, --update] { if $dry_run { echo $release_notes; } else { - git add MODULE.bazel; - git commit -m $"chore\(deps\): ecsact repos for ($version) release"; - git push origin main; + if $update { + git add MODULE.bazel; + git commit -m $"chore\(deps\): ecsact repos for ($version) release"; + git push origin main; + } git tag $version; git push origin $version; gh release create $version -n $release_notes --latest -t $version --verify-tag --latest;