0.3.0: sync Rudder.Core 0.3.0, prod default URLs, drop editor artifacts, CI publish
This commit is contained in:
@@ -0,0 +1,42 @@
|
|||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [main, master]
|
||||||
|
tags: ['v*']
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
check:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Validate package.json
|
||||||
|
run: node -e "JSON.parse(require('fs').readFileSync('Packages/rudder.sdk/package.json', 'utf8'))"
|
||||||
|
|
||||||
|
- name: Verify bundled Rudder.Core.dll
|
||||||
|
run: test -f Packages/rudder.sdk/Runtime/Plugins/Rudder.Core.dll
|
||||||
|
|
||||||
|
publish:
|
||||||
|
if: startsWith(github.ref, 'refs/tags/v')
|
||||||
|
needs: check
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set up Node
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: 20
|
||||||
|
|
||||||
|
- name: Configure registry auth
|
||||||
|
run: echo "//hub.rudder.build/api/packages/rudder/npm/:_authToken=${{ secrets.GITEA_TOKEN }}" > Packages/rudder.sdk/.npmrc
|
||||||
|
|
||||||
|
- name: Pack
|
||||||
|
run: make pack
|
||||||
|
|
||||||
|
- name: Publish
|
||||||
|
run: make publish
|
||||||
@@ -4,6 +4,10 @@
|
|||||||
/[Oo]bj/
|
/[Oo]bj/
|
||||||
/[Bb]uild/
|
/[Bb]uild/
|
||||||
/[Bb]uilds/
|
/[Bb]uilds/
|
||||||
|
/[Uu]ser[Ss]ettings/
|
||||||
|
|
||||||
|
# Burst compiler artifacts
|
||||||
|
/Data/Plugins/lib_burst_generated.*
|
||||||
|
|
||||||
# Visual Studio / Rider
|
# Visual Studio / Rider
|
||||||
.vs/
|
.vs/
|
||||||
|
|||||||
@@ -1,10 +0,0 @@
|
|||||||
|
|
||||||
extern "C"
|
|
||||||
{
|
|
||||||
void Staticburst_initialize(void* );
|
|
||||||
void* StaticBurstStaticMethodLookup(void* );
|
|
||||||
|
|
||||||
int burst_enable_static_linkage = 1;
|
|
||||||
void burst_initialize(void* i) { Staticburst_initialize(i); }
|
|
||||||
void* BurstStaticMethodLookup(void* i) { return StaticBurstStaticMethodLookup(i); }
|
|
||||||
}
|
|
||||||
Binary file not shown.
@@ -1,5 +1,20 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.3.0
|
||||||
|
|
||||||
|
Breaking changes, following the Rudder.Core 0.3.0 rework:
|
||||||
|
|
||||||
|
- Bundled `Rudder.Core.dll` updated to 0.3.0: the UGC surface is gone
|
||||||
|
(`client.Ugc`, `IUploadTransport`, `RudderClientOptions.UploadTransport`),
|
||||||
|
`BattlePassService` methods now take scenario context, `BattlePassSession`
|
||||||
|
exposes bound battle pass operations, and `BattlePassLevelSession.Complete`
|
||||||
|
was renamed to `Claim`.
|
||||||
|
- `UnityUploadTransport` removed together with the core `IUploadTransport`
|
||||||
|
abstraction; the factory no longer wires an upload transport.
|
||||||
|
- `RudderConfiguration` defaults now point at production
|
||||||
|
(`https://api.rudder.build`); `RealtimeUrl` follows the prod `wss://`
|
||||||
|
pattern but the relay is not deployed yet.
|
||||||
|
|
||||||
## 0.2.0
|
## 0.2.0
|
||||||
|
|
||||||
Breaking changes, following the Rudder.Core 0.2.0 rework:
|
Breaking changes, following the Rudder.Core 0.2.0 rework:
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ your project's `Packages/manifest.json`:
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"rudder.sdk": "0.2.0",
|
"rudder.sdk": "0.3.0",
|
||||||
"com.unity.nuget.newtonsoft-json": "3.2.2"
|
"com.unity.nuget.newtonsoft-json": "3.2.2"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -49,7 +49,7 @@ var stores = await client.Stores.ListAsync();
|
|||||||
|
|
||||||
All features hang off the client: `Auth`, `Player`, `BattlePass`, `Quests`,
|
All features hang off the client: `Auth`, `Player`, `BattlePass`, `Quests`,
|
||||||
`Stores`, `Inventory`, `Leaderboards`, `RemoteConfig`, `Scenario`, `Storage`,
|
`Stores`, `Inventory`, `Leaderboards`, `RemoteConfig`, `Scenario`, `Storage`,
|
||||||
`Ugc`, `Realtime`.
|
`Realtime`.
|
||||||
|
|
||||||
```csharp
|
```csharp
|
||||||
client.Scenario.OnStoreOffer += session => { /* show offer UI */ };
|
client.Scenario.OnStoreOffer += session => { /* show offer UI */ };
|
||||||
|
|||||||
Binary file not shown.
@@ -15,7 +15,6 @@ namespace RudderSdk.Unity
|
|||||||
ProjectKey = options.ProjectKey,
|
ProjectKey = options.ProjectKey,
|
||||||
Logger = new UnityLoggerAdapter(options.LoggerSink ?? new UnityDebugLoggerSink()),
|
Logger = new UnityLoggerAdapter(options.LoggerSink ?? new UnityDebugLoggerSink()),
|
||||||
Transport = new UnityTransportAdapter(options.BaseUrl, executor),
|
Transport = new UnityTransportAdapter(options.BaseUrl, executor),
|
||||||
UploadTransport = new UnityUploadTransport(options.TimeoutSeconds),
|
|
||||||
TokenStore = new UnityTokenStoreAdapter(options.KeyValueStore),
|
TokenStore = new UnityTokenStoreAdapter(options.KeyValueStore),
|
||||||
DeviceIdProvider = new UnityDeviceIdProvider(),
|
DeviceIdProvider = new UnityDeviceIdProvider(),
|
||||||
Clock = new UnityClock(),
|
Clock = new UnityClock(),
|
||||||
|
|||||||
@@ -1,57 +0,0 @@
|
|||||||
using System.Threading;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using RudderSdk.Core;
|
|
||||||
using RudderSdk.Core.Abstractions;
|
|
||||||
using UnityEngine.Networking;
|
|
||||||
|
|
||||||
namespace RudderSdk.Unity
|
|
||||||
{
|
|
||||||
internal sealed class UnityUploadTransport : IUploadTransport
|
|
||||||
{
|
|
||||||
private const int DefaultTimeoutSeconds = 10;
|
|
||||||
|
|
||||||
private readonly int _timeoutSeconds;
|
|
||||||
|
|
||||||
public UnityUploadTransport(int timeoutSeconds = DefaultTimeoutSeconds)
|
|
||||||
{
|
|
||||||
_timeoutSeconds = timeoutSeconds > 0 ? timeoutSeconds : DefaultTimeoutSeconds;
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task PutAsync(string url, byte[] data, string contentType, CancellationToken cancellationToken = default)
|
|
||||||
{
|
|
||||||
using (var request = UnityWebRequest.Put(url, data ?? System.Array.Empty<byte>()))
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(contentType))
|
|
||||||
request.SetRequestHeader("Content-Type", contentType);
|
|
||||||
|
|
||||||
request.timeout = _timeoutSeconds;
|
|
||||||
|
|
||||||
var operation = request.SendWebRequest();
|
|
||||||
var completion = new TaskCompletionSource<bool>(TaskCreationOptions.RunContinuationsAsynchronously);
|
|
||||||
operation.completed += _ => completion.TrySetResult(true);
|
|
||||||
|
|
||||||
using (cancellationToken.Register(() =>
|
|
||||||
{
|
|
||||||
request.Abort();
|
|
||||||
completion.TrySetCanceled(cancellationToken);
|
|
||||||
}))
|
|
||||||
{
|
|
||||||
await completion.Task.ConfigureAwait(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (request.result == UnityWebRequest.Result.ConnectionError)
|
|
||||||
{
|
|
||||||
throw new RudderNetworkException(request.error);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (request.result == UnityWebRequest.Result.ProtocolError)
|
|
||||||
{
|
|
||||||
throw new RudderApiException(
|
|
||||||
(int)request.responseCode,
|
|
||||||
string.Empty,
|
|
||||||
request.error + ": " + request.downloadHandler?.text);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: 415e95ebea4594057990efb6707f3ebc
|
|
||||||
@@ -9,10 +9,10 @@ namespace RudderSdk.Unity
|
|||||||
public string ProjectKey;
|
public string ProjectKey;
|
||||||
|
|
||||||
[Tooltip("API base URL, e.g. https://api.rudder.build.")]
|
[Tooltip("API base URL, e.g. https://api.rudder.build.")]
|
||||||
public string BaseUrl = "http://localhost:8082";
|
public string BaseUrl = "https://api.rudder.build";
|
||||||
|
|
||||||
[Tooltip("Realtime websocket URL.")]
|
[Tooltip("Realtime websocket URL. The relay is not deployed yet; set this only once it is.")]
|
||||||
public string RealtimeUrl = "ws://localhost:8090/api/realtime/ws";
|
public string RealtimeUrl = "wss://api.rudder.build/api/realtime/ws";
|
||||||
|
|
||||||
[Tooltip("HTTP request timeout in seconds.")]
|
[Tooltip("HTTP request timeout in seconds.")]
|
||||||
[Min(1)]
|
[Min(1)]
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "rudder.sdk",
|
"name": "rudder.sdk",
|
||||||
"version": "0.2.0",
|
"version": "0.3.0",
|
||||||
"displayName": "Rudder SDK",
|
"displayName": "Rudder SDK",
|
||||||
"description": "LiveOps SDK for Unity — player auth, remote config, stores, inventory, leaderboards, scenarios, realtime.",
|
"description": "LiveOps SDK for Unity — player auth, remote config, stores, inventory, leaderboards, scenarios, realtime.",
|
||||||
"unity": "6000.0",
|
"unity": "6000.0",
|
||||||
|
|||||||
@@ -1,66 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!162 &1
|
|
||||||
EditorUserSettings:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 4
|
|
||||||
m_ConfigSettings:
|
|
||||||
GraphicsSettingsInspector_UserSettings:
|
|
||||||
value: 18134705175a055722080a3115371d4a0d55006876786860616b0471b8b16068acb16fb0be6f6e6d6e53b76b51234d7de203190efa02040e371bf10225e600163fc415c058925d3ede1010da8034dfa1c8
|
|
||||||
flags: 0
|
|
||||||
QuickInstaller_com.unity.purchasing_installRecorded:
|
|
||||||
value: 2550581500
|
|
||||||
flags: 0
|
|
||||||
QuickInstaller_com.unity.services.levelplay_installRecorded:
|
|
||||||
value: 2550581500
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-0:
|
|
||||||
value: 53020d535d070f0d540b0f7547770e45414e4d28797e27632c714f35e6e3306a
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-1:
|
|
||||||
value: 075501025d540a5d585f5e7214775d16154f1a7c2d702569282d1c61b2b9603c
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-2:
|
|
||||||
value: 5101075e03530b0b0f0a552646750d44124f1a287c7c7f347b7b4c31b0b16339
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-3:
|
|
||||||
value: 06095050510308035e595a7142775b45154e1e2874717f3375794e32b3b23568
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-4:
|
|
||||||
value: 5354060003000a0f0c58097a41770f47414e497f7d717f347e714e64b3e2356c
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-5:
|
|
||||||
value: 5108010051515e085e575f7347775d484e4e407c747b706474714835b5e6316a
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-6:
|
|
||||||
value: 0605555f52065a0f08080a2042735b44464f4979782a246128704a66b0e33669
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-7:
|
|
||||||
value: 0509555700565959580c0876487706124f151a2f2e7a7761297c1c65e1e23261
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-8:
|
|
||||||
value: 5a500c0452565f5f580b582443220d124714482e752d7e367a284b31b7e3603c
|
|
||||||
flags: 0
|
|
||||||
RecentlyUsedSceneGuid-9:
|
|
||||||
value: 00090d5f5d545f0d095a5d7311775a48124e1d2c797c24662b7b4b62e6b36668
|
|
||||||
flags: 0
|
|
||||||
vcSharedLogLevel:
|
|
||||||
value: 0d5e400f0650
|
|
||||||
flags: 0
|
|
||||||
m_VCAutomaticAdd: 1
|
|
||||||
m_VCDebugCom: 0
|
|
||||||
m_VCDebugCmd: 0
|
|
||||||
m_VCDebugOut: 0
|
|
||||||
m_SemanticMergeMode: 2
|
|
||||||
m_DesiredImportWorkerCount: 4
|
|
||||||
m_StandbyImportWorkerCount: 2
|
|
||||||
m_IdleImportWorkerShutdownDelay: 60000
|
|
||||||
m_VCShowFailedCheckout: 1
|
|
||||||
m_VCOverwriteFailedCheckoutAssets: 1
|
|
||||||
m_VCProjectOverlayIcons: 1
|
|
||||||
m_VCHierarchyOverlayIcons: 1
|
|
||||||
m_VCOtherOverlayIcons: 1
|
|
||||||
m_VCAllowAsyncUpdate: 1
|
|
||||||
m_VCScanLocalPackagesOnConnect: 1
|
|
||||||
m_ArtifactGarbageCollection: 1
|
|
||||||
m_CompressAssetsOnImport: 1
|
|
||||||
@@ -1,51 +0,0 @@
|
|||||||
{
|
|
||||||
"ValidContent": 8,
|
|
||||||
"ViewModelState": [],
|
|
||||||
"SearchText": "",
|
|
||||||
"Columns": [
|
|
||||||
{
|
|
||||||
"ColumnId": "Visibility",
|
|
||||||
"Visible": true,
|
|
||||||
"Width": 20.0,
|
|
||||||
"Index": 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "Picking",
|
|
||||||
"Visible": true,
|
|
||||||
"Width": 20.0,
|
|
||||||
"Index": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "HierarchyViewColumn Name",
|
|
||||||
"Visible": true,
|
|
||||||
"Width": 634.5,
|
|
||||||
"Index": 2
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "GameObject/Active",
|
|
||||||
"Visible": false,
|
|
||||||
"Width": 50.0,
|
|
||||||
"Index": 3
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "GameObject/Static",
|
|
||||||
"Visible": false,
|
|
||||||
"Width": 75.0,
|
|
||||||
"Index": 4
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "GameObject/Layer",
|
|
||||||
"Visible": false,
|
|
||||||
"Width": 150.0,
|
|
||||||
"Index": 5
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"ColumnId": "GameObject/Tag",
|
|
||||||
"Visible": false,
|
|
||||||
"Width": 100.0,
|
|
||||||
"Index": 6
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"ScrollPositionX": -1.0,
|
|
||||||
"ScrollPositionY": -1.0
|
|
||||||
}
|
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"m_Dictionary": {
|
|
||||||
"m_DictionaryValues": []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Assets",
|
|
||||||
"roots": ["Assets"],
|
|
||||||
"includes": [],
|
|
||||||
"excludes": [],
|
|
||||||
"options": {
|
|
||||||
"types": true,
|
|
||||||
"properties": true,
|
|
||||||
"extended": false,
|
|
||||||
"dependencies": false
|
|
||||||
},
|
|
||||||
"baseScore": 999
|
|
||||||
}
|
|
||||||
@@ -1,90 +0,0 @@
|
|||||||
trackSelection = true
|
|
||||||
refreshSearchWindowsInPlayMode = false
|
|
||||||
pickerAdvancedUI = false
|
|
||||||
fetchPreview = true
|
|
||||||
defaultFlags = 0
|
|
||||||
keepOpen = false
|
|
||||||
queryFolder = "Assets"
|
|
||||||
onBoardingDoNotAskAgain = true
|
|
||||||
showPackageIndexes = false
|
|
||||||
showStatusBar = false
|
|
||||||
scopes = {
|
|
||||||
}
|
|
||||||
providers = {
|
|
||||||
adb = {
|
|
||||||
active = false
|
|
||||||
priority = 2500
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
find = {
|
|
||||||
active = true
|
|
||||||
priority = 25
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
store = {
|
|
||||||
active = true
|
|
||||||
priority = 100
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
packages = {
|
|
||||||
active = true
|
|
||||||
priority = 90
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
log = {
|
|
||||||
active = false
|
|
||||||
priority = 210
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
asset = {
|
|
||||||
active = true
|
|
||||||
priority = 25
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
profilermarkers = {
|
|
||||||
active = false
|
|
||||||
priority = 100
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
performance = {
|
|
||||||
active = false
|
|
||||||
priority = 100
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
scene = {
|
|
||||||
active = true
|
|
||||||
priority = 50
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
presets_provider = {
|
|
||||||
active = false
|
|
||||||
priority = -10
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
lightmaps = {
|
|
||||||
active = true
|
|
||||||
priority = 100
|
|
||||||
defaultAction = null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
objectSelectors = {
|
|
||||||
}
|
|
||||||
recentSearches = [
|
|
||||||
]
|
|
||||||
searchItemFavorites = [
|
|
||||||
]
|
|
||||||
savedSearchesSortOrder = 0
|
|
||||||
showSavedSearchPanel = false
|
|
||||||
hideTabs = false
|
|
||||||
indexOnEditorStartup = true
|
|
||||||
logIndexingPerformanceReport = false
|
|
||||||
expandedQueries = [
|
|
||||||
]
|
|
||||||
queryBuilder = false
|
|
||||||
ignoredProperties = "addedobjectfileids;classname;correspondingsourceobject;editorclassidentifier;editorhideflags;fileid;gameobject;id;imagecontentshash;isprefabvariant;name;objecthideflags;pathid;prefabasset;prefabinstance;script"
|
|
||||||
helperWidgetCurrentArea = "all"
|
|
||||||
disabledIndexers = ""
|
|
||||||
minIndexVariations = 2
|
|
||||||
findProviderIndexHelper = true
|
|
||||||
itemIconSize = 32
|
|
||||||
version = 1
|
|
||||||
Reference in New Issue
Block a user