From 77bfdfbb007a71aff014df01c212e19e5ece2148 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Santiago=20Due=C3=B1as?= Date: Tue, 7 Jun 2022 17:30:32 +0200 Subject: [PATCH] Release 0.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Santiago Dueñas --- .github/workflows/release.yml | 2 +- AUTHORS | 11 +++ NEWS | 148 ++++++++++++++++++++++++++++++++++ grimoirelab/_version.py | 2 +- pyproject.toml | 2 +- releases/0.3.0.md | 146 +++++++++++++++++++++++++++++++++ requirements.txt | 2 +- 7 files changed, 309 insertions(+), 4 deletions(-) create mode 100644 AUTHORS create mode 100644 NEWS create mode 100644 releases/0.3.0.md diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8c0bb70e..a7735901 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,7 +24,7 @@ jobs: name: Python ${{ matrix.python-version }} for ES ${{ matrix.elasticsearch-version }} strategy: matrix: - python-version: [3.7, 3.8, 3.9] + python-version: [3.7, 3.8] steps: - name: Download distribution artifact diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 00000000..95037b72 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,11 @@ +Santiago Dueñas +Alvaro del Castillo +Valerio Cosentino +Quan Zhou +Alberto Pérez García-Plaza +Jesus M. Gonzalez-Barahona +Luis Cañas-Díaz +Miguel Ángel Fernández +Jose Javier Merchante +Angel Jara +Daniel Izquierdo diff --git a/NEWS b/NEWS new file mode 100644 index 00000000..cccf4c3a --- /dev/null +++ b/NEWS @@ -0,0 +1,148 @@ +# Releases + +## GrimoireLab 0.3.0 - (2022-06-07) + +**Feature removals:** + + * Drop Python 3.6 support\ + Python 3.6 has reached the end of life in Dec 2021. This means it + won't receive any further patches to fix the secutiry issues. So, + dropping the support of 3.6 and it now supports Python>=3.7 version + only. + +**New components:** + + * grimoirelab-toolkit 0.3.0 + * perceval 0.18.0 + * perceval-mozilla 0.3.0 + * perceval-opnfv 0.2.0 + * perceval-puppet 0.2.0 + * perceval-weblate 0.2.0 + * graal 0.3.0 + * kingarthur 0.2.0 + * sortinghat 0.7.20 + * cereslib 0.3.0 + * grimoire-elk 0.101.1 + * sigils 0.1.0 + * sirmordred 0.3.0 + * kidash 0.5.0 + +The following list describes the changes by component: + +### Perceval + +**New features:** + + * [bugzillarest] API Key authentication\ + A new authentication is available in the `bugzillarest` backend using + an API Key. This can be provided using the parameter `--api-key` on + the command line. Note that this parameter will invalidate `--backend- + user` `--backend-password`, and `--api-token` parameters. For + developers, this parameter is also available during the initialization + of the class `BugzillaRESTClient` under the name `api_key`. + * Confluence supports fetch by spaces\ + This allows fetching confluence by specific spaces. By default it will + fetch the entire instance, but adding the `--spaces` argument will + fetch only these spaces. + +### Graal + +**Bug fixes:** + + * Fix error in update worktree\ + Graal wasn't working with the latest version of Git 2.35.1 because it + protects braches checked out in all worktrees. This change renames the + branch created when creating a worktree to fix the issue. + +### Sorting Hat + +**Bug fixes:** + + * [gitdm] Skip invalid format lines\ + Gitdm parser won't fail reading files with an invalid format. Instead, + it will ignore invalid content. + +### GrimoireELK + +**New features:** + + * Anonymize parameters\ + A new API function `anonymize_params(params)` allows to anonymize a + list of parameters that developers might consider secrets. It will + only take effect for those parameters which their names are defined on + `SECRET_PARAMETERS` constant. + * Dependencies file for development\ + Include a new requirements.txt file to install the development version + from the repositories. + * Support to add identities to SortingHat from Enrich class\ + New methods `add_identities` and `add_identity` are available on + `Enrich` class to add new identities to a `SortingHat` database. + Libraries using `elk` won't need to use `sortinghat` library to store + new identities while enriching items. + * Collect and enrich confluence by spaces\ + Users can collect and enrich Confluence data from specific spaces + only, adding the option `--spaces=[SPACE1, SPACE2, ...]` to their + `projects.json`. The following example shows how to collect and to + enrich data from only the `DEV` and `SUPP` spaces only. ``` { + "project": { "confluence": [ "http://example.com + --spaces=[DEV, SUPP]" ] } } ``` + * Add demographic study to mattermost\ + Add the demographic study to the mattermost data source. + +**Bug fixes:** + + * Skip sources with wrong arguments\ + Sources won't interrupt collection or enrichment processes when any of + their arguments are invalid. Instead, they will be skipped. + * Git fix 'is_git_commit_multi_author'\ + This fixes the `is_git_commit_multi_author` field when the commit has + more than one author and `pair-programming` is enabled. This is + important for calculating `pair_programming_*` values. + * SortingHat as a required package\ + SortingHat is required for running grimoireelk but it was set as an + extra dependency. From now on sortinghat is always installed with + grimoireelk. + * Confluence credentials not stored in raw indexes\ + Credentials for Confluence datasource were stored in raw indices as + part of the URL. For now on, credentials that are part of URLs are + removed before any data is stored. + * Pair programming regular expression improvement\ + The regular expression to detect pair programming authors in git + datasource has been improved adding more connectors. The following + list shows the current connectors: - `[aA][nN][dD]` - `&` - `+` + * Fix fetching authors with min and max dates\ + The old query only returns 10000 items due to ElasticSearch and + OpenSearch now use `composite` aggregation to paginate all buckets. + +### Sir Mordred + +**New features:** + + * Add extract spaces\ + Extract spaces from the URL. By default it will extract labels but + adding `tag_type="spaces"` it will extract spaces. + +**Bug fixes:** + + * Studies aliases relocated\ + Relocate studies aliases so they are not created automatically by + Mordred. + * Add pair-programming in '_get_enrich_backend' method\ + Add the `pair-programming` to the `_get_enrich_backend` method if it + exists in the setup.cfg file. + +**Feature removals:** + + * FINOS Meeting backend removed\ + FINOS Meeting backend is not supported anymore. The Perceval backend + was archived in Bitergia repository so it shouldn't be part of the + core anymore because it's software not maintained. + +**Others:** + + * Add studies to the alias file\ + Add onion, areas of code, and demographics studies to the file + aliases.json. This is needed to keep this file updated with the + aliases we use in the dashboards by adding them to the appropiate data + sources. The included aliases: - all_onion - git_areas_of_code - + demographics diff --git a/grimoirelab/_version.py b/grimoirelab/_version.py index 23d38570..15c2a1f5 100644 --- a/grimoirelab/_version.py +++ b/grimoirelab/_version.py @@ -1,2 +1,2 @@ # Versions compliant with PEP 440 https://www.python.org/dev/peps/pep-0440 -__version__ = "0.2.69" +__version__ = "0.3.0" diff --git a/pyproject.toml b/pyproject.toml index 6a960f76..ec9bbf5a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "grimoirelab" -version = "0.2.69" +version = "0.3.0" description = "Tool set for software development analytics" authors = [ "GrimoireLab Developers" diff --git a/releases/0.3.0.md b/releases/0.3.0.md new file mode 100644 index 00000000..1b9623bb --- /dev/null +++ b/releases/0.3.0.md @@ -0,0 +1,146 @@ +## GrimoireLab 0.3.0 - (2022-06-07) + +**Feature removals:** + + * Drop Python 3.6 support\ + Python 3.6 has reached the end of life in Dec 2021. This means it + won't receive any further patches to fix the secutiry issues. So, + dropping the support of 3.6 and it now supports Python>=3.7 version + only. + +**New components:** + + * grimoirelab-toolkit 0.3.0 + * perceval 0.18.0 + * perceval-mozilla 0.3.0 + * perceval-opnfv 0.2.0 + * perceval-puppet 0.2.0 + * perceval-weblate 0.2.0 + * graal 0.3.0 + * kingarthur 0.2.0 + * sortinghat 0.7.20 + * cereslib 0.3.0 + * grimoire-elk 0.101.1 + * sigils 0.1.0 + * sirmordred 0.3.0 + * kidash 0.5.0 + +The following list describes the changes by component: + +### Perceval + +**New features:** + + * [bugzillarest] API Key authentication\ + A new authentication is available in the `bugzillarest` backend using + an API Key. This can be provided using the parameter `--api-key` on + the command line. Note that this parameter will invalidate `--backend- + user` `--backend-password`, and `--api-token` parameters. For + developers, this parameter is also available during the initialization + of the class `BugzillaRESTClient` under the name `api_key`. + * Confluence supports fetch by spaces\ + This allows fetching confluence by specific spaces. By default it will + fetch the entire instance, but adding the `--spaces` argument will + fetch only these spaces. + +### Graal + +**Bug fixes:** + + * Fix error in update worktree\ + Graal wasn't working with the latest version of Git 2.35.1 because it + protects braches checked out in all worktrees. This change renames the + branch created when creating a worktree to fix the issue. + +### Sorting Hat + +**Bug fixes:** + + * [gitdm] Skip invalid format lines\ + Gitdm parser won't fail reading files with an invalid format. Instead, + it will ignore invalid content. + +### GrimoireELK + +**New features:** + + * Anonymize parameters\ + A new API function `anonymize_params(params)` allows to anonymize a + list of parameters that developers might consider secrets. It will + only take effect for those parameters which their names are defined on + `SECRET_PARAMETERS` constant. + * Dependencies file for development\ + Include a new requirements.txt file to install the development version + from the repositories. + * Support to add identities to SortingHat from Enrich class\ + New methods `add_identities` and `add_identity` are available on + `Enrich` class to add new identities to a `SortingHat` database. + Libraries using `elk` won't need to use `sortinghat` library to store + new identities while enriching items. + * Collect and enrich confluence by spaces\ + Users can collect and enrich Confluence data from specific spaces + only, adding the option `--spaces=[SPACE1, SPACE2, ...]` to their + `projects.json`. The following example shows how to collect and to + enrich data from only the `DEV` and `SUPP` spaces only. ``` { + "project": { "confluence": [ "http://example.com + --spaces=[DEV, SUPP]" ] } } ``` + * Add demographic study to mattermost\ + Add the demographic study to the mattermost data source. + +**Bug fixes:** + + * Skip sources with wrong arguments\ + Sources won't interrupt collection or enrichment processes when any of + their arguments are invalid. Instead, they will be skipped. + * Git fix 'is_git_commit_multi_author'\ + This fixes the `is_git_commit_multi_author` field when the commit has + more than one author and `pair-programming` is enabled. This is + important for calculating `pair_programming_*` values. + * SortingHat as a required package\ + SortingHat is required for running grimoireelk but it was set as an + extra dependency. From now on sortinghat is always installed with + grimoireelk. + * Confluence credentials not stored in raw indexes\ + Credentials for Confluence datasource were stored in raw indices as + part of the URL. For now on, credentials that are part of URLs are + removed before any data is stored. + * Pair programming regular expression improvement\ + The regular expression to detect pair programming authors in git + datasource has been improved adding more connectors. The following + list shows the current connectors: - `[aA][nN][dD]` - `&` - `+` + * Fix fetching authors with min and max dates\ + The old query only returns 10000 items due to ElasticSearch and + OpenSearch now use `composite` aggregation to paginate all buckets. + +### Sir Mordred + +**New features:** + + * Add extract spaces\ + Extract spaces from the URL. By default it will extract labels but + adding `tag_type="spaces"` it will extract spaces. + +**Bug fixes:** + + * Studies aliases relocated\ + Relocate studies aliases so they are not created automatically by + Mordred. + * Add pair-programming in '_get_enrich_backend' method\ + Add the `pair-programming` to the `_get_enrich_backend` method if it + exists in the setup.cfg file. + +**Feature removals:** + + * FINOS Meeting backend removed\ + FINOS Meeting backend is not supported anymore. The Perceval backend + was archived in Bitergia repository so it shouldn't be part of the + core anymore because it's software not maintained. + +**Others:** + + * Add studies to the alias file\ + Add onion, areas of code, and demographics studies to the file + aliases.json. This is needed to keep this file updated with the + aliases we use in the dashboards by adding them to the appropiate data + sources. The included aliases: - all_onion - git_areas_of_code - + demographics diff --git a/requirements.txt b/requirements.txt index bf9dbd57..000150eb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -grimoirelab==0.2.70 +grimoirelab==0.3.0 grimoirelab-toolkit==0.3.0 perceval==0.18.0 perceval-mozilla==0.3.0