mirror of https://gerrit.osmocom.org/pysim
Fix run-editor bug with cmd2 >= 2.0.0 compatibility
In cmd2, the upstream authors decided to rename a method in 2.0.0 without providing a backwards compatibility wrapper. Let's add that locally. Change-Id: Iaa17b93db13ba330551799cce5f0388c78217224 Closes: OS#6071
This commit is contained in:
parent
721ba9b31f
commit
e126872a29
|
@ -17,7 +17,7 @@
|
||||||
# You should have received a copy of the GNU General Public License
|
# You should have received a copy of the GNU General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from typing import List
|
from typing import List, Optional
|
||||||
|
|
||||||
import json
|
import json
|
||||||
import traceback
|
import traceback
|
||||||
|
@ -144,7 +144,18 @@ def init_card(sl):
|
||||||
return rs, card
|
return rs, card
|
||||||
|
|
||||||
|
|
||||||
class PysimApp(cmd2.Cmd):
|
class Cmd2Compat(cmd2.Cmd):
|
||||||
|
"""Backwards-compatibility wrapper around cmd2.Cmd to support older and newer
|
||||||
|
releases. See https://github.com/python-cmd2/cmd2/blob/master/CHANGELOG.md"""
|
||||||
|
def run_editor(self, file_path: Optional[str] = None) -> None:
|
||||||
|
if version.parse(cmd2.__version__) < version.parse("2.0.0"):
|
||||||
|
# pylint: disable=no-member
|
||||||
|
return self._run_editor(file_path)
|
||||||
|
else:
|
||||||
|
# pylint: disable=no-member
|
||||||
|
return super().run_editor(file_path)
|
||||||
|
|
||||||
|
class PysimApp(Cmd2Compat):
|
||||||
CUSTOM_CATEGORY = 'pySim Commands'
|
CUSTOM_CATEGORY = 'pySim Commands'
|
||||||
|
|
||||||
def __init__(self, card, rs, sl, ch, script=None):
|
def __init__(self, card, rs, sl, ch, script=None):
|
||||||
|
|
|
@ -649,7 +649,7 @@ class TransparentEF(CardEF):
|
||||||
with open(filename, 'w') as text_file:
|
with open(filename, 'w') as text_file:
|
||||||
json.dump(orig_json, text_file, indent=4)
|
json.dump(orig_json, text_file, indent=4)
|
||||||
# run a text editor
|
# run a text editor
|
||||||
self._cmd._run_editor(filename)
|
self._cmd.run_editor(filename)
|
||||||
with open(filename, 'r') as text_file:
|
with open(filename, 'r') as text_file:
|
||||||
edited_json = json.load(text_file)
|
edited_json = json.load(text_file)
|
||||||
if edited_json == orig_json:
|
if edited_json == orig_json:
|
||||||
|
@ -917,7 +917,7 @@ class LinFixedEF(CardEF):
|
||||||
with open(filename, 'w') as text_file:
|
with open(filename, 'w') as text_file:
|
||||||
json.dump(orig_json, text_file, indent=4)
|
json.dump(orig_json, text_file, indent=4)
|
||||||
# run a text editor
|
# run a text editor
|
||||||
self._cmd._run_editor(filename)
|
self._cmd.run_editor(filename)
|
||||||
with open(filename, 'r') as text_file:
|
with open(filename, 'r') as text_file:
|
||||||
edited_json = json.load(text_file)
|
edited_json = json.load(text_file)
|
||||||
if edited_json == orig_json:
|
if edited_json == orig_json:
|
||||||
|
|
Loading…
Reference in New Issue