Не буду ходить вокруг да около.
На данный момент была полностью доработана, т.е. приведена к актуальному состоянию. Бибилиотека на языке GO для системы Golos.
Она доступна https://github.com/golos-blockchain/golos-go
Предлагаю сообществу оценить достойна ли данная работа для оплаты.
Для этого была заведена "Заявка на работу" https://golos.id/workers#
Кстати сам запрос был создан непосредственно с помощью библиотеки.
{
"ref_block_num": 48122,
"ref_block_prefix": 1669199043,
"expiration": "2020-02-25T10:28:20",
"operations": [
[
"worker_request",
{
"author": "drwho",
"permlink": "rabochee-predlozhenie-dorabotanaya-biblioteka-na-go-dlya-golosa",
"worker": "drwho",
"required_amount_min": "10000.000 GOLOS",
"required_amount_max": "100000.000 GOLOS",
"vest_reward": true,
"duration": 1728000
}
]
],
"signatures": [
"20698874575d4752ba57dea38b43ebeb1e1c9e74e7a5e6a19869e44f4c37083ee9357beab09e4f5c5d8cb06247f878dc3a6e52679030be7d9ef572c3b5d1dbb6ee"
]
}
Отдельное спасибо @gusaru за поддержку.
Конечно достойна. А тестов я смотрю нет?
@vvk Знаешь за все время написания и поддержки данной библиотеки я так и не смог понять как организовать тесты для API.
Если простыми запросами то это можно и так сделать. Надо будет только написать шаблон.
Этим в ближайшее время займусь.
Тут несколько вариантов:
Я в python-bitshares реализовал именно 3-й вариант (поднятие тестнета в докере)
Как подписаться на комменты через telegram
@vvk ну первые два варианта это что то с чемто, т.е. не дает сто процентной гарантии что все верно. Последний вариант возможен. Но выкладывать такие тесты, это более похоже будет на написание examples.
Как появится время я такое сделаю.
examples это не то, автотесты должны запускаться каким-то фреймворком для тестирования а автоматизированном режиме, чтобы например можно было засунуть прогон тестов в систему CI/CD на каждый коммит или PR, ну и прочие плюшки. Без тестов как ты можешь быть уверен что вообще написал рабочий код? Тестирование оно всяко есть, или ручное или автоматизированное.
Как подписаться на комменты через telegram
Hello, @drwho. You received 100% upvote from UPRomo for burned GBG. Promoted this post in the queue: @free-mind.
The instruction for burning, for promotion or a drop of posts, Invest in UPRomo, Agreement on the use of service.
Здравствуйте, @drwho. Вы получили 100% апвот от UPRomo за сожженные GBG. Продвигали этот пост в очереди: @free-mind.
Инструкция по сжиганию GBG для продвижения или задвигания постов, Для инвесторов, Соглашение об использовании.
@drwho Это круто
@drwho, Поздравляю!
Ваш пост был упомянут в моем хит-параде в следующих категориях:
@drwho объясните пожалуйста для всех здесь, данная бибилиотека является ассинхронной или синхронной ? Для понимания альтернативы и вспоминая не прохождение недавнее воркера на ассинхронную библиотеку на питоне от @vvk
@free-mind данная библиотека может быть ккак асинхронная так и синхронная. Весь вопрос только в реализации приложения. Просто сам подход к асинхронности у GO совсем другой нежели у phyton.
@drwho
@drwho я по этому и спросил (глянув код и увидев там ассинхронную реализацию) что в данном контексте библиотека реализует ассинхронный подход - что уже альтернатива для не прошедшей на питоне. Тем более эта уже написана - а на ту ещё только голосование происходило. Поддерживаю!
Это так себе альтернатива. "Для вашего языка программирования X у нас библиотеки нет, но есть для Y, почему бы вам не использовать Y. Что? Y не очень подходит для вашей задачи? Ну сорян. Говорите, X более популярен чем Y? Ну извините, нам хватило денег только на библиотеку для Y"
Как подписаться на комменты через telegram
@vvk 5 моментов:
я пока не увидел реальной нужды и результатов опросов - что она востребована и кто то кроме вас будет её использовать.
если в лесу нет дорог то странно сразу строить барную стойку, можно обойтись и походной торговой палаткой на первое время, так сказать - прощупать спрос и как пойдёт процесс.
не секрет - что из за отключения говномайнинга - кол-во разработок по бэкенду для голоса сторонними разрабами уже упало и врятли будет расти сильно в обозримом будущем, достаточно взглянуть на статистику в блокактивити - падение раз в 6-8 активности в блокчейне, поэтому и хотелось бы видеть спрос предварительный, кол-во разработчиков кто будет использовать её.
если ты смотришь вакансии и видишь - что есть спрос на рынке труда на язык 1 и язык 2 - то если ты хочешь там работать - логично подстроиться под условия рынка а не сидеть и возмущаться - что, мол, на рынке труда не востребован мой ЯП. ЯП - это всего лишь инструмент, подстроиться под другой ЯП не составляет труда для специалиста в сфере. Особенно для единичных разработок, когда воркер будет делать библиотеку под будущие разработки этого самого разработчика. Пока я не видел шквала заявок на такие возможности от других разработчиков как и в общем потока новых идей.
и да экономика, она самая. Большинстов умеют тратить и пилить бюджеты и распределять их. Но вот как наполнять экономику и получать прибыль - это более сложная задача, как и вопрос построения рабочей экосистемы внутри голоса с учётом последних изменений. В этом контексте это выглядит также - как не логично тратить существенную долю своего остаточного бюджета на не первоочередные расходы (еда, одежда и жильё) в условиях когда не найдены источники поступления средств или другими словами - пока ты сидишь без работы - для конкретного домохозяйства. Согласись - что покупка другого более современого телевизора не является первоочередной задачей - пока работает старый а ты - безработный.
Python один из самых популярных языков и не иметь библиотеку под него это дурость. В соседних steem и bitshares python-либы актуальны и широко используются, go-либы используются сильно меньше. В steem смотрю в go-либе последний коммит от 2017 года, тогда как python-либ целых две - steem-python и beem (на базе python-bitshares / python-graphenelib). Jussi и hivemind в стиме написаны на python.
4). Вообще не понял причём тут рынок, на рынке с python проблем вообще нет.
@vvk но пока голос холдерам кажется это дороговато, у меня маленький вес, не я решаю, но позиции китов по взглядам на целесообразность трат в данный момент совпадают. Полагаю что логика примерно следующая - те кто заработал/купил стек - умеют считать копейки в своей личной экономике и понимают - что сейчас это не приоритетно.
Главного кита не устроило отсутствие точного указания времени которое потребуется на разработку, отсутствие гаратний что 35 часов хватит, как-то так.
Как подписаться на комменты через telegram
@vvk Извини но ты в корне не прав. Как раз библиотека которую я развиваю использовалась у нас на Голосе (до ухода КФ).
Чтобы не быть голословным то скажу что backend на не безизвестном сайте stihi.io (вроде не ошибся) был как раз построен на данной библиотеке. И даже разработчик который там писал на GO сделал свой вклад в данную библиотеку.
Не прав в чём конкретно?
Как подписаться на комменты через telegram
@vvk не прав в том что библиотека не востребована была. Я привел пример что на её базе работал целый сервис со своей мордой.
Вопрос что есть или было на GOLOS со своей мордой и использовало бы phyton либу.
Это не наезд. Просто ты говоришь что phyton более востребован (тут не спорю). Но к сожалению такого примера как я привел ты не можешь.
Знаешь у меня тоже было много ботов и по на GO написанно. И многие этим пользовались. Но к сожалению у меня не так много возможности по написанию и поддержанию, соответственно проекты стухли из-за меня.
Я не писал что она была не востребована. Перечитай что я неаписал.
Как подписаться на комменты через telegram
@free-mind Я так и понял. Что упоминание параметра asyncProtocol bool Вас и навел на данный вопрос.
Данная библиотека не может быть конкурентом ранее предложенной просто по одной причине она реализованна на другом ЯП.
Но спасиюо за поддержку.
Да и отвечая на Ваш вопрос про example.
В ближайшее время я постараюсь сделать примеры для все возможных запросов. Но в большинстве своем они будут очень однотипные. Так как все изменения будут только в том какой запрос нужен и в соответствии с этим просто заполняется структура.
@drwho да и она уже есть ) в отличие от не созданной ещё. Другой язык - это не страшно для желающих реализовать нечто ассинхронное. Не думаю, что в нынешних реалиях экономики и приоритетов целесообразно создавать эти реализации на всех языках. Кому очень нужна ассинхронность в их приложениях - могут использовать эту реализацию. Но для бубушек она скорее всего будет не нужна, а не бабушка и на Golang сделает если нужно будет.
Как то так.
@drwho также ссылка:
"Golang RPC client library for Golos " в репозитории ведёт на *.io
@drwho "Please check the examples directory for more complete and ready to use examples."
Чего то я не нашёл такой директории.