Releases: pmd/pmd-eclipse-plugin
PMD For Eclipse 7.8.0.v20241129-1139-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Update to PMD 7.8.0
 
Dependency updates
PMD For Eclipse 7.7.0.v20241025-0829-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Update to PMD 7.7.0
 
Dependency updates
PMD For Eclipse 7.6.0.v20240927-1030-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Update to PMD 7.6.0
 - Support for Eclipse 2024-09 added
 - Support for Eclipse 2023-09 removed
 - New Git default branch - "main":
We are joining the Git community and updating "master" to "main". Using the term "master" for the main
development branch can be offensive to some people. Existing versions of Git have been always capable of
working with any branch name and since 2.28.0 (July 2020) the default initial branch is configurable
(init.defaultBranch). Since October 2020, the default branch for new repositories on GitHub
is "main". Finally, PMD will also use this new name for the main branch in all our own repositories. 
Merged pull requests
- Only include the jars under target/lib that are on the classpath (#223) by @adangel
 - Update PMD icon to use small variant of the logo (#222) by @adangel
 - Support eclipse 2024-09 (#221) by @adangel
 - Change branch master to main (#220) by @adangel
 
Dependency updates
- Bump checkstyle from 10.14.0 to 10.18.1 (#217)
 
PMD For Eclipse 7.5.0.v20240830-0910-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Update to PMD 7.5.0
 
Dependency updates
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.3.0 to 3.4.0 (#215)
 
PMD For Eclipse 7.4.0.v20240726-0845-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Update to PMD 7.4.0
 
Dependency updates
- Bump org.apache.maven.plugins:maven-surefire-plugin from 3.2.5 to 3.3.0 (#199)
 - Bump org.apache.maven.plugins:maven-site-plugin from 4.0.0-M13 to 4.0.0-M15 (#201)
 - Bump org.apache.maven.plugins:maven-clean-plugin from 3.3.2 to 3.4.0 (#202)
 - Bump org.apache.maven.plugins:maven-deploy-plugin from 3.1.1 to 3.1.2 (#203)
 - Bump org.apache.maven.plugins:maven-enforcer-plugin from 3.4.1 to 3.5.0 (#204)
 - Bump org.apache.maven.plugins:maven-pmd-plugin from 3.22.0 to 3.23.0 (#206)
 - Bump org.apache.maven.plugins:maven-dependency-plugin from 3.5.0 to 3.7.1 (#207)
 
PMD For Eclipse 7.3.0.v20240628-1015-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Updated to PMD 7.3.0
 - Support for Eclipse 2024-06 added
 - Support for Eclipse 2023-06 removed
 
PMD For Eclipse 7.2.0.v20240531-1152-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Updated to PMD 7.2.0
 
Merged pull requests
PMD For Eclipse 7.1.0.v20240426-0821-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Updated to PMD 7.1.0
 
Fixed Issues
- #191: Rule Configuration Pref Page - PropertyDescriptor cannot be cast to Comparable
 - #192: Add japicmp
 
API Changes
Deprecations
The following classes have been deprecated for removal. Either they were not intended to be public API at all
or they were used to support the UI for rule configuration. With the switch to PMD 7.0.0, these editor
factories are not used anymore.
net.sourceforge.pmd.eclipse.ui.preferences.editors.AbstractEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.AbstractMultiValueEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.AbstractNumericEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.AbstractRealNumberEditornet.sourceforge.pmd.eclipse.ui.preferences.editors.BooleanEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.CharacterEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.DoubleEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.EnumerationEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.FilePickernet.sourceforge.pmd.eclipse.ui.preferences.editors.IntegerEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.MethodPickernet.sourceforge.pmd.eclipse.ui.preferences.editors.MultiEnumerationEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.MultiIntegerEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.MultiStringEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.RegexEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.StringEditorFactorynet.sourceforge.pmd.eclipse.ui.preferences.editors.SWTUtilnet.sourceforge.pmd.eclipse.ui.preferences.editors.TypeText
The following members have been deprecated for removal:
net.sourceforge.pmd.eclipse.ui.dialogs.NewPropertyDialog#NewPropertyDialog(Shell, Map<Class<?>, EditorFactory<?>>, PropertySource, ValueChangeListener)net.sourceforge.pmd.eclipse.ui.dialogs.NewPropertyDialog#NewPropertyDialog(Shell, Map<Class<?>, EditorFactory<?>>, Rule, PropertyDescriptor<?>, ValueChangeListener)net.sourceforge.pmd.eclipse.ui.dialogs.NewPropertyDialog#withOnly(Map<Class<?>, EditorFactory<?>>, Class<?>[])net.sourceforge.pmd.eclipse.ui.preferences.panelmanagers.AbstractRulePanelManager.show(TypeText, Class<?>)net.sourceforge.pmd.eclipse.ui.preferences.panelmanagers.FormArranger#FormArranger(Composite, Map<Class<?>, EditorFactory<?>>, ValueChangeListener, SizeChangeListener)net.sourceforge.pmd.eclipse.ui.preferences.panelmanagers.PerRulePropertyPanelManager#EDITOR_FACTORIES_BY_PROPERTY_TYPE
See the javadoc for more info and any possible alternatives if available.
PMD For Eclipse 7.0.0.v20240322-0920-r
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a major release.
New and noteworthy
- Updated to PMD 7.0.0
 - Support for Eclipse 2024-03 added
 - Support for Eclipse 2023-12 added
 - Support for Eclipse 2023-03 removed
 - Support for Eclipse 2022-12 removed
 
Fixed Issues
- #185: Bump ch.qos.logback:logback-classic from 1.2.3 to 1.2.13
 - #186: Support eclipse 2023-12
 - #187: Bump tycho from 3.0.4 to 4.0.4
 - #190: Support eclipse 2024-03
 
API Changes
Due to the updated PMD version, there are a couple of incompatible changes, like changed packages.
For the details, see the release notes of PMD.
The following members have been removed, even though they have not been deprecated before:
- net.sourceforge.pmd.eclipse.ui.preferences.panelmanagers.Configuratio#EXCLUDED_RULE_PROPERTIES
 
The following deprecated members have been removed:
- net.sourceforge.pmd.eclipse.runtime.properties.impl.ProjectPropertiesImpl#getProjectRuleSets()
 - net.sourceforge.pmd.eclipse.runtime.properties.impl.ProjectPropertiesImpl#setProjectRuleSets(RuleSets)
 - net.sourceforge.pmd.eclipse.runtime.properties.IProjectProperties#getProjectRuleSets()
 - net.sourceforge.pmd.eclipse.runtime.properties.IProjectProperties#setProjectRuleSets(RuleSets)
 - net.sourceforge.pmd.eclipse.ui.properties.PMDPropertyPageBean#getProjectRuleSets()
 - net.sourceforge.pmd.eclipse.ui.properties.PMDPropertyPageBean#setProjectRuleSets(RuleSets)
 - net.sourceforge.pmd.eclipse.runtime.cmd.BaseVisitor#getRuleSets()
 - net.sourceforge.pmd.eclipse.runtime.cmd.BaseVisitor#setRuleSets(RuleSets)
 - net.sourceforge.pmd.eclipse.ui.properties.UpdateProjectPropertiesCmd#setProjectRuleSets(RuleSets)
 - net.sourceforge.pmd.eclipse.plugin.PMDPlugin#ROOT_LOG_ID
 - net.sourceforge.pmd.eclipse.plugin.PMDPlugin#setJavaClassLoader(PMDConfiguration, IProject)
 - net.sourceforge.pmd.eclipse.plugin.PMDPlugin#getPluginFolder()
 - net.sourceforge.pmd.eclipse.plugin.PMDPlugin#getOpenFiles()
 - net.sourceforge.pmd.eclipse.plugin.PMDPlugin#getPriorityValues()
 - net.sourceforge.pmd.eclipse.plugin.UISettings#createRuleMarkerIcons(Display)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#markerFilenameFor(RulePriority)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#relativeMarkerFilenameFor(RulePriority)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#reloadPriorities()
 - net.sourceforge.pmd.eclipse.plugin.UISettings#markerImgDescriptorsByPriority()
 - net.sourceforge.pmd.eclipse.plugin.UISettings#markerDescriptorFor(RulePriority)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#descriptionFor(RulePriority)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#descriptorFor(RulePriority)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#priorityFor(int)
 - net.sourceforge.pmd.eclipse.plugin.UISettings#getPriorityLabels()
 - net.sourceforge.pmd.eclipse.runtime.cmd.AbstractDefaultCommand#isJavaFile(IFile)
 - net.sourceforge.pmd.eclipse.runtime.cmd.BaseVisitor#isUseTaskMarker()
 - net.sourceforge.pmd.eclipse.runtime.cmd.BaseVisitor#setUseTaskMarker(boolean)
 - net.sourceforge.pmd.eclipse.runtime.cmd.ReviewCodeCmd#setTaskMarker(boolean)
 - net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences#MAX_VIOLATIONS_PFPR_DEFAULT
 - net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences#getMaxViolationsPerFilePerRule()
 - net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences#setMaxViolationsPerFilePerRule(int)
 - net.sourceforge.pmd.eclipse.runtime.properties.impl.ProjectPropertiesImpl#getResolvedRuleSetFile()
 - net.sourceforge.pmd.eclipse.runtime.properties.IProjectProperties#getResolvedRuleSetFile()
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#addExcludePatterns(RuleSet, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#addExcludePatterns(RuleSet, Collection, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#setExcludePatterns(RuleSet, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#addIncludePatterns(RuleSet, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#addIncludePatterns(RuleSet, Collection, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#setIncludePatterns(RuleSet, Collection)
 - net.sourceforge.pmd.eclipse.ui.actions.RuleSetUtil#addRuleSetByReference(RuleSet, RuleSet, boolean)
 - net.sourceforge.pmd.eclipse.ui.priority.PriorityDescriptor#getImageDescriptor()
 - net.sourceforge.pmd.eclipse.ui.priority.PriorityDescriptor#getImage(Display)
 - net.sourceforge.pmd.eclipse.ui.priority.PriorityDescriptor#getImage(Display, int)
 - net.sourceforge.pmd.eclipse.ui.priority.PriorityDescriptor#refreshImages()
 - net.sourceforge.pmd.eclipse.ui.priority.PriorityDescriptorCache#dumpTo(PrintStream)
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#PriorityFilter()
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#addPriorityToList(Integer)
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#removePriorityFromList(Integer)
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#setPriorityFilterListFromString(String, String)
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#getPriorityFilterListAsString(String)
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#getPriorityFilterList()
 - net.sourceforge.pmd.eclipse.ui.views.PriorityFilter#setPriorityFilterList(List)
 - net.sourceforge.pmd.eclipse.ui.views.ViolationOverview#getPriorityFilterList()
 - net.sourceforge.pmd.eclipse.ui.RuleLabelDecorator#reloadDecorators()
 - net.sourceforge.pmd.eclipse.ui.ShapePainter#disposeAll()
 
The following deprecated classes have been removed:
- name.herlin.command.AbstractProcessableCommand
 - name.herlin.command.Command
 - name.herlin.command.CommandException
 - name.herlin.command.CommandProcessor
 - name.herlin.command.CommandProcessorStrategy
 - name.herlin.command.DefaultCommandProcessor
 - name.herlin.command.DefaultCommandProcessorStrategy
 - name.herlin.command.Timer
 - name.herlin.command.UnregisteredCommandException
 - name.herlin.command.UnsetInputPropertiesException
 - net.sourceforge.pmd.eclipse.plugin.EclipseUtil
 - net.sourceforge.pmd.eclipse.ui.views.AbstractViolationLabelProvider
 - net.sourceforge.pmd.eclipse.ui.preferences.RulePropertiesContentProvider
 - net.sourceforge.pmd.eclipse.ui.preferences.RulePropertyLabelProvider (not previously deprecated, but unused)
 - net.sourceforge.pmd.eclipse.ui.preferences.RuleProperty
 - net.sourceforge.pmd.eclipse.util.PriorityUtil
 - net.sourceforge.pmd.eclipse.util.IOUtil
 
PMD For Eclipse 7.0.0.v20230930-1814-rc4
A new PMD for Eclipse plugin version has been released.
It is available via the update site: https://pmd.github.io/pmd-eclipse-plugin-p2-site/
This is a minor release.
New and noteworthy
- Updated to PMD 7.0.0-rc4
 - Support for Eclipse 2023-09 added
 - Support for Eclipse 2023-06 added
 - Support for Eclipse 2022-09 removed
 - Support for Eclipse 2022-06 removed
 
Fixed Issues
API Changes
- The deprecated field net.sourceforge.pmd.eclipse.runtime.PMDRuntimeConstants.MAX_VIOLATIONS_DESCRIPTOR has been
removed. - The following deprecated classes have been removed
- net.sourceforge.pmd.eclipse.ui.preferences.br.FilterManager
 - net.sourceforge.pmd.eclipse.ui.preferences.editors.FileEditorFactory
 - net.sourceforge.pmd.eclipse.ui.preferences.editors.FloatEditorFactory
 
 - The following packages are not exported anymore, as they don't exist anymore:
- net.sourceforge.pmd.cpd.renderer
 - net.sourceforge.pmd.properties.constraints