Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,7 @@ package com.nawforce.pkgforce.documents
import com.nawforce.pkgforce.diagnostics._
import com.nawforce.pkgforce.names.{Name, TypeName}
import com.nawforce.pkgforce.path.PathLike
import com.nawforce.pkgforce.sfdx.{
ForceIgnore,
ForceIgnoreInterface,
ForceIgnoreV2,
ForceIgnoreVersion
}
import com.nawforce.pkgforce.sfdx.ForceIgnoreV2
import com.nawforce.runtime.platform.Path

import scala.collection.mutable
Expand All @@ -37,7 +32,7 @@ class DocumentIndex(
logger: IssueLogger,
namespace: Option[Name],
isGulped: Boolean,
ignore: Option[ForceIgnoreInterface]
ignore: Option[ForceIgnoreV2]
) {

/** Store Nature->Type name (lowercase)->Path string */
Expand Down Expand Up @@ -168,20 +163,15 @@ object DocumentIndex {
namespace: Option[Name],
isGulped: Boolean,
projectPath: PathLike,
path: PathLike,
forceIgnoreVersion: ForceIgnoreVersion = ForceIgnoreVersion.default
path: PathLike
): DocumentIndex = {
val ignore = forceIgnoreVersion match {
case ForceIgnoreVersion.V1 => logger.logAndGet(ForceIgnore(projectPath.join(".forceignore")))
case ForceIgnoreVersion.V2 =>
logger.logAndGet(ForceIgnoreV2(projectPath.join(".forceignore")))
}
val ignore = logger.logAndGet(ForceIgnoreV2(projectPath.join(".forceignore")))
new DocumentIndex(path, logger, namespace, isGulped, ignore)
}

private def indexPath(
path: PathLike,
forceIgnore: Option[ForceIgnoreInterface],
forceIgnore: Option[ForceIgnoreV2],
index: DocumentIndex
): Unit = {

Expand All @@ -203,7 +193,7 @@ object DocumentIndex {

private def addPath(
path: PathLike,
forceIgnore: Option[ForceIgnoreInterface],
forceIgnore: Option[ForceIgnoreV2],
index: DocumentIndex
): Unit = {
// Not testing if this is a regular file to improve scan performance, will fail later on read
Expand Down
204 changes: 0 additions & 204 deletions shared/src/main/scala/com/nawforce/pkgforce/sfdx/ForceIgnore.scala

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import scala.collection.compat.immutable.ArraySeq
import scala.util.matching.Regex

/** ForceIgnoreV2 - node-ignore compatible implementation */
class ForceIgnoreV2(rootPath: PathLike, rules: Seq[IgnoreRuleV2]) extends ForceIgnoreInterface {
class ForceIgnoreV2(rootPath: PathLike, rules: Seq[IgnoreRuleV2]) {

private val allRules = rules

Expand Down

This file was deleted.

41 changes: 23 additions & 18 deletions shared/src/main/scala/com/nawforce/pkgforce/sfdx/SFDXProject.scala
Original file line number Diff line number Diff line change
Expand Up @@ -80,27 +80,32 @@ class SFDXProject(val projectPath: PathLike, config: ValueWithPositions) {

val apexConfig: ApexConfig = ApexConfig.fromConfig(projectPath, config)

val forceIgnoreVersion: ForceIgnoreVersion = {
val versionString =
apexConfig.options.getOrElse("forceIgnoreVersion", ForceIgnoreVersion.default.value)
ForceIgnoreVersion.fromString(versionString) match {
case Some(version) => version
case None =>
val optionsValue = apexConfig.plugins.get("options")
val validValuesStr = ForceIgnoreVersion.validValues.mkString("'", "', '", "'")
config
.lineAndOffsetOf(optionsValue)
.map(lineAndOffset => {
throw SFDXProjectError(
lineAndOffset,
s"'options.forceIgnoreVersion' must be one of $validValuesStr, got '$versionString'"
// Check for deprecated forceIgnoreVersion option and warn if present
apexConfig.options.get("forceIgnoreVersion").foreach { _ =>
val optionsValue = apexConfig.plugins.get("options")
config.lineAndOffsetOf(optionsValue) match {
case Some((line, offset)) =>
localLogger.log(
Issue(
projectPath.join("sfdx-project.json"),
Diagnostic(
WARNING_CATEGORY,
Location(line, offset),
"'options.forceIgnoreVersion' is deprecated and will be ignored"
)
})
.getOrElse(
throw new RuntimeException(
s"'options.forceIgnoreVersion' must be one of $validValuesStr, got '$versionString'"
)
)
case None =>
localLogger.log(
Issue(
projectPath.join("sfdx-project.json"),
Diagnostic(
WARNING_CATEGORY,
Location.empty,
"'options.forceIgnoreVersion' is deprecated and will be ignored"
)
)
)
}
}

Expand Down
Loading