def dformat(data, indent=0): padding = ' ' * indent from uio import StringIO buffer = StringIO() for key in sorted(data.keys()): value = data[key] buffer.write('{}{}: {}\n'.format(padding, key, value)) return buffer.getvalue()
def packtabs(self, s): sb = StringIO() for i in range(0, len(s), 8): c = s[i:i + 8] cr = c.rstrip(" ") if (len(c) - len(cr)) > 1: sb.write(cr + "\t") else: sb.write(c) return sb.getvalue()
def packtabs(self, s): sb = StringIO() for i in range(0, len(s), 8): c = s[i:i + 8] cr = c.rstrip(" ") if (len(c) - len(cr)) > 1: sb.write(cr + "\t") else: sb.write(c) return sb.getvalue()
def ddformat(data, indent=0): padding = ' ' * indent from uio import StringIO buffer = StringIO() for key in sorted(data.keys()): item = data[key] value = item['value'] text = item.get('description', '') buffer.write('{}{:<40}{:>10} {}\n'.format(padding, key, value, text)) return buffer.getvalue()
def packtabs(self, s): try: from uio import StringIO except: from _io import StringIO sb = StringIO() for i in range(0, len(s), 8): c = s[i:i + 8] cr = c.rstrip(" ") if (len(c) - len(cr)) > 1: sb.write(cr + "\t") ## Spaces at the end of a section else: sb.write(c) return sb.getvalue()
def expandtabs(s, tab_size=8): if '\t' in s: sb = StringIO() pos = 0 for c in s: if c == '\t': ## tab is seen sb.write(" " * (tab_size - pos % tab_size)) ## replace by space pos += tab_size - pos % tab_size else: sb.write(c) pos += 1 return sb.getvalue(), True else: return s, False
def expandtabs(s): if '\t' in s: sb = StringIO() pos = 0 for c in s: if c == '\t': sb.write(" " * (8 - pos % 8)) pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue(), True else: return s, False
def expandtabs(s): if '\t' in s: sb = StringIO() pos = 0 for c in s: if c == '\t': sb.write(" " * (8 - pos % 8)) pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue(), True else: return s, False
def expandtabs(self, s): if '\t' in s: self.write_tabs = True sb = StringIO() pos = 0 for c in s: if c == '\t': ## tab is seen sb.write(" " * (8 - pos % 8)) ## replace by space pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def expandtabs(s): if '\t' in s: Editor.tab_seen = 'y' sb = StringIO() pos = 0 for c in s: if c == '\t': ## tab is seen sb.write(" " * (8 - pos % 8)) ## replace by space pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def expandtabs(s): from uio import StringIO if '\t' in s: sb = StringIO() pos = 0 for c in s: if c == '\t': ## tab is seen sb.write(" " * (8 - pos % 8)) ## replace by space pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def ddformat(data, indent=0): """ :param data: :param indent: (Default value = 0) """ padding = ' ' * indent from uio import StringIO buffer = StringIO() for key in sorted(data.keys()): item = data[key] value = item['value'] text = item.get('description', '') buffer.write('{}{:<35}{:>25} {:>25}\n'.format(padding, key, value, text)) return buffer.getvalue()
def expandtabs(s): try: from uio import StringIO except: from _io import StringIO if '\t' in s: sb = StringIO() pos = 0 for c in s: if c == '\t': sb.write(" " * (8 - pos % 8)) pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def expandtabs(s): try: from uio import StringIO except: from _io import StringIO if "\t" in s: Editor.tab_seen = "y" sb = StringIO() pos = 0 for c in s: if c == "\t": sb.write(" " * (8 - pos % 8)) pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def read_request(request: HttpRequest): # Observations show request payloads are capped at ~4308 bytes. # https://github.com/jczic/MicroWebSrv/issues/51 from uio import StringIO buffer = StringIO() while True: try: log.info('Reading 4000 bytes from network') payload = request.Content if not payload: log.info('Reading finished') raise StopIteration() log.info('Writing {} bytes to buffer'.format(len(payload))) buffer.write(payload) except: break log.info('Rewinding buffer') buffer.seek(0) return buffer
def expandtabs(s): try: from uio import StringIO except: from _io import StringIO if '\t' in s: #ifndef BASIC Editor.tab_seen = 'y' #endif sb = StringIO() pos = 0 for c in s: if c == '\t': ## tab is seen sb.write(" " * (8 - pos % 8)) ## replace by space pos += 8 - pos % 8 else: sb.write(c) pos += 1 return sb.getvalue() else: return s
def to_line_protocol(self): from uio import StringIO stream = StringIO() stream.write(self.name) stream.write(',') def formatDict(dict): first = True for key, value in dict.items(): if not first: stream.write(',') else: first = False arg = '{0}={1}'.format(key, value) stream.write(arg) formatDict(self.tags) stream.write(' ') formatDict(self.fields) return stream.getvalue()
def render_backup_contents(): # simple text format: # key = value # or #comments # but value is JSON from main import settings, pa rv = StringIO() def COMMENT(val=None): if val: rv.write('\n# %s\n' % val) else: rv.write('\n') def ADD(key, val): rv.write('%s = %s\n' % (key, ujson.dumps(val))) rv.write('# Coldcard backup file! DO NOT CHANGE.\n') chain = chains.current_chain() COMMENT('Private key details: ' + chain.name) with stash.SensitiveValues(for_backup=True) as sv: if sv.mode == 'words': ADD('mnemonic', tcc.bip39.from_data(sv.raw)) if sv.mode == 'master': ADD('bip32_master_key', b2a_hex(sv.raw)) ADD('chain', chain.ctype) ADD('xprv', chain.serialize_private(sv.node)) ADD('xpub', chain.serialize_public(sv.node)) # BTW: everything is really a duplicate of this value ADD('raw_secret', b2a_hex(sv.secret).rstrip(b'0')) if pa.has_duress_pin(): COMMENT('Duress Wallet (informational)') dpk = sv.duress_root() ADD('duress_xprv', chain.serialize_private(dpk)) ADD('duress_xpub', chain.serialize_public(dpk)) if version.has_608: # save the so-called long-secret ADD('long_secret', b2a_hex(pa.ls_fetch())) COMMENT('Firmware version (informational)') date, vers, timestamp = version.get_mpy_version()[0:3] ADD('fw_date', date) ADD('fw_version', vers) ADD('fw_timestamp', timestamp) ADD('serial', version.serial_number()) COMMENT('User preferences') # user preferences for k, v in settings.current.items(): if k[0] == '_': continue # debug stuff in simulator if k == 'xpub': continue # redundant, and wrong if bip39pw if k == 'xfp': continue # redundant, and wrong if bip39pw ADD('setting.' + k, v) if version.has_fatram: import hsm if hsm.hsm_policy_available(): ADD('hsm_policy', hsm.capture_backup()) rv.write('\n# EOF\n') return rv.getvalue()
def ESP_init(cl_s=b'esp001data'): f_log = StringIO() f_log.write('{"ESP_init":{\n') atemp = '"DATA_topic":"%s",\n' % (cl_s.decode()) print(atemp) f_log.write(atemp) try: if ds_tm.lost_time(): atemp = '"DS3231":"lost_time",\n' print(atemp) f_log.write(atemp) raise else: ds_tm.settime() atemp = '"DS3231 SetTime":"OK",\n' print(atemp) f_log.write(atemp) try: ntptime_cn.time() utime.sleep_ms(200) ntptime_cn.settime() ds_tm.sync_rtc2ntp() ds_tm.settime() atemp = '"NTP & RTC SyncTime":"OK",\n' print(atemp) f_log.write(atemp) except: pass except: ntptime_cn.time() utime.sleep(3) ntptime_cn.settime() atemp = '"NTP SetTime":"OK",\n' print(atemp) f_log.write(atemp) try: ds_tm.sync_rtc2ntp() ds_tm.settime() atemp = '"NTP & RTC SyncTime":"OK",\n' print(atemp) f_log.write(atemp) except: pass finally: atemp = '"Time":"%d-%02d-%02d %02d:%02d:%02d GMT",\n"Day_W":%d,"Day_Y":%d,\n' % ( utime.localtime()) print(atemp) f_log.write(atemp) try: atemp = '"DS3231 SQW":"1Hz Out Start%d",\n' % (ds_tm.sqw_1hz()) print(atemp) f_log.write(atemp) except: atemp = '"DS3231 SQW":"1Hz Out ERROR",\n' print(atemp) f_log.write(atemp) try: sensor3 = SHT30() temperature, humidity = sensor3.measure() del sensor3 atemp = '"ambient Temperature":"%f ºC","ambient Humidity":"%f %%",\n' % ( temperature, humidity) print(atemp) f_log.write(atemp) atemp = '"Sensor SHT30":"OK",\n' print(atemp) f_log.write(atemp) except: pass try: sensor_k = MAX6675() atemp = '"K Thermocouple":"%f ºC",\n"Sensor MAX6675":"OK"}}..' % ( sensor_k.measure()) del sensor_k print(atemp) f_log.write(atemp) except: pass f_str = f_log.getvalue() f_log.close() return f_str