You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
after we have removed the beamo-local-manifest.json file from the CLI, the CLI will be able to tell Unity where all the USAM projects are. That gives us 90% of what the signpost files were doing in the first place.
The remaining issue is that the signpost files contained an assembly definition data point for each USAM. Instead, we should shift the sole responsibility for those assembly references into the USAM csproj file, using the existing ProjectReference node,
<!-- Reference an assembly definition, "myreference", using the file path helper property -->
<ProjectReferenceInclude="$(UnityAssemblyDefintions)/myreference.csproj"BeamProjectType="UnityAsm"/>
<!-- Reference an assembly definition, "myreference2", using a fully qualified path -->
<ProjectReferenceInclude="Library/asdflkj/Beamable/myreference2.csproj"BeamProjectType="UnityAsm"/>
Of note,
the $(UnityAssemblyDefintions) property should be provided by the Directory.Build.Props file, and point to the location where Unity generates csproj files from assembly definitions. This means we'll need to modify the beam project generate-props command.
the BeamProjectType attribute is a custom addition to the csproj spec, and it is our hint that the ProjectReference is an assembly definition reference.
Then, when Unity uses the CLI to scan for the local manifest, a new section should be included that has project specific sections,
it is important that if the $(UnityAssemblyDefintions) property is used in the definition of a reference, it should be fully evaluated in the response from the CLI.
Unity will then take that list, identify the assemblies that map to myreference and myreference2, and generate the corresponding csproj files.
The text was updated successfully, but these errors were encountered:
after we have removed the
beamo-local-manifest.json
file from the CLI, the CLI will be able to tell Unity where all the USAM projects are. That gives us 90% of what the signpost files were doing in the first place.The remaining issue is that the signpost files contained an assembly definition data point for each USAM. Instead, we should shift the sole responsibility for those assembly references into the USAM
csproj
file, using the existingProjectReference
node,Of note,
$(UnityAssemblyDefintions)
property should be provided by theDirectory.Build.Props
file, and point to the location where Unity generatescsproj
files from assembly definitions. This means we'll need to modify thebeam project generate-props
command.BeamProjectType
attribute is a custom addition to thecsproj
spec, and it is our hint that theProjectReference
is an assembly definition reference.Then, when Unity uses the CLI to scan for the local manifest, a new section should be included that has project specific sections,
it is important that if the
$(UnityAssemblyDefintions)
property is used in the definition of a reference, it should be fully evaluated in the response from the CLI.Unity will then take that list, identify the assemblies that map to
myreference
andmyreference2
, and generate the correspondingcsproj
files.The text was updated successfully, but these errors were encountered: