This is an automated email from the ASF dual-hosted git repository.

Cole-Greer pushed a commit to branch remove-mono
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit e01fda027a52e0b50f97899321e387c83bbe0539
Author: Cole Greer <[email protected]>
AuthorDate: Tue Jul 21 16:27:41 2026 -0700

    Replace mono nuget.exe pack/push with dotnet CLI
---
 .../Gremlin.Net.Template.csproj                    |  2 +
 gremlin-dotnet/src/pom.xml                         | 68 +++-------------------
 2 files changed, 11 insertions(+), 59 deletions(-)

diff --git 
a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj 
b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
index 4e1b3987e0..3632aa3051 100644
--- a/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
+++ b/gremlin-dotnet/src/Gremlin.Net.Template/Gremlin.Net.Template.csproj
@@ -21,6 +21,8 @@ limitations under the License.
     <OutputType>Exe</OutputType>
     <TargetFramework>net8.0</TargetFramework>
     <Nullable>enable</Nullable>
+    <IsPackable>true</IsPackable>
+    <NuspecFile>Gremlin.Net.Template.nuspec</NuspecFile>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/gremlin-dotnet/src/pom.xml b/gremlin-dotnet/src/pom.xml
index a33b4585b3..ce3a8eb4c1 100644
--- a/gremlin-dotnet/src/pom.xml
+++ b/gremlin-dotnet/src/pom.xml
@@ -26,10 +26,6 @@ limitations under the License.
     <artifactId>gremlin-dotnet-source</artifactId>
     <name>Apache TinkerPop :: Gremlin.Net - Source</name>
     <packaging>${packaging.type}</packaging>
-    <properties>
-        <nugetVersion>6.11.1</nugetVersion>
-        <nugetExe>nuget-${nugetVersion}.exe</nugetExe>
-    </properties>
 
     <build>
         <plugins>
@@ -235,8 +231,8 @@ limitations under the License.
                 <plugins>
                     <!--
                       not seeing much point to making this OS agnostic really. 
as far as it is known, no one who does
-                      deployments will do so from a windows machine. this part 
of the build requires mono. note that
-                      the "correct" version of nuget is downloaded as part of 
the process.
+                      deployments will do so from a windows machine. the 
dotnet CLI handles packing and pushing
+                      natively - no additional tooling required beyond the 
.NET SDK.
                      -->
                     <plugin>
                         <groupId>org.apache.maven.plugins</groupId>
@@ -250,30 +246,9 @@ limitations under the License.
                                 </goals>
                                 <configuration>
                                     <target>
-                                        <taskdef 
resource="net/sf/antcontrib/antcontrib.properties" />                           
            
-                                        <if>
-                                            <available file="mono" 
filepath="${env.PATH}"/>
-                                            <then>
-                                                <if>
-                                                    <available 
file="${nugetExe}"/>
-                                                    <then>
-                                                        <echo>nuget.exe 
already downloaded.</echo>
-                                                    </then>
-
-                                                    <else>
-                                                        <exec 
executable="wget" failonerror="true">
-                                                            <arg 
line="https://dist.nuget.org/win-x86-commandline/v${nugetVersion}/nuget.exe -O 
${nugetExe}"/>
-                                                        </exec>
-                                                    </else>
-                                                </if>
-                                                <exec executable="mono" 
failonerror="true">
-                                                    <arg line="${nugetExe} 
pack Gremlin.Net.Template/Gremlin.Net.Template.nuspec"/>
-                                                </exec>
-                                            </then>
-                                            <else>
-                                                <echo>Skipping packaging of 
Gremlin.Net.Template as mono is not available</echo>
-                                            </else>
-                                        </if>
+                                        <exec executable="dotnet" 
failonerror="true">
+                                            <arg line="pack 
Gremlin.Net.Template/Gremlin.Net.Template.csproj --configuration Release 
--output ."/>
+                                        </exec>
                                     </target>
                                 </configuration>
                             </execution>
@@ -285,41 +260,16 @@ limitations under the License.
                                 </goals>
                                 <configuration>
                                     <target>
-                                        <taskdef 
resource="net/sf/antcontrib/antcontrib.properties" />
-                                        <if>
-                                            <available file="${nugetExe}"/>
-                                            <then>
-                                                <echo>nuget.exe already 
downloaded.</echo>
-                                            </then>
-
-                                            <else>
-                                                <exec executable="wget" 
failonerror="true">
-                                                    <arg 
line="https://dist.nuget.org/win-x86-commandline/v${nugetVersion}/nuget.exe -O 
${nugetExe}"/>
-                                                </exec>
-                                            </else>
-                                        </if>
-
-                                        <!--
-                                        until 
https://github.com/NuGet/Home/issues/4095 we have to have to specify
-                                        the "ConfigFile" option to nuget.
-                                        -->
-                                        <exec executable="mono" 
failonerror="true">
-                                            <arg line="${nugetExe} push 
Gremlin.Net/bin/Gremlin.Net.${project.version}.nupkg -Source 
https://api.nuget.org/v3/index.json -ConfigFile 
${user.home}/.config/NuGet/NuGet.Config"/>
+                                        <exec executable="dotnet" 
failonerror="true">
+                                            <arg line="nuget push 
Gremlin.Net/bin/Gremlin.Net.${project.version}.nupkg --source 
https://api.nuget.org/v3/index.json"/>
                                         </exec>
-                                        <exec executable="mono" 
failonerror="true">
-                                            <arg line="${nugetExe} push 
Gremlin.Net.Template.${project.version}.nupkg -Source 
https://api.nuget.org/v3/index.json -ConfigFile 
${user.home}/.config/NuGet/NuGet.Config"/>
+                                        <exec executable="dotnet" 
failonerror="true">
+                                            <arg line="nuget push 
Gremlin.Net.Template.${project.version}.nupkg --source 
https://api.nuget.org/v3/index.json"/>
                                         </exec>
                                     </target>
                                 </configuration>
                             </execution>
                         </executions>
-                        <dependencies>
-                            <dependency>
-                                <groupId>ant-contrib</groupId>
-                                <artifactId>ant-contrib</artifactId>
-                                <version>20020829</version>
-                            </dependency>
-                        </dependencies>
                     </plugin>
                     <plugin>
                         <groupId>org.codehaus.gmavenplus</groupId>

Reply via email to