<project xmlns="http://maven.apache.org/POM/4.0.0">
	<modelVersion>4.0.0</modelVersion>

	<groupId>org.toop</groupId>
	<artifactId>pism_game</artifactId>
	<version>0.1</version>

	<properties>
		<maven.compiler.source>25</maven.compiler.source>
		<maven.compiler.target>25</maven.compiler.target>

		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

	<dependencies>
		<dependency>
			<groupId>com.diffplug.spotless</groupId>
			<artifactId>spotless-maven-plugin</artifactId>
			<version>2.46.1</version>
		</dependency>

		<dependency>
			<groupId>org.junit</groupId>
			<artifactId>junit-bom</artifactId>
			<version>5.13.4</version>
			<type>pom</type>
			<scope>import</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>5.13.4</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-engine</artifactId>
			<version>5.13.4</version>
			<scope>test</scope>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-surefire-plugin -->
		<dependency>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-surefire-plugin</artifactId>
			<version>3.5.4</version>
		</dependency>
		<!-- https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-failsafe-plugin -->
		<dependency>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-failsafe-plugin</artifactId>
			<version>3.5.4</version>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>5.19.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-junit-jupiter</artifactId>
			<version>5.19.0</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>2.25.1</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>2.25.1</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>2.0.17</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-simple</artifactId>
			<version>2.0.17</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.14.1</version>
				<configuration>
					<source>25</source>
					<target>25</target>
					<release>25</release>
					<encoding>UTF-8</encoding>
<!--					<compilerArgs>-->
<!--						<arg>-XDcompilePolicy=simple</arg>-->
<!--						<arg>&#45;&#45;should-stop=ifError=FLOW</arg>-->
<!--						<arg>-Xplugin:ErrorProne</arg>-->
<!--					</compilerArgs>-->
<!--					<annotationProcessorPaths>-->
<!--						<path>-->
<!--							<groupId>com.google.errorprone</groupId>-->
<!--							<artifactId>error_prone_core</artifactId>-->
<!--							<version>2.42.0</version>-->
<!--						</path>-->
<!--						&lt;!&ndash; Other annotation processors go here.-->

<!--                        If 'annotationProcessorPaths' is set, processors will no longer be-->
<!--                        discovered on the regular -classpath; see also 'Using Error Prone-->
<!--                        together with other annotation processors' below. &ndash;&gt;-->
<!--					</annotationProcessorPaths>-->
<!--					<fork>true</fork>-->
				</configuration>
			</plugin>
			<plugin>
				<groupId>com.diffplug.spotless</groupId>
				<artifactId>spotless-maven-plugin</artifactId>
				<version>2.46.1</version>
				<configuration>
					<!-- optional: limit format enforcement to just the files changed by this feature branch -->
					<ratchetFrom>origin/main</ratchetFrom>
					<formats>
						<!-- you can define as many formats as you want, each is independent -->
						<format>
							<!-- define the files to apply to -->
							<includes>
								<include>.gitattributes</include>
								<include>.gitignore</include>
							</includes>
							<!-- define the steps to apply to those files -->
							<trimTrailingWhitespace/>
							<endWithNewline/>
							<indent>
								<tabs>true</tabs>
								<spacesPerTab>4</spacesPerTab>
							</indent>
						</format>
					</formats>
					<!-- define a language-specific format -->
					<java>
						<googleJavaFormat>
							<version>1.28.0</version>
							<style>AOSP</style> <!-- GOOGLE (2 indents), AOSP (4 indents) -->
							<reflowLongStrings>true</reflowLongStrings>
							<formatJavadoc>true</formatJavadoc>
						</googleJavaFormat>
					</java>
				</configuration>
			</plugin>
		</plugins>
	</build>

</project>