Skip to content

Version 1.1.1713302731.c3d0074 of org.antipathy:mvn-scalafmt_2.13 is broken #376

@saig0

Description

@saig0

Describe the bug
I have a failing PR that tries to bump org.antipathy:mvn-scalafmt_2.13 from 1.1.1684076452.9f83818 to 1.1.1713302731.c3d0074.

The PR fails with the error message:

java.util.NoSuchElementException: last of empty IndexedSeq
    at scala.collection.IndexedSeqOps.last (IndexedSeq.scala:110)
    at scala.collection.IndexedSeqOps.last$ (IndexedSeq.scala:105)
    at scala.meta.tokens.Tokens.last (Tokens.scala:29)
    at org.scalafmt.internal.Router.$anonfun$getSplitsImpl$90 (Router.scala:727)
    at scala.Option.map (Option.scala:242)
    at org.scalafmt.internal.Router.getSplitsImpl (Router.scala:726)
    at org.scalafmt.internal.Router.getSplits (Router.scala:2388)
    at org.scalafmt.internal.BestFirstSearch.$anonfun$routes$1 (BestFirstSearch.scala:38)
    at scala.collection.IterableOnceOps.foreach (IterableOnce.scala:619)
    at scala.collection.IterableOnceOps.foreach$ (IterableOnce.scala:617)
    at org.scalafmt.internal.FormatTokens.foreach (FormatTokens.scala:15)
    at org.scalafmt.internal.BestFirstSearch.<init> (BestFirstSearch.scala:38)
    at org.scalafmt.internal.BestFirstSearch$.apply (BestFirstSearch.scala:337)
    at org.scalafmt.Scalafmt$.$anonfun$doFormatOne$5 (Scalafmt.scala:174)
    at scala.util.Try$.apply (Try.scala:217)
    at org.scalafmt.Scalafmt$.$anonfun$doFormatOne$3 (Scalafmt.scala:174)
    at scala.meta.parsers.Parsed.fold (Errors.scala:12)
    at scala.meta.parsers.Parsed.fold$ (Errors.scala:11)
    at scala.meta.parsers.Parsed$Success.fold (Errors.scala:26)
    at org.scalafmt.Scalafmt$.org$scalafmt$Scalafmt$$doFormatOne (Scalafmt.scala:170)
    at org.scalafmt.Scalafmt$.doFormat (Scalafmt.scala:[150](https://github.com/camunda/feel-scala/actions/runs/9740570646/job/26877960504?pr=836#step:5:151))
    at org.scalafmt.Scalafmt$.formatCodeWithStyle (Scalafmt.scala:93)
    at org.scalafmt.Scalafmt$.$anonfun$formatCode$3 (Scalafmt.scala:80)
    at scala.util.Success.fold (Try.scala:289)
    at org.scalafmt.Scalafmt$.formatCode (Scalafmt.scala:80)
    at org.scalafmt.Scalafmt$.format (Scalafmt.scala:61)
    at org.scalafmt.Scalafmt.format (Scalafmt.scala)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.scalafmt.dynamic.ScalafmtReflect.$anonfun$tryFormat$1 (ScalafmtReflect.scala:121)
    at scala.util.Try$.apply (Try.scala:217)
    at org.scalafmt.dynamic.ScalafmtReflect.tryFormat (ScalafmtReflect.scala:117)
    at org.scalafmt.dynamic.ScalafmtReflectConfig.tryFormat (ScalafmtReflectConfig.scala:95)
    at org.scalafmt.dynamic.ScalafmtDynamicSession.$anonfun$tryForceFormat$1 (ScalafmtDynamicSession.scala:49)
    at scala.util.Success.flatMap (Try.scala:266)
    at org.scalafmt.dynamic.ScalafmtDynamicSession.tryForceFormat (ScalafmtDynamicSession.scala:49)
    at org.scalafmt.dynamic.ScalafmtDynamicSession.tryFormat (ScalafmtDynamicSession.scala:36)
    at org.scalafmt.dynamic.ScalafmtDynamicSession.format (ScalafmtDynamicSession.scala:18)
    at org.scalafmt.dynamic.ScalafmtDynamic.format (ScalafmtDynamic.scala:52)
    at org.antipathy.mvn_scalafmt.format.SourceFileFormatter.format (SourceFileFormatter.scala:29)
    at org.antipathy.mvn_scalafmt.format.SourceFileFormatter.format (SourceFileFormatter.scala:16)
    at org.antipathy.mvn_scalafmt.ScalaFormatter.$anonfun$format$1 (ScalaFormatter.scala:32)
    at scala.collection.immutable.List.map (List.scala:247)
    at scala.collection.immutable.List.map (List.scala:79)
    at org.antipathy.mvn_scalafmt.ScalaFormatter.format (ScalaFormatter.scala:32)
    at org.antipathy.mvn_scalafmt.FormatMojo.execute (FormatMojo.java:88)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:370)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:351)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:171)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:[163](https://github.com/camunda/feel-scala/actions/runs/9740570646/job/26877960504?pr=836#step:5:164))
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:299)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:193)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:106)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:963)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:296)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:199)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)

The previous version worked without issues.

The .scalafmt.conf is minimal:

version = 3.2.1
runner.dialect = scala213

maxColumn = 100

align.preset = most

To Reproduce
Steps to reproduce the behavior:
1. Check out the PR: camunda/feel-scala#836
2. Run Maven mvn verify

Expected behavior
The new version works as before.

Environment (please complete the following information):
- OS: GitHub action; Ubuntu 22.04
- maven version (e.g. 3.5.1): 3.9.8
- scalafmt version (e.g. 1.5.1): 3.2.1
- Version (e.g. 22): 11/17/21

Additional context

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions