From 5805b4fc9b857227a3bb3989f9932811100102ca Mon Sep 17 00:00:00 2001 From: "Michael C. Jaeger" Date: Mon, 14 Sep 2020 13:56:51 +0200 Subject: [PATCH 1/3] chore(release): updating files for sw360 11 release Signed-off-by: Michael C. Jaeger --- CHANGELOG.md | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++ pom.xml | 2 +- 2 files changed, 55 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d8bbd1e66f..4fe1a55af8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,60 @@ This is the changelog file of the sw360 project. It starts with the first releas https://github.com/sw360/sw360portal/releases +## sw360-11.0.0-M1 + +### Features + +* `60f82182` feat(ProjectReleaseRelation): Added new Field comment, createdOn, createdBy in ProjectReleaseRelation * comment field is available in UI, REST and Excel * createdOn , createdBy is not available in UI but available in REST and Excel. (4 weeks ago) +* `c4342f38` feat(ui): Added link to project button from project detail view +* `137b46a7` feat(language): add Japanese properties +* `4d4184d3` feat(ProjectUI):Added Expand/Collapse All and Search in AttachmentUsageTable +* `1b4f2362` feat(project-report): Layout and content update in project report +* `1ee05b59` feat(ComponentUI): Added new filters in Advance search +* `30ce4db1` feat(ExternalIds): Change file permission +* `2442e1f2` feat(ExternalIds): Change file permission and fix typo of special character +* `753d3889` feat(ExternalIds): Add comments to Component, Release and Project rest APIs +* `0049dd3b` feat(ExternalIds): Add byExternalIds views migration scripts, and upgrade to new version 11.0.0-SNAPSHOT +* `bb2f2950` feat(ExternalIds): 1. Handle EscapeXml for external id value, 2. Fix "Upon update of existing project or Component or Release without any change in External IDs" +* `6ec67338` feat(REST): Whitelisting field in REST API response +* `5ee02f75` feat(EditProjectUI): Release table in edit project page should be sorted and omit vendor name +* `c0bf7132` feat(CRView): Clearing Request Comments enhancements + +### Corrections + +* `73894c08` fix(resource-server): Resolve logback conflict +* `40f4a3aa` fix(ui): Prevent resubmission of form for Project, Component, Vendor, Moderation inorder to prevent loss of data. +* `6b484677` fix(ui): Fixed download license disclosure error upon selection of corrupted attachment +* `b8446dc1` fix(license): Fixed the NullPointerException and addressed code duplication +* `a92d2677` fix(byExternalIdView): Fixed the byExternalIds view not working if the value is number +* `f62a685f` fix(Language_ja): change datatables.lang's URL +* `d65be244` fix(ImportSPDXBOM): Set Default value[Default_Category] to categories field of Component if found null or empty +* `fda56f18` Fix: 'Download license archive' button in Admin>'import & Export' page is not working #906 +* `56eb7074` Fix: import spdx information #927 #915 and change quotes +* `538b1aa7` fix(license): Fixed the license loading issue + +### Infrastructure + +* `c0685187` chore(script): Added support to uninstall the current thrift version +* `14b1a4af` chore(deps): Bump jackson-databind in /backend/src/src-fossology +* `4f7234cc` chore(java): Support for Liferay 7.3.3 GA4 +* `d4c6983c` chore(java): Fixed Deployment issues +* `5d484ee1` chore(java): Updated Spring version +* `d247a0ff` chore(java): updating test deps for java 11 +* `3a5958b6` chore(java): migrating to openjdk java version 11 +* `c5f82e0e` chore(logging): Added a library containing the log4j2 classes +* `aa6d5ae0` chore(logging): Fixed test failures caused by NoClassDefFound errors +* `fe659050` chore(logging): Updated OSGi package imports +* `68b91bcc` chore(logging): More tweaks of logging dependencies +* `e4060da6` chore(logging): Switched logging configuration to log4j2 format +* `ebc8f852` chore(logging): Upgraded from log4j 1 to log4j 2 +* `7866a852` chore(logging): Removed unused dependency to logback +* `465fc5fa` chore(couchdb): Support CouchDb Lucene 2.1.0 with CouchDb 2.1.2 and backward compatibility +* `bbabafd7` chore(Portlet): Rename Moderation portlet to Requests +* `f512b867` chore(changelog): fixing formatting +* `a6d07505` chore(release): changing pom file for 10.0.0-SNAPSHOT + + ## sw360-10.0.0-M1 Again, another data model change, new major version. Please see the script `018_remove_unwanted_field_from_clearing_request.py` in the directory `scripts/migrations` to change the data model accordingly. The script is necessary for existing clearing request records; not executing the script will lead to malfunction of the sw360 application. diff --git a/pom.xml b/pom.xml index 758bcb954f..b0ffe60950 100644 --- a/pom.xml +++ b/pom.xml @@ -49,7 +49,7 @@ 11.${patchlevel} - 0.0-SNAPSHOT + 0.0 11 1.5.0 0.13.0 From c137ec1ee4a339c9d2a96ff15459d1564e32e110 Mon Sep 17 00:00:00 2001 From: "Michael C. Jaeger" Date: Tue, 15 Sep 2020 23:43:21 +0200 Subject: [PATCH 2/3] chore(documentation): updating changelog and readme for version 11 Signed-off-by: Michael C. Jaeger --- CHANGELOG.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++-- README.md | 36 ++++++++++++++++++++---------------- 2 files changed, 67 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4fe1a55af8..083a930cf7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,9 +6,54 @@ https://github.com/sw360/sw360portal/releases ## sw360-11.0.0-M1 +The changes for this release incorporate a larger jump from the previous release, because it changes the sw360 infrastructure to the following versions: + +* From Couchdb 1.X to Couchdb 2.X and Couchdb Lucene 2.1 +* From Java 8 to Java 11 - tested with the OpenJDK +* From Liferay Community Edition 7.2.1 to 7.3.3 +* From thrift 0.11 to 0.13 + +Accordingly, also the vagrant project has changed: the current latest master of sw360/sw360vagrant builds with Java-11-based versions of sw360 (onwards from commit `0269392` at https://github.com/sw360/sw360vagrant). + +Apart from the changes to the infrastructure, a number of nice new features are introduced, including: + +* A Japanese language file for SW360 +* Multiple values for external ids for the same keys +* A completely new healthcheck service for better monitoring of an sw360 installation +* Improvements on project handling + +For corrections and further changes on the infrastructure, please refer to the listed commits below. + +### Migrations + +For existing installations, a data migration is required. Please go to the readme file in `scripts/migrations` to see more information: + +https://github.com/eclipse/sw360/blob/master/scripts/migrations/README.md + +For running the migrations scripts, you will need python and the couchdb package. + +### Credits + +The following users have contributed to the source code since the last release (in order of appearance): + +``` +albert.he@sap.com +smruti.sahoo@siemens.com +michael.c.jaeger@siemens.com +kouki1.hama@toshiba.co.jp +oliver.heger@bosch.io +Stephanie.Neubauer@bosch.io +jaideep.palit@siemens.com +kouki1.hama@toshiba.co.jp +nam1.nguyenphuong@toshiba.co.jp +abdul.mannankapti@siemens.com +``` + +And many thanks to all the other contributions in presentation, issues, discussions! + ### Features -* `60f82182` feat(ProjectReleaseRelation): Added new Field comment, createdOn, createdBy in ProjectReleaseRelation * comment field is available in UI, REST and Excel * createdOn , createdBy is not available in UI but available in REST and Excel. (4 weeks ago) +* `60f82182` feat(ProjectReleaseRelation): Added new Field comment, createdOn, createdBy in ProjectReleaseRelation * `c4342f38` feat(ui): Added link to project button from project detail view * `137b46a7` feat(language): add Japanese properties * `4d4184d3` feat(ProjectUI):Added Expand/Collapse All and Search in AttachmentUsageTable @@ -39,7 +84,7 @@ https://github.com/sw360/sw360portal/releases ### Infrastructure * `c0685187` chore(script): Added support to uninstall the current thrift version -* `14b1a4af` chore(deps): Bump jackson-databind in /backend/src/src-fossology +* `14b1a4af` chore(deps): Bump jackson-databind in /backend/src/src-fossology * `4f7234cc` chore(java): Support for Liferay 7.3.3 GA4 * `d4c6983c` chore(java): Fixed Deployment issues * `5d484ee1` chore(java): Updated Spring version diff --git a/README.md b/README.md index d064eaf549..bd6641e277 100644 --- a/README.md +++ b/README.md @@ -2,28 +2,28 @@ [![Build Status](https://travis-ci.org/eclipse/sw360.svg?branch=master)](https://travis-ci.org/eclipse/sw360) [![Slack Channel](https://img.shields.io/badge/slack-sw360chat-blue.svg?longCache=true&logo=slack)](https://join.slack.com/t/sw360chat/shared_invite/enQtNzg5NDQxMTQyNjA5LThiMjBlNTRmOWI0ZjJhYjc0OTk3ODM4MjBmOGRhMWRmN2QzOGVmMzQwYzAzN2JkMmVkZTI1ZjRhNmJlNTY4ZGI) [![Changelog](https://badgen.net/badge/changelog/%E2%98%85/blue)](https://github.com/eclipse/sw360/blob/master/CHANGELOG.md) -[![version](https://img.shields.io/badge/version-10.0.0-blue)](https://github.com/eclipse/sw360/releases/tag/sw360-10.0.0-M1) +[![version](https://img.shields.io/badge/version-11.0.0-blue)](https://github.com/eclipse/sw360/releases/tag/sw360-11.0.0-M1) ### SW360 Portal A software component catalogue application - designed to work with FOSSology. -SW360 is a server with a REST interface and a liferay CE portal application +SW360 is a server with a REST interface and a Liferay CE portal application to maintain your projects / products and the software components within. -It can manage SPDX files for checking the license conditions and maintain +It can manage SPDX files for maintaining the license conditions and maintain license information. ### Introduction It is comprised of one frontend (portal) part, backend (services) part and additionally a REST API: -* Frontend: Liferay-(Tomcat-)based portal application using portlets. +* Frontend: Liferay-CE-(Tomcat-)based portal application using portlets. * Backend: Tomcat-based thrift services for being called by different applications. -* Database: we store software components and metadata about them in couchdb. +* Database: we store software components and metadata about them in CouchDB. * Rest: this REST API provides access to project resources for external integration. -The reference platform is the Ubuntu server 18.04 (which is a LTS version). However, it runs well on other OSes (see below). +The reference platform is the Ubuntu server 18.04 (which is an LTS version). However, it runs well on other OSes (see below). ### Project structure @@ -37,10 +37,11 @@ This is a multi module maven file. please consider that we have the following mo ### Required software -* Java 11 -* CouchDB, at least 1.5 -* Liferay Portal CE 7.2.0 GA1 -* Apache Tomcat 9.0.X +* Java 11, tested with OpenJDK +* CouchDB, at least 2.1 (tested, may work with other releases of CouchDB as well) +* Liferay Portal CE 7.3.3 GA4 +* Apache Tomcat 9.0.X (which is bundled with Liferay) +* couchdb-lucene for search, please refer to installation details in the wiki, because a patch is required In addition, the Liferay instance must provide the following dependecies via OSGi: @@ -55,18 +56,19 @@ In addition, the Liferay instance must provide the following dependecies via OSG * Jackson Annotations 2.9.8 * Jackson Core 2.9.8 * Jackson Databind 2.9.8 +* libthrift 0.13 In order to build you will need: * A git client * Apache Maven 3.6.X -* Apache Thrift 0.13.0 +* Apache Thrift 0.13 http://maven.apache.org/download.html#Installation Then, you must install Apache Tomcat, CouchDB. And, Java of course. -The software is tested with with debian 8, debian 9, ubuntu 16.04, ubuntu 18.04, macosx 10.8 - 10.14. We run Liferay with PostgreSQL 9.X or 10 as the Liferax requires, but HSQL (provided with the liferay bundle) runs also OK. +The software is tested with with debian 8, debian 9, ubuntu 16.04, ubuntu 18.04, macosx 10.8 - 10.14. We run Liferay with PostgreSQL 9.X or 10 as the Liferay CE requires, but HSQL (provided with the liferay bundle) runs also OK. ### PROBLEMS @@ -80,10 +82,6 @@ There is a vagrant project for one-step-deployment. See the project wiki for det https://github.com/eclipse/sw360/wiki -Apart from the vagrant way, the software can be deployed using sw360chores: - -https://github.com/sw360/sw360chores - Or using sw360vagrant: https://github.com/sw360/sw360vagrant @@ -124,6 +122,12 @@ You may also specify the paths using these properties: Be aware that you have to deploy the liferay artifacts in the Liferay auto-deploy folder. On the other hand you must not deploy rest and backend artifacts to the auto-deploy folder. +**Note:** the test framework for the REST API needs the tests running in order to generate the API documentation. So, for building the REST API artefacts, please switch in the rest subprojects and execute: + +``` +mvn package -P deploy -Dbase.deploy.dir=. -Dliferay.deploy.dir=${LIFERAY_INSTALL}/deploy -Dbackend.deploy.dir=${LIFERAY_INSTALL}/tomcat-9.0.17/webapps -Drest.deploy.dir=${LIFERAY_INSTALL}/tomcat-9.0.17/webapps +``` + ### Liferay Configuration You should provide below property configuration based on his/her liferay deployment From 35e287bb2cb3f7cddfa6b242a8c509cc44f1e18e Mon Sep 17 00:00:00 2001 From: "Michael C. Jaeger" Date: Tue, 15 Sep 2020 23:50:37 +0200 Subject: [PATCH 3/3] chore(document): more additions to changelog Signed-off-by: Michael C. Jaeger --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 083a930cf7..df2248397b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,7 +19,7 @@ Apart from the changes to the infrastructure, a number of nice new features are * A Japanese language file for SW360 * Multiple values for external ids for the same keys -* A completely new healthcheck service for better monitoring of an sw360 installation +* A completely new health check service for better monitoring of an sw360 installation * Improvements on project handling For corrections and further changes on the infrastructure, please refer to the listed commits below.