target "dependencies"


maven apache
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "commons-codec"
		artifactId = "commons-codec"
		version = "1.17.0"
	}
	dependency {
		groupId = "org.apache.commons"
		artifactId = "commons-compress"
		version = "1.26.2"
	}
	dependency {
		groupId = "org.apache.commons"
		artifactId = "commons-lang3"
		version = "3.14.0"
	}
	dependency {
		groupId = "commons-io"
		artifactId = "commons-io"
		version = "2.16.1"
	}
	dependency {
		groupId = "commons-logging"
		artifactId = "commons-logging"
		version = "1.3.2"
	}
}

maven args4j
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "args4j"
		artifactId = "args4j"
		version = "2.37"
	}
}

maven assertj
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.assertj"
		artifactId = "assertj-core"
		version = "3.26.0"
	}
}

maven bouncycastle
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.bouncycastle"
		artifactId = "bcpg-jdk18on"
		version = "1.78.1"
	}
	dependency {
		groupId = "org.bouncycastle"
		artifactId = "bcprov-jdk18on"
		version = "1.78.1"
	}
	dependency {
		groupId = "org.bouncycastle"
		artifactId = "bcpkix-jdk18on"
		version = "1.78.1"
	}
	dependency {
		groupId = "org.bouncycastle"
		artifactId = "bcutil-jdk18on"
		version = "1.78.1"
	}
}

maven bytebuddy
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "net.bytebuddy"
		artifactId = "byte-buddy"
		version = "1.14.16"
	}
	dependency {
		groupId = "net.bytebuddy"
		artifactId = "byte-buddy-agent"
		version = "1.14.16"
	}
}

maven gson
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "com.google.code.gson"
		artifactId = "gson"
		version = "2.11.0"
	}
}

maven hamcrest
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.hamcrest"
		artifactId = "hamcrest"
		version = "2.2"
	}
}

maven javaewah
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "com.googlecode.javaewah"
		artifactId = "JavaEWAH"
		version = "1.2.3"
	}
}

maven jetty
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.eclipse.jetty.ee10"
		artifactId = "jetty-ee10-servlet"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-http"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-io"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-security"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-server"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-session"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-util"
		version = "12.0.9"
	}
	dependency {
		groupId = "org.eclipse.jetty"
		artifactId = "jetty-util-ajax"
		version = "12.0.9"
	}
	dependency {
		groupId = "jakarta.servlet"
		artifactId = "jakarta.servlet-api"
		version = "6.0.0"
	}
}

maven jna
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "net.java.dev.jna"
		artifactId = "jna"
		version = "5.14.0"
	}
	dependency {
		groupId = "net.java.dev.jna"
		artifactId = "jna-platform"
		version = "5.14.0"
	}
}

maven mockito
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.mockito"
		artifactId = "mockito-core"
		version = "5.12.0"
	}
}

maven sshd
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.apache.sshd"
		artifactId = "sshd-osgi"
		version = "2.12.1"
	}
	dependency {
		groupId = "org.apache.sshd"
		artifactId = "sshd-sftp"
		version = "2.12.1"
	}
}

maven slf4j
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.slf4j"
		artifactId = "slf4j-api"
		version = "1.7.36"
	}
	dependency {
		groupId = "org.slf4j"
		artifactId = "slf4j-simple"
		version = "1.7.36"
	}
}

maven xz
	scope = compile
	dependencyDepth = none
	missingManifest = error
	includeSources
{
	dependency {
		groupId = "org.tukaani"
		artifactId = "xz"
		version = "1.9"
	}
}