[06:35:46] @prole @aguycalled I think I've narrowed down the hashes issue to mingw version is there any technical reason to keep using the version we are now? [06:42:46] not that im aware of, but alex might know [07:40:48] no [08:49:18] @aguycalled There seems to be an issue with the QT network requests [08:49:25] Any of the requests that our wallet runs [08:49:30] Never release the socket [08:49:34] Not just the price check [08:50:14] So in theory if you run the wallet for long enough, it will eventually lose connections (Cause it will run out of the max open files limit on the OS side) [08:50:28] only requests generated by the gui? [08:50:33] Yes [08:50:35] or also p2p connections? [08:50:36] ok [08:50:47] No, p2p seems to clean up nicely [08:51:03] Opens and releases as expected on connect/disconnect [08:51:11] The QT request are the issue [08:51:35] It's likely that the wallet would fail after a few months of uptime [08:51:45] But for regular use, it should not be an issue [08:52:00] im trying to think what other connections are exclusive of the gui [08:52:09] But for the price check, since it runs more frequently it would cause the wallet to run out of files faster [08:52:31] I have a local version that uses libcurl instead [08:52:46] And it does not HOLD the socket, it releases as soon as done with the request [08:53:02] I will push this change to the PR to fix the issue with price check. [08:53:31] As for the held sockets dues to QT network requests, we might have to create an issue for that and maybe replace the requests with a diffrent lib [08:54:19] I was thinking maybe we can create a simple function in util.h that uses either curl or boost::asio to do requests and replace the QT network calls [08:54:58] sounds good [08:54:59] @prole @aguycalled what do you think? [08:55:21] i'm checking QNetworkRequest is only used for getvotinginfo which is deprecated nowadays and payment servers [08:55:30] beside the price check [08:56:02] Hmmm [08:56:07] So we can remove those? [08:56:30] I have a libcurl implementation of price check that does not hold the sockets [08:57:16] But, it's thread blocking, so it causes the wallet to hang until done getting the price (On initial load of wallet) But since the other requests are done via a QTimer, they are non blocking. [08:57:30] I think maybe a quick std::thread for first call will do? [08:58:23] price refreshes should be not blocking, what do you think? [08:58:34] id remove the voting info requests and move price checking to curl in a new thread [08:58:45] The price checks that run via timer are non blocking [08:59:03] Only the first call is blocking [08:59:16] ok cool [08:59:23] QTimer takes care of the thread when running the requests after wallet has started. [09:05:17] So you think it's ok to remove t he 2 requests that you were talking about? [09:06:17] @aguycalled I m ean are these deprecated? getvotinginfo payment servers [09:06:52] getvotinginfo is deprecated since the community fund exists [09:07:28] payment servers come from bitcoin but have never been used for navcoin afaik. i would leave those [10:18:38] can i create a branch of navcoin-core? [10:18:48] waaaat:system ryan$ git push --set-upstream origin rman-20190507 remote: Permission to navcoin/navcoin-core.git denied to mntyfrsh. fatal: unable to access 'https://github.com/navcoin/navcoin-core.git/': The requested URL returned error: 403 [10:20:45] ah looks like i need to be added as collaborator [10:21:40] can you please add 'mntyfrsh' as collaborator for the repo? i need a separate branch to test the arm builds for navdroid. need to add systemd init scripts into the navcoin-core repo for building the ubuntu packages. [10:21:51] @aguycalled @prole ^^^ [10:24:24] i'm thinking of creating a global service that controls start/stop for navcoin-core, express and angular [10:24:47] that way we just call one service to start/stop the required services for navdroid [10:59:21] github is down for me right now [12:22:02] @aguycalled I've pushed the changes for the price update PR [12:22:20] I replaced the QT network manager with curl + std::thread [12:33:39] i will test it [12:35:00] 1 sec [12:35:11] I'm pushing another commit to remove the get voting info stuff [12:52:45] i can't add collaborators @mntyfrsh should be done by craig, anyway i guess you can point to your own fork of the repo meanwhile? [14:36:16] @aguycalled I've pushed the changes you suggested for the error.log logic [14:36:40] I think it's more efficient, but it's kinda not DRY [14:36:41] thx, seen them [14:36:48] what do you mean with dry? [14:37:00] not Don't Repeat Yourself [14:37:19] It's got too much code that is slightly different, feels sloopy 😒 [14:37:25] But it works, haha πŸ˜„ [14:38:04] I think it might be a good idea for a future project to clean up some of the code in util [14:38:24] But for now the changes should work as there are other more important issues to tactle [14:39:24] BTW, I'm working on the windows build hashes issue and decided to re-use patch-5 because I needed the changes from /depends which were not merged into master yet. [14:41:24] i think it makes it easier to decide what's an error message and what not when coding, just need to use logprint* or error [14:41:38] and you'll know for sure it will go where it should [15:01:39] Yeah [15:01:56] I get what you mean [15:02:36] This way is more verbose you could say, it does exactly what you think it does [15:03:11] yep [16:11:56] unix build instructions are broken for ubuntu 19. i struggled for some days to compile on 16, 'spun up' (i hate that phrase) new 19.04 vps. now trying to get libdb4.8 going is disallowed by apt. If/when i ever get compilation to work, ill share the hows. [16:12:41] E: The repository 'http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu disco Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. [16:13:33] this link also goes nowhere now https://launchpad.net/~navcoin/+archive/navcoin [16:22:21] i see now i went from 'too old' (16) to 'too new' 19 πŸ™„ [16:23:11] use LTS [16:23:16] 18.04 [16:24:34] BTW, if you build using the /depends [16:24:39] Then you won't need that ppa [16:25:00] But it will take longer cause you will need to compile /depends [16:25:44] a workaround for this is to add this 'manually' to /etc/apt/sources.list instead of using apt-add tool. deb http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu bionic main deb-src http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu bionic main [16:26:15] Hmmm, the .deb packages on bionic work for disco? [16:26:21] If so, then that would work. [16:27:12] ..i used 'cosmic' but yes after that a regular apt installed the required bdb 4.8 [16:28:37] cosmic is 19.04? [16:29:30] ...anywho. the core-dev-setup.sh could write above to /etc/apt/sources.list and then work for multiple ubuntu versions πŸ‘ [16:30:07] cosmic = 18.10 [16:30:27] bionic = 18.04 [16:30:35] Ahh [16:30:44] disco = 19+ (?) [16:31:00] disco is 19.04 i think [16:32:56] @aguycalled @prole looks like the required changes to gitian build process will require gitian to be installed in Ubuntu 18.04 or Debian 9/stretch + unstable sources.list enabled [16:33:58] are you talking about patch-5? [16:40:19] Yes [16:40:41] With changes for windows hashes issue (inconsistent hashes) [16:46:04] how much effort do you think it will be? [16:50:12] Not sure, still trying it out with a VM [16:51:19] The process I have decided to try is: 1. Install Debian 9 2. Add unstable to /etc/sources.list 3. Upgrade packages 4. Continue with regular gitian setup including installing the packages needed [16:57:10] ok, so you mean the vm's OS should be debian 9 [16:57:43] i thought you meant the OS running in the VM gitian uses to build deterministically [16:57:54] why is a different SO needed? [16:58:11] No the host OS [16:58:36] Because of changes to the VM, will need newer versions LXC and debootstrap etc. [17:06:24] Hmmm, looks like we can use docker instead [17:06:28] What do you think? [17:06:41] Less setup, and might not even need a VM to run LXC from [17:07:05] If we use docker to run the gitian builds we can just run from host machine no VM needed to host LXC [17:07:06] as you describe it sounds as a better option [17:07:16] I'll see if I can get it working [17:08:32] compilation fails. do you guys want me to share abt it here? i dont want to clutter your workspace. [17:08:48] Post it! πŸ˜„ [17:09:12] /usr/include/boost/multi_index/detail/ord_index_impl.hpp:1194:7: error: no match for call to β€˜(const key_compare {aka const CompareModifiedEntry}) (const CTxMemPoolModifiedEntry&, CTxMemPoolModifiedEntry&)’ if(comp_(key(v),key(y->value())))return false; ^~ [17:10:38] ...then same error line 1199. 'no match for call to..' [17:11:13] i can somewhat keep up more than average joe but am not a c++ guru like you. [17:12:03] is it something abt differences in boost libs from LTS to 'disco'? [17:12:51] Looks like an issue with the system boost [17:13:05] May I suggest you use the /depends libs to build against [17:13:59] Try this: cd ./depends make cd ../ ./autogen.sh ./configure --prefix=`pwd`/depends/x86_64-pc-linux-gnu make -j4 [17:14:24] Replace -j4 with your number of cores you wanna use [17:14:36] depends are built, so i just re configure with --prefix then? [17:14:42] Yes [17:14:58] roger [17:15:01] The process i outline above works every time πŸ˜„ [17:28:45] @caffeine how did the build go? πŸ˜ƒ [17:29:14] still chuggin away, so far so good. [17:29:23] (not done yet) [17:29:46] Nice πŸ˜„ [17:33:45] @aguycalled looks like the docker method is worning so far [17:33:50] Still building πŸ˜„ [17:34:13] I guess I should also add updates to the gitian build docs if I get this working. [17:35:19] Seems much esier now 1. Install docker 2. Clone gitian 3. Build docker image 4. Start docker image with name `gitian-target` 5. Run guild with USE_DOCKER=1 and the normal params for build [17:36:07] So it cuts out the whole install debian VM + LXC setup [17:36:41] And since docker runs on windows mac and linux, this means we can build on any OS for any OS? Seems like a win2x to me, let me know what you guys think. [17:43:14] i might need to try it to value it, but sounds good from what you say [17:45:36] yeah, I'll compile a list of commands [17:45:43] When I get it working locally [17:46:01] I'll create a new file in /doc [17:59:29] build success on 'disco' with those two changes. i put them in the 'dev build script' here. im a newbie to github collaborating so just tell me if im Doing It Wrong https://github.com/NAVCoin/navcoin-dev-tools/compare/master...rocket-pig:patch-2 [18:02:27] Create a PR and ask @aguycalled or @prole to review πŸ˜„ [18:05:36] @mxaddict is there a reason to exclude -enable-debug --enable-tests from configure ? [18:06:11] ...or should it be ./configure --prefix=pwd/depends/x86_64-pc-linux-gnu --enable-debug --enable-tests [18:06:29] I'm not too familiar with the logic for configure command [18:06:39] But I think those are actually ON by default [18:06:54] Correct me if I'm wrong @aguycalled [18:06:58] the output was very different, much more succinct without them. [18:07:25] previous output had tens of pages of warnings [18:07:27] enable-tests compiles the unit tests [18:07:37] Hmmm, I'm certain tests are enabled by default as it always builds the unit tests [18:07:49] with enable-debug you compile for debugging [18:07:52] https://github.com/NAVCoin/navcoin-core/blob/master/doc/developer-notes.md [18:08:00] I always see test_navcoind and test_navcoin-qt being built [18:09:18] enable-tests is enabled by default yes [18:10:01] @aguycalled on side note, looks like build with docker is working [18:12:15] test/test_navcoin was still built yes [18:12:53] I guess it won't hurt to add them to the script [18:13:03] Then you can create a PR πŸ˜ƒ [18:14:06] πŸ†’ . couple days coming to get here. syncing blockchain on locally compiled 4.60 😎 [18:15:46] 4.60 are you the terminator, came back to delpoy future nav version? πŸ˜ƒ [18:18:38] yep you caught me [18:20:10] using the github web text editor is a disaster, i cant tell what is going on. not familiar w this stuff. ugh [18:22:39] Why not clone the repo and use VIM πŸ˜„ [18:31:07] best random text generator: somebody trying to exit vi [18:34:53] Hahaha [18:35:03] I use vim exclusively actually πŸ˜„ [18:35:22] I've been using it for 5 years now [18:35:35] Cause I can't QUIT [18:38:30] lol! [20:14:30] @mxaddict can i ask: why is ./configure not using the local depends dir? I mean whats the point of all that if it just uses system libs at the end? [20:25:49] I think it's just the way the script was setup from bitcoin originally [20:25:56] Even bitcoin-core is same way [20:26:22] You need to set --prefix for it to use /depends on bitcoin-core as well [20:27:56] oh. blames upstream 😊 [20:29:03] Whenever I can, I will, haha [20:29:42] @caffeine so how are your builds going? [20:29:56] Were you able to accomplish what you set out to do? πŸ˜ƒ [20:30:12] oh great! finished successfully. its syncing blockchain now [20:31:25] ...point was to get environment set up to help test changes w/ you all. I dont know that i'll be whipping out PRs every 5 mins like you 😍 [20:34:01] ...but maybe i'll find things here and there to add. I made an official PR for the dev test script. https://github.com/NAVCoin/navcoin-dev-tools/pull/5 [20:37:01] Nice, good to hear [20:37:19] The more the merrier πŸ˜„ [22:11:38] Are any of you using yarn to install npm modules? [22:12:32] Apparently npm doesn’t cache data for installs so it takes forever to install all of the modules required for angular. [22:22:44] @mntyfrsh is that default package manager that angular uses? [22:27:36] angular requires packages to be installed via npm [22:28:01] https://geeklearning.io/npm-install-drives-you-crazy-yarn-and-chill/ [22:34:28] i just use npm, not yarn [22:35:23] i'm stuck on trying to satisfy the npm package dependencies for angular [22:35:36] keeps telling me rxjs isn't installed but it is [22:46:33] @prole @aguycalled Have you ever run into this error before? [22:46:37] libnavcoin_server.a(libnavcoin_server_a-init.o):init.cpp:(.text+0x3584): undefined reference to `_imp__curl_easy_init' [22:46:54] I'm assuming it's something todo with statically linking curl [22:47:03] But I can't put my thumb on it. [23:17:55] havent seen it sorry [23:48:39] @mntyfrsh I prefer yarn (gives me less trouble) but for NAV projects I use NPM