Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-3371

Identify OSGI and declarative services versions in IGB-JDK11, IGB-JDK8, osgi-book-inventory

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      We need a summary of what the tutorials say about OSGi framework versions and declarative services.

      To start:

      1) Identify the version of OSGi framework and declarative services being used in https://github.com/nipunaupeksha/osgi-book-inventory, described in https://medium.com/javarevisited/learn-osgi-from-scratch-eclipse-intellij-and-wso2-platform-%EF%B8%8F-bf4c5629e097.

      2) Identify the version of OSGi framework and declarative services being used in IGB 1.8 "master" branch.

      3) Identify the version of OSGi framework and declarative services being used in IGB 11 "IGBF-3275" branch.

        Attachments

          Issue Links

            Activity

            Hide
            karthik Karthik Raveendran added a comment - - edited

            1) The project uses R6 annotations. To see this, look at the imports for the Component annotations. The project can build with JDK 11 and JDK 8. We can start bundles but can't tell if anything else is happening.

            Also, project includes package imports of org.eclipse.osgi.services version 3.3.100, which suggested to Karthik Raveendran that OSGI R5 architecture is used and felix-scr-ds-annotations v1.2.8 is used in the project.

            2) org.osgi.framework v1.8.0 and org.osgi.core v5 which is OSGI R5 is used in IGB 9.1.10 (Java 8) project and biz.aQute.bndlib v6.4.0 and org.apache.felix.scr v1.8.2

            3) org.osgi.core v5 which means its still in OSGI R5 because updating it will require us to change all annotaions to be edited to meet R6 specifictions and biz.aQute.bndlib v6.4.0 and org.apache.felix.scr v2.2.4

            Show
            karthik Karthik Raveendran added a comment - - edited 1) The project uses R6 annotations. To see this, look at the imports for the Component annotations. The project can build with JDK 11 and JDK 8. We can start bundles but can't tell if anything else is happening. Also, project includes package imports of org.eclipse.osgi.services version 3.3.100, which suggested to Karthik Raveendran that OSGI R5 architecture is used and felix-scr-ds-annotations v1.2.8 is used in the project. 2) org.osgi.framework v1.8.0 and org.osgi.core v5 which is OSGI R5 is used in IGB 9.1.10 (Java 8) project and biz.aQute.bndlib v6.4.0 and org.apache.felix.scr v1.8.2 3) org.osgi.core v5 which means its still in OSGI R5 because updating it will require us to change all annotaions to be edited to meet R6 specifictions and biz.aQute.bndlib v6.4.0 and org.apache.felix.scr v2.2.4
            Hide
            karthik Karthik Raveendran added a comment - - edited

            Notably, the example used in IGBF-3358 uses Equinox instead of Maven and Eclipse instead of Intellij or Netbeans and uses jdk 1.8

            Show
            karthik Karthik Raveendran added a comment - - edited Notably, the example used in IGBF-3358 uses Equinox instead of Maven and Eclipse instead of Intellij or Netbeans and uses jdk 1.8
            Hide
            karthik Karthik Raveendran added a comment -

            Started to created all the annotations that may need format changes for OSGI R6: https://drive.google.com/drive/u/0/folders/1cwIxa9VWWFUioGxQp5fyhWI0EHAxnDVw

            Show
            karthik Karthik Raveendran added a comment - Started to created all the annotations that may need format changes for OSGI R6: https://drive.google.com/drive/u/0/folders/1cwIxa9VWWFUioGxQp5fyhWI0EHAxnDVw
            Hide
            karthik Karthik Raveendran added a comment -

            Reading up on the changes in OSGI Core and Compendium:
            https://docs.osgi.org/download/r6/osgi.core-6.0.0.pdf
            https://docs.osgi.org/download/r6/osgi.cmpn-6.0.0.pdf

            Each chapter in the pdfs have a changes section for OSGI R6 from R5

            Show
            karthik Karthik Raveendran added a comment - Reading up on the changes in OSGI Core and Compendium: https://docs.osgi.org/download/r6/osgi.core-6.0.0.pdf https://docs.osgi.org/download/r6/osgi.cmpn-6.0.0.pdf Each chapter in the pdfs have a changes section for OSGI R6 from R5
            Hide
            karthik Karthik Raveendran added a comment -

            In order to understand how OSGI R6 changes alone would affect IGB, I referenced this article and pulled the master IGB branch (Java 8) and made changes based on the article and other prev. references. As part of the process, Felix SCR processor was disabled in Intellij settings and all felix scr dependencies were removed. There were errors based on dependency updates which I will elaborate in following comments. Essentially when the shift from OSGI R5 core and cmpn to R6 immediately broke IGB and cmpn 6.0.0 was compatible with Java 8. I am yet to make changes in annotations mention in the article which I will do today and update here as I do it.

            Show
            karthik Karthik Raveendran added a comment - In order to understand how OSGI R6 changes alone would affect IGB, I referenced this article and pulled the master IGB branch (Java 8) and made changes based on the article and other prev. references. As part of the process, Felix SCR processor was disabled in Intellij settings and all felix scr dependencies were removed. There were errors based on dependency updates which I will elaborate in following comments. Essentially when the shift from OSGI R5 core and cmpn to R6 immediately broke IGB and cmpn 6.0.0 was compatible with Java 8. I am yet to make changes in annotations mention in the article which I will do today and update here as I do it.
            Hide
            ann.loraine Ann Loraine added a comment - - edited

            Request:

            • Could you provide a link to the cmpn 6.0.0 artifact's POM or other relevant description ?
            Show
            ann.loraine Ann Loraine added a comment - - edited Request: Could you provide a link to the cmpn 6.0.0 artifact's POM or other relevant description ?
            Hide
            karthik Karthik Raveendran added a comment -
            Show
            karthik Karthik Raveendran added a comment - Maven Repository link to cmpn 6: https://mvnrepository.com/artifact/org.osgi/osgi.cmpn/6.0.0

              People

              • Assignee:
                karthik Karthik Raveendran
                Reporter:
                karthik Karthik Raveendran
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: