Bitcoin Forum
June 27, 2024, 07:19:35 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: кто в чём работатет с проектами на solidity  (Read 1382 times)
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 06, 2017, 04:09:03 AM
 #1

Надоело писать в блокнотике(sublime text) и деплоить через mist+локальный geth (-dev), отлаживать через remix. С отдельными контрактами, или с небольшим количеством файлов проблем нет, но проект становится чуть больше пары файлов, и нужен нормальный фреймворк - среда разработки какая-нибудь, с комлексным подходом к работе.
websalamander
Newbie
*
Offline Offline

Activity: 88
Merit: 0


View Profile
October 06, 2017, 07:13:48 AM
 #2

Visual Studio+Git+truffle+testrpc
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 06, 2017, 08:08:40 PM
 #3

что-то не ставится дополнение с solidity под Visual Studio 2017... ругается примерно так:
...
06.10.2017 23:07:57 - Поиск применимых продуктов...
06.10.2017 23:07:57 - Найден установленный продукт - Глобальное расположение
06.10.2017 23:07:57 - Найден установленный продукт - Visual Studio Enterprise 2017
06.10.2017 23:07:57 - VSIXInstaller.NoApplicableSKUsException: Это расширение не может быть установлено ни для одного из установленных продуктов.
   в VSIXInstaller.App.GetInstallableData(String vsixPath, Boolean isRepairSupported, IEnumerable`1& skuData)
   в VSIXInstaller.App.Initialize(Boolean isRepairSupported)
   в VSIXInstaller.App.Initialize()
   в System.Threading.Tasks.Task`1.InnerInvoke()
   в System.Threading.Tasks.Task.Execute()
madcoiner
Newbie
*
Offline Offline

Activity: 44
Merit: 0


View Profile WWW
October 06, 2017, 11:49:12 PM
 #4

Для разработки и тестирования я использую vim + truffle + testrpc
Для "щупанья" того что получилось использую remix + parity (в kovan сети) как провайдер данных
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 07, 2017, 07:44:42 AM
 #5

Поставил себе студию 2015 и плагин solidity вроде как стал нормально. Его что, прекратили поддерживать...
А для чего вообще используется трюфель - для автоматических модульных тестов?
madcoiner
Newbie
*
Offline Offline

Activity: 44
Merit: 0


View Profile WWW
October 07, 2017, 01:48:47 PM
 #6

Трюфель это тесты + система сборки контракта по зависимостям (require, include).
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 07, 2017, 04:01:30 PM
 #7

с этой студией одни косяки - сперва solidity только под 2015 версию, потом проект не деплоится в локальную ноду (дошёл до автозапуска браузера по локалхост:8000, но выдаёт пустую страницу и в самой студии в логе вот такое: Contract Payout created successfully at address {"jsonrpc":"2.0","error":{"code":-32600,"message":"invalid character 'p'...), потом трюфель-проект не понимаю как ставить чтобы прямо из VS запускать эти тесты... может руки конечно кривые (в плане работы с visual studio так однозначно так и есть), но как-то всё это напрягает сильно. Может есть какие инструкции или видеозарисовки нормальные по установке solidity и/или truflle под студию и по работе с ними потом.

Или схема работы должна быть другой: VS - разрабатываем .sol и компилируем, трюфель из  командной строки - компилируем, деплоим и тестируем в локальной ноде...
mensa84
Full Member
***
Offline Offline

Activity: 184
Merit: 101



View Profile
October 07, 2017, 06:20:25 PM
 #8

Надоело писать в блокнотике(sublime text) и деплоить через mist+локальный geth (-dev), отлаживать через remix. С отдельными контрактами, или с небольшим количеством файлов проблем нет, но проект становится чуть больше пары файлов, и нужен нормальный фреймворк - среда разработки какая-нибудь, с комлексным подходом к работе.

Использую полный набор Jetbrains
У них есть все для всех кодеров (с++, c#, php, py, go и тд) .Есть DataGrip для всех возможных баз
Посмотрите не пожалеете https://www.jetbrains.com

   ⚡⚡ PRiVCY ⚡⚡   ▂▃▅▆█ PRiVCY (PRIV) is a new PoW/PoS revolutionary privacy project  ☞ Best privacy crypto-market! █▆▅▃▂
    Own Your Privacy! ───────────────── WebsiteGithub  |  Bitcointalk  |  Twitter  |  Discord  |  Explorer ─────────────────
   ✯✯✯✯✯                 ✈✈✈[Free Airdrop - Starts 9th June][Tor]✈✈✈ ║───────────║ Wallet ➢ Windows  |  macOS  |  Linux
websalamander
Newbie
*
Offline Offline

Activity: 88
Merit: 0


View Profile
October 08, 2017, 06:04:54 AM
 #9

с этой студией одни косяки - сперва solidity только под 2015 версию, потом проект не деплоится в локальную ноду (дошёл до автозапуска браузера по локалхост:8000, но выдаёт пустую страницу и в самой студии в логе вот такое: Contract Payout created successfully at address {"jsonrpc":"2.0","error":{"code":-32600,"message":"invalid character 'p'...), потом трюфель-проект не понимаю как ставить чтобы прямо из VS запускать эти тесты... может руки конечно кривые (в плане работы с visual studio так однозначно так и есть), но как-то всё это напрягает сильно. Может есть какие инструкции или видеозарисовки нормальные по установке solidity и/или truflle под студию и по работе с ними потом.

Или схема работы должна быть другой: VS - разрабатываем .sol и компилируем, трюфель из  командной строки - компилируем, деплоим и тестируем в локальной ноде...

https://marketplace.visualstudio.com/items?itemName=ConsenSys.Solidity
https://marketplace.visualstudio.com/items?itemName=JuanBlanco.solidity
https://www.youtube.com/watch?v=fflYJh8Rtxc Dapp tutorial: Truffle 3.0, Metamask and EthereumExplorer

Должно помочь Smiley
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 09, 2017, 03:59:49 PM
 #10

Спасибо всем, немного помогает. А ещё помогло наведение порядка с путями в node... что-то я там напутал ранее.
Интерсно, что связка node - truffle - testrpc работает. Связка geth --dev --rpc --rpcapi "admin,debug,miner,shh,txpool,personal,eth,net,web3" console - mist.exe --rpc http://localhost:8545 тоже работает. Связка node - truffle - geth (тот же самый) не работает. Настройки в truffle.js:
      host: "localhost",
      port: 8545,
      network_id: "*" // Match any network id

Студия по-прежнему выдаёт ошибку и пустую страницу с geth. Однако, уже начала запрашивать какой-то keyserver (разбираюсь...) в связке с testrpc.

Кто знает, что может быть не так с geth?
Snappsiz
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile
October 09, 2017, 09:37:57 PM
 #11

Git,Truffle,Testrpc.
Jaga-Jaga
Sr. Member
****
Offline Offline

Activity: 613
Merit: 256



View Profile
October 09, 2017, 11:41:19 PM
 #12

Надоело писать в блокнотике(sublime text) и деплоить через mist+локальный geth (-dev), отлаживать через remix. С отдельными контрактами, или с небольшим количеством файлов проблем нет, но проект становится чуть больше пары файлов, и нужен нормальный фреймворк - среда разработки какая-нибудь, с комлексным подходом к работе.

Использую полный набор Jetbrains
У них есть все для всех кодеров (с++, c#, php, py, go и тд) .Есть DataGrip для всех возможных баз
Посмотрите не пожалеете https://www.jetbrains.com
Я когда то использовал IDEA и мне она нравилась для Java разработки, какова IDEA в качестве IDE для solidity? Удобно ли в ней отлаживать и умеет ли она подсчитывать сколько нужно газа для выполнения контракта? Имеет ли она встроенную ноду для тестирования контракта или надо будет потом как то в другом месте тестировать, например в том же remix-е?

           ▀██▄ ▄██▀
            ▐█████▌
           ▄███▀███▄
         ▄████▄  ▀███▄
       ▄███▀ ▀██▄  ▀███▄
     ▄███▀  ▄█████▄  ▀███▄
   ▄███▀  ▄███▀ ▀███▄  ▀███▄
  ███▀  ▄████▌   ▐████▄  ▀███
 ███   ██▀  ██▄ ▄██  ▀██   ███
███   ███  ███   ███  ███   ███
███   ███   ███████   ███   ███
 ███   ███▄▄       ▄▄███   ███
  ███▄   ▀▀█████████▀▀   ▄███
   ▀████▄▄           ▄▄████▀
      ▀▀███████████████▀▀
DeepOnion
███
███
███
███
███
███
███
███
███
███
   Anonymity Guaranteed
   Anonymous and Untraceable
   Guard Your Privacy
      ▄▄██████████▄▄
    ▄███▀▀      ▀▀█▀   ▄▄
   ███▀              ▄███
  ███              ▄███▀   ▄▄
 ███▌  ▄▄▄▄      ▄███▀   ▄███
▐███  ██████   ▄███▀   ▄███▀
███▌ ███  ███▄███▀   ▄███▀
███▌ ███   ████▀   ▄███▀
███▌  ███   █▀   ▄███▀  ███
▐███   ███     ▄███▀   ███
 ███▌   ███  ▄███▀     ███
  ███    ██████▀      ███
   ███▄             ▄███
    ▀███▄▄       ▄▄███▀
      ▀▀███████████▀▀
pavelZ
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
October 12, 2017, 06:29:08 PM
 #13

А я просто в Notepad++  )
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 12, 2017, 07:43:32 PM
 #14

Notepad++ - так себе решение. Для больших разработок не подойдёт.
ferumflex
Full Member
***
Offline Offline

Activity: 256
Merit: 102


View Profile WWW
October 13, 2017, 03:24:42 PM
 #15

Truffle, Pycharm, testrpc, metamask
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 13, 2017, 07:41:42 PM
 #16

Pycharm - вообще первый раз о таком слышу. Шо за зверь? Хотя, судя по тому, что к нему много всего остального нужно, врядли что-то комплексное (серьёзное) будет.
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 14, 2017, 08:36:32 PM
 #17

truffle отказывается компилировать, ругаясь вот так: TypeError: Definition of base has to precede definition of derived contract (определение базы должно предшествовать определению производного контракта). Знает кто, как с таким бороться? Похоже связанно с многочисленными import между файлами (в каждом файле по одному контракту).
ferumflex
Full Member
***
Offline Offline

Activity: 256
Merit: 102


View Profile WWW
October 14, 2017, 09:06:27 PM
 #18

Pycharm - вообще первый раз о таком слышу. Шо за зверь? Хотя, судя по тому, что к нему много всего остального нужно, врядли что-то комплексное (серьёзное) будет.
это студия разработки от jetbrains. Изначально она расчитана на python, но подсвечивать синтаксис тоже умеет. Просто сама студия очень удобна для меня.
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 15, 2017, 08:22:44 AM
 #19

truffle отказывается компилировать, ругаясь вот так: TypeError: Definition of base has to precede definition of derived contract (определение базы должно предшествовать определению производного контракта). Знает кто, как с таким бороться? Похоже связанно с многочисленными import между файлами (в каждом файле по одному контракту).
Похоже на вот такую ситуацию:
contract q1 is q2{
   function f1() {
   }
}
contract q2 is q3{
   uint b;
   function f2() {
   }
}
contract q3 is q1{
   function f3() {
   }
}
так вообще нельзя писать, или можно обойти при помощи абстрактных классов, интерфейсов или ещё как?
ShDenis (OP)
Full Member
***
Offline Offline

Activity: 313
Merit: 103



View Profile
October 15, 2017, 08:34:54 PM
 #20

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

Теперь получил траблу с миграцией. Всё дело в том, что в стандартной документации описан простой случай деплоя в сеть. У меня же при деплое контракта в контструкторе создается ещё штук пять контрактов и ещё наследование от двух отдельных. Подскажет кто, как это правильно в файл миграции внести? Создаваемые контракты нужно изначально деплоить через deployer.deploy( и привязывать через deployer.link( к основному? И как это делать правильно...
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!