diff --git a/.github/issue_template.md b/.github/issue_template.md new file mode 100644 index 0000000000..20fa30baaf --- /dev/null +++ b/.github/issue_template.md @@ -0,0 +1,37 @@ +--- +name: Bug report +about: Create a report to help the plugin developers +title: '' +labels: To review +assignees: '' + +--- + +## Which Plugin? + +## Expected Behavior + +## Current Behavior + +## Possible Solution + + + +## Steps to Reproduce + +1. +2. +3. +4. + +## Context + + + +## Your Environment + +* Gephi Version used: Gephi 0.10.0 +* Plugin Version used: +* Operating System: + + diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000000..2e7baf1a21 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,20 @@ +## New plugin or plugin update? + +* [ ] New Plugin +* [ ] Update + +## What is the purpose of this plugin? + + +## How to test your plugin in Gephi? + +1. +2. + +## Checklist before submission + +* [ ] Did you merged with the `master` branch to get the latest updates? +* [ ] Did you build and test the plugin successfully locally? +* [ ] Did you include metadata (e.g. plugin author, license) in the `pom.xml` file +* [ ] Did you make sure NOT to include any unecessary files in your PR? +* [ ] Did you write unit tests to test your plugin functionalities? diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000000..d40f213350 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,22 @@ +name: build + +on: + push: + branches-ignore: + - master-forge + - master + - parent-pom + - gh-pages + +jobs: + build_and_test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'temurin' + - name: Build and validate project + run: mvn -B package --file pom.xml \ No newline at end of file diff --git a/.github/workflows/release-pom.yml b/.github/workflows/release-pom.yml new file mode 100644 index 0000000000..27f1240498 --- /dev/null +++ b/.github/workflows/release-pom.yml @@ -0,0 +1,30 @@ +name: release-pom + +on: + push: + branches: [ parent-pom ] + +jobs: + build_and_test: + runs-on: ubuntu-latest + defaults: + run: + working-directory: modules + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'temurin' + server-id: ossrh + server-username: OSSRH_USER + server-password: OSSRH_PASS + gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }} + gpg-passphrase: GPG_PASSPHRASE + - name: Build and validate project + run: mvn -B deploy -P release-pom --file pom.xml + env: + OSSRH_USER: ${{ secrets.OSSRH_USER }} + OSSRH_PASS: ${{ secrets.OSSRH_PASS }} + GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 879e777462..6eb5d997c2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,181 @@ .DS_Store **/target/** + +# Created by https://www.gitignore.io/api/maven,eclipse,netbeans,intellij +# Edit at https://www.gitignore.io/?templates=maven,eclipse,netbeans,intellij + +### Eclipse ### + +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.settings/ +.loadpath +.recommenders + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# PyDev specific (Python IDE for Eclipse) +*.pydevproject + +# CDT-specific (C/C++ Development Tooling) +.cproject + +# CDT- autotools +.autotools + +# Java annotation processor (APT) +.factorypath + +# PDT-specific (PHP Development Tools) +.buildpath + +# sbteclipse plugin +.target + +# Tern plugin +.tern-project + +# TeXlipse plugin +.texlipse + +# STS (Spring Tool Suite) +.springBeans + +# Code Recommenders +.recommenders/ + +# Annotation Processing +.apt_generated/ + +# Scala IDE specific (Scala & Java development for Eclipse) +.cache-main +.scala_dependencies +.worksheet + +### Eclipse Patch ### +# Eclipse Core +.project + +# JDT-specific (Eclipse Java Development Tools) +.classpath + +# Annotation Processing +.apt_generated + +.sts4-cache/ + +### Intellij ### +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### Intellij Patch ### +# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721 + +*.iml +.idea/ +# modules.xml +# .idea/misc.xml +# *.ipr + +# Sonarlint plugin +.idea/sonarlint + +### Maven ### +target/ +pom.xml.tag +pom.xml.releaseBackup +pom.xml.versionsBackup +pom.xml.next +release.properties +dependency-reduced-pom.xml +buildNumber.properties +.mvn/timing.properties +.mvn/wrapper/maven-wrapper.jar + +### NetBeans ### +**/nbproject/private/ +**/nbproject/Makefile-*.mk +**/nbproject/Package-*.bash +build/ +nbbuild/ +dist/ +nbdist/ +.nb-gradle/ + +# End of https://www.gitignore.io/api/maven,eclipse,netbeans,intellij + +.java-version \ No newline at end of file diff --git a/README.md b/README.md index abdba38774..1450ed92f2 100644 --- a/README.md +++ b/README.md @@ -2,39 +2,11 @@ This repository is an out-of-the-box development environment for Gephi plugins. Gephi plugins are implemented in Java and can extend [Gephi](https://gephi.org) in many different ways, adding or improving features. Getting started is easy with this repository but also checkout the [Bootcamp](https://github.com/gephi/gephi-plugins-bootcamp) for examples of plugins you can create. -## Migrate Gephi 0.8 plugins - -The process in which plugins are developed and submitted had an overhaul when Gephi 0.9 was released. Details can be read on this article: [Plugin development gets new tools and opens-up to the community](https://gephi.wordpress.com/2015/12/16/plugin-development-gets-new-tools-and-opens-up-to-the-community/). - -This section is a step-by-step guide to migrate 0.8 plugins. Before going through the code and configuration, let's summerize the key differences between the two environements. - -- The 0.8 base is built using Ant, whereas the 0.9 uses Maven. These two are significantly different. If you aren't familiar with Maven, you can start with [Maven in 5 Minutes]( https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html). Maven configurations are defined in the `pom.xml` files. -- The 0.8 base finds the Gephi modules into the `platform` folder checked in the repository, whereas the 0.9 base downloads everything from the central Maven repository, where all Gephi modules are available. -- Maven requires to separate source files (e.g. .java) and resources files (e.g. .properties) into distinct folders. Sources are located in `src/main/java` and resources in `src/main/resources`. - -A custom `migrate` goal is available in the [Gephi Maven Plugin](https://github.com/gephi/gephi-maven-plugin) to facilitate the migration from 0.8 to 0.9. This automated process migrates ant-based plugins to maven and takes care of copying the configuration and code. Follow these steps to migrate your plugin: - -- Fork and checkout this repository: - - git clone git@github.com:username/gephi-plugins.git - -If you've already had a forked repository based on 0.8 we suggest to save your code somewhere, delete it and fork again as the history was cleared. - -- Copy your plugin folder at the root of this directory. - -- Run this command: - - mvn org.gephi:gephi-maven-plugin:migrate - -This command will detect the ant-based plugin and migrate it. The resulting folder is then located into the `modules` folder. - -The plugin code can then be inspected in Netbeans or built via command line with `mvn clean package`. - ## Get started ### Requirements -Developing Gephi plugins requires [JDK 7](http://www.oracle.com/technetwork/java/javase/downloads/index.html) or later and [Maven](http://maven.apache.org/). Although any IDE/Editor can be used, [Netbeans IDE](https://netbeans.org/) is recommend as Gephi itself is based on [Netbeans Platform](https://netbeans.org/features/platform/index.html). +Developing Gephi plugins requires JDK 11 or later and [Maven](http://maven.apache.org/). ### Create a plugin @@ -76,7 +48,7 @@ Run the following command to compile and build your plugin: mvn clean package -In addition of compiling and building the JAR and NBM, this command uses the `Gephi Maven Plugin` to verify the plugin's configuration. In care something is wrong it will fail and indicte the reason. +In addition to compiling and building the JAR and NBM, this command uses the `Gephi Maven Plugin` to verify the plugin's configuration. In case something is wrong it will fail and indicate the reason. ### Run Gephi with plugin @@ -98,14 +70,16 @@ Submitting a Gephi plugin for approval is a simple process based on GitHub's [pu - Navigate to your fork's URL and create a pull request. Select `master-forge` instead of `master` as base branch. -- Submit your pull request. +- Submit your pull request. If possible, before you submit make sure to [enable edits from maintainers](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) so that we can help you tweak the code and configuration when needed. ## Update a plugin -Updating a Gephi plugin has the same process as submiting it for the first time. Don't forget to merge from upstream's master branch. +Updating a Gephi plugin has the same process as submitting it for the first time. Don't forget to merge from upstream's master branch. ## IDE Support +Although any IDE/Editor can be used, [Netbeans IDE](https://netbeans.org/) is recommended as Gephi itself is based on [Netbeans Platform](https://netbeans.org/features/platform/index.html). + ### Netbeans IDE - Start Netbeans and go to `File` and then `Open Project`. Navigate to your fork repository, Netbeans automatically recognizes it as Maven project. @@ -141,9 +115,9 @@ Yes, native libraries can be used in modules. The `modules` folder is where plugin modules go. Each plugin is defined in a single folder in this directory. A plugin can be composed of multiple modules (it's called a suite then) but usually one is enough to do what you want. -The `pom.xml` file in `modules` is the parent pom for plugins. A Maven pom can inherit configurations from a parent and that is something we use to keep each plugin's pom very simple. Notice that each plugin's pom (i.e. the `pom.xml` file in the plugin folder) has a `` defined. +A Maven pom can inherit configurations from a parent and that is something we use to keep each plugin's pom very simple. Notice that each plugin's pom (i.e. the `pom.xml` file in the plugin folder) has a `` defined. -The `pom.xml` file at the root folder makes everything fit together and notably lists the modules. +The `pom.xml` file at the root folder makes everything fit together and notably lists the modules. No need to change anything there besises this list. #### How are the manifest settings defined? @@ -167,7 +141,7 @@ This applies for suite plugins with multiple modules. Besides creating the modul Dependencies are configured in the `` section in the plugin folder's `pom.xml`. Each dependency has a `groupId`, an `artifactId` and a `version`. There are three types of dependencies a plugin can have: an external library, a Gephi module or a Netbeans module. -The list of Gephi and Netbeans dependencies one can use can be found in the `modules/pom.xml` file. All possible dependencies are listed in the `` section. Because each plugin module inherits from this parent pom the version can be omitted when the dependency is set. For instance, this is how a plugin depends on `GraphAPI` and Netbeans's `Lookup`. +The list of Gephi and Netbeans dependencies one can use can be found in the parent POM, which you can browse [here](https://github.com/gephi/gephi-plugins/blob/6136ba8427349aa16c4f4b94265267fc3de0e767/modules/pom.xml#L76). All possible dependencies are listed in the `` section. Because each plugin module already inherits the version from this parent pom, it can be omitted. For instance, this is how a plugin depends on `GraphAPI` and Netbeans's `Lookup`. ``` @@ -201,3 +175,31 @@ It's the same thing. We say module because Gephi is a modular application and is #### When running the plugin in Netbeans I get an error "Running standalone modules or suites requires..." This error appears when you try to run a module. To run Gephi with your plugin you need to run the `gephi-plugins` project, not your module. + +## Migrate Gephi 0.8 plugins + +The process in which plugins are developed and submitted had an overhaul when Gephi 0.9 was released. Details can be read on this article: [Plugin development gets new tools and opens-up to the community](https://gephi.wordpress.com/2015/12/16/plugin-development-gets-new-tools-and-opens-up-to-the-community/). + +This section is a step-by-step guide to migrate 0.8 plugins. Before going through the code and configuration, let's summerize the key differences between the two environements. + +- The 0.8 base is built using Ant, whereas the 0.9 uses Maven. These two are significantly different. If you aren't familiar with Maven, you can start with [Maven in 5 Minutes]( https://maven.apache.org/guides/getting-started/maven-in-five-minutes.html). Maven configurations are defined in the `pom.xml` files. +- The 0.8 base finds the Gephi modules into the `platform` folder checked in the repository, whereas the 0.9 base downloads everything from the central Maven repository, where all Gephi modules are available. +- Maven requires to separate source files (e.g. .java) and resources files (e.g. .properties) into distinct folders. Sources are located in `src/main/java` and resources in `src/main/resources`. + +A custom `migrate` goal is available in the [Gephi Maven Plugin](https://github.com/gephi/gephi-maven-plugin) to facilitate the migration from 0.8 to 0.9. This automated process migrates ant-based plugins to maven and takes care of copying the configuration and code. Follow these steps to migrate your plugin: + +- Fork and checkout this repository: + + git clone git@github.com:username/gephi-plugins.git + +If you've already had a forked repository based on 0.8 we suggest to save your code somewhere, delete it and fork again as the history was cleared. + +- Copy your plugin folder at the root of this directory. + +- Run this command: + + mvn org.gephi:gephi-maven-plugin:migrate + +This command will detect the ant-based plugin and migrate it. The resulting folder is then located into the `modules` folder. + +The plugin code can then be inspected in Netbeans or built via command line with `mvn clean package`. diff --git a/modules/BridgingPlugin/pom.xml b/modules/BridgingPlugin/pom.xml index 6c55a1bb6f..8cb97a804f 100644 --- a/modules/BridgingPlugin/pom.xml +++ b/modules/BridgingPlugin/pom.xml @@ -4,12 +4,12 @@ gephi-plugin-parent org.gephi - 0.9.2 + 0.10.0 ia.ppgco.facom.ufu.br bridge-gephi-plugin - 1.0.1 + 1.0.2 nbm Bridging Centrality Plugin @@ -73,6 +73,7 @@ Apache 2.0 GetĂșlio de Morais Pereira Anderson Rodrigues dos Santos + Luis Felipe Nunes Reis santosardr@ufu.br https://github.com/santosardr/gephi-plugins @@ -80,6 +81,22 @@ + + org.apache.maven.plugins + maven-jar-plugin + 2.4 + + true + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + diff --git a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetric.java b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetric.java index c83d6adfee..17873894df 100644 --- a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetric.java +++ b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetric.java @@ -18,7 +18,6 @@ import javax.swing.JOptionPane; import org.gephi.graph.api.*; import org.gephi.statistics.plugin.ChartUtils; -import org.gephi.statistics.spi.Statistics; import org.gephi.utils.TempDirUtils; import org.gephi.utils.TempDirUtils.TempDir; import org.gephi.utils.progress.Progress; @@ -38,7 +37,7 @@ * * @author getulio */ -public class BridgingCentralityMetric extends GraphDistance implements Statistics { +public class BridgingCentralityMetric extends GraphDistance { private static final Logger LOG = Logger.getLogger(BridgingCentralityMetric.class.getName()); @@ -443,6 +442,7 @@ public String getReport() { + "
    " + "
  • Getúlio de Morais Pereira
  • " + "
  • Anderson Rodrigues dos Santos
  • " + + "
  • Luis Felipe Nunes Reis
  • " + "
      " + "
    • " + contact + " : santosardr@ufu.br
    • " + "
    " @@ -505,6 +505,9 @@ private String createImageFile(TempDir tempDir, double[] pVals, String pName, St * @return bridging coefficient value */ private static double bridging_coeficient(Graph graph, Node node) { + if(isIsolatedNode(graph,node)){ + return 0; + } //The inverse degree of a node divided by the inverse degree of all their imediate neighbors double n = 1.0 / graph.getDegree(node); @@ -551,4 +554,19 @@ public boolean isNormalized() { public void setNormalized(boolean normalized) { this.normalized = normalized; } + + public static boolean isIsolatedNode(Graph graph, Node node) { + + NodeIterable iterable = graph.getNodes(); + + for (Node s : iterable) { + if (graph.isAdjacent(node, s)) { + iterable.doBreak(); + return false; + } + } + // If loop ends without return false, it is an isolated node + return true; + } + } diff --git a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricPanel.java b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricPanel.java index d648f340de..faac527fa9 100644 --- a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricPanel.java +++ b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricPanel.java @@ -38,7 +38,6 @@ public void setNormalized(boolean normalized) { * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ - @SuppressWarnings("unchecked") // //GEN-BEGIN:initComponents private void initComponents() { diff --git a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricUI.java b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricUI.java index 26a3954ed6..1517732ed4 100644 --- a/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricUI.java +++ b/modules/BridgingPlugin/src/main/java/ia/ppgco/facom/ufu/br/gephi/plugin/bridgingcoefficient/BridgingCentralityMetricUI.java @@ -107,17 +107,9 @@ public int getPosition() { private static class StatSettings { - private boolean isDirectedGraph = false; - private boolean isNormalized = false; - private void save(BridgingCentralityMetric stat) { - this.isDirectedGraph = stat.isDirected(); - this.isNormalized = stat.isNormalized(); - } - - private void load(BridgingCentralityMetric stat) { - stat.setDirected(isDirectedGraph); - stat.setNormalized(isNormalized); + stat.isDirected(); + stat.isNormalized(); } } diff --git a/modules/pom.xml b/modules/pom.xml deleted file mode 100644 index 3d3cbfaa18..0000000000 --- a/modules/pom.xml +++ /dev/null @@ -1,623 +0,0 @@ - - - 4.0.0 - - org.gephi - gephi-plugin-parent - 0.9.2 - pom - - gephi-plugins-parent - Parent POM for all Gephi plugins - 2015 - - http://github.com/gephi/gephi-plugins - - - - scm:git:git://github.com/gephi/gephi-plugins.git - scm:git:git@github.com:gephi/gephi-plugins.git - https://github.com/gephi/gephi-plugins - - - - - - Apache 2.0 - http://www.opensource.org/licenses/Apache-2.0 - Apache License, Version 2.0 - - - - - - - mbastian - Mathieu Bastian - mathieu.bastian@gephi.org - - - eduramiba - Eduardo Ramos - eduardo.ramos@gephi.org - - - - - - UTF-8 - 0.9.2 - RELEASE82 - - - - - - oss-sonatype - oss-sonatype - https://oss.sonatype.org/content/repositories/snapshots/ - - true - - - - netbeans - NetBeans - http://bits.netbeans.org/nexus/content/groups/netbeans/ - - false - - - - - - - - - org.gephi - utils-longtask - ${gephi.version} - - - org.gephi - project-api - ${gephi.version} - - - org.gephi - io-exporter-api - ${gephi.version} - - - org.gephi - graph-api - ${gephi.version} - - - org.gephi - preview-api - ${gephi.version} - - - org.gephi - io-exporter-preview - ${gephi.version} - - - org.gephi - lib.validation - ${gephi.version} - - - org.gephi - preview-export-ui - ${gephi.version} - - - org.gephi - utils - ${gephi.version} - - - org.gephi - datalab-api - ${gephi.version} - - - org.gephi - visualization-api - ${gephi.version} - - - org.gephi - preview-plugin - ${gephi.version} - - - org.gephi - db-drivers - ${gephi.version} - - - org.gephi - io-importer-api - ${gephi.version} - - - org.gephi - io-processor-plugin - ${gephi.version} - - - org.gephi - processor-plugin-ui - ${gephi.version} - - - org.gephi - project-ui - ${gephi.version} - - - org.gephi - ui-utils - ${gephi.version} - - - org.gephi - ui-components - ${gephi.version} - - - org.gephi - settings-upgrader - ${gephi.version} - - - org.gephi - statistics-api - ${gephi.version} - - - org.gephi - statistics-plugin - ${gephi.version} - - - org.gephi - statistics-plugin-ui - ${gephi.version} - - - org.gephi - tools-api - ${gephi.version} - - - org.gephi - algorithms-plugin - ${gephi.version} - - - org.gephi - gleem - ${gephi.version} - - - org.gephi - mostrecentfiles-api - ${gephi.version} - - - org.gephi - desktop-project - ${gephi.version} - - - org.gephi - visualization - ${gephi.version} - - - org.gephi - tools-plugin - ${gephi.version} - - - org.gephi - welcome-screen - ${gephi.version} - - - org.gephi - desktop-context - ${gephi.version} - - - org.gephi - desktop-progress - ${gephi.version} - - - org.gephi - layout-api - ${gephi.version} - - - org.gephi - io-generator-api - ${gephi.version} - - - org.gephi - io-generator-plugin - ${gephi.version} - - - org.gephi - generator-plugin-ui - ${gephi.version} - - - org.gephi - io-exporter-plugin - ${gephi.version} - - - org.gephi - desktop-statistics - ${gephi.version} - - - org.gephi - filters-api - ${gephi.version} - - - org.gephi - layout-plugin - ${gephi.version} - - - org.gephi - desktop-generate - ${gephi.version} - - - org.gephi - desktop-banner - ${gephi.version} - - - org.gephi - desktop-branding - ${gephi.version} - - - org.gephi - appearance-api - ${gephi.version} - - - org.gephi - desktop-appearance - ${gephi.version} - - - org.gephi - io-importer-plugin - ${gephi.version} - - - org.gephi - desktop-datalab - ${gephi.version} - - - org.gephi - filters-plugin - ${gephi.version} - - - org.gephi - filters-impl - ${gephi.version} - - - org.gephi - export-plugin-ui - ${gephi.version} - - - org.gephi - desktop-recent-files - ${gephi.version} - - - org.gephi - desktop-io-export - ${gephi.version} - - - org.gephi - perspective-api - ${gephi.version} - - - org.gephi - import-plugin-ui - ${gephi.version} - - - org.gephi - filters-plugin-ui - ${gephi.version} - - - org.gephi - datalab-plugin - ${gephi.version} - - - org.gephi - desktop-layout - ${gephi.version} - - - org.gephi - desktop-import - ${gephi.version} - - - org.gephi - desktop-preview - ${gephi.version} - - - org.gephi - appearance-plugin - ${gephi.version} - - - org.gephi - appearance-plugin-ui - ${gephi.version} - - - org.gephi - desktop-tools - ${gephi.version} - - - org.gephi - timeline-api - ${gephi.version} - - - org.gephi - desktop-timeline - ${gephi.version} - - - org.gephi - directory-chooser - ${gephi.version} - - - org.gephi - desktop-filters - ${gephi.version} - - - org.gephi - core-library-wrapper - ${gephi.version} - - - org.gephi - ui-library-wrapper - ${gephi.version} - - - org.gephi - ui-propertyeditor - ${gephi.version} - - - org.netbeans.api - org-openide-dialogs - ${netbeans.version} - - - org.netbeans.api - org-openide-filesystems - ${netbeans.version} - - - org.netbeans.modules - org-netbeans-modules-masterfs - ${netbeans.version} - - - org.netbeans.api - org-openide-util - ${netbeans.version} - - - org.netbeans.api - org-openide-util-ui - ${netbeans.version} - - - org.netbeans.api - org-openide-util-lookup - ${netbeans.version} - - - org.netbeans.api - org-openide-windows - ${netbeans.version} - - - org.netbeans.api - org-openide-modules - ${netbeans.version} - - - org.netbeans.api - org-netbeans-modules-sendopts - ${netbeans.version} - - - org.netbeans.api - org-netbeans-api-progress - ${netbeans.version} - - - org.netbeans.api - org-netbeans-api-progress-nb - ${netbeans.version} - - - org.netbeans.api - org-openide-nodes - ${netbeans.version} - - - org.netbeans.api - org-openide-awt - ${netbeans.version} - - - org.netbeans.api - org-netbeans-modules-settings - ${netbeans.version} - - - org.netbeans.api - org-netbeans-modules-options-api - ${netbeans.version} - - - org.netbeans.api - org-netbeans-swing-outline - ${netbeans.version} - - - org.netbeans.api - org-openide-explorer - ${netbeans.version} - - - org.netbeans.api - org-netbeans-api-annotations-common - ${netbeans.version} - - - org.netbeans.api - org-netbeans-swing-tabcontrol - ${netbeans.version} - - - org.netbeans.api - org-openide-io - ${netbeans.version} - - - org.netbeans.modules - org-netbeans-core-output2 - ${netbeans.version} - - - org.netbeans.api - org-netbeans-modules-nbjunit - ${netbeans.version} - test - - - - - - - org.codehaus.mojo - nbm-maven-plugin - true - 3.14 - - plugins - - true - - - - - - org.apache.maven.plugins - maven-jar-plugin - 2.5 - - true - - - - - - - - - release - - - - org.codehaus.mojo - nbm-maven-plugin - true - - - keystore.ks - gephi - ${keystore.password} - - - - - - - - - release-pom - - - - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - - sign-artifacts - verify - - sign - - - - - - - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.6 - true - - ossrh - https://oss.sonatype.org/ - true - - - - - - - diff --git a/pom.xml b/pom.xml index 5c6dfe364f..62e4fa4855 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.gephi gephi-plugins - 0.9.2 + 0.10.0 pom gephi-plugins @@ -62,7 +62,7 @@ - 0.9.2 + 0.10.0 ${project.build.directory}/plugins_clusters github 1.8 @@ -93,13 +93,21 @@ + + + + github + scm:git:https://github.com/gephi/gephi-plugins.git + + + ${project.groupId} gephi ${gephi.version} - linux + linux-x64 tar.gz @@ -111,28 +119,31 @@ org.apache.maven.plugins maven-dependency-plugin - 2.10 + 3.2.0 - org.codehaus.mojo + org.apache.netbeans.utilities nbm-maven-plugin - 3.14 + 4.5 + true org.gephi gephi-maven-plugin - 1.2.3 - - ${project.build.directory}/gephi-${gephi.version} - - ${clusters.path}/plugins - - + 1.3.3 - com.github.github - site-maven-plugin - 0.12 + org.apache.maven.plugins + maven-scm-publish-plugin + 3.1.0 + + + org.netbeans.api + nbm-maven-plugin + 4.5 + + GPL-3.0 + @@ -143,6 +154,15 @@ org.gephi gephi-maven-plugin + + https://gephi.org/gephi-plugins/plugins/ + ${project.build.directory}/gephi-${gephi.version} + ${project.build.directory}/site/plugins/ + true + + ${clusters.path}/plugins + + validate-plugin @@ -171,6 +191,8 @@ ${project.build.directory} + **/jre/** + **/jre-x64/** @@ -178,7 +200,7 @@ - org.codehaus.mojo + org.apache.netbeans.utilities nbm-maven-plugin ${clusters.path} @@ -190,6 +212,11 @@ cluster + + + default-branding + none + @@ -206,52 +233,41 @@ org.gephi gephi-maven-plugin - - create-autoupdate - - create-autoupdate - - package - build-metadata build-metadata package - - https://gephi.org/gephi-plugins/plugins/ - - validate-plugin + create-autoupdate - validate + create-autoupdate - none + package - - ${project.build.directory}/site/plugins/ - - com.github.github - site-maven-plugin + org.apache.maven.plugins + maven-scm-publish-plugin - Creating site for gephi-plugins version=${project.version} and gephiVersion=${gephi.version} - true + ${project.build.directory}/site + gh-pages + Autoupdate update for ${project.version} and gephiVersion=${gephi.version} + github + true + + + + org.netbeans.api + nbm-maven-plugin + + GPL-3.0 - - - - site - - package - -