Ticket #5126 (new Feature Requests)

Opened 2 years ago

Last modified 1 year ago

Warn about running unsupported older Asterisk versions

Reported by: jrobgood Assigned to:
Priority: minor Milestone: 2.11
Component: FreePBX Framework Version: 2.9-branch
Keywords: ditech, VQA, 1.2 Cc:
Confirmation: Unreviewed Distro:
Backend Engine: Asterisk 1.2.x Distro Ver:
Backend Ver: SVN Revision (if applicable):

Description (Last modified by p_lindheimer)

I've left the original user request as written for context on the ticket comments. However, I've changed this ticket to a request to warn about un-supported older Asterisk versions and/or block upgrades when possible.

Original Ticket:

Wrap core functions in a try/catch to (within reason) support deprecated syntax, at least to such a point as to prevent critical failures. My use case in particular is related to the Ditech module test in 2.9 while running atop Asterisk 1.2. The function "app_exists()" fails to return a proper result when the call "core show application _" is fired, because of the syntax change.

I wonder if there's any wisdom in holding the CLI syntax in a dictionary, thereby abstracting FreePBX from Asterisk by degree of separation? That might allow for some interesting customizations down the road.

Before anyone says "But it's perfectly clear that 1.2 is NOT supported anymore!" I'd like to point out that real-world telephony deployments and their inherent long-term support expectations make a slightly longer lifespan perfectly reasonable.

Having said that, yes, I did roll an RC onto a production box, and yes, I feel silly for doing so. But hey, we're all human.

Ref.: http://www.freepbx.org/forum/freepbx/beta-program-issues/cant-dial-in-or-out-after-last-update-yesterday#comment-37346

Change History

05/04/11 15:19:27 changed by p_lindheimer

  • description changed.
  • component changed from Core to FreePBX Framework.
  • summary changed from Trap exceptions for deprecated core syntax to Warn about running unsupported older Asterisk versions.
  • priority changed from blocker to minor.
  • milestone changed from 2.10 to 2.9.
  • owner deleted.

We spend a lot of time keeping up support for past versions of Asterisk for the reasons you mention. However, we also look at what people are using and the 1.2 incident rate has gone down to where we can not justify going through the steps needed to support it as well.

There is a lot of abstraction in many places which does let us deal with much of the compatibility which is in fact why so much of the system does still work with 1.2. However, what you will find is there is a lot of subtle things that are not working. This one was an example of something that made it painfully clear, though you can change the settings to address it. However, there are other things going on that you are probably not aware of that can result in qwerky and incorrect behavior.

We continue to support past versions for some time and security fixes are applied to versions that are even older. However, at some point, you either need to keep your equipment at a version that is going to support you, or upgrade the other components of your system to keep everything working properly. To some extent you are asking for all the new features of FreePBX without a willingness to eventually accept the fact that they are going to require some other parts move forward as well.

We have been lacking in providing notifications of the fact that you are running an unsupported version of Asterisk of which this has already been brought up in the forums (with a request to have them file a ticket so we remember to address that).

So … I'll just modify this ticket and use it for that purpose so we remember to put in some proper notifications about un-supported Asterisk versions and probably look at blocking upgrades in those instances.

02/20/12 16:15:21 changed by p_lindheimer

  • milestone changed from 2.10 to 2.11.

some control was added into the 2.9 to 2.10 upgrade script. We can probably do a better job but deferring this for now to 2.11 since we are working on closing out as many non-critical tickets as possible to finish the release.