diff --git a/packages/collectd/pybitmessagestatus.py b/packages/collectd/pybitmessagestatus.py index d15c3a48..f82656f7 100644 --- a/packages/collectd/pybitmessagestatus.py +++ b/packages/collectd/pybitmessagestatus.py @@ -1,8 +1,9 @@ #!/usr/bin/env python2.7 -import collectd import json -import xmlrpclib + +import collectd +from six.moves import xmlrpc_client as xmlrpclib pybmurl = "" api = "" diff --git a/setup.py b/setup.py index 30436bec..0a591d35 100644 --- a/setup.py +++ b/setup.py @@ -4,14 +4,14 @@ import os import platform import shutil import sys - from importlib import import_module -from setuptools import setup, Extension + +import six +from setuptools import Extension, setup from setuptools.command.install import install from src.version import softwareVersion - EXTRAS_REQUIRE = { 'docs': ['sphinx'], 'gir': ['pygobject'], @@ -83,7 +83,7 @@ if __name__ == "__main__": 'images/kivy/text_images*.png' ]} - if sys.version_info[0] == 3: + if six.PY3: packages.extend( [ 'pybitmessage.bitmessagekivy', diff --git a/src/api.py b/src/api.py index 9f61f40b..89d4948a 100644 --- a/src/api.py +++ b/src/api.py @@ -70,29 +70,24 @@ from struct import pack, unpack import six from six.moves import configparser, http_client, xmlrpc_server +from six.moves.reprlib import repr import helper_inbox import helper_sent -import protocol import proofofwork +import protocol import queues import shared - import shutdown import state -from addresses import ( - addBMIfNotPresent, - decodeAddress, - decodeVarint, - varintDecodeError -) +from addresses import (addBMIfNotPresent, decodeAddress, decodeVarint, + varintDecodeError) from bmconfigparser import config from debug import logger -from defaults import ( - networkDefaultProofOfWorkNonceTrialsPerByte, - networkDefaultPayloadLengthExtraBytes) -from helper_sql import ( - SqlBulkExecute, sqlExecute, sqlQuery, sqlStoredProcedure, sql_ready) +from defaults import (networkDefaultPayloadLengthExtraBytes, + networkDefaultProofOfWorkNonceTrialsPerByte) +from helper_sql import (SqlBulkExecute, sql_ready, sqlExecute, sqlQuery, + sqlStoredProcedure) from highlevelcrypto import calculateInventoryHash try: @@ -100,7 +95,7 @@ try: except ImportError: connectionpool = None -from network import stats, StoppableThread, invQueue +from network import StoppableThread, invQueue, stats from version import softwareVersion try: # TODO: write tests for XML vulnerabilities @@ -224,8 +219,8 @@ class singleAPI(StoppableThread): if config.safeGet( 'bitmessagesettings', 'apivariant') == 'json': try: - from jsonrpclib.SimpleJSONRPCServer import ( - SimpleJSONRPCServer as RPCServerBase) + from jsonrpclib.SimpleJSONRPCServer import \ + SimpleJSONRPCServer as RPCServerBase except ImportError: logger.warning( 'jsonrpclib not available, failing back to XML-RPC') diff --git a/src/bitmessagekivy/main.kv b/src/bitmessagekivy/main.kv index 74723e32..6638ab7f 100644 --- a/src/bitmessagekivy/main.kv +++ b/src/bitmessagekivy/main.kv @@ -141,14 +141,14 @@ text: app.tr._('Draft') icon: 'message-draw' divider: None - on_release: app.root.ids.scr_mngr.current = 'draft' + on_release: app.set_screen('draft') on_release: root.parent.set_state() NavigationItem: id: trash_cnt text: app.tr._('Trash') icon: 'delete' divider: None - on_release: app.root.ids.scr_mngr.current = 'trash' + on_release: app.set_screen('trash') on_press: root.parent.set_state() on_press: app.load_screen(self) NavigationItem: @@ -156,7 +156,7 @@ text: app.tr._('All Mails') icon: 'mailbox' divider: None - on_release: app.root.ids.scr_mngr.current = 'allmails' + on_release: app.set_screen('allmails') on_release: root.parent.set_state() on_press: app.load_screen(self) NavigationDrawerDivider: @@ -167,7 +167,7 @@ text: app.tr._('Chat') icon: 'chat' divider: None - on_release: app.root.ids.scr_mngr.current = 'chat' + on_release: app.set_screen('chat') on_release: root.parent.set_state() NavigationDrawerDivider: NavigationDrawerSubheader: @@ -176,38 +176,38 @@ text: app.tr._('Address Book') icon: 'book-multiple' divider: None - on_release: app.root.ids.scr_mngr.current = 'addressbook' + on_release: app.set_screen('addressbook') on_release: root.parent.set_state() NavigationItem: text: app.tr._('Settings') icon: 'application-settings' divider: None - on_release: app.root.ids.scr_mngr.current = 'set' + on_release: app.set_screen('set') on_release: root.parent.set_state() NavigationItem: text: app.tr._('Payment plan') icon: 'shopping' divider: None - on_release: app.root.ids.scr_mngr.current = 'payment' + on_release: app.set_screen('payment') on_release: root.parent.set_state() NavigationItem: text: app.tr._('New address') icon: 'account-plus' divider: None - on_release: app.root.ids.scr_mngr.current = 'login' + on_release: app.set_screen('login') on_release: root.parent.set_state() on_press: app.reset_login_screen() NavigationItem: text: app.tr._('Network status') icon: 'server-network' divider: None - on_release: app.root.ids.scr_mngr.current = 'networkstat' + on_release: app.set_screen('networkstat') on_release: root.parent.set_state() NavigationItem: text: app.tr._('My addresses') icon: 'account-multiple' divider: None - on_release: app.root.ids.scr_mngr.current = 'myaddress' + on_release: app.set_screen('myaddress') on_release: root.parent.set_state() MDNavigationLayout: diff --git a/src/bitmessagekivy/mpybit.py b/src/bitmessagekivy/mpybit.py index 8c3ab4ab..006576fd 100644 --- a/src/bitmessagekivy/mpybit.py +++ b/src/bitmessagekivy/mpybit.py @@ -16,6 +16,7 @@ from kivy.clock import Clock from kivy.lang import Builder from kivy.core.window import Window from kivy.uix.boxlayout import BoxLayout +from kivy.core.clipboard import Clipboard from kivymd.app import MDApp from kivymd.uix.label import MDLabel @@ -480,6 +481,10 @@ class NavigateApp(MDApp): """initiate_purchase module""" logger.debug("Purchasing %s through %s", self.product_id, method_name) + def copy_composer_text(self, text): + """Copy text to clipboard""" + Clipboard.copy(text) + class PaymentMethodLayout(BoxLayout): """PaymentMethodLayout class for kivy Ui""" diff --git a/src/mockbm/helper_startup.py b/src/mockbm/helper_startup.py index 838302ae..2dc06878 100644 --- a/src/mockbm/helper_startup.py +++ b/src/mockbm/helper_startup.py @@ -4,7 +4,10 @@ from pybitmessage.bmconfigparser import config def loadConfig(): """Loading mock test data""" - config.read(os.path.join(os.environ['BITMESSAGE_HOME'], 'keys.dat')) + try: + config.read(os.path.join(os.environ['BITMESSAGE_HOME'], 'keys.dat')) + except KeyError: + pass def total_encrypted_messages_per_month():