mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-01-19 21:37:57 +08:00
tidying
This commit is contained in:
parent
d751593adb
commit
b183138ecd
88
.efrocachemap
generated
88
.efrocachemap
generated
@ -4072,50 +4072,50 @@
|
||||
"build/assets/workspace/ninjafightplug.py": "https://files.ballistica.net/cache/ba1/18/4b/787a9267e17be3c49966072581a5",
|
||||
"build/assets/workspace/onslaughtplug.py": "https://files.ballistica.net/cache/ba1/20/f6/4ce9bc3c1f3732f6adf8237fbe9b",
|
||||
"build/assets/workspace/runaroundplug.py": "https://files.ballistica.net/cache/ba1/a5/30/9058181df0b1255bf6950cbc7813",
|
||||
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/88/5a/046584c2f9bb1dfaf2cc7305811a",
|
||||
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/04/21/578917394a42afdaa94a6d0c2af1",
|
||||
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/9c/cc/b1456d7f585078f0b5116e16ca5b",
|
||||
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/6a/4c/8eefc8bca27698731ae4eb385b31",
|
||||
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/ba/e7/14a5244c9740a6a3ca510a17d9d2",
|
||||
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/c5/23/55a127747393ea1bdb45d52f8ef3",
|
||||
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/62/39/db07ddb660c23869885b6dfeb2bd",
|
||||
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/f9/88/89c742f5d6d2d03858edc409107c",
|
||||
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/23/9e/2c6f955ad9ee17fd0fd0d132127e",
|
||||
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/36/f1/cf87abc5c2d38e21f31d17783c64",
|
||||
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/96/94/b9ca75a69e7c2fe122d1af08684e",
|
||||
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/f5/0b/0bf0d0d9722df1c2bd4a9566166f",
|
||||
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/a0/83/b185f5ee357b4730bd96df784bf5",
|
||||
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/40/2e/291910a12f2e637d585a23732e39",
|
||||
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/b5/97/fdf687c944dff99145350594fbd6",
|
||||
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/bc/e6/acb2fa1eebb0c8219919fc7bd904",
|
||||
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "https://files.ballistica.net/cache/ba1/43/1d/1e30712c0f7bbed6bc4c4d19d9be",
|
||||
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "https://files.ballistica.net/cache/ba1/b9/03/9f180b240019437ebdad1d2450b3",
|
||||
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "https://files.ballistica.net/cache/ba1/ee/1c/c2f9d7571fa7123305727345c493",
|
||||
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "https://files.ballistica.net/cache/ba1/13/66/5f85708aab5186b5c2cc7dad5628",
|
||||
"build/prefab/lib/linux_arm64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/f6/e4/1fc7d7c6701ca9d1a4fc104c11a0",
|
||||
"build/prefab/lib/linux_arm64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/d2/40/7b8787a2a20b2bf5b853762abf82",
|
||||
"build/prefab/lib/linux_arm64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/3d/a9/4d58c1ba26c71020600f16212c59",
|
||||
"build/prefab/lib/linux_arm64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/a1/81/6700b345f65181be591b999bd0ba",
|
||||
"build/prefab/lib/linux_x86_64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/9b/f3/3e6848d3d51e45f2bc892ba866fe",
|
||||
"build/prefab/lib/linux_x86_64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/71/26/3e4f7d23518f3d4dd719223c7bd5",
|
||||
"build/prefab/lib/linux_x86_64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/41/30/ebf7264a7846b7e17d2ccee1e68e",
|
||||
"build/prefab/lib/linux_x86_64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/b7/36/7b5926a3f526c4f53beeb85e0f28",
|
||||
"build/prefab/lib/mac_arm64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/bb/df/26fd523b58edf61c230e0d8c29a9",
|
||||
"build/prefab/lib/mac_arm64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/60/d6/d24629a9c4cc8d53034b166533fc",
|
||||
"build/prefab/lib/mac_arm64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/ae/74/add4f1b22a9d870deab498a78150",
|
||||
"build/prefab/lib/mac_arm64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/60/cc/efd87e8316e57e6060c0f8c1c3b5",
|
||||
"build/prefab/lib/mac_x86_64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/06/a5/b9dc8830177144edccc3361f2380",
|
||||
"build/prefab/lib/mac_x86_64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/d6/55/0ed426d7d9718e6c7cfa25ed45fa",
|
||||
"build/prefab/lib/mac_x86_64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/36/d9/1bac79e3118546083de075c591eb",
|
||||
"build/prefab/lib/mac_x86_64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/0d/51/6431fa180fe6ca7a4f5e755deb13",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "https://files.ballistica.net/cache/ba1/88/27/5acc5bf12db2eeafad941cb4983c",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "https://files.ballistica.net/cache/ba1/b5/17/999fb8864717791fdb549e8d27ee",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "https://files.ballistica.net/cache/ba1/75/a7/8a9faed3b33c85ed48becd57b96e",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "https://files.ballistica.net/cache/ba1/7c/a5/7e049cf1b1974b1dafa6a5a5c651",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "https://files.ballistica.net/cache/ba1/e0/2e/0fb1dcf86dc106e610cdf85d9904",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "https://files.ballistica.net/cache/ba1/f1/4f/6d693934819c9fa3b46f5796d040",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "https://files.ballistica.net/cache/ba1/a2/98/1149701221912567fed626f41262",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "https://files.ballistica.net/cache/ba1/9c/51/6659783ad53b29633d8962fa6463",
|
||||
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/cb/2b/b20e3667a76de438a96f0afc0305",
|
||||
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/46/7d/7d4757c004be2572c77b06b77bee",
|
||||
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/e7/f1/a546a5af991fe6ca8cad30151c45",
|
||||
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/0a/6a/ee6c62dfc7df0ee2649b4259859f",
|
||||
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/5c/72/34434953e56f2dc38a38ebc06c8c",
|
||||
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/81/13/a5095e89d11645df552e952934b2",
|
||||
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/e1/5d/2284e87c1eb013e2f9719f3af758",
|
||||
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/be/ed/d03bd1603588c5ee3941dcb098b0",
|
||||
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/b5/46/2ff94d2fd35975f6a78333811fce",
|
||||
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/84/56/c0a936571bf54f90b4f63d2044df",
|
||||
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/26/27/18a284bc01bc00d58b0547a6e6cc",
|
||||
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/36/ac/9001c8d1bd457b7345bfc41d78e9",
|
||||
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "https://files.ballistica.net/cache/ba1/b0/8f/ae5bfba34e6c8652825165e1a91d",
|
||||
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "https://files.ballistica.net/cache/ba1/3c/29/3a0fb2e030569a1e72e26d19b79e",
|
||||
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/aa/8c/baa3f85599add12b5fb9c6d36a25",
|
||||
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "https://files.ballistica.net/cache/ba1/7c/99/ee5199e38af7e9e26018bd8e53bf",
|
||||
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "https://files.ballistica.net/cache/ba1/54/9c/4e83da01264024628839375ee954",
|
||||
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "https://files.ballistica.net/cache/ba1/b5/8a/3c7f11a2b165425faeab02b6854b",
|
||||
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "https://files.ballistica.net/cache/ba1/ae/90/e625b0ef976e7a4d101f184ca70e",
|
||||
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "https://files.ballistica.net/cache/ba1/fb/1e/94322715fea49e0450bfc38cd2eb",
|
||||
"build/prefab/lib/linux_arm64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/e1/36/4336b37f86fd4a4870133803fab7",
|
||||
"build/prefab/lib/linux_arm64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/19/e8/69f3145d1a635ff682323d5122a7",
|
||||
"build/prefab/lib/linux_arm64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/62/12/fc103a5a8e2e6a607499b8887c65",
|
||||
"build/prefab/lib/linux_arm64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/75/d5/4fc5951cf8408dc074a523ec0ecc",
|
||||
"build/prefab/lib/linux_x86_64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/e6/35/64ef9eb0aa12b25a35ec4cf94d73",
|
||||
"build/prefab/lib/linux_x86_64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/f6/9f/96526d08d8d151381b999206a22c",
|
||||
"build/prefab/lib/linux_x86_64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/cf/ac/6b205f3ec382b27a63835723f062",
|
||||
"build/prefab/lib/linux_x86_64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/14/09/738e56ba494bfbd25b4d0fd20439",
|
||||
"build/prefab/lib/mac_arm64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/5e/15/de8816c5b0978d58a5a97b5dc96b",
|
||||
"build/prefab/lib/mac_arm64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/cf/05/4b089f20f8673bbeaff43ad22316",
|
||||
"build/prefab/lib/mac_arm64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/8c/ea/d02addfdff12637679eb84fc0c76",
|
||||
"build/prefab/lib/mac_arm64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/3b/3d/cb40316b8f1bcf2be6726e7caa02",
|
||||
"build/prefab/lib/mac_x86_64_gui/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/cc/50/4e046e25f8aa45acf1dec45a3ac8",
|
||||
"build/prefab/lib/mac_x86_64_gui/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/0b/0b/3df53fda69cf1bbde139a737155d",
|
||||
"build/prefab/lib/mac_x86_64_server/debug/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/48/72/2bb9986c42cb3f830622bba48b84",
|
||||
"build/prefab/lib/mac_x86_64_server/release/libballistica_plus.a": "https://files.ballistica.net/cache/ba1/cf/55/0266ad6c51ea654700d6e5401942",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "https://files.ballistica.net/cache/ba1/69/cb/33e310a3a4088fd8d01a791a4101",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "https://files.ballistica.net/cache/ba1/29/14/0c633d4d62106e27fad7e93bd1ee",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "https://files.ballistica.net/cache/ba1/f9/6a/02d03767f94811eec30204d75317",
|
||||
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "https://files.ballistica.net/cache/ba1/90/2e/9a54913813513c1d3a44af34bd8a",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "https://files.ballistica.net/cache/ba1/bc/20/abfd0ae02083fd0ee86b6d784df7",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "https://files.ballistica.net/cache/ba1/87/bc/b7cc546fda6955c72db6cabc055b",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "https://files.ballistica.net/cache/ba1/db/d6/6111b49e4ea15032002dea192c53",
|
||||
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "https://files.ballistica.net/cache/ba1/2d/dd/e753ae37c3c6fdc50c36174d0815",
|
||||
"src/assets/ba_data/python/babase/_mgen/__init__.py": "https://files.ballistica.net/cache/ba1/52/c6/c11130af7b10d6c0321add5518fa",
|
||||
"src/assets/ba_data/python/babase/_mgen/enums.py": "https://files.ballistica.net/cache/ba1/38/c3/1dedd5e74f2508efc5974c8815a1",
|
||||
"src/ballistica/base/mgen/pyembed/binding_base.inc": "https://files.ballistica.net/cache/ba1/ea/6a/6a4721b144e5e297b542d2a0eea2",
|
||||
|
||||
1
.idea/dictionaries/ericf.xml
generated
1
.idea/dictionaries/ericf.xml
generated
@ -130,6 +130,7 @@
|
||||
<w>apprun</w>
|
||||
<w>appspot</w>
|
||||
<w>appstate</w>
|
||||
<w>appstatedata</w>
|
||||
<w>appstore</w>
|
||||
<w>appsubsystem</w>
|
||||
<w>apptime</w>
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
### 1.7.20 (build 21121, api 8, 2023-06-16)
|
||||
### 1.7.20 (build 21122, api 8, 2023-06-16)
|
||||
|
||||
- This seems like a good time for a `refactoring` release in anticipation of
|
||||
changes coming in 1.8. Basically this means that a lot of things will be
|
||||
@ -340,13 +340,18 @@
|
||||
its working.
|
||||
- (build 21118) Fixed an issue where certain messages such as player-left
|
||||
weren't being send to clients.
|
||||
- (build 21118) renamed `bascenev1.screenmessage()` to
|
||||
- (build 21118) Renamed `bascenev1.screenmessage()` to
|
||||
`bascenev1.broadcastmessage()` to make it more clear that it behaves
|
||||
differently (sending messages to all connected clients instead of just the
|
||||
local screen). There is still a `bascenev1.screenmessage()` but that is now
|
||||
the same local-only version available in babase. Added a temporary warning if
|
||||
calling screenmessage() in a situation that in previous versions would have
|
||||
done a broadcast.
|
||||
- (build 21121) The old app `user_agent_string` which was very ugly and
|
||||
cluttered and nonstandard has been renamed to `legacy_user_agent_string`. A
|
||||
newer simpler one is now available from `babase.user_agent_string()`. It looks
|
||||
like `Ballistica/1.7.20`. If OS version or platform or whatever else needs to
|
||||
be communicated to a server, it should be passed explicitly as extra data.
|
||||
|
||||
### 1.7.19 (build 20997, api 7, 2023-01-19)
|
||||
|
||||
|
||||
1
ballisticakit-cmake/.idea/dictionaries/ericf.xml
generated
1
ballisticakit-cmake/.idea/dictionaries/ericf.xml
generated
@ -88,6 +88,7 @@
|
||||
<w>apprun</w>
|
||||
<w>appspot</w>
|
||||
<w>appstate</w>
|
||||
<w>appstatedata</w>
|
||||
<w>appsubsystem</w>
|
||||
<w>apptime</w>
|
||||
<w>apptimer</w>
|
||||
|
||||
@ -81,6 +81,7 @@ from _babase import (
|
||||
show_progress_bar,
|
||||
SimpleSound,
|
||||
unlock_all_input,
|
||||
user_agent_string,
|
||||
Vec3,
|
||||
workspaces_in_use,
|
||||
)
|
||||
@ -275,6 +276,7 @@ __all__ = [
|
||||
'timestring',
|
||||
'UIScale',
|
||||
'unlock_all_input',
|
||||
'user_agent_string',
|
||||
'utf8_all',
|
||||
'Vec3',
|
||||
'vec3validate',
|
||||
|
||||
@ -103,7 +103,7 @@ def handle_v1_cloud_log() -> None:
|
||||
'log': _babase.get_v1_cloud_log(),
|
||||
'version': app.version,
|
||||
'build': app.build_number,
|
||||
'userAgentString': app.classic.user_agent_string,
|
||||
'userAgentString': app.classic.legacy_user_agent_string,
|
||||
'session': sessionname,
|
||||
'activity': activityname,
|
||||
'fatal': 0,
|
||||
@ -339,10 +339,14 @@ def log_dumped_app_state() -> None:
|
||||
_tb_held_files.clear()
|
||||
|
||||
with open(mdpath, 'r', encoding='utf-8') as infile:
|
||||
metadata = dataclass_from_json(
|
||||
DumpedAppStateMetadata, infile.read()
|
||||
)
|
||||
appstatedata = infile.read()
|
||||
|
||||
# Kill the file first in case we can't parse the data; don't
|
||||
# want to get stuck doing this repeatedly.
|
||||
os.unlink(mdpath)
|
||||
|
||||
metadata = dataclass_from_json(DumpedAppStateMetadata, appstatedata)
|
||||
|
||||
out += (
|
||||
f'App state dump:\nReason: {metadata.reason}\n'
|
||||
f'Time: {metadata.app_time:.2f}'
|
||||
|
||||
@ -185,7 +185,11 @@ def fetch_url(url: str, filename: Path, asset_gather: AssetGather) -> None:
|
||||
# Pass a very short timeout to urllib so we have opportunities
|
||||
# to cancel even with network blockage.
|
||||
req = urllib.request.urlopen(
|
||||
url, context=_babase.app.net.sslcontext, timeout=1
|
||||
urllib.request.Request(
|
||||
url, None, {'User-Agent': _babase.user_agent_string()}
|
||||
),
|
||||
context=_babase.app.net.sslcontext,
|
||||
timeout=1,
|
||||
)
|
||||
file_size = int(req.headers['Content-Length'])
|
||||
print(f'\nDownloading: {filename} Bytes: {file_size:,}')
|
||||
|
||||
@ -26,7 +26,7 @@ def get_input_device_mapped_value(
|
||||
|
||||
app = babase.app
|
||||
assert app.classic is not None
|
||||
useragentstring = app.classic.user_agent_string
|
||||
useragentstring = app.classic.legacy_user_agent_string
|
||||
platform = app.classic.platform
|
||||
subplatform = app.classic.subplatform
|
||||
appconfig = babase.app.config
|
||||
|
||||
@ -165,7 +165,7 @@ class MusicSubsystem:
|
||||
|
||||
def supports_soundtrack_entry_type(self, entry_type: str) -> bool:
|
||||
"""Return whether provided soundtrack entry type is supported here."""
|
||||
uas = babase.env()['user_agent_string']
|
||||
uas = babase.env()['legacy_user_agent_string']
|
||||
assert isinstance(uas, str)
|
||||
|
||||
# FIXME: Generalize this.
|
||||
|
||||
@ -81,7 +81,8 @@ class MasterServerV1CallThread(threading.Thread):
|
||||
response_data: Any = None
|
||||
url: str | None = None
|
||||
try:
|
||||
assert babase.app.classic is not None
|
||||
classic = babase.app.classic
|
||||
assert classic is not None
|
||||
self._data = babase.utf8_all(self._data)
|
||||
babase.set_thread_name('BA_ServerCallThread')
|
||||
if self._request_type == 'get':
|
||||
@ -97,7 +98,7 @@ class MasterServerV1CallThread(threading.Thread):
|
||||
urllib.request.Request(
|
||||
url,
|
||||
None,
|
||||
{'User-Agent': babase.app.classic.user_agent_string},
|
||||
{'User-Agent': classic.legacy_user_agent_string},
|
||||
),
|
||||
context=babase.app.net.sslcontext,
|
||||
timeout=DEFAULT_REQUEST_TIMEOUT_SECONDS,
|
||||
@ -109,7 +110,7 @@ class MasterServerV1CallThread(threading.Thread):
|
||||
urllib.request.Request(
|
||||
url,
|
||||
urllib.parse.urlencode(self._data).encode(),
|
||||
{'User-Agent': babase.app.classic.user_agent_string},
|
||||
{'User-Agent': classic.legacy_user_agent_string},
|
||||
),
|
||||
context=babase.app.net.sslcontext,
|
||||
timeout=DEFAULT_REQUEST_TIMEOUT_SECONDS,
|
||||
|
||||
@ -139,10 +139,10 @@ class ClassicSubsystem(babase.AppSubsystem):
|
||||
return self._env['subplatform']
|
||||
|
||||
@property
|
||||
def user_agent_string(self) -> str:
|
||||
def legacy_user_agent_string(self) -> str:
|
||||
"""String containing various bits of info about OS/device/etc."""
|
||||
assert isinstance(self._env['user_agent_string'], str)
|
||||
return self._env['user_agent_string']
|
||||
assert isinstance(self._env['legacy_user_agent_string'], str)
|
||||
return self._env['legacy_user_agent_string']
|
||||
|
||||
def on_app_loading(self) -> None:
|
||||
from bascenev1lib.actor import spazappearance
|
||||
|
||||
@ -28,7 +28,7 @@ if TYPE_CHECKING:
|
||||
|
||||
# Build number and version of the ballistica binary we expect to be
|
||||
# using.
|
||||
TARGET_BALLISTICA_BUILD = 21121
|
||||
TARGET_BALLISTICA_BUILD = 21122
|
||||
TARGET_BALLISTICA_VERSION = '1.7.20'
|
||||
|
||||
_g_env_config: EnvConfig | None = None
|
||||
|
||||
@ -381,7 +381,7 @@ class MainMenuWindow(bui.Window):
|
||||
resource=self._r
|
||||
+ (
|
||||
'.quitText'
|
||||
if 'Mac' in app.classic.user_agent_string
|
||||
if 'Mac' in app.classic.legacy_user_agent_string
|
||||
else '.exitGameText'
|
||||
)
|
||||
),
|
||||
|
||||
@ -828,7 +828,7 @@ class GamepadSettingsWindow(bui.Window):
|
||||
classic.master_server_v1_post(
|
||||
'controllerConfig',
|
||||
{
|
||||
'ua': classic.user_agent_string,
|
||||
'ua': classic.legacy_user_agent_string,
|
||||
'b': bui.app.build_number,
|
||||
'name': self._name,
|
||||
'inputMapHash': inputhash,
|
||||
|
||||
@ -299,7 +299,7 @@ class ConfigKeyboardWindow(bui.Window):
|
||||
bui.app.classic.master_server_v1_post(
|
||||
'controllerConfig',
|
||||
{
|
||||
'ua': bui.app.classic.user_agent_string,
|
||||
'ua': bui.app.classic.legacy_user_agent_string,
|
||||
'name': self._name,
|
||||
'b': bui.app.build_number,
|
||||
'config': dst2,
|
||||
|
||||
@ -200,7 +200,7 @@ def _run_diagnostics(weakwin: weakref.ref[NetTestingWindow]) -> None:
|
||||
|
||||
_print(
|
||||
f'Running network diagnostics...\n'
|
||||
f'ua: {bui.app.classic.user_agent_string}\n'
|
||||
f'ua: {bui.app.classic.legacy_user_agent_string}\n'
|
||||
f'time: {utc_now()}.'
|
||||
)
|
||||
|
||||
@ -414,7 +414,7 @@ def _test_fetch(baseaddr: str) -> None:
|
||||
urllib.request.Request(
|
||||
f'{baseaddr}/ping',
|
||||
None,
|
||||
{'User-Agent': bui.app.classic.user_agent_string},
|
||||
{'User-Agent': bui.app.classic.legacy_user_agent_string},
|
||||
),
|
||||
context=bui.app.net.sslcontext,
|
||||
timeout=MAX_TEST_SECONDS,
|
||||
|
||||
@ -36,7 +36,8 @@ void App::PostInit() {
|
||||
assert(true);
|
||||
#endif // !BA_DEBUG_BUILD
|
||||
|
||||
g_core->user_agent_string = g_core->platform->GetUserAgentString();
|
||||
g_core->set_legacy_user_agent_string(
|
||||
g_core->platform->GetLegacyUserAgentString());
|
||||
}
|
||||
|
||||
void App::LogicThreadApplyAppConfig() {
|
||||
|
||||
@ -648,7 +648,7 @@ static PyMethodDef PyCommitConfigDef = {
|
||||
"(internal)",
|
||||
};
|
||||
|
||||
// --------------------------------- env ---------------------------------------
|
||||
// ------------------------------- pre_env -------------------------------------
|
||||
|
||||
static auto PyPreEnv(PyObject* self) -> PyObject* {
|
||||
BA_PYTHON_TRY;
|
||||
@ -726,7 +726,7 @@ static auto PyEnv(PyObject* self) -> PyObject* {
|
||||
"si" // build_number
|
||||
"ss" // config_file_path
|
||||
"ss" // locale
|
||||
"ss" // user_agent_string
|
||||
"ss" // legacy_user_agent_string
|
||||
"ss" // version
|
||||
"sO" // debug_build
|
||||
"sO" // test_build
|
||||
@ -750,7 +750,7 @@ static auto PyEnv(PyObject* self) -> PyObject* {
|
||||
"build_number", kEngineBuildNumber,
|
||||
"config_file_path", g_core->platform->GetConfigFilePath().c_str(),
|
||||
"locale", g_core->platform->GetLocale().c_str(),
|
||||
"user_agent_string", g_core->user_agent_string.c_str(),
|
||||
"legacy_user_agent_string", g_core->legacy_user_agent_string().c_str(),
|
||||
"version", kEngineVersion,
|
||||
"debug_build", g_buildconfig.debug_build() ? Py_True : Py_False,
|
||||
"test_build", g_buildconfig.test_build() ? Py_True : Py_False,
|
||||
@ -1330,6 +1330,27 @@ static PyMethodDef PyReachedEndOfBaBaseDef = {
|
||||
|
||||
"reached_end_of_babase() -> None\n"
|
||||
"\n"
|
||||
"A simple user-agent-string that should be used in any web requests made\n"
|
||||
"on behalf of the engine.",
|
||||
};
|
||||
|
||||
// --------------------------- user_agent_string -------------------------------
|
||||
|
||||
static auto PyUserAgentString(PyObject* self) -> PyObject* {
|
||||
BA_PYTHON_TRY;
|
||||
char buffer[64];
|
||||
snprintf(buffer, sizeof(buffer), "Ballistica/%s", kEngineVersion);
|
||||
return PyUnicode_FromString(buffer);
|
||||
BA_PYTHON_CATCH;
|
||||
}
|
||||
|
||||
static PyMethodDef PyUserAgentStringDef = {
|
||||
"user_agent_string", // name
|
||||
(PyCFunction)PyUserAgentString, // method
|
||||
METH_NOARGS, // flags
|
||||
|
||||
"user_agent_string() -> str\n"
|
||||
"\n"
|
||||
"(internal)\n",
|
||||
};
|
||||
|
||||
@ -1375,6 +1396,7 @@ auto PythonMethodsApp::GetMethods() -> std::vector<PyMethodDef> {
|
||||
PyOnAppRunningDef,
|
||||
PyOnInitialAppModeSetDef,
|
||||
PyReachedEndOfBaBaseDef,
|
||||
PyUserAgentStringDef,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@ -100,6 +100,14 @@ class CoreFeatureSet {
|
||||
/// any source file paths we print.
|
||||
auto build_src_dir() const { return build_src_dir_; }
|
||||
|
||||
const auto& legacy_user_agent_string() const {
|
||||
return legacy_user_agent_string_;
|
||||
}
|
||||
|
||||
void set_legacy_user_agent_string(const std::string& val) {
|
||||
legacy_user_agent_string_ = val;
|
||||
}
|
||||
|
||||
// Subsystems.
|
||||
CorePython* const python;
|
||||
CorePlatform* const platform;
|
||||
@ -121,7 +129,6 @@ class CoreFeatureSet {
|
||||
bool should_pause{};
|
||||
bool reset_vr_orientation{};
|
||||
bool user_ran_commands{};
|
||||
std::string user_agent_string{"BA_USER_AGENT_UNSET (" BA_PLATFORM_STRING ")"};
|
||||
int return_value{};
|
||||
bool debug_timing{};
|
||||
std::thread::id main_thread_id{};
|
||||
@ -149,6 +156,8 @@ class CoreFeatureSet {
|
||||
microsecs_t app_time_microsecs_{};
|
||||
microsecs_t last_app_time_measure_microsecs_;
|
||||
std::mutex app_time_mutex_;
|
||||
std::string legacy_user_agent_string_{
|
||||
"BA_USER_AGENT_UNSET (" BA_PLATFORM_STRING ")"};
|
||||
};
|
||||
|
||||
} // namespace ballistica::core
|
||||
|
||||
@ -573,7 +573,7 @@ auto CorePlatform::GetIsStdinATerminal() -> bool {
|
||||
|
||||
auto CorePlatform::GetOSVersionString() -> std::string { return ""; }
|
||||
|
||||
auto CorePlatform::GetUserAgentString() -> std::string {
|
||||
auto CorePlatform::GetLegacyUserAgentString() -> std::string {
|
||||
std::string device = GetDeviceName();
|
||||
std::string version = GetOSVersionString();
|
||||
if (!version.empty()) {
|
||||
|
||||
@ -187,7 +187,10 @@ class CorePlatform {
|
||||
/// Return en_US or whatnot.
|
||||
virtual auto GetLocale() -> std::string;
|
||||
|
||||
virtual auto GetUserAgentString() -> std::string;
|
||||
/// Get the older more complex user-agent-string, used for communication
|
||||
/// with v1 servers/etc. This can go away eventually.
|
||||
auto GetLegacyUserAgentString() -> std::string;
|
||||
|
||||
virtual auto GetOSVersionString() -> std::string;
|
||||
|
||||
/// Set an environment variable as utf8, overwriting if it already exists.
|
||||
|
||||
@ -222,12 +222,14 @@ static auto PyGetUIInputDevice(PyObject* self, PyObject* args, PyObject* keywds)
|
||||
dynamic_cast<SceneV1InputDeviceDelegate*>(delegate)) {
|
||||
return c_delegate->NewPyRef();
|
||||
} else {
|
||||
// Perhaps will want to return None in this case once we've got
|
||||
// newer versions of InputDevice; we'll see...
|
||||
throw Exception(
|
||||
"Unexpected delegate "
|
||||
+ (delegate ? delegate->GetObjectDescription() : "(nullptr)")
|
||||
+ " for ui-input-device " + d->GetObjectDescription() + ".");
|
||||
// Assuming this would be due to getting called in another app-mode.
|
||||
// Wonder if it would be wise to error in that case...
|
||||
BA_LOG_ONCE(
|
||||
LogLevel::kWarning,
|
||||
"scene_v1: Found unexpected delegate "
|
||||
+ (delegate ? delegate->GetObjectDescription() : "(nullptr)")
|
||||
+ " for ui-input-device " + d->GetObjectDescription() + ".");
|
||||
Py_RETURN_NONE;
|
||||
}
|
||||
} else {
|
||||
Py_RETURN_NONE;
|
||||
@ -240,7 +242,7 @@ static PyMethodDef PyGetUIInputDeviceDef = {
|
||||
(PyCFunction)PyGetUIInputDevice, // method
|
||||
METH_VARARGS | METH_KEYWORDS, // flags
|
||||
|
||||
"get_ui_input_device() -> bascenev1.InputDevice\n"
|
||||
"get_ui_input_device() -> bascenev1.InputDevice | None\n"
|
||||
"\n"
|
||||
"(internal)\n"
|
||||
"\n"
|
||||
|
||||
@ -39,7 +39,7 @@ auto main(int argc, char** argv) -> int {
|
||||
namespace ballistica {
|
||||
|
||||
// These are set automatically via script; don't modify them here.
|
||||
const int kEngineBuildNumber = 21121;
|
||||
const int kEngineBuildNumber = 21122;
|
||||
const char* kEngineVersion = "1.7.20";
|
||||
|
||||
auto MonolithicMain(const core::CoreConfig& core_config) -> int {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user