📝 Еженедельный отчет: BlockPay, C-IPFS, Stealth, graphenej, смарткойн кошелек (kenCode)

in #ru7 years ago

Привет!
Прошедшая неделя выдалась удивительной - мы получили больше коммитов кода, чем за все последние 3 месяца! Что это значит? Это значит, что мы круты и решаем кучу вопросов. Так что давайте не откладывать в долгий ящик и приступим к отчету этой недели!

Статус попытки захвата BitShares Munich IVS: Как и было указано здесь, сами-знаете-кто был устранен из моей компании, и мы надеемся встретиться с ним лично 11-го числа по адресу, зарегистрированному им в правительстве Дании, здесь (посмотрите внимательно, кажется, это авторемонтная мастерская!):
Vintervej 119, 1.1., Hasle, 8210 Aarhus V., Дания

Как только он будет удален голосованием (и я владею 51%), надеюсь, мы сможем отследить все средства, восстановить контроль над активами компании, оплатить все долги и сделать всё необходимое, чтобы вернуть все на место, для держателей токенов BLOCKPAY как можно быстрее. Оказывается, что на сегодняшний день среди нас более 800 человек держат эти токены, так что, черт возьми, я хочу получать пассивный доход, который мне обещали! Говоря о доходе, я до сих пор не получил зарплату, за три месяца она просрочена. Интересно, платит ли он себе зарплату из средств инвесторов?

Хорошо, хватит на сегодня нытья, перейдем к РАБОТЕ! :)

BlockPay: Если вы еще не уговорили свой местный магазин или кафе попробовать BlockPay, чего же вы ждете? Разве вы не хотите тратить там свои Steem доллары или биткойны?

На этой неделе мы сделали много нового кода, который упрощает приложение. Это продолжение усилий прошлой недели, призванных удалить старую библиотеку веб-сокетов и полностью заменить ее нашим функционалом из graphenej.

Тем не менее, существующее применение graphenej все еще было очень ограничено и не справлялось со всеми возможными ситуациями. Некоторые из описанных ранее функций были специально разработаны для покрытия этих случаев.

Например, всякий раз, когда пользователь нажимал на кнопку «домой» в приложении, в фоновом режиме сохранялось не только соединение, но все еще поступали и данные из приложения, несмотря на то, что приложение больше не было на экране. Это, конечно, представляет собой растрату пользовательского трафика (который на мобильных устройствах обычно ограничен) и напрямую влияет на срок службы батареи. Аналогичная ситуация уже была исправлена в предыдущей реализации веб-сокета, и теперь нам также нужно было позаботиться о graphenej. Теперь мы держим соединение открытым, чтобы повторно использовать его, если пользователь вернется в приложение, но запускаем вызов API для отмены подписки, чтобы перекрыть поток входящих данных. Ранее описанный вызов «resubcribe» поступает в случае обнаружения активного соединения, когда пользователь возвращается к существующему состоянию приложения.

Другой задачей, которую нужно было решить, была возможность того, что узел (сервер) будет недоступен. Помните, что на прошлой неделе я упомянул в своем отчете, что мы выведем в офлайн текущие узлы (заморозим сами-знаете-чей аккаунт) и добавим новые серверы (снова спасибо @onceuponatime)? Это также присутствовало в предыдущей логике веб-сокетов, но еще не было добавлено в реализацию graphenej. Теперь мы просто будем пробовать подключиться к следующему узлу в списке в случае каких-либо проблем с выбранным в данный момент узлом. Вся эта работа загружена в данный коммит.

Целая куча классов стала бесполезной с введением этих изменений и была удалена. (см. здесь)
На данный момент я все еще намерен удерживать репозиторий blockpay в привате до тех пор, пока мы не сможем в какой-то мере восстановить деятельность BlockPay, поэтому, если хотите помочь, покажите его своему местному торговцу!

Graphenej: Внедрение нового метода, называемого «resubscribe», в класс SubscriptionMessageHub. Этот метод будет использовать существующее соединение и просто будет выпускать новую подписку поверх него. Это обновление можно увидеть здесь: https://github.com/kenCode-de/graphenej/commit/105d4e6d10204323a6acc76d492e8ce432719207

Была введена пара внутренних переменных для отслеживания состояния соединения SubscriptionMessageHub, что решило данную критическую ошибку: https://github.com/kenCode-de/graphenej/commit/50fc2d805e29e88d5bef40cd41b84b49b8b44303

Исправлена ошибка, вызванная некоторыми предыдущими изменениями в классе UserAccount. Теперь нам просто нужно вызывать метод “getObjectId” вместо ранее используемого «toJsonString». См. код:
https://github.com/kenCode-de/graphenej/commit/83ffdd70f75574b1412fa557b0a83b320d37b2b2
https://github.com/kenCode-de/graphenej/commit/184bbfafa3becfc8f2527a1a81f28df1e83b49c0

Stealth: Stealth транзакции также будут предлагать безопасное автоматическое резервное копирование, и на этой неделе мы работаем над репозиториями c-ipfs и c-libp2p, чтобы облегчить этот процесс. Ознакомьтесь с последней версией кода этой функции здесь:
https://github.com/kenCode-de/c-libp2p/commit/e51643a8f41c0af650528d961f9f2489b678ef84
https://github.com/kenCode-de/c-libp2p/commit/e32837031f6fd5357ce724db3c988281b69699f5
https://github.com/kenCode-de/c-ipfs/commit/8da685b5cf22aed353d426708e6081e2b070a9bc
https://github.com/kenCode-de/c-ipfs/commit/13b8b8bf27a116a6024459fe4c28817d497dc20a
https://github.com/kenCode-de/c-ipfs/commit/297283168cfb4cbc4871a270e3bb6beed7da4f99
https://github.com/kenCode-de/c-ipfs/commit/f2e7c3c475c9bffc0433558e3377cbce02521c87

Неисправность многопоточного хендшейка оставляла соединение открытым и тут же открывала новое соединение, что делало код нестабильным и зависающим. Теперь это исправлено, но нам всё равно нужно выяснить, почему не работает многопоточный хендшейк. На этой неделе мы также должны закончить работу над этим, а потом закончить это для C-IPFS релиза на github, чтобы каждый мог поковыряться в нем вместе с нами и помочь с проверкой безопасности и т. д.

Смарткойн кошелек: Вы еще не пробовали кошелек для Android? Я вложил в это дело свое сердце и душу, поэтому, если вы хотите с легкостью пользоваться своими активами Bitshares, пожалуйста, загрузите его и попробуйте. Надеюсь, вам понравится :)

На этой неделе мы завершили (см. примечание ниже) переход на внешнюю библиотеку graphenej, обновили часть ее использования и начали работу над найденными багами в github и crashlytics.

Я как раз собирался опубликовать обновление в Google play, но в результате интенсивных тестов мы обнаружили ошибки UX, например, не всегда обновляющийся баланс (в одних и тех же условиях иногда это происходит, иногда нет) и т.д. Единственная серьезная найденная ошибка — это периодически возникающая проблема с шифрованием/расшифровкой мемо транзакций. Поэтому мы сосредоточимся на этом в течение следующих нескольких дней, а затем посмотрим, можем ли мы загрузить более стабильный релиз, который исправит это. Мне нравится, что мы отлавливаем такие вещи до того, как это сделает пользователь :)

Примечание: Чтобы завершить полную миграцию в graphenej как внешнюю библиотеку, мы решили включить некоторые старые классы моделей, зафиксированные в коде старого graphene-lib, что можно увидеть здесь:
https://github.com/kenCode-de/smartcoins-wallet/tree/graphenej-lib/app/src/main/java/de/bitsharesmunich/graphenej/models

Только два класса: Market.java и api/GetLimitOrders.java. Логика, лежащая в основе этих двух, кодируется совершенно различным образом в текущей библиотеке graphenej. Мы начали переносить их оба на новый стандарт Графена, но для этого требуется достаточно много времени (мы оставили эту работу частично выполненной в поэтапном коммите), поэтому мы решили не переносить всё сейчас и сначала сосредоточиться на найденных проблемах в github, чтобы мы все снова приступили к той работе, которую оставили, когда перестали получать зарплаты.

В прошлом эти два класса уже были кодированы другим разработчиком, но не самым лучшим образом, поэтому мы решили заменить часть логики и классы, на которые эта логика распространяется, на наши новые релизы библиотеки graphenej, что объясняет несовместимость.
Соответствующие этой работе коммиты:
https://github.com/kenCode-de/smartcoins-wallet/commit/5593847ccac53ce0464ed7e29cb1017ec4b789c8
https://github.com/kenCode-de/smartcoins-wallet/commit/0685cc17a6df3bc66ae19dcc5fb752c2f3955adf
https://github.com/kenCode-de/smartcoins-wallet/commit/037fc570bc408e74b917bcb781c40c07834b97eb

Спасибо, что следите за нашей работой! Тонна всего сделана и еще намного больше осталось! :)



Переведено @rusteemitblog

Оригинал поста: ЗДЕСЬ


Присоединяйтесь к чату в Telegram для обсуждения последних новостей Bitshares DEX


Поддержите witness blockchained на Steem


Sort:  

Большое спасибо за такие старания, из меня конечно программер сомнительный получается, но я посматриваю за обновлениями на гитхабе и изучаю + применяю на практике ваш опыт. Успехов в развитии!

I upvoted this and also resteemed :)

Coin Marketplace

STEEM 0.26
TRX 0.11
JST 0.033
BTC 64266.94
ETH 3077.24
USDT 1.00
SBD 3.87