Skip to content

Commit

Permalink
Merge branch 'main' into AddCoreWcfServicesLatest
Browse files Browse the repository at this point in the history
  • Loading branch information
afifi-ins committed Sep 25, 2024
2 parents bed6fac + f0af295 commit 0d64f62
Show file tree
Hide file tree
Showing 8 changed files with 83 additions and 32 deletions.
12 changes: 6 additions & 6 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
<ProductDependencies>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.24467.1">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.24473.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>34138f08e2c9c3c41a0ac8af583a57ea953e3821</Sha>
<Sha>3dadfa71b6645da4db9e2643bd6c3642339af72e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.GenFacades" Version="10.0.0-beta.24467.1">
<Dependency Name="Microsoft.DotNet.GenFacades" Version="10.0.0-beta.24473.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>34138f08e2c9c3c41a0ac8af583a57ea953e3821</Sha>
<Sha>3dadfa71b6645da4db9e2643bd6c3642339af72e</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.XUnitExtensions" Version="10.0.0-beta.24467.1">
<Dependency Name="Microsoft.DotNet.XUnitExtensions" Version="10.0.0-beta.24473.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>34138f08e2c9c3c41a0ac8af583a57ea953e3821</Sha>
<Sha>3dadfa71b6645da4db9e2643bd6c3642339af72e</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
4 changes: 2 additions & 2 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
</PropertyGroup>
<!-- Arcade dependencies -->
<PropertyGroup>
<MicrosoftDotNetGenFacadesPackageVersion>10.0.0-beta.24467.1</MicrosoftDotNetGenFacadesPackageVersion>
<MicrosoftDotNetXUnitExtensionsPackageVersion>10.0.0-beta.24467.1</MicrosoftDotNetXUnitExtensionsPackageVersion>
<MicrosoftDotNetGenFacadesPackageVersion>10.0.0-beta.24473.2</MicrosoftDotNetGenFacadesPackageVersion>
<MicrosoftDotNetXUnitExtensionsPackageVersion>10.0.0-beta.24473.2</MicrosoftDotNetXUnitExtensionsPackageVersion>
</PropertyGroup>
<!-- CoreFx dependencies -->
<PropertyGroup>
Expand Down
50 changes: 29 additions & 21 deletions eng/common/cross/build-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -91,18 +91,18 @@ __HaikuPackages="gcc_syslibs"
__HaikuPackages+=" gcc_syslibs_devel"
__HaikuPackages+=" gmp"
__HaikuPackages+=" gmp_devel"
__HaikuPackages+=" icu66"
__HaikuPackages+=" icu66_devel"
__HaikuPackages+=" icu[0-9]+"
__HaikuPackages+=" icu[0-9]*_devel"
__HaikuPackages+=" krb5"
__HaikuPackages+=" krb5_devel"
__HaikuPackages+=" libiconv"
__HaikuPackages+=" libiconv_devel"
__HaikuPackages+=" llvm12_libunwind"
__HaikuPackages+=" llvm12_libunwind_devel"
__HaikuPackages+=" llvm[0-9]*_libunwind"
__HaikuPackages+=" llvm[0-9]*_libunwind_devel"
__HaikuPackages+=" mpfr"
__HaikuPackages+=" mpfr_devel"
__HaikuPackages+=" openssl"
__HaikuPackages+=" openssl_devel"
__HaikuPackages+=" openssl3"
__HaikuPackages+=" openssl3_devel"
__HaikuPackages+=" zlib"
__HaikuPackages+=" zlib_devel"

Expand Down Expand Up @@ -496,7 +496,7 @@ if [[ "$__CodeName" == "alpine" ]]; then
arch="$(uname -m)"

ensureDownloadTool

if [[ "$__hasWget" == 1 ]]; then
wget -P "$__ApkToolsDir" "https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v$__ApkToolsVersion/$arch/apk.static"
else
Expand Down Expand Up @@ -681,7 +681,7 @@ elif [[ "$__CodeName" == "haiku" ]]; then

ensureDownloadTool

echo "Downloading Haiku package tool"
echo "Downloading Haiku package tools"
git clone https://github.com/haiku/haiku-toolchains-ubuntu --depth 1 "$__RootfsDir/tmp/script"
if [[ "$__hasWget" == 1 ]]; then
wget -O "$__RootfsDir/tmp/download/hosttools.zip" "$("$__RootfsDir/tmp/script/fetch.sh" --hosttools)"
Expand All @@ -691,34 +691,42 @@ elif [[ "$__CodeName" == "haiku" ]]; then

unzip -o "$__RootfsDir/tmp/download/hosttools.zip" -d "$__RootfsDir/tmp/bin"

DepotBaseUrl="https://depot.haiku-os.org/__api/v2/pkg/get-pkg"
HpkgBaseUrl="https://eu.hpkg.haiku-os.org/haiku/master/$__HaikuArch/current"
HaikuBaseUrl="https://eu.hpkg.haiku-os.org/haiku/master/$__HaikuArch/current"
HaikuPortsBaseUrl="https://eu.hpkg.haiku-os.org/haikuports/master/$__HaikuArch/current"

echo "Downloading HaikuPorts package repository index..."
if [[ "$__hasWget" == 1 ]]; then
wget -P "$__RootfsDir/tmp/download" "$HaikuPortsBaseUrl/repo"
else
curl -SLO --create-dirs --output-dir "$__RootfsDir/tmp/download" "$HaikuPortsBaseUrl/repo"
fi

# Download Haiku packages
echo "Downloading Haiku packages"
read -ra array <<<"$__HaikuPackages"
for package in "${array[@]}"; do
echo "Downloading $package..."
# API documented here: https://github.com/haiku/haikudepotserver/blob/master/haikudepotserver-api2/src/main/resources/api2/pkg.yaml#L60
# The schema here: https://github.com/haiku/haikudepotserver/blob/master/haikudepotserver-api2/src/main/resources/api2/pkg.yaml#L598
hpkgFilename="$(LD_LIBRARY_PATH="$__RootfsDir/tmp/bin" "$__RootfsDir/tmp/bin/package_repo" list -f "$__RootfsDir/tmp/download/repo" |
grep -E "${package}-" | sort -V | tail -n 1 | xargs)"
if [ -z "$hpkgFilename" ]; then
>&2 echo "ERROR: package $package missing."
exit 1
fi
echo "Resolved filename: $hpkgFilename..."
hpkgDownloadUrl="$HaikuPortsBaseUrl/packages/$hpkgFilename"
if [[ "$__hasWget" == 1 ]]; then
hpkgDownloadUrl="$(wget -qO- --post-data '{"name":"'"$package"'","repositorySourceCode":"haikuports_'$__HaikuArch'","versionType":"LATEST","naturalLanguageCode":"en"}' \
--header 'Content-Type:application/json' "$DepotBaseUrl" | jq -r '.result.versions[].hpkgDownloadURL')"
wget -P "$__RootfsDir/tmp/download" "$hpkgDownloadUrl"
else
hpkgDownloadUrl="$(curl -sSL -XPOST --data '{"name":"'"$package"'","repositorySourceCode":"haikuports_'$__HaikuArch'","versionType":"LATEST","naturalLanguageCode":"en"}' \
--header 'Content-Type:application/json' "$DepotBaseUrl" | jq -r '.result.versions[].hpkgDownloadURL')"
curl -SLO --create-dirs --output-dir "$__RootfsDir/tmp/download" "$hpkgDownloadUrl"
fi
done
for package in haiku haiku_devel; do
echo "Downloading $package..."
if [[ "$__hasWget" == 1 ]]; then
hpkgVersion="$(wget -qO- "$HpkgBaseUrl" | sed -n 's/^.*version: "\([^"]*\)".*$/\1/p')"
wget -P "$__RootfsDir/tmp/download" "$HpkgBaseUrl/packages/$package-$hpkgVersion-1-$__HaikuArch.hpkg"
hpkgVersion="$(wget -qO- "$HaikuBaseUrl" | sed -n 's/^.*version: "\([^"]*\)".*$/\1/p')"
wget -P "$__RootfsDir/tmp/download" "$HaikuBaseUrl/packages/$package-$hpkgVersion-1-$__HaikuArch.hpkg"
else
hpkgVersion="$(curl -sSL "$HpkgBaseUrl" | sed -n 's/^.*version: "\([^"]*\)".*$/\1/p')"
curl -SLO --create-dirs --output-dir "$__RootfsDir/tmp/download" "$HpkgBaseUrl/packages/$package-$hpkgVersion-1-$__HaikuArch.hpkg"
hpkgVersion="$(curl -sSL "$HaikuBaseUrl" | sed -n 's/^.*version: "\([^"]*\)".*$/\1/p')"
curl -SLO --create-dirs --output-dir "$__RootfsDir/tmp/download" "$HaikuBaseUrl/packages/$package-$hpkgVersion-1-$__HaikuArch.hpkg"
fi
done

Expand Down
2 changes: 1 addition & 1 deletion global.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"version": "9.0.100-rc.1.24452.12"
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24467.1",
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.24473.2",
"Microsoft.DotNet.Helix.Sdk": "8.0.0-beta.23409.5"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -1578,6 +1578,10 @@ public void Add(System.ServiceModel.Channels.MessageHeaderInfo headerInfo) { }
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return default; }
public void Remove(System.ServiceModel.Channels.MessageHeaderInfo headerInfo) { }
}
internal interface IMergeEnabledMessageProperty
{
bool TryMergeWithProperty(object propertyToMerge);
}
}
namespace System.ServiceModel.Description
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk" DefaultTargets="Build">
<Project Sdk="Microsoft.NET.Sdk" DefaultTargets="Build">
<!-- $(RepositoryRoot)Directory.Build.props automatically imported by Microsoft.Common.props -->
<PropertyGroup>
<AssemblyVersionFile>$(IntermediateOutputPath)\$(TargetFramework)\$(MSBuildProjectName).$(TargetFramework).version.cs</AssemblyVersionFile>
Expand All @@ -23,7 +23,6 @@
<PropertyGroup>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
<DefineConstants>$(DefineConstants);NETCORE</DefineConstants>
<DefineConstants Condition="'$(TargetFramework)' == 'netcoreapp1.0'">$(DefineConstants);NETCORE10</DefineConstants>
</PropertyGroup>
<PropertyGroup Label="FxCopAnalyzers">
<NonShipping Label="Disable MicroBuild Compliance tasks">true</NonShipping>
Expand Down
38 changes: 38 additions & 0 deletions src/dotnet-svcutil/src/README-nuget.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
## About

The `dotnet-svcutil` tool is a .NET command-line utility for retrieving metadata from web services or WSDL files and generating WCF client proxy classes. It is compatible with .NET Core and .NET Standard projects, similar to the svcutil tool for .NET Framework.

## How to use

### Installing dotnet-svcutil:

To install the dotnet-svcutil tool globally, run:

`dotnet tool install --global dotnet-svcutil`

For more details, visit the NuGet package page: [dotnet-svcutil on NuGet](https://www.nuget.org/packages/dotnet-svcutil).

### Using dotnet-svcutil:

To use the dotnet-svcutil tool, execute the following command:

`dotnet-svcutil <metadataDocumentPath> | <url> | <epr> [options*]`


For additional usage instructions, refer to the [dotnet-svcutil documentation on GitHub](https://github.com/dotnet/wcf/tree/main/src/dotnet-svcutil#using-dotnet-svcutil).


## Key Features

Dotnet-svcutil can generate code for service contracts, clients and data types from metadata documents. These metadata documents can be on a durable storage, or be retrieved online. Online retrieval follows the WS-Metadata Exchange protocol.

You can use dotnet-svcutil tool to generate service and data contracts based on a predefined WSDL document. Use the `--serviceContract` switch and specify a URL or file location where the WSDL document can be downloaded or found. This generates the service and data contracts defined in the WSDL document that can then be used to implement a complaint service.

## Additional documentation

For more details about the tool usage, visit the [WCF dotnet-svcutil tool guide](https://learn.microsoft.com/en-us/dotnet/core/additional-tools/dotnet-svcutil-guide?tabs=dotnetsvcutil2x).

## Feedback & Contributing

To explore the project or contribute, visit our [GitHub repository](https://github.com/dotnet/wcf/tree/main/src/dotnet-svcutil).
For reporting issues or providing feedback, please [open an issue on GitHub](https://github.com/dotnet/wcf).
2 changes: 2 additions & 0 deletions src/dotnet-svcutil/src/dotnet-svcutil.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
<GenerateAssemblyInformationalVersionAttribute>false</GenerateAssemblyInformationalVersionAttribute>
<NoDefaultExcludes>true</NoDefaultExcludes>
<EnableXlfLocalization>true</EnableXlfLocalization>
<PackageReadmeFile>README-nuget.md</PackageReadmeFile>
</PropertyGroup>

<PropertyGroup>
Expand Down Expand Up @@ -45,5 +46,6 @@

<ItemGroup>
<ProjectReference Include="..\lib\src\dotnet-svcutil-lib.csproj" />
<None Include="README-nuget.md" Pack="true" PackagePath="\"/>
</ItemGroup>
</Project>

0 comments on commit 0d64f62

Please sign in to comment.