diff --git a/.efrocachemap b/.efrocachemap
index 453fbbe8..6ee43ee9 100644
--- a/.efrocachemap
+++ b/.efrocachemap
@@ -420,9 +420,9 @@
"assets/build/ba_data/audio/zoeOw.ogg": "https://files.ballistica.net/cache/ba1/04/0a/c4f7d2794b018593ab0b2bcb07f0",
"assets/build/ba_data/audio/zoePickup01.ogg": "https://files.ballistica.net/cache/ba1/06/4d/18777c9a2eb2207a2891a2837a70",
"assets/build/ba_data/audio/zoeScream01.ogg": "https://files.ballistica.net/cache/ba1/81/90/23ab1ecc8c55267bd904a9c05344",
- "assets/build/ba_data/data/langdata.json": "https://files.ballistica.net/cache/ba1/c4/97/a66312b606d32e0927631ea68cf2",
+ "assets/build/ba_data/data/langdata.json": "https://files.ballistica.net/cache/ba1/f1/14/4a5bc422b6440fcd0afaf8bbf3e2",
"assets/build/ba_data/data/languages/arabic.json": "https://files.ballistica.net/cache/ba1/8b/fa/719ccefcd94822218fcedb9d5038",
- "assets/build/ba_data/data/languages/belarussian.json": "https://files.ballistica.net/cache/ba1/c1/2b/54aeb92c709c4af443f4a9013b3d",
+ "assets/build/ba_data/data/languages/belarussian.json": "https://files.ballistica.net/cache/ba1/44/ed/5b972fa848cffb73723533c2ccb7",
"assets/build/ba_data/data/languages/chinese.json": "https://files.ballistica.net/cache/ba1/69/cc/f8bdd1e83162481c6bf2a78cb5e0",
"assets/build/ba_data/data/languages/chinesetraditional.json": "https://files.ballistica.net/cache/ba1/7c/b5/ddf2aedf7a7821b134d3663ae320",
"assets/build/ba_data/data/languages/croatian.json": "https://files.ballistica.net/cache/ba1/56/02/c22deb7174aabdcbffe1da23e484",
@@ -438,7 +438,7 @@
"assets/build/ba_data/data/languages/hindi.json": "https://files.ballistica.net/cache/ba1/d5/19/5e450e35b83fe68722330d03b896",
"assets/build/ba_data/data/languages/hungarian.json": "https://files.ballistica.net/cache/ba1/87/2d/027aa239eb66ea8f496562f4fd83",
"assets/build/ba_data/data/languages/indonesian.json": "https://files.ballistica.net/cache/ba1/a4/01/1fcc28b303858b3d028d26516907",
- "assets/build/ba_data/data/languages/italian.json": "https://files.ballistica.net/cache/ba1/33/04/b1c54ce2b8979cc983aecc781228",
+ "assets/build/ba_data/data/languages/italian.json": "https://files.ballistica.net/cache/ba1/20/ca/d675783cd094030a625e7ce023cf",
"assets/build/ba_data/data/languages/korean.json": "https://files.ballistica.net/cache/ba1/0a/84/bbb6ed2abf66509406f534cbbb52",
"assets/build/ba_data/data/languages/persian.json": "https://files.ballistica.net/cache/ba1/e4/81/d3fdd1931b4a1e8b17affc95729c",
"assets/build/ba_data/data/languages/polish.json": "https://files.ballistica.net/cache/ba1/29/72/bcf75316f71373a47739a72ad6da",
@@ -3932,32 +3932,32 @@
"assets/build/windows/Win32/ucrtbased.dll": "https://files.ballistica.net/cache/ba1/b5/85/f8b6d0558ddb87267f34254b1450",
"assets/build/windows/Win32/vc_redist.x86.exe": "https://files.ballistica.net/cache/ba1/1c/e1/4a1a2eddda2f4aebd5f8b64ab08e",
"assets/build/windows/Win32/vcruntime140d.dll": "https://files.ballistica.net/cache/ba1/50/8d/bc2600ac9491f1b14d659709451f",
- "build/prefab/full/linux_x86_64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/ba/0a/503d80285b4e98197495d912ffe2",
- "build/prefab/full/linux_x86_64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/87/8f/cc883d6dc9d4599694ae07640d03",
- "build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/e4/9f/8a227fb667886cac6ac141eda922",
- "build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/4b/c2/a1c067dab547a61c8a635a2f14bc",
- "build/prefab/full/mac_arm64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/8a/91/90a45733c48687ecccb3baf52d2b",
- "build/prefab/full/mac_arm64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/05/31/483700af5f45598fd4bc535352e7",
- "build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/e9/de/16ecb8f5a43cc11725ba8fd25b92",
- "build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/aa/07/f7c43b399342b1a7d311dce02bd9",
- "build/prefab/full/mac_x86_64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/27/ba/609c8cfcf5518cb00efe1e7c4394",
- "build/prefab/full/mac_x86_64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/8c/5b/bf4bea08d9861932a2fc64452840",
- "build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/3d/bc/91fc66b45b4109de9f9769d63163",
- "build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/cc/1b/13d06eb5703326a8d45e447eee22",
- "build/prefab/full/windows_x86/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/db/80/f32753340c14607d7bcb06700920",
- "build/prefab/full/windows_x86/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/2c/81/11a95002c322158e9a72fa38d209",
- "build/prefab/full/windows_x86_server/debug/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/3f/98/3ba1d4b690f21b2c6fab4c56640d",
- "build/prefab/full/windows_x86_server/release/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/d8/2c/e271424b6a361e0b202723bd9b9a",
- "build/prefab/lib/linux_x86_64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/50/30/cd615d3ad04924ab211fda6294de",
- "build/prefab/lib/linux_x86_64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/5a/8f/8ecc7e5adf66021652d4b92c7fb0",
- "build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/41/d0/d1ecacdbdd5e42d0e171c9c04cea",
- "build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/2d/dd/f11c021a66e17a63a944689b236e",
- "build/prefab/lib/mac_arm64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/94/34/1853fd4dbd82355bbd65717c433f",
- "build/prefab/lib/mac_arm64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8c/fb/ee704284dbcd8fc1222507fd18e5",
- "build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/91/4d/b5e5982ebbf42b38170e0c449581",
- "build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8e/a4/52c27869b2ebcceb6f808e85dd15",
- "build/prefab/lib/mac_x86_64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/58/4b/c5294de3d55ce8a6425740307ac1",
- "build/prefab/lib/mac_x86_64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/e8/7c/ef89ae18c9bbcf44ffa4dee9ffb5",
- "build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/2c/01/2604026ff01a32dfe9568626b655",
- "build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/9c/42/ecaae792330e32d18521d5db91c1"
+ "build/prefab/full/linux_x86_64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/9f/39/899e7b09787e2d30cdb996dc0810",
+ "build/prefab/full/linux_x86_64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/58/91/b69eac3a1af4fb80bb314215ba9f",
+ "build/prefab/full/linux_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ba/ed/2c76bd29944f4a4b97ec95c6caca",
+ "build/prefab/full/linux_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ee/fc/655567f17f4c55102390ccaee221",
+ "build/prefab/full/mac_arm64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/11/20/5f4861a3747db4d8d6130287b865",
+ "build/prefab/full/mac_arm64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/a6/65/d587bd1356dd0ba5f38503ad542f",
+ "build/prefab/full/mac_arm64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/a0/2a/db7a9c805e703cc7a5c305f33840",
+ "build/prefab/full/mac_arm64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/51/a2/97d4a11351b648f1c7a0d4ccffdc",
+ "build/prefab/full/mac_x86_64/debug/ballisticacore": "https://files.ballistica.net/cache/ba1/84/b2/0cdac010a6d0ab618336d84364ce",
+ "build/prefab/full/mac_x86_64/release/ballisticacore": "https://files.ballistica.net/cache/ba1/dd/f5/b2a13f5965bed385184961c2b354",
+ "build/prefab/full/mac_x86_64_server/debug/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/ce/ac/eee81b5add93a6a6657a3721a3f3",
+ "build/prefab/full/mac_x86_64_server/release/dist/ballisticacore_headless": "https://files.ballistica.net/cache/ba1/44/4a/a2d432631e58a7d2a35b03fe3a3c",
+ "build/prefab/full/windows_x86/debug/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/e0/66/e20e5da1830803a5459e7b6da9be",
+ "build/prefab/full/windows_x86/release/BallisticaCore.exe": "https://files.ballistica.net/cache/ba1/60/ce/6f4e5d533366a7af8b319e58c2c0",
+ "build/prefab/full/windows_x86_server/debug/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/39/cd/e7d89b94ace25e654740ba17bed3",
+ "build/prefab/full/windows_x86_server/release/dist/ballisticacore_headless.exe": "https://files.ballistica.net/cache/ba1/f5/a7/daaa05b5d4195863262a1a682466",
+ "build/prefab/lib/linux_x86_64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ea/ac/76dc570fa7a553e07f8edded0693",
+ "build/prefab/lib/linux_x86_64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/83/25/980050d75bbea49a84652209050c",
+ "build/prefab/lib/linux_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/be/82/432710f28c27ebb30a15c6f3692d",
+ "build/prefab/lib/linux_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/2b/45/7f9fbae208890455fce2fbc172d3",
+ "build/prefab/lib/mac_arm64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/60/49/f01b296fd59f4a15fa16be39830c",
+ "build/prefab/lib/mac_arm64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/34/70/2a89f2e8130ee4bcc649ffb9fc1d",
+ "build/prefab/lib/mac_arm64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/0e/f7/ff76fe963d96eb342543a5ffb0dc",
+ "build/prefab/lib/mac_arm64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8e/f1/1d3cd8f97a496faf5a619cc46149",
+ "build/prefab/lib/mac_x86_64/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/d7/c9/b5ae4d4189133b024e7b15e74ff4",
+ "build/prefab/lib/mac_x86_64/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/00/4c/2480cfe8037055af072c2c9fa1b2",
+ "build/prefab/lib/mac_x86_64_server/debug/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/8f/30/7f0aedb2ec9b64db1566ade2fc2f",
+ "build/prefab/lib/mac_x86_64_server/release/libballisticacore_internal.a": "https://files.ballistica.net/cache/ba1/ad/69/4203464dc0b509ef11967ca90612"
}
\ No newline at end of file
diff --git a/.idea/dictionaries/ericf.xml b/.idea/dictionaries/ericf.xml
index 460caedb..4f17acf2 100644
--- a/.idea/dictionaries/ericf.xml
+++ b/.idea/dictionaries/ericf.xml
@@ -30,8 +30,8 @@
achname
achs
acinstance
- ack
ack'ed
+ ack
acked
acks
acnt
@@ -153,8 +153,8 @@
bacommon
badguy
bafoundation
- ballistica
ballistica's
+ ballistica
ballisticacore
ballisticacorecb
bamaster
@@ -233,6 +233,7 @@
bsplaylist
bsremote
bsstd
+ bstat
bstournament
bsuffix
bsui
@@ -621,6 +622,7 @@
envcfg
envhash
envname
+ envs
envval
envvar
epath
@@ -810,8 +812,8 @@
gamedata
gameinstance
gamemap
- gamepad
gamepad's
+ gamepad
gamepadadvanced
gamepads
gamepadselect
@@ -1183,6 +1185,8 @@
locationlist
locationsingles
locationval
+ lockstr
+ locktype
locs
logcat
logintoken
@@ -1200,11 +1204,12 @@
lsqlite
lssl
lstart
- lstr
lstr's
+ lstr
lstrs
lsval
ltex
+ ltypes
lzma
lzmamodule
macappstore
@@ -1734,6 +1739,7 @@
respawnicon
responsetype
resultstr
+ retrysecs
returncode
returnfuncptrs
returnspc
@@ -1814,6 +1820,7 @@
scsb
scyn
sdata
+ sdkcheck
sdkutils
sdtk
selectmodule
@@ -1837,8 +1844,8 @@
sessionname
sessionplayer
sessionplayers
- sessionteam
sessionteam's
+ sessionteam
sessionteams
sessiontype
setactivity
@@ -2174,8 +2181,8 @@
txtw
typeargs
typecheck
- typechecker
typechecker's
+ typechecker
typedval
typeshed
typestr
@@ -2324,6 +2331,7 @@
writeclasses
writefuncs
wslpath
+ wsroot
wtcolor
wtflib
wttxt
diff --git a/Makefile b/Makefile
index 0d464079..9a23d422 100644
--- a/Makefile
+++ b/Makefile
@@ -26,6 +26,10 @@ endif
# Cloudshell hosts used to build various platforms/architectures.
CLOUDSHELL_HOST_MAC_X86_64 ?= homebook-fro
CLOUDSHELL_HOST_MAC_ARM64 ?= fromini
+CLOUDSHELL_HOST_LINUX_X86_64 ?= linbeast
+CLOUDSHELL_HOST_ANDROID ?= linbeast
+# FIXME use rpi4 when its back
+CLOUDSHELL_HOST_RPI ?= rpi3
# List targets in this Makefile and basic descriptions for them.
help:
@@ -655,15 +659,21 @@ test: prereqs
# Run tests with any caching disabled.
test-full: test
-# Iterate on individual tests with extra debug output enabled.
+# Individual test with extra output enabled.
test-assetmanager:
@tools/pcommand pytest -o log_cli=true -o log_cli_level=debug -s -v \
tests/test_ba/test_assetmanager.py::test_assetmanager
+# Individual test with extra output enabled.
test-dataclasses:
@tools/pcommand pytest -o log_cli=true -o log_cli_level=debug -s -v \
tests/test_efro/test_dataclasses.py
+# Individual test with extra output enabled.
+test-entity:
+ @tools/pcommand pytest -o log_cli=true -o log_cli_level=debug -s -v \
+ tests/test_efro/test_entity.py
+
# Tell make which of these targets don't represent files.
.PHONY: test test-full test-assetmanager
diff --git a/ballisticacore-cmake/.idea/dictionaries/ericf.xml b/ballisticacore-cmake/.idea/dictionaries/ericf.xml
index 1ae66f56..206b450e 100644
--- a/ballisticacore-cmake/.idea/dictionaries/ericf.xml
+++ b/ballisticacore-cmake/.idea/dictionaries/ericf.xml
@@ -13,8 +13,8 @@
ack'ed
acked
acks
- aclass
aclass's
+ aclass
activityplayer
addrs
adjoint
@@ -107,6 +107,7 @@
bsivu
bsmhi
bsstd
+ bstat
bsuuid
bufs
buildconfig
@@ -149,8 +150,8 @@
cmath
cmds
cmdvals
- codewarrior
codewarrior's
+ codewarrior
cofnodes
collapseable
collidable
@@ -254,6 +255,7 @@
endtime
entrypoint
envcfg
+ envs
envval
ericf
ericsson
@@ -474,6 +476,8 @@
linearsize
listobj
llock
+ lockstr
+ locktype
logmsg
logpath
logprefix
@@ -487,6 +491,7 @@
lscope
lstr
lsync
+ ltypes
lvec
lvoid
macmusicappgetlibrarysource
@@ -717,6 +722,7 @@
resends
resetinput
resync
+ retrysecs
retval
rezing
rgui
@@ -738,6 +744,7 @@
scenetime
screenmessage
scrollwidget
+ sdkcheck
sdl's
sdlk
seqlen
@@ -950,6 +957,7 @@
wofocj
wonkiness
worldspace
+ wsroot
wunused
xclamped
xdiff
diff --git a/ballisticacore-cmake/CMakeLists.txt b/ballisticacore-cmake/CMakeLists.txt
index 78acb86e..aa5e87fe 100644
--- a/ballisticacore-cmake/CMakeLists.txt
+++ b/ballisticacore-cmake/CMakeLists.txt
@@ -640,8 +640,12 @@ target_include_directories(ballisticacore PRIVATE
${EXTRA_INCLUDE_DIRS}
)
-# NOTE: seems we need to add 'dl' here for raspberry pi with a manually
-# built Python 3.8. Might be able to remove later.
target_link_libraries(ballisticacore PRIVATE
${CMAKE_CURRENT_BINARY_DIR}/prefablib/libballisticacore_internal.a ode pthread ${Python_LIBRARIES}
${SDL2_LIBRARIES} ${EXTRA_LIBRARIES} dl)
+
+# Hack for building on rpi (might be due to my manually built Python 3.8)
+# Hopefully can remove later...
+if(EXISTS "/home/pi")
+target_link_libraries(ballisticacore PRIVATE dl util)
+endif()
diff --git a/docs/ba_module.md b/docs/ba_module.md
index 3e06d91c..cb42539b 100644
--- a/docs/ba_module.md
+++ b/docs/ba_module.md
@@ -1,5 +1,5 @@
-
last updated on 2020-11-15 for Ballistica version 1.5.29 build 20254
+last updated on 2020-12-07 for Ballistica version 1.5.29 build 20258
This page documents the Python classes and functions in the 'ba' module,
which are the ones most relevant to modding in Ballistica. If you come across something you feel should be included here or could be better explained, please let me know. Happy modding!
diff --git a/tests/test_efro/test_entity.py b/tests/test_efro/test_entity.py
index e3e9ae12..22387b19 100644
--- a/tests/test_efro/test_entity.py
+++ b/tests/test_efro/test_entity.py
@@ -90,17 +90,19 @@ def test_entity_values() -> None:
ent.fval = 1.0
# Simple value list field.
- assert not ent.slval
+ assert not ent.slval # bool operator
assert len(ent.slval) == 0
with pytest.raises(TypeError):
ent.slval.append(1) # type: ignore
ent.slval.append('blah')
+ assert ent.slval # bool operator
assert len(ent.slval) == 1
assert list(ent.slval) == ['blah']
with pytest.raises(TypeError):
ent.slval = ['foo', 'bar', 1] # type: ignore
# Simple value dict field.
+ assert not ent.str_int_dict # bool operator
assert 'foo' not in ent.str_int_dict
# Set with incorrect key type should give TypeError.
with pytest.raises(TypeError):
@@ -109,6 +111,7 @@ def test_entity_values() -> None:
with pytest.raises(TypeError):
ent.str_int_dict['foo'] = 'bar' # type: ignore
ent.str_int_dict['foo'] = 123
+ assert ent.str_int_dict # bool operator
assert static_type_equals(ent.str_int_dict['foo'], int)
assert ent.str_int_dict['foo'] == 123
@@ -144,14 +147,16 @@ def test_entity_values_2() -> None:
with pytest.raises(TypeError):
ent.compoundlist[0] = 123 # type: ignore
assert len(ent.compoundlist) == 0
- assert not ent.compoundlist
+ assert not ent.compoundlist # bool operator
ent.compoundlist.append()
- assert ent.compoundlist
+ assert ent.compoundlist # bool operator
assert len(ent.compoundlist) == 1
assert static_type_equals(ent.compoundlist[0], CompoundTest)
# Compound dict field.
+ assert not ent.compounddict # bool operator
cdval = ent.compounddict.add('foo')
+ assert ent.compounddict # bool operator
assert static_type_equals(cdval, CompoundTest)
# Set with incorrect key type should give TypeError.
with pytest.raises(TypeError):
@@ -171,8 +176,9 @@ def test_entity_values_2() -> None:
assert ent.enumval2 is None
# Nested compound values
- assert not ent.grp.compoundlist
+ assert not ent.grp.compoundlist # bool operator
val = ent.grp.compoundlist.append()
+ assert ent.grp.compoundlist # bool operator
assert static_type_equals(val, SubCompoundTest)
assert static_type_equals(ent.grp.compoundlist[0], SubCompoundTest)
assert static_type_equals(ent.grp.compoundlist[0].subval, bool)
diff --git a/tools/batools/build.py b/tools/batools/build.py
index dbd1769f..ed784c40 100644
--- a/tools/batools/build.py
+++ b/tools/batools/build.py
@@ -280,26 +280,34 @@ def gen_fulltest_buildfile_android() -> None:
if DO_SPARSE_TEST_BUILDS:
extras = SPARSE_TEST_BUILDS[dayoffset % len(SPARSE_TEST_BUILDS)]
extras = [e for e in extras if e.startswith('android.')]
+ cspre = 'tools/cloudshell linbeast --env android --'
for extra in extras:
if extra == 'android.pylibs.arm':
- lines.append('tools/pcommand python_build_android arm')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android arm')
elif extra == 'android.pylibs.arm.debug':
- lines.append('tools/pcommand python_build_android_debug arm')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android_debug arm')
elif extra == 'android.pylibs.arm64':
- lines.append('tools/pcommand python_build_android arm64')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android arm64')
elif extra == 'android.pylibs.arm64.debug':
- lines.append('tools/pcommand python_build_android_debug arm64')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android_debug arm64')
elif extra == 'android.pylibs.x86':
- lines.append('tools/pcommand python_build_android x86')
+ lines.append(f'{cspre}tools/pcommand'
+ f' python_build_android x86')
elif extra == 'android.pylibs.x86.debug':
- lines.append('tools/pcommand python_build_android_debug x86')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android_debug x86')
elif extra == 'android.pylibs.x86_64':
- lines.append('tools/pcommand python_build_android x86_64')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android x86_64')
elif extra == 'android.pylibs.x86_64.debug':
- lines.append(
- 'tools/pcommand python_build_android_debug x86_64')
+ lines.append(f'{cspre} tools/pcommand'
+ f' python_build_android_debug x86_64')
elif extra == 'android.package':
- lines.append('make android-package')
+ lines.append('make android-cloud-package')
else:
raise RuntimeError(f'Unknown extra: {extra}')
@@ -588,7 +596,7 @@ def update_makebob() -> None:
check=True,
)
print('Building linux_x86_64...', flush=True)
- subprocess.run(['make', 'linux-build'], check=True, env=env)
+ subprocess.run(['make', 'linux-vm-build'], check=True, env=env)
subprocess.run(
[
'cp', '-v', 'build/linux-release/make_bob',
diff --git a/tools/efro/entity/_entity.py b/tools/efro/entity/_entity.py
index 220d243d..7cc970b4 100644
--- a/tools/efro/entity/_entity.py
+++ b/tools/efro/entity/_entity.py
@@ -18,7 +18,7 @@ T = TypeVar('T', bound='EntityMixin')
class EntityMixin:
- """Mixin class to add data-storage to ComplexValue, forming an Entity.
+ """Mixin class to add data-storage to CompoundValue, forming an Entity.
Distinct Entity types should inherit from this first and a CompoundValue
(sub)type second. This order ensures that constructor arguments for this
diff --git a/tools/efrotools/code.py b/tools/efrotools/code.py
index 34b79035..02ff7cd7 100644
--- a/tools/efrotools/code.py
+++ b/tools/efrotools/code.py
@@ -811,7 +811,7 @@ def pycharm(projroot: Path, full: bool, verbose: bool) -> None:
# Wait a bit and ask it nicely to die.
# We need to make sure it has enough time to do its cache updating
# thing even if the system is fully under load.
- time.sleep(10 * 60)
+ time.sleep(5 * 60)
# Seems killing it via applescript is more likely to leave it
# in a working state for offline inspections than TERM signal..
diff --git a/tools/efrotools/pybuild.py b/tools/efrotools/pybuild.py
index 016b5a7e..0aa7eec6 100644
--- a/tools/efrotools/pybuild.py
+++ b/tools/efrotools/pybuild.py
@@ -50,7 +50,8 @@ def build_apple(arch: str, debug: bool = False) -> None:
run('rm -rf "' + builddir + '"')
run('mkdir -p build')
run('git clone '
- 'git@github.com:pybee/Python-Apple-support.git "' + builddir + '"')
+ 'https://github.com/beeware/Python-Apple-support.git "' + builddir +
+ '"')
os.chdir(builddir)
# TEMP: Check out a particular commit while the branch head is broken.
@@ -220,26 +221,28 @@ def build_android(rootdir: str, arch: str, debug: bool = False) -> None:
(can be arm, arm64, x86, or x86_64)
"""
import subprocess
+ import platform
builddir = 'build/python_android_' + arch + ('_debug' if debug else '')
run('rm -rf "' + builddir + '"')
run('mkdir -p build')
run('git clone '
- 'git@github.com:yan12125/python3-android.git "' + builddir + '"')
+ 'https://github.com/yan12125/python3-android.git "' + builddir + '"')
os.chdir(builddir)
# It seems we now need 'autopoint' as part of this build, but on mac it
# is not available on the normal path, but only as part of the keg-only
# gettext homebrew formula.
- if (subprocess.run('which autopoint', shell=True, check=False).returncode
- != 0):
- print('Updating path for mac autopoint...')
- appath = subprocess.run('brew ls gettext | grep bin/autopoint',
- shell=True,
- check=True,
- capture_output=True)
- appathout = os.path.dirname(appath.stdout.decode().strip())
- os.environ['PATH'] += (':' + appathout)
- print(f'ADDED "{appathout}" TO SYS PATH...')
+ if platform.system() == 'Darwin':
+ if (subprocess.run('which autopoint', shell=True,
+ check=False).returncode != 0):
+ print('Updating path for mac autopoint...')
+ appath = subprocess.run('brew ls gettext | grep bin/autopoint',
+ shell=True,
+ check=True,
+ capture_output=True)
+ appathout = os.path.dirname(appath.stdout.decode().strip())
+ os.environ['PATH'] += (':' + appathout)
+ print(f'ADDED "{appathout}" TO SYS PATH...')
# Commit from Jan 8, 2020. Right after this, the build system was switched
# a a completely new minimal one which will take some work to update here.