Skip to content

Commit

Permalink
Remove usage of deprecated APIs
Browse files Browse the repository at this point in the history
  • Loading branch information
saberduck committed Mar 28, 2024
1 parent eef1e53 commit cb65760
Show file tree
Hide file tree
Showing 53 changed files with 211 additions and 266 deletions.
18 changes: 9 additions & 9 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,9 @@
<jgit.version>6.2.0.202206071550-r</jgit.version>
<junit.version>5.9.3</junit.version>
<mockito.version>3.5.0</mockito.version>
<slf4j.version>1.7.21</slf4j.version>
<sonar.version>10.1.0.73491</sonar.version>
<sonar.api.version>10.1.0.809</sonar.api.version>
<slf4j.version>1.7.36</slf4j.version>
<sonar.version>10.4.1.88267</sonar.version>
<sonar.api.version>10.7.0.2191</sonar.api.version>
<sonar-orchestrator.version>4.9.0.1920</sonar-orchestrator.version>
<gson.version>2.8.9</gson.version>
<analyzer-commons.version>2.7.0.1482</analyzer-commons.version>
Expand Down Expand Up @@ -176,6 +176,11 @@
<artifactId>xz</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>

<!-- Test dependencies -->
<dependency>
Expand Down Expand Up @@ -248,12 +253,7 @@
<version>${project.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
<scope>provided</scope>
</dependency>


<dependency>
<groupId>org.sonarsource.api.plugin</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@
import javax.annotation.Nullable;
import org.apache.commons.io.ByteOrderMark;
import org.apache.commons.io.input.BOMInputStream;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.FilePredicates;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.batch.rule.CheckFactory;
Expand All @@ -40,8 +42,6 @@
import org.sonar.api.batch.sensor.SensorDescriptor;
import org.sonar.api.batch.sensor.issue.NewExternalIssue;
import org.sonar.api.batch.sensor.issue.NewIssueLocation;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.css.StylelintReport.Issue;
import org.sonar.css.StylelintReport.IssuesPerFile;
import org.sonarsource.analyzer.commons.ExternalReportProvider;
Expand All @@ -53,7 +53,7 @@ public class StylelintReportSensor implements Sensor {
public static final String STYLELINT_REPORT_PATHS = "sonar.css.stylelint.reportPaths";
public static final String STYLELINT_REPORT_PATHS_DEFAULT_VALUE = "";

private static final Logger LOG = Loggers.get(StylelintReportSensor.class);
private static final Logger LOG = LoggerFactory.getLogger(StylelintReportSensor.class);
private static final String FILE_EXCEPTION_MESSAGE =
"No issues information will be saved as the report file can't be read.";
private static final ByteOrderMark[] BYTE_ORDER_MARKS = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.SonarProduct;
import org.sonar.api.SonarRuntime;
import org.sonar.api.batch.fs.FileSystem;
Expand All @@ -36,13 +38,11 @@
import org.sonar.api.measures.FileLinesContext;
import org.sonar.api.measures.FileLinesContextFactory;
import org.sonar.api.utils.Version;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.css.CssLanguage;

public class CssMetricSensor implements Sensor {

private static final Logger LOG = Loggers.get(CssMetricSensor.class);
private static final Logger LOG = LoggerFactory.getLogger(CssMetricSensor.class);

private final SonarRuntime sonarRuntime;
private final FileLinesContextFactory fileLinesContextFactory;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@
*/
package org.sonar.plugins.javascript;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.Plugin;
import org.sonar.api.PropertyType;
import org.sonar.api.SonarProduct;
import org.sonar.api.config.PropertyDefinition;
import org.sonar.api.resources.Qualifiers;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.css.CssLanguage;
import org.sonar.css.CssProfileDefinition;
import org.sonar.css.CssRulesDefinition;
Expand Down Expand Up @@ -61,7 +61,7 @@
public class JavaScriptPlugin implements Plugin {

public static final String TYPESCRIPT_VERSION = "5.3.2";
private static final Logger LOG = Loggers.get(JavaScriptPlugin.class);
private static final Logger LOG = LoggerFactory.getLogger(JavaScriptPlugin.class);

// Subcategories

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,18 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.rule.RuleKey;
import org.sonar.api.server.profile.BuiltInQualityProfilesDefinition;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.check.Rule;
import org.sonar.javascript.checks.CheckList;
import org.sonar.plugins.javascript.api.JavaScriptCheck;
import org.sonarsource.analyzer.commons.BuiltInQualityProfileJsonLoader;

public class JavaScriptProfilesDefinition implements BuiltInQualityProfilesDefinition {

private static final Logger LOG = Loggers.get(JavaScriptProfilesDefinition.class);
private static final Logger LOG = LoggerFactory.getLogger(JavaScriptProfilesDefinition.class);

static final String SONAR_WAY = "Sonar way";

Expand Down Expand Up @@ -122,11 +122,11 @@ static Set<RuleKey> getSecurityRuleKeys(
Method getRuleKeysMethod = rulesClass.getMethod(ruleKeysMethodName, String.class);
return (Set<RuleKey>) getRuleKeysMethod.invoke(null, language);
} catch (ClassNotFoundException e) {
LOG.debug(className + " is not found, " + securityRuleMessage(e));
LOG.debug("{} is not found, {}", className, securityRuleMessage(e));
} catch (NoSuchMethodException e) {
LOG.debug("Method not found on " + className + ", " + securityRuleMessage(e));
LOG.debug("Method not found on {} , ", className, securityRuleMessage(e));
} catch (IllegalAccessException | InvocationTargetException e) {
LOG.debug(e.getClass().getSimpleName() + ": " + securityRuleMessage(e));
LOG.debug("{}: ", e.getClass().getSimpleName(), securityRuleMessage(e));
}

return Collections.emptySet();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,18 @@
import java.io.IOException;
import java.util.List;
import java.util.concurrent.TimeUnit;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.batch.sensor.SensorContext;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.plugins.javascript.JavaScriptFilePredicate;
import org.sonar.plugins.javascript.JavaScriptLanguage;
import org.sonar.plugins.javascript.TypeScriptLanguage;
import org.sonar.plugins.javascript.utils.ProgressReport;

abstract class AbstractAnalysis {

private static final Logger LOG = Loggers.get(AbstractAnalysis.class);
private static final Logger LOG = LoggerFactory.getLogger(AbstractAnalysis.class);
static final String PROGRESS_REPORT_TITLE = "Progress of JavaScript/TypeScript analysis";
static final long PROGRESS_REPORT_PERIOD = TimeUnit.SECONDS.toMillis(10);

Expand Down Expand Up @@ -63,7 +63,7 @@ protected static String inputFileLanguage(InputFile file) {
}

void initialize(SensorContext context, JsTsChecks checks, AnalysisMode analysisMode) {
LOG.debug("Initializing " + getClass().getName());
LOG.debug("Initializing {}", getClass().getName());
this.context = context;
contextUtils = new ContextUtils(context);
this.checks = checks;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.batch.sensor.Sensor;
import org.sonar.api.batch.sensor.SensorContext;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.plugins.javascript.CancellationException;
import org.sonar.plugins.javascript.JavaScriptPlugin;
import org.sonar.plugins.javascript.bridge.cache.CacheStrategies;
Expand All @@ -37,12 +37,11 @@

public abstract class AbstractBridgeSensor implements Sensor {

private static final Logger LOG = Loggers.get(AbstractBridgeSensor.class);
private static final Logger LOG = LoggerFactory.getLogger(AbstractBridgeSensor.class);

protected final String lang;
protected final BridgeServer bridgeServer;
protected List<String> exclusions;
private final AnalysisWarningsWrapper analysisWarnings;
List<String> environments;
List<String> globals;

Expand All @@ -51,11 +50,9 @@ public abstract class AbstractBridgeSensor implements Sensor {

protected AbstractBridgeSensor(
BridgeServer bridgeServer,
AnalysisWarningsWrapper analysisWarnings,
String lang
) {
this.bridgeServer = bridgeServer;
this.analysisWarnings = analysisWarnings;
this.lang = lang;
}

Expand Down Expand Up @@ -113,7 +110,7 @@ protected void logErrorOrWarn(String msg, Throwable e) {

protected abstract List<InputFile> getInputFiles();

protected boolean shouldAnalyzeWithProgram(List<InputFile> inputFiles) {
protected boolean shouldAnalyzeWithProgram() {
if (contextUtils.isSonarLint()) {
LOG.debug("Will use AnalysisWithWatchProgram because we are in SonarLint context");
return false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,19 +23,19 @@

import java.util.HashSet;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.batch.sensor.SensorContext;
import org.sonar.api.utils.Version;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;

public enum AnalysisMode {
DEFAULT,
SKIP_UNCHANGED;

static final String DEFAULT_LINTER_ID = "default";
static final String UNCHANGED_LINTER_ID = "unchanged";
private static final Logger LOG = Loggers.get(AnalysisMode.class);
private static final Logger LOG = LoggerFactory.getLogger(AnalysisMode.class);

public static boolean isRuntimeApiCompatible(SensorContext context) {
return context.runtime().getApiVersion().isGreaterThanOrEqual(Version.create(9, 4));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.batch.sensor.SensorContext;
import org.sonar.api.batch.sensor.cpd.NewCpdTokens;
Expand All @@ -49,19 +51,16 @@
import org.sonar.api.rule.RuleKey;
import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.utils.Version;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.plugins.javascript.bridge.BridgeServer.AnalysisResponse;
import org.sonar.plugins.javascript.bridge.cache.CacheAnalysis;
import org.sonarsource.api.sonarlint.SonarLintSide;
import org.sonarsource.sonarlint.plugin.api.SonarLintRuntime;
import org.sonarsource.sonarlint.plugin.api.issue.NewSonarLintIssue;

@ScannerSide
@SonarLintSide
public class AnalysisProcessor {

private static final Logger LOG = Loggers.get(AnalysisProcessor.class);
private static final Logger LOG = LoggerFactory.getLogger(AnalysisProcessor.class);
private static final Version SONARLINT_6_3 = Version.create(6, 3);

private final NoSonarFilter noSonarFilter;
Expand Down Expand Up @@ -181,7 +180,7 @@ private void saveIssues(List<Issue> issues) {
LOG.debug(
"Saving issue for rule {} on file {} at line {}",
issue.ruleId,
file.absolutePath(),
file,
issue.line
);
saveIssue(issue);
Expand Down Expand Up @@ -320,7 +319,7 @@ void saveIssue(BridgeServer.Issue issue) {
newIssue.setQuickFixAvailable(true);
}
if (isQuickFixCompatible()) {
addQuickFixes(issue, (NewSonarLintIssue) newIssue, file);
addQuickFixes(issue, newIssue, file);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
import org.sonarsource.api.sonarlint.SonarLintSide;

@ScannerSide
@SonarLintSide(lifespan = SonarLintSide.MULTIPLE_ANALYSES)
@SonarLintSide(lifespan = SonarLintSide.INSTANCE)
public class AnalysisWarningsWrapper {

private final AnalysisWarnings analysisWarnings;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,10 @@
import java.util.List;
import java.util.Set;
import javax.annotation.Nullable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.sonar.api.batch.fs.InputFile;
import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.utils.log.Logger;
import org.sonar.api.utils.log.Loggers;
import org.sonar.api.utils.log.Profiler;
import org.sonar.plugins.javascript.CancellationException;
import org.sonar.plugins.javascript.JavaScriptPlugin;
import org.sonar.plugins.javascript.bridge.BridgeServer.TsProgram;
Expand All @@ -45,9 +44,7 @@
@SonarLintSide
public class AnalysisWithProgram extends AbstractAnalysis {

private static final Logger LOG = Loggers.get(AnalysisWithProgram.class);
private static final Profiler PROFILER = Profiler.create(LOG);

private static final Logger LOG = LoggerFactory.getLogger(AnalysisWithProgram.class);
public AnalysisWithProgram(
BridgeServer bridgeServer,
AnalysisProcessor analysisProcessor,
Expand All @@ -59,7 +56,7 @@ public AnalysisWithProgram(
@Override
void analyzeFiles(List<InputFile> inputFiles, List<String> tsConfigs) throws IOException {
progressReport = new ProgressReport(PROGRESS_REPORT_TITLE, PROGRESS_REPORT_PERIOD);
progressReport.start(inputFiles.size(), inputFiles.iterator().next().absolutePath());
progressReport.start(inputFiles.size(), inputFiles.iterator().next().toString());
boolean success = false;
try {
Deque<String> workList = new ArrayDeque<>(tsConfigs);
Expand All @@ -72,19 +69,18 @@ void analyzeFiles(List<InputFile> inputFiles, List<String> tsConfigs) throws IOE
LOG.debug("tsconfig.json already analyzed: '{}'. Skipping it.", tsConfig);
continue;
}
PROFILER.startInfo("Creating TypeScript program");
LOG.info("TypeScript configuration file " + tsConfig);
LOG.info("Creating TypeScript program");
LOG.info("TypeScript configuration file {}", tsConfig);
var program = bridgeServer.createProgram(new TsProgramRequest(tsConfig));
if (program.error != null) {
LOG.error("Failed to create program: " + program.error);
LOG.error("Failed to create program: {}", program.error);
this.analysisWarnings.addUnique(
String.format(
"Failed to create TypeScript program with TSConfig file %s. Highest TypeScript supported version is %s.",
tsConfig,
JavaScriptPlugin.TYPESCRIPT_VERSION
)
);
PROFILER.stopInfo();
continue;
}
if (program.missingTsConfig) {
Expand All @@ -93,7 +89,6 @@ void analyzeFiles(List<InputFile> inputFiles, List<String> tsConfigs) throws IOE
LOG.warn(msg);
this.analysisWarnings.addUnique(msg);
}
PROFILER.stopInfo();
analyzeProgram(program, analyzedFiles);
workList.addAll(program.projectReferences);
bridgeServer.deleteProgram(program);
Expand Down Expand Up @@ -164,7 +159,7 @@ private void analyze(InputFile file, @Nullable TsProgram tsProgram) throws IOExc
if (cacheStrategy.isAnalysisRequired()) {
try {
LOG.debug("Analyzing file: {}", file.uri());
progressReport.nextFile(file.absolutePath());
progressReport.nextFile(file.toString());
var fileContent = contextUtils.shouldSendFileContent(file) ? file.contents() : null;
var request = getJsAnalysisRequest(file, tsProgram, fileContent);

Expand Down

0 comments on commit cb65760

Please sign in to comment.