Uploaded image for project: 'Modular Service Container'
  1. Modular Service Container
  2. MSC-239

Undeprecate the legacy API

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Won't Do
    • Icon: Critical Critical
    • None
    • None
    • None
    • None
    • Hide
      Deprecated MSC API was overdesigned and will be eliminated in the future.
      Deprecation warnings inform MSC API users they're using API they shouldn't use.
      It is also important step in a multi-steps process if we want to remove APIs from our products.
      Show
      Deprecated MSC API was overdesigned and will be eliminated in the future. Deprecation warnings inform MSC API users they're using API they shouldn't use. It is also important step in a multi-steps process if we want to remove APIs from our products.

      The new ServiceBuilder API is not compatible with the old, as each of the 2 impls throws UnsupportedOperationException for either the legacy or the new methods. And I don't believe there is a way for code to decide which set of methods is safe to use.

      This makes passing a ServiceBuilder to shared utility type code dangerous, e.g as seen in JBEAP-15382.

      Deprecating the legacy API is driving WildFly developers to add code using the new API mixed in with code using the old. This is dangerous as we've had very little bake to see what problems that kind of mixing will introduce. The shift to the new API within WildFly should be done in a controlled manner, and having MSC warning anyone that uses the known to work API that they are doing it wrong is not leading to that.

              ropalka Richard Opalka
              bstansbe@redhat.com Brian Stansberry
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: