SafeNetwork открий новия интернет

SAFE Network новини – 14.11.2019

Накратко

Ето някои от основните неща тази седмица:

  • Пуснахме версия v0.0.4 от приложението/програма SAFE Network. Основната промяна е добавянето на актуализации на приложенията, което означава, че можем да актуализираме приложения като SAFE браузъра чрез самото приложение на SAFE Network.
  • Пуснахме и малка актуализация на браузъра, която коригира още няколко проблема с разделителната способност на pWeb, някои промени във взаимодействието на SAFE Network App и позволяват да се задействат фонови актуализации от самото приложение на SAFE Network.
  • Първата RC версия на пакета MaidSafe.SafeApp NuGet вече е налична :tada:

Екип

Тази седмица сме щастливи, защото успяхме да осигурим ролята на Qi Ma като инженер в екипа. Qi участва в проекта от отдавна и се радва, че ще има възможността да е с нас до старта на мрежата. Докато вървим напред, възнамеряваме да включим още допълнения към отбора, когато това е възможно и разумно. Qi ще продължи досегашната си работа и очаквайте да видите много повече от него, тъй като фермерството на safecoin влиза в играта.

Трезори – Фаза 2

План на проекта

Продължаваме да постигаме добър напредък с тестването на множество трезори. Тази седмица проектирахме и внедряваме нов RPC (Remote Procedure Call) механизъм в Трезорите, за да поддържаме заявки за информация за връзките. Това е една от важните стъпки, за да се позволи на клиентите да се свързват с мрежата без предварително познаване на IP адресите и публичните ключове на всички компютри в тяхната секция. Идеята е да е достатъчно да имате информация за връзка с поне един компютър в мрежата, който може да се използва за откриване на други компютри, управляващи определен клиент. Въвеждането на този механизъм би било и много полезно за свързване към многосекционната мрежа (Фаза 2б). Добавихме необходимото за това API към маршрутизацията.

Освен това, продължаваме да подобряваме рамката за тестване на трезора. Обсъдихме и създадохме начин да я подобрим чрез премахване на дублиращ се код и по-важното като използваме тестови PARSEC за тестовете. Това ще ни позволи да автоматизираме тестовете на трезорите без да разчитаме на „истинската“ мрежова инфраструктура: в определени контексти е по-ценно да тестваме интегрирането на трезора и маршрутизирането в изолация, като извадим мрежовите странични ефекти от уравнението. С това трябва да имаме 3 режима на тестване за различни контексти и сценарии: реална мрежа (с реални клиенти), тестова с PARSEC (трезор с реална маршрутизация, но със симулирана мрежа) и тестова маршрутизация (трезори със симулирана маршрутизация).

SAFE API

План на проекта

Предвид новата версия на Rust (1.39) от миналата седмица, вече започнахме да мигрираме safe-api, за да може тези API-та, които са асинхронни (например тези, които трябва да комуникират с мрежата), да бъдат изложени като функции на асинхронизация async. Вече успяхме да направим това в API-тата и също така да направим корекции на safe-cli, за да чака (await) при извикване на тези функции за асинхронизация. Все още трябва да направим съответните корекции в safe-ffi слоя, както и в реализацията на safe-api, където извикваме API-тата на safe_client_libs. Виждаме някои малки предизвикателства там, но като цяло досега този процес върви гладко. След като приключим с това, ще се стремим съответните Node.js свързаности на API-тата да върнат Promises.

Няколко допълнителни функции бяха добавени към safe-cliкомандите за удостоверяване. Когато използвате CLI или да създадете акаунт, или да влезете с помощта на съществуващ такъв, идентификационните данни на акаунта се подават към потребителя, като по този начин добавихме същата функционалност, която използва и safe_authCLI-то , което дава възможност за осигуряването на създаване на акаунт / данни за вход чрез променливи на средата (SAFE_AUTH_PASSPHRASE и SAFE_AUTH_PASSWORD) или чрез конфигурационен файл с аргумент --config <filepath>. Това все още е в ход, тъй като се опитваме да адаптираме нашите тестове за интеграция на safe-cli в CI, за да работи заедно със safe-authd в един и същ PR.

В допълнение към това, подкомандата за вход auth login вече приема флаг --self-auth, който позволява на потребителя автоматично да удостовери CLI приложението в акаунта, в който е влязъл. Вярвахме, че това е необходимо в конкретния случай, сега, когато имаме SAFE Удостоверител процес, ако потребителят използва само CLI и никакъв друг потребителски интерфейс за удостоверяването, потребителят ще трябва да отвори втора конзола, за да упълномощи CLI от нея, което го прави не само объркващо, но и непрактично.

Накрая започнахме да добавяме повече документация към хранилището на safe-api, опитвайки се да обясним основната цел на всеки от контейнерите, които съдържа. Започнахме вече със създаването на документ (README) от най-високо ниво, който осигурява общо представяне и действа като показател за останалите контейнери. Това все още е в ход, но вече можете да разгледате напредъка, който постигнахме с най-високото ниво на документа README. Добавихме няколко диаграми, които се надяваме да са полезни, за да разберете как всички тези компоненти се вписват един с друг.

SAFE Клиентски библиотеки

План на проекта

Миналата седмица обявихме въвеждането на наименувани контейнери. Работехме по това и сега имаме първоначалната реализация като част от тази заявка за изтегляне. След известно преразглеждане, ще я предадем на екипите, работещи върху езиковия API и CLI, за да видим дали удовлетворява изискванията. Също така приключихме и с оттеглянето на зависимостта от maidsafe_utilities.

Получихме няколко полезни идеи за рефакторинга на контейнерите за акаунти. Въпреки че се стремим към основен набор от функции за първоначалното издание, мислите и идеите ви са добре дошли, така че не се колебайте да ги споделите в GitHub или във форумите.

SAFE Network програма (десктоп)

План на проекта

Тази седмица сме готови да пуснем актуализация на приложението SAFE Network, което дава възможност за управление на актуализациите за нейните приложения. Така че можете лесно да видите кои приложения се нуждаят от актуализация и да изберете да инсталирате тези актуализации автоматично чрез SAFE Network App-а.

Това е малка функция, но изискваше много тестове и настройки, за да работи на всички платформи.  Последното парче от пъзела, което чакахме за да пуснем обновлението (още нотариално заверяване), е готово и натискаме големия бутон „ПУСКАНЕ“ на бюрото на @StephenC. Може да свалите версията от тук или от приложението SAFE Network след като ви предложи известие за актуализация, ако вече го имате инсталирано.

След като направите това, надяваме се че ще видите и налична актуализация за SAFE браузъра (ако имате инсталирана версия v0.15.2 през приложението SAFE Network), тъй като възнамеряваме да пуснем едновременно актуализирана версия и за него (вижте SAFE Раздела на браузъра по-долу!).

С приключването на това, скоро ще се фокусираме изцяло върху функцията за удостоверяване. С вече работещи първоначални версии започваме да подобряваме естетиката и нашите тестове и настройка на CI.

Имайте пред очи, че ако използвате версия v0.15.2 на SAFE браузъра, НЯМА да можете да актуализирате чрез приложението SAFE Network. Ще трябва или да деинсталирате / инсталирате чрез приложението SAFE Network, или да използвате отделната версия на SAFE браузъра. Опитът за актуализация чрез приложението на SAFE Network ще се провали, тъй като версия v0.15.2 не е в състояние да се актуализира на заден план.

SAFE браузър (десктоп)

План на проекта

Имаме малка актуализация на браузъра. Тази актуализация коригира още няколко проблема с разделителната способност на pWeb, някои промени във взаимодействието й със SAFE Network App и позволява да се задействат фонови актуализации от самото приложение на SAFE Network. Ако вече имате инсталиран браузъра при пускането ще можете да опитате да актуализирате от приложението SAFE Network, за да усетите как може да работи управлението на приложенията в бъдеще!

Също така търсихме допълнително оптимизиране на внедряването, изграждането и как можем по-често да пускаме нови версии на браузъра и други настолни приложения към потребителите. Подготвяме използването на канали за пускане, така че това трябва да стане част от браузъра в близко бъдеще. Ще разполагаме с alpha канал за вътрешно тестване (или за тези, които искат да живеят на режещия / вероятно счупен ръб), beta канал, където можем да пускаме по-стабилен код за тези, които искат ранен достъп и не се притесняват от проблеми с откриването на грешки и след това най-нов (стабилен) канал. Това би трябвало да направи актуализациите по-плавни и по-чести за общността, като същевременно ще подобри значително начина на тестване на версии / актуализации и на самите приложения. Надяваме се, че този предстоящ ход ще насърчи още повече участието на общността.

Имайте пред очи, че ако използвате версия v0.15.2 на SAFE браузъра, НЯМА да можете да актуализирате чрез приложението SAFE Network. Ще трябва или да деинсталирате / инсталирате чрез приложението SAFE Network, или да използвате отделната версия на SAFE браузъра. Опитът за актуализация чрез приложението на SAFE Network ще се провали, тъй като версия v0.15.2 не е в състояние да се актуализира на заден план.

SAFE App C#

План на проекта

Наистина сме развълнувани да съобщим, че първата RC версия на MaidSafe.SafeApp NuGet пакета вече е налична. Пакетът разкрива всички нови API-та, налични в safe-api, и можете да го използвате, за да извършвате всякакви операции в SAFE мрежата, които са възможни с помощта на safe-cli.

Ще бъде прекрасно да видим какво ще разработите, използвайки този актуализиран пакет. Ако откриете някакъв проблем, моля, повдигнете проблем в GitHub и ако имате нужда от помощ с API-тата / разработката на приложения използвайки C #, моля, започнете тема във форума за разработчици и включете @ravinderjangra.

Актуализирахме и ръководството за safe_app_csharp, за да отрази актуализацията на поддържаните версии за настолни и мобилни платформи.

Паралелно с това се опитваме да разширим настройките за изграждане и тестване, за да започнем с тестовете на локално работещ трезор. Това ще ни помогне да потвърдим правилното функциониране на производствените библиотеки за всички платформи.

Стареене на възел (Node Ageing)

План на проекта

Тази седмица обединихме много голям и сложен PR, който се занимава със задействане на преместването въз основа на мрежовите събития, както и с отстраняването на недостатъци от предишната логика за преместване. Това е значителна стъпка към въвеждането на стареенето на възли и премина през интензивни тестове, за да се изгладят всички малки проблеми. Разследването на провалите се тестовете за някои от по-сложните случаи може да бъде много отнемаща и трудна задача, така че всички взели участие заслужават напитка по избор през уикенда!

Друга решаваща стъпка в прилагането на стареенето на възлите е издигането/освобождаването от длъжност Старейшина. Постигнахме добър напредък и сме в етап на тестване. Както обикновено, когато работим с маршрутизирането и самата асинхронна природа на проблемите, които решава, след като нещата са внедрени и започнем да правим реални системни тестове, откриваме всякакви частни случаи, които се нуждаят от работа. Така тази седмица видяхме допълнителни подобрения в рамката за тестване, за да ни помогне за това.

Също така обединихме следващата стъпка в опростяването на работата на свързаността с един PR, отнасящ се до проследяването на информацията за връзката за обединяване на старейшините. Има още две PR-а за довършването на тази задача, като един от тях е в етап на тестване и също е почти готов за сливане.

За да се улесни интегрирането с safe_vault, API-то е разширено, за да даде достъп до старейшините на секции.

Работата по изчистването на PARSEC почти приключи и в момента е на опашката за сливане. Работата с прекъсванията чрез проследяване на компютрите, които не отговарят на съобщенията сега продължава и се очаква да решим проблема с масовото проучване поради новия модел на тестване.

Полезни линкове

Подробна информация може да намерите както винаги във форума на международната общност: SAFE Network Forum

Ако имате въпроси може да ги зададете във Facebook групата на българската SAFE общност: https://www.facebook.com/groups/SafeNetworkBulgaria/

Ако искате да следите последните новини заповядайте във Facebook страницата на SAFE Network България: https://www.facebook.com/SafeNetworkBulgaria/