• 01 March 2024 (2 messages)
  • @ABlue0ne #9319 03:44 PM, 01 Mar 2024
    @droplister I have seen you in the XCP universe a few times lately (the youtube series about previous fork war etc) and I just found this Medium post by you and I really wish that I found this post when you made it. Great read. Thanks https://medium.com/@droplister/counterparty-development-101-2f4d9b0c8df3
    Counterparty Development 101

    Counterparty is NOT a blockchain.

  • @droplister #9320 03:52 PM, 01 Mar 2024
    I do a little blogging
  • 02 March 2024 (11 messages)
  • @6370143984 #9323 11:29 AM, 02 Mar 2024
    mods pls delete and ban
  • @krostue ↶ Reply to #9323 #9324 12:40 PM, 02 Mar 2024
    You are also a mod. Please feel free to remove spammers in the future
  • @6370143984 #9325 12:52 PM, 02 Mar 2024
    sorry lol i had no idea i was a mod...
  • @nostrs #9326 01:27 PM, 02 Mar 2024
    Joined.
  • @vectorconfetti #9327 05:50 PM, 02 Mar 2024
    the NUC 11 i7 + 32gb ram is tiny (11.5 cm X 11.5 cm x 5 cm) and quiet! adding in the extra drive was just sliding it through the mount, where it lines up with the cable perfectly... like as easy as an SD card. reading 35db on idle, so very very quiet. definitely recommended for anyone who wants to run a node
  • @teysol #9328 06:56 PM, 02 Mar 2024
    nice setup! :)
  • @6370143984 #9329 06:58 PM, 02 Mar 2024
    *FYI* Dev update will be come with the alpha version of Counterparty Core v10.0.0, which we're hoping to release next week 🤞
  • If you feel motivated maybe put the specs in a blog post
  • i really just went on Amazon and bought the prebuilt NUC 11 with the 1TB nvme, i7, 32gb ram, and bought a 2TB samsung 2.5inch SSD. the computer was $550 USD and the SSD was $150 USD. not too much to say about it!
  • @hodlencoinfield #9332 09:27 PM, 02 Mar 2024
    Can be a short post 😝
  • @6370143984 #9333 10:37 PM, 02 Mar 2024
    @vectorconfetti this could be the beginning of your career as a thought leader. when opportunity knocks on the door, answer it!
  • 03 March 2024 (10 messages)
  • I don't really get the appeal of Pi's these days. They're not much cheaper that a fully decked-out NUC
  • @6370143984 #9335 12:23 AM, 03 Mar 2024
    The dev the community funded has got a PR up for adding Python 3.10 support: https://github.com/CounterpartyXCP/counterparty-lib/pull/1465

    Things like this are the kind of usability improvements that will help make Counterparty ready for primetime once again.
    Support Python 3.10 by warrenpuffett · Pull Request #1465 · CounterpartyXCP/counterparty-lib

    It seems like the only thing preventing us from using 3.10 was a change to the int.to_bytes() method. In 3.11 it includes defaults (length=1, byteorder='big') see here. 3.10 does not have t...

  • @6370143984 #9336 12:24 AM, 03 Mar 2024
    I believe he'll soon be working on a runbook for CI to match the counterparty-lib (soon to be counterparty-core(?)) README.
  • my career has been guiding me to this point and i now stand on the precipice
  • Eminem - Lose Yourself [HD]

    feat. Eminem from the movie 8 MILE No copyright infringement intended. All contents belong to its rightful owners. This is for entertainment purposes only.

  • @6370143984 #9339 02:21 PM, 03 Mar 2024
    @teysol is there a way to refactor dispensers so that we can mitigate its conflicts with running multiple `list_tx`s in parallel?
  • @6370143984 #9340 02:51 PM, 03 Mar 2024
    From Ouziel: 22h21mn to catch up block 832661 in a 8 years i7 with 8go RAM.. I say not bad :-))
    🤯
  • @6370143984 #9343 03:00 PM, 03 Mar 2024
    This is down from > 2 weeks for the same machine specs. So at least a 15x speedup on mainnet!
  • @6370143984 #9344 03:06 PM, 03 Mar 2024
    Ah, most importantly: all consensus hash mismatches have been reconciled. No loss of funds AFAWCT.
  • @teysol ↶ Reply to #9339 #9345 04:20 PM, 03 Mar 2024
    nope :/
  • 04 March 2024 (108 messages)
  • I'm going to nuke my AWS instance and wait till there is a stable path forward to test this... I cannot get past this error
  • @6370143984 #9347 11:54 AM, 04 Mar 2024
    @robotlovecoffee so Counterparty now supports Python 3.10 so hopefully this simplifies everything. But am sorry you got blocked at that step pip install maturin should'a fixed it...
  • @6370143984 #9348 11:55 AM, 04 Mar 2024
    maybe run pip --version? Am wondering if it's still a python versioning issue somehow
  • @robotlovecoffee #9350 12:42 PM, 04 Mar 2024
    pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)
  • @robotlovecoffee #9351 12:43 PM, 04 Mar 2024
    this is the cmd that I cannot get past
  • @robotlovecoffee #9352 12:43 PM, 04 Mar 2024
    cargo install maturin
  • @robotlovecoffee #9353 12:44 PM, 04 Mar 2024
    happy to test later just do not want to pay for something that does not work, once we know the steps I will stand it up again and install
  • @robotlovecoffee #9354 12:45 PM, 04 Mar 2024
    it is all good, I do not *need* this at the momet but would love to help test and have one running at some point for my projects
  • @6370143984 ↶ Reply to #9350 #9355 01:22 PM, 04 Mar 2024
    this is your issue
  • @6370143984 #9356 01:22 PM, 04 Mar 2024
    run python --version
  • @6370143984 ↶ Reply to #9354 #9357 01:23 PM, 04 Mar 2024
    this kind of testing is hugely important! we're not at one-click install yet (among other things need to kill addrindexrs first) but install should be as simple as possible and where it's not it must be treated as a bug.
  • @6370143984 ↶ Reply to #9355 #9358 01:28 PM, 04 Mar 2024
    (This is why I said that Python3.10 support is a small but critical step towards bringing Counterparty up to snuff: it is an important way to reduce the barrier to entry.)
  • @robotlovecoffee #9359 02:31 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115:~$ python3 --version
    Python 3.10.12
    ubuntu@ip-172-31-52-115:~$
  • @6370143984 #9360 02:31 PM, 04 Mar 2024
    try python --version?
  • @robotlovecoffee #9361 02:31 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115:~$ python3.11 --version
    Python 3.11.8
    ubuntu@ip-172-31-52-115:~$
  • @6370143984 ↶ Reply to #9360 #9362 02:32 PM, 04 Mar 2024
    let's see the output of this. Python and Ubuntu both suck a versioning and are hideous together
  • @robotlovecoffee #9363 02:32 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115:~$ python --version
    Command 'python' not found, did you mean:
    command 'python3' from deb python3
    command 'python' from deb python-is-python3
    ubuntu@ip-172-31-52-115:~$
  • @6370143984 #9364 02:33 PM, 04 Mar 2024
    yeahhh okay
  • @6370143984 #9365 02:33 PM, 04 Mar 2024
    alright so good news: if you pull the latest develop you'll have python 3.10 support out of the box
  • @6370143984 #9366 02:33 PM, 04 Mar 2024
    you can revert all that ugly crap you had to do to install 3.11 and set it as default
  • @ABlue0ne #9367 02:35 PM, 04 Mar 2024
    Aliases are the issue here. Python and python3 run diff versions and scripts call python instead.
  • @6370143984 #9368 02:35 PM, 04 Mar 2024
    yeah there's a little stupid workflow you do in order to set 3.11 as python3 version and python3 as python
  • @6370143984 #9369 02:36 PM, 04 Mar 2024
    but this should all be moot if you just use the native version of python installed on Ubuntu, i.e. 3.10
  • sorry dumb question time (dumber) how do I revert?
  • @6370143984 #9371 02:37 PM, 04 Mar 2024
    No dumb questions
  • @robotlovecoffee #9372 02:38 PM, 04 Mar 2024
    git update?
  • @6370143984 #9373 02:38 PM, 04 Mar 2024
    one sec, two different questions
  • @robotlovecoffee #9374 02:38 PM, 04 Mar 2024
    I was doing this step
  • @robotlovecoffee #9375 02:38 PM, 04 Mar 2024
    Note: Python 3.11 is currently required.

    sudo apt install python3-pip
    git clone https://github.com/CounterpartyXCP/counterparty-lib.git
    brew install leveldb # macOS-only
    CFLAGS="-I/opt/homebrew/include -L/opt/homebrew/lib" # macOS-only
    cargo install maturin
    pip3 install -e .
  • @6370143984 #9376 02:38 PM, 04 Mar 2024
    1. how to update Counterparty to get the version that supports python 3.10?
    2. how to uninstall python 3.11 on Ubuntu.
  • @6370143984 #9377 02:40 PM, 04 Mar 2024
    We'll do (2) first
  • @6370143984 #9378 02:40 PM, 04 Mar 2024
    Let me get you directions for that
  • @robotlovecoffee #9379 02:40 PM, 04 Mar 2024
    ok, have to jump on a call but will ping back
  • @6370143984 #9380 02:40 PM, 04 Mar 2024
    i'll try the steps myself and report back.
  • @robotlovecoffee #9381 02:41 PM, 04 Mar 2024
    ok
  • @6370143984 #9382 02:41 PM, 04 Mar 2024
    afk for a bit.
  • @robotlovecoffee #9383 02:41 PM, 04 Mar 2024
    it is weird I cannot use a thumbs up in this chat
  • @6370143984 #9384 02:41 PM, 04 Mar 2024
    What OS is telegram running on?
  • @robotlovecoffee #9385 02:41 PM, 04 Mar 2024
    OSX
  • @6370143984 #9386 02:42 PM, 04 Mar 2024
    ah hm can't make sense of that, then.
  • @6370143984 #9387 02:42 PM, 04 Mar 2024
    afk
  • @ABlue0ne ↶ Reply to #9375 #9388 02:55 PM, 04 Mar 2024
    Your system has both versions installed and is having trouble deciding which version to use when. Lookup aliases for python.
  • @robotlovecoffee #9389 03:06 PM, 04 Mar 2024
    so I basically need to get python to point to the 3.11 version, if CP will support 3.10 I might just revert. I would like to have a version that is easy to rebuild so I can make a video and doc on the steps to get a node up and running
  • @ABlue0ne #9390 03:06 PM, 04 Mar 2024
    Send me a link to the instructions you are using when you get a minute.
  • @robotlovecoffee #9391 03:06 PM, 04 Mar 2024
    This is what I was following:
  • @robotlovecoffee #9393 03:06 PM, 04 Mar 2024
    I think did this to get 3.11
  • @6370143984 #9395 03:31 PM, 04 Mar 2024
    sorry @robotlovecoffee hectic day.
  • @6370143984 ↶ Reply to #9394 #9396 03:33 PM, 04 Mar 2024
    The instructions I gave you were to get Python 3.11 working as your default Python version on Ubuntu. That was necessary because when you were installing Counterparty only supported Python 3.11. Counterparty now supports Python 3.10, i.e. the official Python version on Ubuntu, so these instructions are no longer needed
  • @6370143984 #9397 03:33 PM, 04 Mar 2024
    What you want to do, then, is uninstall Python 3.11.
  • @6370143984 #9398 03:43 PM, 04 Mar 2024
    unfortunately atm i cannot go through this workflow as I currently do not have access to my Ubuntu machine, so I cannot provide directions. but it should be straightforward.
  • @6370143984 #9399 03:45 PM, 04 Mar 2024
    in fact, since your pip3 --version and python3 --version both showed 3.10.x you actually should be good to go if you do the following:
    cd counterparty-lib
    git checkout develop
    git pull
    cd counterparty-lib
    pip3 install -e .
    cd ../counterparty-cli
    pip3 install -e .
  • no worries, nothing to be sorry about, will look to try this
  • @robotlovecoffee #9401 07:10 PM, 04 Mar 2024
    I still get errors trying to cargo install Maturin
  • @6370143984 #9402 07:10 PM, 04 Mar 2024
    did you try pip install maturin
  • @robotlovecoffee #9403 07:11 PM, 04 Mar 2024
    no
  • @robotlovecoffee #9404 07:11 PM, 04 Mar 2024
    cargo install maturin
  • @robotlovecoffee #9405 07:11 PM, 04 Mar 2024
    from the github
  • @robotlovecoffee #9406 07:11 PM, 04 Mar 2024
    efaulting to user installation because normal site-packages is not writeable
    Collecting maturin
    Downloading maturin-1.4.0-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl (10.6 MB)
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.6/10.6 MB 71.5 MB/s eta 0:00:00
    Collecting tomli>=1.1.0
    Downloading tomli-2.0.1-py3-none-any.whl (12 kB)
    Installing collected packages: tomli, maturin
    Successfully installed maturin-1.4.0 tomli-2.0.1
  • @robotlovecoffee #9407 07:11 PM, 04 Mar 2024
    that seemed to work
  • @6370143984 #9408 07:12 PM, 04 Mar 2024
    yep, there are documentation bugs
  • @robotlovecoffee #9409 07:12 PM, 04 Mar 2024
    ok
  • @6370143984 #9410 07:12 PM, 04 Mar 2024
    this is why we love testers 🙂
  • @robotlovecoffee #9411 07:16 PM, 04 Mar 2024
    ok just doing the pip3 install again and I think I missed the "." and once done will do the bootstrap / start
  • @6370143984 #9412 07:16 PM, 04 Mar 2024
    ah hm, i think it'd be helpful if you did kickstart rather than bootstrap but my opinion isn't super strong
  • @robotlovecoffee #9413 07:21 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115://home/ubuntu$ counterparty-server bootstrap
    counterparty-server: command not found
    ubuntu@ip-172-31-52-115://home/ubuntu$
  • @robotlovecoffee #9414 07:21 PM, 04 Mar 2024
    happy to try kickstart
  • @robotlovecoffee #9415 07:21 PM, 04 Mar 2024
    just cannot find when it is installed
  • @robotlovecoffee #9416 07:21 PM, 04 Mar 2024
    looked in -lib/-lib and -cli
  • @6370143984 ↶ Reply to #9413 #9417 07:21 PM, 04 Mar 2024
    errr
  • @robotlovecoffee #9418 07:22 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115://home/ubuntu$ ls
    addrindexrs bitcoin-26.0 counterparty-cli counterparty-lib screenlog.0
    ubuntu@ip-172-31-52-115://home/ubuntu$
  • @6370143984 #9419 07:22 PM, 04 Mar 2024
    it's installed in a different place from globally installed pkgs
  • @robotlovecoffee #9420 07:23 PM, 04 Mar 2024
    back in 5
  • @6370143984 #9421 07:24 PM, 04 Mar 2024
    I think in ~/.local/ but not super sure as my linux device is not handy. can someone else running counterparty pls provide the path
  • @robotlovecoffee #9422 07:32 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115:/$ cd ~/.local/
    ubuntu@ip-172-31-52-115:~/.local$ ls
    bin lib share
    ubuntu@ip-172-31-52-115:~/.local$ cd bin
    ubuntu@ip-172-31-52-115:~/.local/bin$ ls
    b58 block coinc counterparty-client counterparty-server coverage coverage-3.10 coverage3 flask keychain ku maturin msg normalizer py.test pytest tx
    ubuntu@ip-172-31-52-115:~/.local/bin$
  • @robotlovecoffee #9423 07:32 PM, 04 Mar 2024
    yup
  • @robotlovecoffee #9424 07:33 PM, 04 Mar 2024
    counterparty-server kickstart?
  • @robotlovecoffee #9425 07:35 PM, 04 Mar 2024
    ubuntu@ip-172-31-52-115:~/.local/bin$ counterparty-server kickstart
    Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 573, in _build_master
    ws.require(__requires__)
    Requirement.parse('setuptools-markdown==0.2'), {'counterparty-cli'})

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File "/home/ubuntu/.local/bin/counterparty-server", line 33, in <module>
    sys.exit(load_entry_point('counterparty-cli', 'console_scripts', 'counterparty-server')())
  • @robotlovecoffee #9426 07:35 PM, 04 Mar 2024
    shortened the error
  • @6370143984 #9427 07:36 PM, 04 Mar 2024
    you did the last two steps here cd counterparty-lib
    git checkout develop
    git pull
    cd counterparty-lib
    pip3 install -e .
    cd ../counterparty-cli
    pip3 install -e .
    ?
  • @robotlovecoffee #9428 07:36 PM, 04 Mar 2024
    yes
  • @6370143984 #9429 07:36 PM, 04 Mar 2024
    i am not suggesting you didn't but tbc you ran pip install from counterparty-lib/counterparty-cli?
  • @6370143984 #9430 07:38 PM, 04 Mar 2024
    (the naming is confusing, I know. just renamed counterparty-lib to counterparty-core a few mins ago
  • @robotlovecoffee #9431 07:39 PM, 04 Mar 2024
    Warnings:
    - Ensure addrindexrs is running and up to date.
    - Ensure that bitcoind is stopped.
    - The initialization may take a while.
    Proceed with the initialization? (y/N)🙃️️
  • @robotlovecoffee #9432 07:40 PM, 04 Mar 2024
    should I stop my btc node?
  • @6370143984 #9433 07:40 PM, 04 Mar 2024
    yep
  • @6370143984 #9434 07:40 PM, 04 Mar 2024
    to run with kickstart you must first stop bitcoind
  • @robotlovecoffee #9435 07:44 PM, 04 Mar 2024
    ok running kickstart, thanks for the help
  • @robotlovecoffee #9436 07:44 PM, 04 Mar 2024
    hitting the gym
  • @6370143984 #9437 07:44 PM, 04 Mar 2024
    np thanks for your patience!
  • @robotlovecoffee #9438 07:44 PM, 04 Mar 2024
    will check post workout
  • @robotlovecoffee #9439 07:45 PM, 04 Mar 2024
    I have been dumping stuff in this chat as I will use to doc what I have done, sorry to all others in here
  • @6370143984 #9440 07:45 PM, 04 Mar 2024
    it should only get simpler from here on out...
  • @6370143984 #9443 08:01 PM, 04 Mar 2024
    Jeremy, I literally have no idea why you see conspiracies everywhere
  • @6370143984 #9445 08:02 PM, 04 Mar 2024
    There has been an open issues for over a month to rename counterparty-lib to counterparty-core
  • @6370143984 #9447 08:02 PM, 04 Mar 2024
    GitHub - CounterpartyXCP/counterparty-core: Counterparty Protocol Reference Implementation

    Counterparty Protocol Reference Implementation. Contribute to CounterpartyXCP/counterparty-core development by creating an account on GitHub.

  • @hodlencoinfield #9451 08:05 PM, 04 Mar 2024
    Release v9.61.2 · CounterpartyXCP/counterparty-core

    9.61.2 Release Notes This is a hotfix release: Fix integer overflow in dispensers. Invalidate broadcast with malformed text. Fix Logging for Destructions with Invalid Asset. Upgrade Commands fedn...

  • @6370143984 #9453 08:07 PM, 04 Mar 2024
    you're moving the goalposts. You asked how someone can spin up a node, Joe provided a link to the release artefacts and now you are asking that fednode be updated to support it, right?
  • @teysol #9456 08:19 PM, 04 Mar 2024
    @ChiefSamyaza hey sorry for the confusion! we just merged counterparty-cli into counterparty-lib and _renamed_ the latter to counterparty-core. that's it! I'm not sure why you're so worried about being forced to upgrade to v10.0.0... it's not a protocol change.

    there will eventually be mandatory upgrades ofc. when there are protocol changes (which you may or may not like), but this isn't that.

    (I'm not updating fednode—if someone else wants to maintain that repo, more power to them. I created a separate Docker Compose deployment for Counterparty Core that's smaller and simpler, since fednode—while it's been the go-to soln for a long time—does a lot of things that most people don't need)
  • @uanbtc #9458 08:25 PM, 04 Mar 2024
    I do like that there is momentum to remove all the unnecessary components. And I’m all for simplification.

    But I understand what Jeremy is saying. We HAVE been relying on the fednode as the ONLY way to install counterparty.

    With the current change in the repo, the “official” fednode is now broken.
  • @hodlencoinfield #9459 08:26 PM, 04 Mar 2024
    should probly throw a note in the readme for counterparty-lib with a link to counterparty-core as well
  • @uanbtc #9460 08:27 PM, 04 Mar 2024
    There in no counterparty-lib… right? Maybe it does work by redirect? Not sure about those details so maybe is not really broken???
  • @hodlencoinfield #9461 08:28 PM, 04 Mar 2024
    there is, its just a placeholder tho
  • @uanbtc ↶ Reply to #9460 #9462 08:28 PM, 04 Mar 2024
    Yeah is going to be broken
  • @uanbtc #9463 08:31 PM, 04 Mar 2024
    I trust the development (I should still verify), but breaking the way we are used to installing without much notice is not good.

    But so few people install nodes…

    At least the github.com/CNTRPRTY/federatednode is still there. Now more relevant! 🤓
    GitHub - CNTRPRTY/federatednode: Federated Node Build System - Core Version - Don't trust, verify

    Federated Node Build System - Core Version - Don't trust, verify - CNTRPRTY/federatednode

  • @Jpcryptos #9464 09:39 PM, 04 Mar 2024
    Bros...
  • @ABlue0ne #9465 09:55 PM, 04 Mar 2024
    Right
  • 05 March 2024 (88 messages)
  • @ABlue0ne ↶ Reply to #9362 #9466 12:20 AM, 05 Mar 2024
    I’m on debian for these reasons. PITA but more direct.
  • @joebarba #9467 03:46 AM, 05 Mar 2024
    Joined.
  • @ABlue0ne #9468 10:25 AM, 05 Mar 2024
    Hi @joebarba what brings you to this chat?
  • @teysol #9469 01:02 PM, 05 Mar 2024
    good news! finally getting CI jobs testing the builds for popular environments, plus automated code linting and scanning ✨all in prep for v10.0.0-alpha

    https://github.com/CounterpartyXCP/counterparty-core/pull/1470
    [WIP] GitHub Workflow by ouziel-slama · Pull Request #1470 · CounterpartyXCP/counterparty-core

    build and run counterparty-lib tests on Macos (x86_64 and M1) and Ubuntu Bandit CodeQL Pylint License Scanner

  • @krostue ↶ Reply to #9458 #9470 01:45 PM, 05 Mar 2024
    Correct me if I'm wrong. I interpret the statement as a request for pre-support of a future contentious fork
  • @vectorconfetti #9471 03:48 PM, 05 Mar 2024
    that plus all the requests to release the fixes for the critical issues by itself in a separate release so that the fork maintainers don’t have to figure out what code does what
  • @vectorconfetti #9476 04:31 PM, 05 Mar 2024
    Joined.
  • I am not Evan, in case that’s what you’re referring to.
  • @uanbtc ↶ Reply to #9470 #9478 04:52 PM, 05 Mar 2024
    I interpreted as I responded.

    As one of the few running production nodes, I know first hand that the fednode WAS the only way to install CP.

    That is changing, being able to do it directly or with a much simpler docker setup. These are good changes.

    BUT we should be a decentralized protocol. So changes like these should have more notice.

    As of now, there is no clear way to install the CURRENT active version of the protocol from the “official” repo.
  • @6370143984 #9479 04:53 PM, 05 Mar 2024
    I don't understand, if the goal is to decentralize counterparty, isn't what you're describing a good thing?
  • @6370143984 #9480 04:54 PM, 05 Mar 2024
    also, what afaict is being seen as some coordinated decision to drop support for fednode is really just adam saying he's not going to maintain it himself. Counterparty is FOSS with a few other maintainers, too. If someone wants fednode to be a supported deployment method indefinitely, can't they make a PR? I really think I must be missing something.
  • @uanbtc #9481 04:57 PM, 05 Mar 2024
    Is about the detail of the repo rename. The fednode relies on the repository names.

    And yes, all this should be solved with some changes to the fednode which shouldn’t be too hard
  • @6370143984 #9482 04:58 PM, 05 Mar 2024
    sure, that makes sense. it seems reasonable for one maintainer to say he doesn't want to be responsible for maintaining fednode...
  • @uanbtc #9483 05:00 PM, 05 Mar 2024
    Yep if the main protocol is improved enough to not need the fednode I can agree to deprecate it.
  • @6370143984 #9484 05:00 PM, 05 Mar 2024
    I think that make sense, too. It seems to me a good thing if the scope of 'official' software is reduced.
  • @uanbtc #9485 05:03 PM, 05 Mar 2024
    Oh yeah! I would reduce it even more lol

    I’m in the mindset that the api endpoints should be application specific. The scope of the protocol to be reduced to consensus and block parsing mostly, with just a basic example api.

    But that is just my personal opinion based on the products I use the protocol for
  • @herpenstein #9486 05:07 PM, 05 Mar 2024
    Am i understanding that the change that broke fednode is solely the repo name change?
  • @6370143984 #9488 05:11 PM, 05 Mar 2024
    to my knowledge that is it, yes.
  • @herpenstein #9489 05:12 PM, 05 Mar 2024
    Then why change the repo name prior to the 10.0 release?
  • @6370143984 #9490 05:13 PM, 05 Mar 2024
    ...
  • @vectorconfetti #9491 05:13 PM, 05 Mar 2024
    it’s what the directory name change signifies, that’s why it’s important to take a stand
  • @6370143984 ↶ Reply to #9489 #9492 05:14 PM, 05 Mar 2024
    I don't understand the question. merging counterparty-lib and counterparty-cli to make counterparty-core was done as _part_ of v10.0
  • @6370143984 #9493 05:14 PM, 05 Mar 2024
    The alpha for v10.0 is coming out in a few days.
  • @6370143984 #9494 05:15 PM, 05 Mar 2024
    There is room for disagreement I suppose but IMO merging repos is way too big of a change to make after the alpha is released. Everyone has their own philosophy of release management but I think this is a pretty reasonable line to draw.
  • What does it signify?
  • @herpenstein #9496 05:20 PM, 05 Mar 2024
    Considering the implications, was there a consideration to leave the old repo and deprecate it?
  • @6370143984 #9497 05:21 PM, 05 Mar 2024
    I was not part of any decision making process here
  • @6370143984 #9498 05:21 PM, 05 Mar 2024
    However, as someone who pays attention to Counterparty's development I knew that this was on the roadmap for at least a month.
  • @teysol ↶ Reply to #9474 #9499 05:22 PM, 05 Mar 2024
    yep, I'm handling that. thanks for the reminder 🙏
  • @6370143984 #9500 05:23 PM, 05 Mar 2024
    I imagine there wasn't a plan to make sure that ancillary tooling would be maintained indefinitely in order to support a hotfix release which will be superseded in a week.
  • @6370143984 #9501 05:24 PM, 05 Mar 2024
    Just one non-maintainer's supposition, however.
  • @teysol #9502 05:24 PM, 05 Mar 2024
    first of all, fednode was obviously never the "only way to run counterparty"... it's just a python wrapper around docker compose
  • @teysol #9503 05:25 PM, 05 Mar 2024
    but yes, if you want to maintain it for some reason, please go ahead
  • this is a good question for the people who are extremely opposed to this directory name change
  • @6370143984 #9505 05:25 PM, 05 Mar 2024
    there isn't a real argument here. @teysol you've said you don't want to maintain fednode. if someone else wants to that's great! the end...
  • @teysol ↶ Reply to #9495 #9506 05:26 PM, 05 Mar 2024
    it doesn't "signify" anything. it's not some deep symbol of hidden machinations. when I originally created the repos, I split them up because I wanted to enforce unnecessary modularity at the repo level. that was a mistake 🤷‍♀️ merging them makes it much easier to maintain the codebase and to make deployment easier
  • @hodlencoinfield #9507 05:27 PM, 05 Mar 2024
    Yeah I didn’t think so either that’s why I asked
  • sorry, this was a joke
  • @hodlencoinfield #9509 05:28 PM, 05 Mar 2024
    Name change is nice, i think -core is better than -lib, just might make sense to add a link to -core from -lib so old links will lead you to the right place
  • @teysol #9510 05:29 PM, 05 Mar 2024
    yeah so *normally* the old name would just link to the new one
  • @vectorconfetti #9511 05:29 PM, 05 Mar 2024
    i have been able to get counterparty running off of develop, and any issues i have run into the maintainers have been responsive. they are not supporting fednode but they are replacing it. if someones preference to is run fednode i think its reasonable for that person to maintain it
  • @teysol #9512 05:30 PM, 05 Mar 2024
    but we had to break that because we're hosting the protocol changes record using the default domain with github pages (that's also fixed in v10.0.0)
  • @teysol #9513 05:30 PM, 05 Mar 2024
    I'll add to the -lib README to make that clearer
  • @ABlue0ne ↶ Reply to #9483 #9514 05:33 PM, 05 Mar 2024
    Including no counterblock and no counterwallet?
  • @6370143984 #9515 05:34 PM, 05 Mar 2024
    imo it's weird to have an 'official' node setup with counterblock and counterwallet.
  • @6370143984 #9516 05:35 PM, 05 Mar 2024
    something like simplenode is imo what you want: it's absolutely tiny (and therefore trivial to maintain) and does one thing: gets a counterparty node up.
  • @teysol #9517 05:36 PM, 05 Mar 2024
    yeah it's bizarre to package them together
  • @6370143984 #9518 05:40 PM, 05 Mar 2024
    also counterwallet and counterblock are broken aren't they lol
  • @ABlue0ne #9519 05:40 PM, 05 Mar 2024
    Package them together, sure I understand that, bitcoin core comes with a wallet. Counterparty does not. I dont have an opinion on counterblock at all but it would be a shame to not have an official counterparty wallet.
  • @6370143984 #9520 05:41 PM, 05 Mar 2024
    counterparty _does_ come with a wallet
  • @6370143984 #9521 05:41 PM, 05 Mar 2024
    it's a CLI.
  • @6370143984 #9522 05:41 PM, 05 Mar 2024
    there's an argument that that's not sufficient, but it's there.
  • @ABlue0ne #9523 05:42 PM, 05 Mar 2024
    CLI will work great with images and stamps and mass adoption. /s
  • @6370143984 #9524 05:42 PM, 05 Mar 2024
    @ABlue0ne you are free to develop a wallet or pay for someone to develop one
  • @uanbtc ↶ Reply to #9502 #9525 05:46 PM, 05 Mar 2024
    For a time it was, 0 developers were running it directly. Mainly because of how outdated it was…

    So just clarifying the realities we were in
  • @uanbtc ↶ Reply to #9512 #9526 05:48 PM, 05 Mar 2024
    This is nice!
  • @ABlue0ne ↶ Reply to #9524 #9527 05:48 PM, 05 Mar 2024
    Respectfully, the counterparty.io website only mentions counterwallet as a wallet for counterparty.
  • @6370143984 #9528 05:49 PM, 05 Mar 2024
    I haven't touched the website copy but yes, it is a bad thing that counterwallet and counterblock are mentioned when they don't work.
  • @uanbtc ↶ Reply to #9514 #9529 05:49 PM, 05 Mar 2024
    They are not part of the protocol. I would leave the “official” repo as slim as possible
  • @ABlue0ne #9530 05:50 PM, 05 Mar 2024
    No official wallet will leave this community ripe for fraud.
  • @6370143984 #9531 05:50 PM, 05 Mar 2024
    i don't know what to say to that.
  • @ABlue0ne #9532 05:50 PM, 05 Mar 2024
    You don’t have to say anything?
  • @6370143984 #9533 05:51 PM, 05 Mar 2024
    I do when the implication is clearly that _X is bad and should be avoided_
  • @6370143984 #9534 05:52 PM, 05 Mar 2024
    1. there is an official wallet. you may not think it's enough, but it's there.
    2. counterwallet is a web wallet. having a web wallet packaged with the node software is _super strange_
    3. no one is volunteering to build a native GUI app.
  • @vectorconfetti #9535 05:54 PM, 05 Mar 2024
    If there’s a CLI for a wallet, then a UI skin leveraging the CLI will be easy to add, and can automatically stay up to date with the core so long as the API is preserved. This is nice IMO - the skill sets for a correct and performant wallet and an easy-to-use and pretty wallet are not the same.
  • @ABlue0ne #9536 05:54 PM, 05 Mar 2024
    #2. I understand not wanting to packaging them (bitcoin core comes with a gui wallet though so?)

    An official wallet could be offered NOT bundled. It would also not be bundled if fednode is abandoned.
  • @ABlue0ne #9537 05:55 PM, 05 Mar 2024
    #3 TBD after the goal posts stop moving.
  • @6370143984 #9538 05:55 PM, 05 Mar 2024
    what goalposts are moving?
  • @6370143984 #9539 05:56 PM, 05 Mar 2024
    are you saying you know someone who is waiting on the sidelines to build and maintain a native GUI for free pending some external event?
  • @ABlue0ne #9540 05:56 PM, 05 Mar 2024
    The entire codebase?
  • @vectorconfetti #9541 05:57 PM, 05 Mar 2024
    !! active development on a code base is not a goalpost! the goalposts are the random “requirements” that are being introduced by the community
  • @vectorconfetti #9542 05:59 PM, 05 Mar 2024
    i think we all want the same thing. a correct and performant core, a robust distributed network with many participants, and a lively user base. It seems like the current round of changes is primarily trying to get the correctness and performance correct.
  • @6370143984 #9543 06:00 PM, 05 Mar 2024
    we could of course yolo it and say correctness and performance are for nerds moar jpegs please but i think that would be ill-advised.
  • @ABlue0ne ↶ Reply to #9543 #9544 06:01 PM, 05 Mar 2024
    But thats the way we always did it.
  • @vectorconfetti #9545 06:01 PM, 05 Mar 2024
    We shed a tear for the Old Ways
  • @uanbtc ↶ Reply to #9544 #9546 06:01 PM, 05 Mar 2024
    Good point 🤣
  • @uanbtc #9547 06:03 PM, 05 Mar 2024
    I think we are ALL very happy with the path the protocol is in. Thank you
  • @6370143984 #9548 06:04 PM, 05 Mar 2024
    as the motivational poster above my desk says: teamwork makes the dream work.
  • @ABlue0ne ↶ Reply to #9539 #9549 06:04 PM, 05 Mar 2024
    I have tried engaging about the technical reasons behind counterblock and counterwallets problems here a few times, to have the same conversation without making progress. I’ll wait or engage on github later if there seems to be any light at the end of the counterwallet tunnel. If you know the technical reasons other than (counterblock broke) please enlighten me. Thanks.
  • @teysol #9550 06:05 PM, 05 Mar 2024
    @ABlue0ne the root problem is in Counterparty Core and it's being fixed (!)
  • @joebarba ↶ Reply to #9468 #9551 06:24 PM, 05 Mar 2024
    Hola
  • @teysol #9553 08:06 PM, 05 Mar 2024
    ah thanks! it all ended up being moot because the messages table is going to change dramatically with the new DB schema (the one that eliminates all UPDATES in the codebase)
  • @teysol #9554 08:06 PM, 05 Mar 2024
    Counterblock + Counterwallet are probably going to need to be updated for the API change, but in a different way
  • @teysol #9555 08:06 PM, 05 Mar 2024
    ... actually I should have said that explictly :)
  • @uanbtc ↶ Reply to #9553 #9556 09:50 PM, 05 Mar 2024
    How are data entities that do update (like orders and dispensers) going to be represented in the messages table?

    I thought that even though table rows would not be updated, the data model (as in its non-time-series representation) itself would still be updatable…
  • @ABlue0ne #9557 11:07 PM, 05 Mar 2024
    Using github today, I see why the lib/core rename is hitting hard. Dead URL’s everywhere.
  • @ABlue0ne #9558 11:08 PM, 05 Mar 2024
    Manually change the url from -lib/ to -core/ and you can still load a broken github URL FYI.
  • You can file a PR for this.
  • 06 March 2024 (82 messages)
  • @teysol #9560 08:30 AM, 06 Mar 2024
    ach yeah it's annoying :/
  • @teysol #9561 08:31 AM, 06 Mar 2024
    bug in GitHub + bad design for hosting the protocol changes file (by me, 10 years ago)
  • @teysol ↶ Reply to #9556 #9562 08:56 AM, 06 Mar 2024
    We haven't finalized the format yet. I don't know what you mean by "time-series representation"; there's no "time-series" data in the database and there never was.
  • @robotlovecoffee #9563 11:00 AM, 06 Mar 2024
    Kickstart and Bootstrap causing errors while trying to run 1st time
  • @robotlovecoffee #9564 11:00 AM, 06 Mar 2024
    ubuntu@ip-172-31-52-115:~$ counterparty-server kickstart
    [2024-03-06 10:58:06][INFO] Running v1.1.5 of counterparty-server.
    [2024-03-06 10:58:06][INFO] Running v9.61.1 of counterparty-lib.
    Warnings:
    - Ensure addrindexrs is running and up to date.
    - Ensure that bitcoind is stopped.
    - The initialization may take a while.
    Proceed with the initialization? (y/N): y
    [OK] Connecting to addrindexrs...
    [OK] Getting last known block hash...
    [OK] Checking database state...
    [OK] Backing up database...
    [OK] Initialising database...
    [OK] Starting blocks parser from block 284185...
    [OK] Cleaning up...
    Last parsed block: 289999
    Kickstart done in: 97.351s
    [2024-03-06 10:59:50][ERROR] Unhandled Exception
    Traceback (most recent call last):
    File "/home/ubuntu/.local/bin/counterparty-server", line 8, in <module>
    sys.exit(server_main())
    File "/home/ubuntu/counterparty-lib/counterparty-cli/counterpartycli/__init__.py", line 18, in server_main
    server.main()
    File "/home/ubuntu/counterparty-lib/counterparty-cli/counterpartycli/server.py", line 172, in main
    server.kickstart(
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/server.py", line 507, in kickstart
    kickstarter.run(
  • @robotlovecoffee #9565 11:01 AM, 06 Mar 2024
    and the end this...
  • @robotlovecoffee #9566 11:01 AM, 06 Mar 2024
    counterpartylib.lib.check.ConsensusError: Incorrect txlist_hash hash for block 290000. Calculated d86938404e91f0c70c52b66beedc996a1601cabd10c18f3f052ad6110216af3a but expected c15423c849fd360d38cbd6c6c3ea37a07fece723da92353f3056facc2676d9e7
    ubuntu@ip-172-31-52-115:~$ /usr/lib/python3.10/multiprocessing/resource_tracker.py:224: UserWarning: resource_tracker: There appear to be 80 leaked shared_memory objects to clean up at shutdown
    warnings.warn('resource_tracker: There appear to be %d '
    counterparty-server kickstacd ..
  • @6370143984 #9567 01:50 PM, 06 Mar 2024
    ok great, ty for the bug report! will get back to you
  • @6370143984 #9568 02:36 PM, 06 Mar 2024
    @robotlovecoffee can you upload your db somewhere?
  • @6370143984 #9569 02:36 PM, 06 Mar 2024
    haven't seen this before and you hit this super early.
  • @uanbtc ↶ Reply to #9562 #9570 03:22 PM, 06 Mar 2024
    (Hoped you knew what I meant, as blocks represent time. Anyway here rephrasing that part.)

    “How are data entities that do update (like orders and dispensers) going to be represented in the messages table?

    I thought that even though table rows would not be updated, the data model (as in its “static” initial representation) itself would still be updatable…”

    Orders and dispensers are defined by an initial transaction. Whatever related event happens in the following blocks (order matches, dispenses) update the state of these initial transactions. And messages show an update for these.

    Having a new append only DB approach (no row updates), how are entity “state updates” handled?

    In the messages table new orders are shown as inserts, while new states for the previously inserted show as updates.

    And it all makes sense and didn’t think this would change…

    (Hope what I meant is clearer now.)
  • @teysol ↶ Reply to #9570 #9571 05:37 PM, 06 Mar 2024
    yeah not all state that changes through time is time-series data...

    the current state of the order or whatever is just inserted into the DB. nothing complicated. there's literally a function called update_order() e.g. https://github.com/CounterpartyXCP/counterparty-core/blob/develop/counterparty-lib/counterpartylib/lib/ledger.py#L1302
    counterparty-core/counterparty-lib/counterpartylib/lib/ledger.py at develop · CounterpartyXCP/counterparty-core

    Counterparty Protocol Reference Implementation. Contribute to CounterpartyXCP/counterparty-core development by creating an account on GitHub.

  • @uanbtc #9572 06:06 PM, 06 Mar 2024
    So the messages table will only show inserts?

    The messages table was cohesive in its inserts + updates design. As an application you could rely only on messages to know state.

    It feels like the elegant simplicity of the protocol is being broken, as now applications that previously trusted the messages, will now have to make calculations to detect updates?

    What is the purpose of the messages table now?
  • @uanbtc ↶ Reply to #9572 #9573 06:15 PM, 06 Mar 2024
    I think there should be a separation between the database schema (which is now append only), and the “normalized” representation of the data entities. And the messages table should be this representation. Just like it was before changing to the append-only DB
  • if you can tell me where the db is I should be able to post it to a s3 bucket
  • @teysol ↶ Reply to #9574 #9575 07:21 PM, 06 Mar 2024
    it should be in ~/.local/share/counterparty
  • @teysol ↶ Reply to #9572 #9576 07:22 PM, 06 Mar 2024
    it's the other way around. the messages table was partially compensating for the fact that the DB schema was suboptimal. now you can just use the orders table eg directly
  • @teysol #9577 07:23 PM, 06 Mar 2024
    but that raises an important point. Ouziel wants to kill the table entirely. I'm not sure yet what I think. may be that the best thing to do is replace it with ZeroMQ or similar

    *Who uses the messages table, and what exactly do you use it for?*
  • @droplister #9578 07:29 PM, 06 Mar 2024
    I’ve used it twice to build explorer sites.

    You can just ingest the feed and build out your tables with it. Or you can index just the messages and use the category column for filtering on it.

    If the APIs get a lot better that’s less important. It’s a nice log of events imo.

    Without a log like this are a lot of implicit updates happening, how could you audit those updates?

    I don’t care either way, I’ll just do the new thing.
  • @teysol #9579 07:33 PM, 06 Mar 2024
    thanks that's super helpful
  • @teysol #9580 07:33 PM, 06 Mar 2024
    So the APIs are going to get a lot better, but not this release
  • @uanbtc ↶ Reply to #9577 #9581 07:35 PM, 06 Mar 2024
    For both xcpdev and bitSTART I use the messages table
  • @teysol #9582 07:35 PM, 06 Mar 2024
    there are three alternatives I can think of, possibly in combination:
    1. REST / JSON-RPC API (best for stateful info)
    2. just read any of the tables, which are now log-structured (like messages has always been)
    3) ZeroMQ (good for real-time status updates)
  • @uanbtc ↶ Reply to #9581 #9583 07:37 PM, 06 Mar 2024
    You can go block by block detecting any data of interest.

    Without it, you would have to know all tables and query each one separately per block.
  • @teysol #9584 07:37 PM, 06 Mar 2024
    what's the difference between querying one table for N messages and querying N tables?
  • @uanbtc #9585 07:38 PM, 06 Mar 2024
    Big difference. Only one query vs n tables, per block
  • @droplister #9586 07:41 PM, 06 Mar 2024
    What's nice about the messages table is that if you've coded something to index Counterparty, you have a little less work to do with supporting new features because so far to date its just a new message category.

    At least that's why I just used that approach with XCP.io (which is barely developed) so that it would be more flexible to changes being made.
  • @teysol #9587 07:42 PM, 06 Mar 2024
    yeah but it seems to me *very* similar to just check for the new message on a new table...
  • @droplister #9588 07:43 PM, 06 Mar 2024
    You can make it work however you want, people will adapt. But the message table has like that bindings json column which acts like a meta field which makes it flexi whereas the tables are all column-y.
  • @uanbtc #9589 07:43 PM, 06 Mar 2024
    I wouldn’t mess with the messages table and how it worked. I would be very disappointed if this changes.

    The messages table may be the main table I’ve been using for my products. Changing its nature will require substantial rebuild.

    And I just personally like that table. It made perfect sense as it existed, is simple to understand making the protocol approachable.
  • @droplister #9590 07:43 PM, 06 Mar 2024
    Do the professional developer things you want to do
  • @hodlencoinfield #9591 07:46 PM, 06 Mar 2024
    i def understand removing it since its a duplication of data
  • @teysol #9592 07:46 PM, 06 Mar 2024
    lol I like it too. I built it. But it's also very idiosyncratic, and pretty leaky...
  • @hodlencoinfield #9593 07:47 PM, 06 Mar 2024
    no reason you couldnt just have teh get_messages call in the api converted to something that assembles the same data from the other tables
  • @teysol #9594 07:47 PM, 06 Mar 2024
    v10.0.0 would also be a good time to change the API because v11.0.0 is likely to be required due to protocol changes (also expecting a major version bump to kill addrindexrs)
  • @uanbtc ↶ Reply to #9593 #9595 07:48 PM, 06 Mar 2024
    I wouldn’t want to be that server
  • @teysol ↶ Reply to #9593 #9596 07:48 PM, 06 Mar 2024
    yes but I think that'd be really ugly
  • @uanbtc ↶ Reply to #9596 #9597 07:49 PM, 06 Mar 2024
    Then that’s the only alternative if removed, or not?
  • @droplister #9598 07:50 PM, 06 Mar 2024
    I like when counterparty registers a 0 on a dividend because someone had balance of the token before but doesn’t now. For financial data the explicitness is nice I think.
  • @teysol ↶ Reply to #9582 #9599 07:51 PM, 06 Mar 2024
    👆
  • @uanbtc #9600 07:53 PM, 06 Mar 2024
    Keeping it is not an alternative?
  • @teysol #9601 07:53 PM, 06 Mar 2024
    It's one possibility
  • @hodlencoinfield #9602 07:54 PM, 06 Mar 2024
    you could make it optional
  • @teysol #9603 07:55 PM, 06 Mar 2024
    then you still have to maintain the interface
  • @uanbtc #9604 07:55 PM, 06 Mar 2024
    I would want it to continue working as it does today. A single table where all relevant state changes are recorded per block. With difference between new data entities, and the updates to such entities
  • @teysol #9605 07:57 PM, 06 Mar 2024
    what's wrong with zeromq as a replacement?
  • @hodlencoinfield #9606 07:57 PM, 06 Mar 2024
    historical data?
  • @teysol #9607 07:57 PM, 06 Mar 2024
    why would someone want that historical data?
  • @hodlencoinfield #9608 07:58 PM, 06 Mar 2024
    what happened in X block
  • @teysol #9609 07:58 PM, 06 Mar 2024
    and I am really not convinced that one table >> multiple tables
  • @hodlencoinfield #9611 07:59 PM, 06 Mar 2024
    thats standard block explorer functionality
  • @teysol #9612 07:59 PM, 06 Mar 2024
    yeah that data is all in the various tables for each kind of tx
  • @droplister #9613 07:59 PM, 06 Mar 2024
    ZeroMQ, unless Counterparty is using it, you have to re-implement Counterparty to use it as a means of listening. I could see web wallets choosing to do that.

    Reading tables, the clunky fednode docker setup has been an impediment to me to do that right now. I know xcp.dev has figured that out though and it makes sense as an approach. I don't use docker in any of my day-to-day, using stuff like Vercel, so skill issue.

    APIs, it sounds like the best route where the main issue is a small gap in releases. I think what could make APIs a lot better is normalizing quantities and names or always returning the longname or whether an asset is divisible along with quantity data.
  • @uanbtc #9614 08:00 PM, 06 Mar 2024
    ZeroMQ is not replacing the messages table. It shouldn’t be in the list
  • @uanbtc #9615 08:01 PM, 06 Mar 2024
    There is a messages hash.
  • @droplister #9616 08:01 PM, 06 Mar 2024
    One of the foot guns that Bitcoin Runes has that I don't think they've thought enough about is that they're going to let people define to how many places their assets are divisible and it's a range of like 0 to 18 or something like that. It's going to be so annoying normalizing.
  • @hodlencoinfield #9617 08:02 PM, 06 Mar 2024
    annoying enough just having divisibility
  • @uanbtc ↶ Reply to #9614 #9618 08:54 PM, 06 Mar 2024
    The specific message written in the transaction could be separated in some way.

    In xcp.dev, I label it as the “main message” to stand out from the rest of the messages generated by a transaction.

    Is there a term for the distinction between these messages?
  • @6370143984 #9619 08:59 PM, 06 Mar 2024
    [WIP] Fix Pylint and Bandit alerts by ouziel-slama · Pull Request #1472 · CounterpartyXCP/counterparty-core

    Counterparty Protocol Reference Implementation. Contribute to CounterpartyXCP/counterparty-core development by creating an account on GitHub.

  • @6370143984 ↶ Reply to #9619 #9620 09:29 PM, 06 Mar 2024
    for anyone trying to install develop just fyi readme need to be updated. in order you should:
    git clone https://github.com/CounterpartyXCP/counterparty-core
    git checkout develop
    cd counterparty-core/counterparty-rs
    pip3 install -e .
    cd ../counterparty-lib
    pip3 install -e .
    cd ../counterparty-cli
    pip3 install -e .
  • @6370143984 #9621 09:31 PM, 06 Mar 2024
    as always please report any problems, but this was way simpler for me than previous installs
  • @6370143984 #9622 09:50 PM, 06 Mar 2024
    Nice counterparty-server UI improvements.
  • @6370143984 ↶ Reply to #9575 #9624 10:07 PM, 06 Mar 2024
    @robotlovecoffee just making sure you saw this. Just started a fresh kickstart and I didn't hit a consensus hash mismatch @ 290k so would be super helpful if we could see your db
  • yes saw it, will be working on getting db tonight or tomorrow.
  • @6370143984 #9626 10:13 PM, 06 Mar 2024
    tysm!
  • @robotlovecoffee #9627 10:58 PM, 06 Mar 2024
    I was just trying to copy to local (osx) and getting
  • @robotlovecoffee #9628 10:58 PM, 06 Mar 2024
    ubuntu@172.31.52.115: Permission denied (publickey).
  • @robotlovecoffee #9629 10:58 PM, 06 Mar 2024
    trying to scp
  • @robotlovecoffee #9630 10:59 PM, 06 Mar 2024
    I used a .pem file to ssh but do not think this is the issue
  • @robotlovecoffee #9631 11:00 PM, 06 Mar 2024
    I was going to do the s3 bucket path but did that more for the ORD index as it was many gigs and wanted to be able to share this db is only 281m
  • @robotlovecoffee #9632 11:07 PM, 06 Mar 2024
    nvmd just using filezilla
  • @robotlovecoffee #9633 11:08 PM, 06 Mar 2024
    do you have a place I can post this for you to review?
  • @6370143984 #9634 11:11 PM, 06 Mar 2024
    hm, can you upload to an s3 bucket?
  • @6370143984 #9635 11:11 PM, 06 Mar 2024
    it's a moderately large file (8gb) not sure the best way to share something of that size. but even google drive should be fine?
  • @robotlovecoffee #9636 11:39 PM, 06 Mar 2024
    here is a s3 bucket link that will die in 5 hrs
  • @6370143984 #9638 11:46 PM, 06 Mar 2024
    ach sorry would it be possibly to get a link that expires in 12hrs? ouziel will probably be the one digging into this and he's signed off until tomorrow AM CET
  • @robotlovecoffee #9639 11:50 PM, 06 Mar 2024
    this is 12 hours, I will be driving back to camp tomorrow but can post again in the am if this does not work
  • @robotlovecoffee #9640 11:51 PM, 06 Mar 2024
    https://mmord.s3.us-east-1.amazonaws.com/counterparty.db?response-content-disposition=inline&X-Amz-Security-Token=IQoJb3JpZ2luX2VjELj%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLWVhc3QtMSJGMEQCIGj%2BIKvKAmiNUPm1Q95VLN4JSw1FcK1T5rC2us4zG1gkAiAHzRmPkdds1E2%2BJw3CHWAi1czh00r5GLLqkHS4A9PxbSrxAgix%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F8BEAAaDDYwNjI5MTQ3NzcyOSIMBLq8zhp2QqgUyiHHKsUCbH%2BxlnOPJqDuP3QR%2F9%2FgWAMtjj7UxsC%2F3vJ6Nwu3wkoMD4dSkZcz%2Bs6%2FkaLTuud5fhEi3MOO6dKnHN4%2Fdql%2BMML9sjEFnyzXNXXeWWgIlTIwFnyValxqKuRSERxGv0fSEtpb0KpUxxmhTzvAL3Bfj9XE7g%2Fm9%2BBBcUef8253Nznquzmjt8sP0vQbT916T9eZV82Bk8wvzgaANRPDPoJh4l%2Fh%2BtPEc2OegBjrm%2BrYU0nmeB4RSkcr0L1hpxqb2zFnllS9wDDqqn7y3DJyKZKFtHJmgaciEan7AJnslT5WyTF0v1pU2Mw1Z20a01AmqD7Q6CdWD3tG%2B8QcsbKuD4MM6nRSfkp60eI3w3miVJeFCCgLr0H6QNyCvxE5BQtFOdLf4nKjYYbTUw9vv6itVLn1E16FvIF2Lr%2ByqQ9agEd3OzuvsMeQYDCj%2FKOvBjq0AruxpuW8ayGPfsvGs2x8kPkiXwB1f3iTwQ%2Fr22%2FDK7o5qMF6bn0dZjLx%2Bs6sRnWuVf7RbstjBXKuLX75fFsRnXYX%2BkB6ve21UlGo9tWsTIjVxkOfGOmvUgxDacl5AnRbDIHnrHVnP5HPKlPoU93dK5MJ7JYemBCHlAj88e0o1AdOTtaNXlSbNnVsigJt%2B%2FFN69%2Fn8WL5BdoHvjYqE0SLnJneS9379ex7N6mlwOraQyVhqZvwtR9FDYYZagQhMxCmn9Z%2BZtFkcCmvxMpYuezs7ldwrGYXgL9TetBThLxTpVSCS82sAElxY5GxSAVD9Z%2Fw7aDkDdqdV3xmXtunwWZQHC4tpy5f4fndpVGNen4ATn8GfP28f3%2FtX49Cy%2Fi3RmMTYjWBzVl5%2F6KkUpx%2BdBhhTsSMMpoJ&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20240306T235025Z&X-Amz-SignedHeaders=host&X-Amz-Expires=43200&X-Amz-Credential=ASIAY2KOJYTQ6U7KIYMB%2F20240306%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=cc71da051c068dadd8ee675261ff15894b8de3a8968b7c84f8f3027187feff7c
  • @6370143984 #9641 11:51 PM, 06 Mar 2024
    ah right its tiny because you only got to block 290k
  • @6370143984 #9642 11:51 PM, 06 Mar 2024
    cheers!
  • @robotlovecoffee #9643 11:51 PM, 06 Mar 2024
    there was a .old file in the same directory but I assumed that is not needed
  • @6370143984 #9644 11:52 PM, 06 Mar 2024
    yeah pretty sure that's unnecessary. really appreciate it.
  • 07 March 2024 (136 messages)
  • @uanbtc ↶ Reply to #9623 #9645 12:24 AM, 07 Mar 2024
    The removal of the messages table means the removal of the messages hash.

    It is more than a protocol change, it is changing the very nature of what is consensus.

    My understanding of the social agreement of the “dev team” and the rest of the developers is that the next release is about optimizing and consensus fixes.

    Let's keep it like this. Already 3 developers with explorers have expressed our reliance on the messages table. It is very much used.

    I still believe we should keep it. But I can also see how it can be removed (like adding issuance's issuer to the ledger).

    I believe, we should not confuse the trust we have given to the founders to renew the protocol with a “free pass” to do *anything*.
  • @6370143984 #9646 01:02 AM, 07 Mar 2024
    I don't have a horse in this race but I don't think this is correct:
    >It is more than a protocol change, it is changing the very nature of what is consensus.
    AFAIK messages table isn't consensus-critical atm. I may be wrong.
  • @6370143984 #9647 01:09 AM, 07 Mar 2024
    counterparty-core/counterpartylib/lib/check.py at 3e720d04b6749ad9df9a1829dd4d7e31e276e014 · CounterpartyXCP/counterparty-core

    Counterparty Protocol Reference Implementation. Contribute to CounterpartyXCP/counterparty-core development by creating an account on GitHub.

  • @vectorconfetti #9648 01:20 AM, 07 Mar 2024
    to be clear, this incompatibility being discussed is a result of violating standard software design principles - instead of using the API, which generally promise backwards compatibility or a simple upgrade path, software was written that relies on implementation details that are not public facing. now, as a. consequence of relying on implementation details which are evolving as the software matures, your software must change.
  • @6370143984 #9649 01:23 AM, 07 Mar 2024
    again this isn't my fight but it seems like folks have been able to rely on the stability of certain implementation details below the API for a really long time, and I can see why it'd be jarring to have that changed all of a sudden.
  • @6370143984 #9650 01:26 AM, 07 Mar 2024
    there are very few infrastructure providers; few enough to where a sentiment check can be done quickly regarding how changes will affect them. it seems like they'll feel this one. i don't know what the calculus for determining whether to make a change is but certainly that should factor into it.
  • @droplister #9651 01:43 AM, 07 Mar 2024
    I think that’s right.

    You can think about the code and protocol in insolation, but I think it helps to consider the “federated network” and the ripples that changes have across that network.

    You can weaken the federation if the wave is bigger than can be handled.

    The more used frontends are basically re-implementing Counterparty to work how they do today.

    So, on paper a big change within the counterparty node could have the same outputs and be “no different” but only if you ignore how existing services in the network interface.

    This message table is an interface, effectively. Clearly not by design.

    Because of how things are today, I would heavily weigh how xchain and freewallet interface and work with counterparty. These services have the most economic weight.

    It sounds like removing this messages table is a preference but not a necessary change for your updates at this point. Treat it like a logger.

    I would think you could get rid of it in tandem with improving the APIs so that people don’t need to re-implement counterparty and have an alternative to the messages table as an interface.
  • @droplister #9652 01:44 AM, 07 Mar 2024
    Unless you’re gonna deliver an explorer (ord bakes one in) and a working wallet in tandem with these changes.
  • Sir get_messages is part of the api
  • @6370143984 ↶ Reply to #9651 #9654 01:53 AM, 07 Mar 2024
    yeah, reality is messy and all that. I think this the meat of it:

    >This message table is an interface, effectively. Clearly not by design.

    I see both sides of this and I think a reasonable middleground is to slowplay it and also improve the API so that it better suits infrastructure providers' needs. But there's been this open issue for 7 weeks: https://github.com/CounterpartyXCP/counterparty-core/issues/1327
    API Redesign · Issue #1327 · CounterpartyXCP/counterparty-core

    So it turns out that I designed the API very badly 10 years ago. It's insanely leaky and is missing critical functionality. Ideas: Deprecate everything that exposes the DB schema. Use X-API-War...

  • That would break a lot if you removed all the get_[table] commands
  • @6370143984 #9656 01:55 AM, 07 Mar 2024
    sorry I may have missed it as I only weighed in because I saw Juan mention that this would affect consensus, did Adam say he wants to remove all the get_[table] calls?
  • @hodlencoinfield #9657 01:55 AM, 07 Mar 2024
    That’s what that issue says
  • @6370143984 #9658 01:55 AM, 07 Mar 2024
    ah right, okay.
  • @6370143984 #9659 01:56 AM, 07 Mar 2024
    I mean it's an issue right, not a plan?
  • @hodlencoinfield #9660 01:56 AM, 07 Mar 2024
    Basically since the API is not perfect, the get_[table] commands are necessary to route around it
  • @hodlencoinfield #9661 01:56 AM, 07 Mar 2024
    So let me know when the rest of the API is perfect and I’ll use that lol
  • @6370143984 #9662 01:57 AM, 07 Mar 2024
    I really am not advocating for anything in particular.
  • @6370143984 #9663 01:57 AM, 07 Mar 2024
    I speak for myself and am just trying to add clarity where I can.
  • @hodlencoinfield #9664 01:58 AM, 07 Mar 2024
    Same, my suggestion would be to perfect the rest of the API in one update with a plan to deprecate in the following update
  • @hodlencoinfield #9665 01:58 AM, 07 Mar 2024
    Gives everyone a full cycle to make changes
  • @6370143984 #9666 01:58 AM, 07 Mar 2024
    right, got it.
  • @hodlencoinfield #9667 02:00 AM, 07 Mar 2024
    I will say that having the ability to query tables directly allows people to be more creative and flexible as different uses cases come up that weren’t necessarily thought of or planned for prior
  • @6370143984 #9668 02:01 AM, 07 Mar 2024
    i think that that's fine but if there is an expectation of stability and LTS then it gets more complicated
  • @vectorconfetti #9669 02:02 AM, 07 Mar 2024
    having direct database access (even through an API skin - i see that exists, yeesh 😬) is going to create more issues like this, more brittle software
  • @vectorconfetti #9670 02:03 AM, 07 Mar 2024
    definitely want the schema to opaque to users
  • @hodlencoinfield #9671 02:05 AM, 07 Mar 2024
    Perfect example is I can filter though get issuances with description wild cards to find asset data almost an order of magnitude faster than get_asset_info
  • @vectorconfetti #9672 02:06 AM, 07 Mar 2024
    yes, definitely seems like people have had to work around poor API performance, but that’s a fixable performance issue
  • Sure but descriptions weren’t necessarily as important for assets when the api was written
  • @hodlencoinfield #9674 02:08 AM, 07 Mar 2024
    So rather than wait for the next api update when new queries are needed it’s flexible enough to allow creating more custom calls
  • @hodlencoinfield #9675 02:08 AM, 07 Mar 2024
    Removing the flexibility makes users much more dependent on an active dev team addressing every need promptly
  • @vectorconfetti #9676 02:09 AM, 07 Mar 2024
    yes, i understand the maintenance and responsiveness was not very good for most of the projects lifetime and this is part of that fallout
  • But having a flexible api made that less of an issue is my point
  • @hodlencoinfield #9678 02:12 AM, 07 Mar 2024
    And maybe the solution is to just build a better api with some flexibility built in that’s more “controlled”
  • @vectorconfetti #9679 02:13 AM, 07 Mar 2024
    this flexibility for the application results in inflexibility for the core. that was a good trade off when the core was not really being maintained, but i think it’s no longer a good trade off
  • @hodlencoinfield #9680 02:13 AM, 07 Mar 2024
    Well it’s hard to comment on the non existent new api
  • @hodlencoinfield #9681 02:14 AM, 07 Mar 2024
    Maybe it solves all these problems, I guess we shall see
  • @vectorconfetti #9682 02:14 AM, 07 Mar 2024
    right, a transition period is required, and i think Periwig expressed desiring to leave space for that
  • @hodlencoinfield #9683 02:15 AM, 07 Mar 2024
    I think before even discussing a transition period we need to see what’s proposed as the replacement
  • @vectorconfetti #9684 02:15 AM, 07 Mar 2024
    yeah, an API design proposal with feedback from users would be good
  • @6370143984 #9685 02:58 AM, 07 Mar 2024
    I am not sure but I think Adam was expecting people to put their requests in for a new-and-improved API to the issue I referenced above. it sounds like there may be a preference instead just for a proposal to be put forward and for users to add their comments to that.
  • @teysol #9686 06:45 AM, 07 Mar 2024
    Yeah I'm hearing a lot of "don't change anything, because <implementation detail> is a core feature of the platform". People are even conflating API and db schema changes with protocol/consensus changes 🙄 it's hard to have this discussion when that's the case.

    The questions are, what's the best design for the usage pattern? and what's the right upgrade path? I'm not hearing a lot of suggestions there, which is unfortunate.

    Obviously I don't want to create unnecessary work for others. And I'm going to do whatever I can to maintain maximum backwards compatibility in the API. (Even though the API is really really bad—my fault 🙏) But the notion that nothing is going to change because "that's the way it's always been done" is simply without merit.
  • @teysol #9687 06:52 AM, 07 Mar 2024
    It sounds to me like in this particular case, the best thing is to maintain compatibility for 'messages' as much as possible for this release, so that people can upgrade quickly and avoid the non-determinism of previous versions.

    then we can prioritize the development of the new API for the next version and delay any actual changes to the protocol to give everyone the maximum time to migrate
  • @6370143984 #9688 09:15 AM, 07 Mar 2024
    sounds right. i am not advocating for the API never to change just saying I can see why there'd be resistance to changing it for v10 when we're so close to cutting an alpha
  • @teysol #9689 09:40 AM, 07 Mar 2024
    yeah but the question is, When would the upgrade be *required*?
  • @6370143984 #9690 10:15 AM, 07 Mar 2024
    @robotlovecoffee can you rename the problematic counterparty.db file or move it or use the --database-file arg and rerun kickstart? want to see whether problem is persistent
  • @ABlue0ne ↶ Reply to #9623 #9691 12:11 PM, 07 Mar 2024
    Is this the script that did not play well with the mass volume of numerics on xchain? If so, this change would benefit you.
  • @hodlencoinfield #9692 12:23 PM, 07 Mar 2024
    I use get_messages in memepool when viewing txs by block, this is standard block explorer behavior and I’m not opposed to replacing it with TBD new api call / combination of calls in the future but there’s certainly a use case for it
  • @hodlencoinfield #9693 12:26 PM, 07 Mar 2024
    Wrt get_[table] calls, these are 90% of the calls I use throughout wallets and explorer and were used because they were most performant, also not opposed to replacing with TBD new calls but i would hope we don’t need to sacrifice performance for the sake of making the api “better”
  • @hodlencoinfield #9694 12:34 PM, 07 Mar 2024
    I had to speed run changing out xchain API calls for counterparty API calls in January so I know I can get it done in about a week if necessary 😆
  • @teysol #9695 12:35 PM, 07 Mar 2024
    yeah performance should *not* suffer. however, I've heard a lot about non-performant API endpoints but no one has told me which ones they are. see https://github.com/CounterpartyXCP/counterparty-core/issues/1359
    Painfully Slow API Calls? · Issue #1359 · CounterpartyXCP/counterparty-core

    Please add to this list! "the way i get around the slow get_asset_info call is because i dont need EVERY description for assets in an address, i can filter out assets that i already know what ...

  • @hodlencoinfield #9696 12:37 PM, 07 Mar 2024
    I can document all the calls I’m using and why and maybe that would help in working appropriate replacements
  • @hodlencoinfield #9697 12:39 PM, 07 Mar 2024
    I think the biggest problem is filtering by each parameter isn’t available in a lot of the non get_[table] calls
  • @hodlencoinfield #9698 12:42 PM, 07 Mar 2024
    So with get_asset_info I can’t say here’s a bunch of assets but I only need the results to give me ones with “STAMP:” prefix in the description
  • @hodlencoinfield #9699 12:43 PM, 07 Mar 2024
    But I could take the same asset list and run with that filter in get_issuances
  • @teysol #9700 12:45 PM, 07 Mar 2024
    yes, that would be *super* helpful
  • @teysol #9701 12:46 PM, 07 Mar 2024
    (N.B. that's not a /performance/ problem—that's missing functionality)
  • @hodlencoinfield #9702 12:47 PM, 07 Mar 2024
    Sure it just becomes a performance issue without it since I have to filter results rather than get filtered results in the first place, but I get what you’re saying
  • what is the arg is it just kickstart --database-file? Like just remove the db so just recreates it?
  • @6370143984 #9704 02:27 PM, 07 Mar 2024
    just use a different db name with --database-file. you can call it anything. not sure but may need to precede`kickstart`
  • @robotlovecoffee #9705 02:36 PM, 07 Mar 2024
    sorry for being dumb so the --database-file is used like "--database-file newcp.db"
  • @6370143984 #9706 02:37 PM, 07 Mar 2024
    yup! you're not being dumb, you're being super helpful.
  • I just have not used a lot of linux before, almost all my stuff is GUI based
  • @6370143984 #9708 02:39 PM, 07 Mar 2024
    all good! again, this is incredibly helpful and Counterparty should be quite easy to run. I just appreciate that you have the patience to work through the growing pains.
  • @robotlovecoffee #9710 02:59 PM, 07 Mar 2024
    these are the only reactions I can make in this TG, not sure if this affects others or not
  • @6370143984 #9711 03:00 PM, 07 Mar 2024
    lollll I have the full range of reactions available on OSX, but am quite limited on Ubuntu.
  • @robotlovecoffee #9712 03:00 PM, 07 Mar 2024
    This is osx
  • @robotlovecoffee #9713 03:01 PM, 07 Mar 2024
    I only have this issue in this TG
  • @uanbtc ↶ Reply to #9687 #9714 03:02 PM, 07 Mar 2024
    Will this compatibility extend to continuing seeing updates in messages?

    I believe we should have a clear distinction between the database SQL schema (which is now append only) vs the normalized entities.

    AND I also believe that CP developers that want to create their own api to the DB should be embraced. Obviously, with schema refactoring, these power users will need to update their queries. But DB schema changes should not be common for a mature protocol.

    I literally remember the day I saw there was a hidden sql api endpoint and how I would have preferred to use that rather than having to be limited by the predefined api which has(had?) many limits and inefficiencies.
  • @teysol #9715 03:21 PM, 07 Mar 2024
    lol this isn't a matter of "developer freedom". you're absolutely free to do whatever you want with the counterparty codebase. but if it's not part of the official API... it's not going to be officially supported—that's what an API _is_
  • @vectorconfetti #9716 03:28 PM, 07 Mar 2024
    e.g. - if you wrote some software that scraped a webpage to grab some information from that webpage, and then the developer changed the layout of the webpage and it broke your software, you wouldn’t really be entitled to anger about that, because you shouldn’t have been relying on a specific webpage format to get the info you needed
  • @droplister #9717 03:31 PM, 07 Mar 2024
    You can appeal to what things should be, but it’s not a greenfield.
  • @droplister #9718 03:31 PM, 07 Mar 2024
    And people are giving feedback
  • @vectorconfetti #9719 03:32 PM, 07 Mar 2024
    yes, the maintainers have acknowledged receiving the feedback and understand the implications of the decisions that they are making
  • @6370143984 #9720 03:33 PM, 07 Mar 2024
    I am generally in agreement with that view @droplister but this conversation has migrated from what is the case to what ought to be the case.
  • @droplister #9721 03:33 PM, 07 Mar 2024
    I missed some scrolls maybe
  • @teysol #9724 03:35 PM, 07 Mar 2024
    fully agreed @ChiefSamyaza , except I don't know where the fear that we're forcing any new version on anyone is coming from... I literally just said that we can delay protocol changes so that users aren't forced to upgrade even for the _next_ release
  • @teysol #9725 03:36 PM, 07 Mar 2024
    *again* protocol changes _by nature_ require users to upgrade (or to fork ofc). please don't be surprised when the protocol *does* change
  • @teysol #9727 03:37 PM, 07 Mar 2024
    literally 100% of the work done on Counterparty in the past few months has not touched the protocol
  • @teysol #9728 03:38 PM, 07 Mar 2024
    (as I said before, I find it really weird how db schema or API changes are being described as protocol changes... which is just objectively incorrect. it'd be great if that would stop :))
  • @teysol #9730 03:41 PM, 07 Mar 2024
    I hear what you're saying, but literally nothing we've been discussing is a "fundamental change" to anything :/
  • @teysol #9734 03:42 PM, 07 Mar 2024
    🤷‍♀️ API means "application programming interface"
  • @teysol #9735 03:42 PM, 07 Mar 2024
    anyone is free to bypass the API, but then that's what they're doing :)
  • @teysol #9737 03:44 PM, 07 Mar 2024
    yup, and that's something that should be taken very seriously!
  • @ABlue0ne ↶ Reply to #9710 #9738 04:24 PM, 07 Mar 2024
    Scroll right within that box for more.
  • @uanbtc #9739 04:29 PM, 07 Mar 2024
    The way I see things is different. And I can understand being misunderstood.

    For me, Counterparty is the hashes, which are generated by a single database.

    The API is split between write and read. For the write API, I am fully in agreement that it should not be bypassed.

    But for the READING of the data, I rather build the queries myself based on the needs of my application. And I believe this is a better way to effectively use the protocol data.

    I’m very sure the critics to this approach would have a different opinion if they had applications.

    I would literally lower the scope of the READ API to some basic examples, and then delegate to app developers the READing interface to the database.

    For THIS SOFTWARE, which basically everything ends in an SQLite DB, it is a POSITIVE for developers to just query directly. Why I need to wait for a “dev team” to build the query for me? It feels like there is an “elitism” where only a select few decide how to READ the data? I don’t buy it.
  • You are free to develop any way you want, obviously, but understand that bypassing the API (even just for reading) is not standard practice.
  • @vectorconfetti #9742 04:36 PM, 07 Mar 2024
    Free to write software however you want, and free to maintain it based on the consequences of your own decisions. I think we’ve discussed this point enough. Some useful outcomes from the discussion include how the upgrade path will look for users, and how maintainers can make upgrades easier by splitting things into separate versions and having a defined ‘request for comment’ period. The outcomes will not include the maintainers doing what you want because you said so.
  • @teysol ↶ Reply to #9741 #9745 04:43 PM, 07 Mar 2024
    yeah this is all going to be deprecated... it's just terrible :/ (100% my fault!)
  • @6370143984 #9746 04:43 PM, 07 Mar 2024
    lol not the new dev. new dev is @ warrenpuffett on github, who, like lots of people, would get no pleasure out of the back-and-forth on telegram
  • One second, pulling up my contact card with my name, address, and model of my first car….
  • @uanbtc ↶ Reply to #9740 #9751 04:55 PM, 07 Mar 2024
    I KNOW is not “standard practice”. I’m saying, it is the MOST direct interface to Counterparty.

    The day CP stops being a SQLite DB, then my approach might not work.

    I don’t understand the resistance to being more efficient lol.
  • @dimesquanderer #9752 04:57 PM, 07 Mar 2024
    It is not more efficient it is bad practice. Db changes can not and should not require backwards compatibility. That is why apis exist
  • @uanbtc #9753 04:58 PM, 07 Mar 2024
    I’m a power user. I don’t need anyone telling me how to READ a database
  • @ABlue0ne #9754 04:59 PM, 07 Mar 2024
    When did this channel become a sock drawer?
  • @vectorconfetti #9755 05:01 PM, 07 Mar 2024
    who are the socks?? who is whose sock?? let’s hear the full theory!
  • @uanbtc #9758 05:22 PM, 07 Mar 2024
    Processing all this… and I think it is pretty evident that the high usage by CP product developers of the messages and get_<table> proves the point that a customized READ api in the reference protocol implementation is kind of pointless. Developers just want the data.

    But I can still understand having some basic read api, for “backward compatibility” (which in many cases translates to quite inefficient queries) of such basic api consumers.
  • @teysol #9759 05:32 PM, 07 Mar 2024
    the only thing it proves is that I screwed up the API design on the first go-around—I put a hole in the wall next to the front door so big you could drive a mack truck through it, so no one cared that the actual door was busted. virtue meet necessity
  • @uanbtc #9760 05:36 PM, 07 Mar 2024
    I don’t think you screwed up.
  • @teysol #9761 05:36 PM, 07 Mar 2024
    yeah that's Stockholm Syndrome
  • @teysol #9762 05:36 PM, 07 Mar 2024
    it's like, painfully obvious lol
  • @uanbtc #9763 05:45 PM, 07 Mar 2024
    Interesting description…
  • weird, that works, I guess it resets for a new TG?
  • @robotlovecoffee #9765 06:56 PM, 07 Mar 2024
    OK] Connecting to addrindexrs...
    [OK] Getting last known block hash...
    [OK] Checking database state...
    [OK] Initialising database...
    [OK] Starting blocks parser from block 278269...
    [OK] Cleaning up...
    Last parsed block: 289999
    Kickstart done in: 1872.533s
    [2024-03-07 15:44:33][ERROR] Unhandled Exception
    Traceback (most recent call last):
    File "/home/ubuntu/.local/bin/counterparty-server", line 8, in <module>
    sys.exit(server_main())
    File "/home/ubuntu/counterparty-lib/counterparty-cli/counterpartycli/__init__.py", line 18, in server_main
    server.main()
    File "/home/ubuntu/counterparty-lib/counterparty-cli/counterpartycli/server.py", line 172, in main
    server.kickstart(
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/server.py", line 507, in kickstart
    kickstarter.run(
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/lib/kickstart/__init__.py", line 380, in run
    tx_index = parse_block(kickstart_db, cursor, block, block_parser, tx_index)
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/lib/kickstart/__init__.py", line 282, in parse_block
    blocks.parse_block(kickstart_db, block['block_index'], block['block_time'])
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/lib/blocks.py", line 201, in parse_block
    new_txlist_hash, found_txlist_hash = check.consensus_hash(db, 'txlist_hash', previous_txlist_hash, txlist)
    File "/home/ubuntu/counterparty-lib/counterparty-lib/counterpartylib/lib/check.py", line 261, in consensus_hash
    raise ConsensusError(error_message)
    counterpartylib.lib.check.ConsensusError: Incorrect txlist_hash hash for block 290000. Calculated d86938404e91f0c70c52b66beedc996a1601cabd10c18f3f052ad6110216af3a but expected c15423c849fd360d38cbd6c6c3ea37a07fece723da92353f3056facc2676d9e7
    /usr/lib/python3.10/multiprocessing/resource_tracker.py:224: UserWarning: resource_tracker: There appear to be 31 leaked shared_memory objects to clean up at shutdown
    warnings.warn('resource_tracker: There appear to be %d '
  • @robotlovecoffee #9766 06:56 PM, 07 Mar 2024
    same error
  • @robotlovecoffee #9767 06:58 PM, 07 Mar 2024
    but I did not update any code so I guess expecting the same result is expected?
  • @6370143984 #9768 06:59 PM, 07 Mar 2024
    hm!
  • @6370143984 #9769 06:59 PM, 07 Mar 2024
    what is your commit hash?
  • @6370143984 #9770 07:00 PM, 07 Mar 2024
    enter git log in a terminal and paste the the first line that starts with the word commit
  • @robotlovecoffee #9771 07:01 PM, 07 Mar 2024
    from which dir
  • @6370143984 #9772 07:02 PM, 07 Mar 2024
    ah you didn't pull counterparty-core, right? so counterparty-lib
  • @robotlovecoffee #9773 07:02 PM, 07 Mar 2024
    I think you renamed right after I pulled
  • @6370143984 #9774 07:02 PM, 07 Mar 2024
    that's totally fine
  • @6370143984 #9775 07:02 PM, 07 Mar 2024
    we want to capture the state at which you're hitting this error
  • @6370143984 #9776 07:03 PM, 07 Mar 2024
    no one else has reported it, so any unique identification we can make will help. do /not/ pull before you run git log, please 🙂
  • @robotlovecoffee #9777 07:03 PM, 07 Mar 2024
    when do I run that cmd
  • @robotlovecoffee #9778 07:04 PM, 07 Mar 2024
    ubuntu@ip-172-31-52-115:~$ git log
    fatal: not a git repository (or any of the parent directories): .git
  • @6370143984 #9779 07:04 PM, 07 Mar 2024
    you have to cd counterparty-lib first
  • @6370143984 #9780 07:04 PM, 07 Mar 2024
    then git log
  • @robotlovecoffee #9781 07:05 PM, 07 Mar 2024
    commit f941aea0cf36ec10789a82c1deefa038f4e9aeb8 (HEAD -> develop, origin/develop)
    Merge: 2d8d5f15 8164faff
    Author: Adam Krellenstein <adam@krellenstein.com>
    Date: Sun Mar 3 07:42:25 2024 +0100

    Merge pull request #1465 from CounterpartyXCP/wp/python-3-10

    Support Python 3.10
  • @6370143984 #9782 07:05 PM, 07 Mar 2024
    tysm!
  • @robotlovecoffee #9783 07:05 PM, 07 Mar 2024
    I could pipe to a file if you needed
  • @6370143984 #9784 07:06 PM, 07 Mar 2024
    I think we're alright for now thank you though.
  • @6370143984 #9785 07:06 PM, 07 Mar 2024
    super weird that you're hitting this. I just nuked my kickstart and restarted from scratch using counterparty start and I didn't hit this @ 290k
  • @6370143984 #9786 07:07 PM, 07 Mar 2024
    ouziel's response lol: "arf! will check his db!" we'll figure this out!
  • @robotlovecoffee #9787 07:08 PM, 07 Mar 2024
    Last parsed block: 289999
  • @robotlovecoffee #9788 07:08 PM, 07 Mar 2024
    mine was 289999
  • @6370143984 #9789 07:08 PM, 07 Mar 2024
    yep, Counterparty has checkpoints at regular intervals, at which consensus hashes of your syncing are compared to a known 'good' state.
  • @6370143984 #9790 07:09 PM, 07 Mar 2024
    if the hashes don't match your node crashes, by design.
  • @6370143984 #9791 07:09 PM, 07 Mar 2024
    i believe the 'good' hashes are those resulting from running master
  • @6370143984 #9792 07:10 PM, 07 Mar 2024
    IOW the software is doing what it's supposed to do but it just hasn't done this for anybody else so we're a bit confused!
  • @6370143984 #9793 07:13 PM, 07 Mar 2024
    In a sense @robotlovecoffee this is exactly why we want people running nodes, so thank you.
  • @ABlue0ne #9794 08:04 PM, 07 Mar 2024
    LIVe right now. Runes developers FWIW https://www.youtube.com/live/XMu2GPlQg0U
    Ordinals Coding Club (3/7/24)

    Come hang out on the Ordicord and watch live coding, issue + PR review. Join the event live! https://discord.gg/ordinals

  • @ABlue0ne ↶ Reply to #9794 #9795 09:04 PM, 07 Mar 2024
    My favorite quote so far ‘dockers bs’…
  • @droplister #9796 09:16 PM, 07 Mar 2024
    Point of differentiation to Runes, the max "multi send" size is 6. It's a lot higher in Counterparty. They can go beyond 6, but only if they are sending each address the same amount.
  • 08 March 2024 (37 messages)
  • @uanbtc ↶ Reply to #9796 #9797 01:56 AM, 08 Mar 2024
    I assume is based on the opreturn limit? Would they support more if is not a standard tx?
  • @droplister #9798 01:56 AM, 08 Mar 2024
    Yes
  • @uanbtc #9799 01:56 AM, 08 Mar 2024
    That’s cool
  • @droplister #9800 01:57 AM, 08 Mar 2024
    Ord dev thinks standardness will change and op return limit will go away or rise.
  • @ABlue0ne #9801 11:34 AM, 08 Mar 2024
    @jp_janssen is this organically connected to you? I do not know enough about the economics or politics of this niche at the moment. https://openstamp.io/explorer/jpja What is the use case?
    Link

    Features SRC20 & Stamps Marketplace, Minting Service, Launchpad, and an Explorer for SRC20 & Stamps asset tracking.

  • @jp_janssen #9802 01:05 PM, 08 Mar 2024
    Not related to me.
  • @ABlue0ne #9803 02:17 PM, 08 Mar 2024
    I’m just sharing what I’m seeing.
  • @ABlue0ne #9804 02:26 PM, 08 Mar 2024
    I just virtualized a server and can now repurpose that hardware for a new node. Does anyone have any tips, ideas or thoughts about spinning up a new testnet bitcoin and counterparty node on debian or ubuntu? I’m leaning towards debian, and open to any os really.

    Does counterparty play well with testnet?
  • @teysol #9805 02:32 PM, 08 Mar 2024
    it definitely does play well with testnet
  • @teysol #9806 02:32 PM, 08 Mar 2024
    we haven't tested on Debian yet, primarily just Ubuntu 22.04, but they *should* be compatible
  • @teysol #9807 02:33 PM, 08 Mar 2024
    warning: develop is currently under *active* development and changing significantly on a daily basis... it's not stable
  • @teysol #9808 02:34 PM, 08 Mar 2024
    but testing is *heavily* encouraged :)
  • @teysol #9809 02:34 PM, 08 Mar 2024
    just follow the README on the develop branch and cross your fingers 🤞
  • @ABlue0ne ↶ Reply to #9809 #9810 02:38 PM, 08 Mar 2024
    Can we pin this?
  • @6370143984 ↶ Reply to #9809 #9811 02:53 PM, 08 Mar 2024
    @teysol as of a few days ago develop's readme was out of date afaik
  • @6370143984 #9812 03:07 PM, 08 Mar 2024
    @robotlovecoffee so you got the same calculated hash resulting in a mismatch at 290k. feel free to move on from your commit hash and pull latest!
  • @6370143984 ↶ Reply to #9620 #9813 03:08 PM, 08 Mar 2024
    you can follow these instructions 🙂
  • so I do the git pull again
  • @6370143984 #9815 03:58 PM, 08 Mar 2024
    the following should work
    git clone https://github.com/CounterpartyXCP/counterparty-core
    git checkout develop
    cd counterparty-core/counterparty-rs
    pip3 install -e .
    cd ../counterparty-lib
    pip3 install -e .
    cd ../counterparty-cli
    pip3 install -e .
    GitHub - CounterpartyXCP/counterparty-core: Counterparty Protocol Reference Implementation

    Counterparty Protocol Reference Implementation. Contribute to CounterpartyXCP/counterparty-core development by creating an account on GitHub.

  • @ABlue0ne ↶ Reply to #9815 #9816 05:19 PM, 08 Mar 2024
    Should that last command reflect -core/ instead of -cli/?
  • @teysol #9817 05:22 PM, 08 Mar 2024
    nope
  • @teysol #9818 05:22 PM, 08 Mar 2024
    the cli lib is now in core
  • @6370143984 #9819 08:31 PM, 08 Mar 2024
    Joined.
  • @ABlue0ne #9820 11:01 PM, 08 Mar 2024
    Is there a hack for getting XCP assets into a testnet wallet? Is there an active testnet explorer with dispensers, btcpay, oracles etc? I’m pretty sure I will need to burn test btc for testnet xcp.
  • @6370143984 #9821 11:06 PM, 08 Mar 2024
    xchain has testnet support
  • I asume I can delete the old folders?
  • @6370143984 #9823 11:27 PM, 08 Mar 2024
    yup
  • @robotlovecoffee #9824 11:28 PM, 08 Mar 2024
    so just have couterparty-core
  • @robotlovecoffee #9825 11:28 PM, 08 Mar 2024
    and not the others
  • @6370143984 #9826 11:28 PM, 08 Mar 2024
    you need addrindexrs too
  • @6370143984 #9827 11:28 PM, 08 Mar 2024
    (we'll be killing it soon enough)
  • yup
  • @robotlovecoffee #9829 11:28 PM, 08 Mar 2024
    just can remove -cli and -lib
  • @robotlovecoffee #9830 11:28 PM, 08 Mar 2024
    ok so after this run kickstart
  • @robotlovecoffee #9831 11:29 PM, 08 Mar 2024
    should I nuke the db files also?
  • @6370143984 #9832 11:29 PM, 08 Mar 2024
    you don't need to but you can!
  • @6370143984 #9833 11:29 PM, 08 Mar 2024
    probably should, yes
  • 09 March 2024 (43 messages)
  • @robotlovecoffee #9834 12:26 AM, 09 Mar 2024
    ok re running ks
  • @6370143984 #9835 12:27 AM, 09 Mar 2024
    pls lmk if you hit a consensus hash mismatch!
  • @ABlue0ne #9836 01:50 AM, 09 Mar 2024
    I am taking a vm snapshop for cloning and rollback as I reach certain mile markers with initial node setup. Let me know where in that processes you would snapshot, if anyone has input on development related node backup/snapshots and why. Thanks.
  • @uanbtc ↶ Reply to #9836 #9837 01:58 AM, 09 Mar 2024
    I do this with ec2 volumes
  • @uanbtc ↶ Reply to #9837 #9838 02:00 AM, 09 Mar 2024
    Create snapshots whenever you want. I stop everything and label them with the last block
  • @teysol #9839 06:12 AM, 09 Mar 2024
    @ABlue0ne you don't need to take snapshots along the way. that's one of the benefits of the new db architecture. data in the db is never changed or deleted, it's only added to
  • @teysol #9840 06:13 AM, 09 Mar 2024
    ie a single backup makes all previous backups obsolete
  • @robotlovecoffee #9841 11:20 AM, 09 Mar 2024
    ubuntu@ip-172-31-52-115:~/.local/share/counterparty$ counterparty-server kickstart
    [OK] Block 334999 parsed in 0.004s [56730/554873 blocks parsed - tx_index: 127538 - 0:53:10/8:40:07 (7:46:56)]
    [OK] Cleaning up...
    Last parsed block: 334999
    Kickstart done in: 4725.921s
    [2024-03-09 01:45:13][ERROR] Unhandled Exception
    Traceback (most recent call last):
    File "/home/ubuntu/.local/bin/counterparty-server", line 8, in <module>
    sys.exit(server_main())
    File "/home/ubuntu/counterparty-core/counterparty-cli/counterpartycli/__init__.py", line 18, in server_main
    server.main()
    File "/home/ubuntu/counterparty-core/counterparty-cli/counterpartycli/server.py", line 173, in main
    server.kickstart(
    File "/home/ubuntu/counterparty-core/counterparty-lib/counterpartylib/server.py", line 525, in kickstart
    kickstarter.run(
    File "/home/ubuntu/counterparty-core/counterparty-lib/counterpartylib/lib/kickstart/__init__.py", line 353, in run
    tx_index = parse_block(kickstart_db, cursor, block, block_parser, tx_index)
    File "/home/ubuntu/counterparty-core/counterparty-lib/counterpartylib/lib/kickstart/__init__.py", line 278, in parse_block
    blocks.parse_block(kickstart_db, block['block_index'], block['block_time'])
    File "/home/ubuntu/counterparty-core/counterparty-lib/counterpartylib/lib/blocks.py", line 204, in parse_block
    new_txlist_hash, found_txlist_hash = check.consensus_hash(db, 'txlist_hash', previous_txlist_hash, txlist)
    File "/home/ubuntu/counterparty-core/counterparty-lib/counterpartylib/lib/check.py", line 262, in consensus_hash
    raise ConsensusError(error_message)
    counterpartylib.lib.check.ConsensusError: Incorrect txlist_hash hash for block 335000. Calculated 9c584d9407bdf34ea4a3de44f1a5854ba47065a5e13aa1a3dca8239fcdc0e226 but expected 437d9507185b5e193627edf4998aad2264755af8d13dd3948ce119b32dd50ce2
  • @robotlovecoffee #9842 11:25 AM, 09 Mar 2024
    I'm running a EC2 instance and it is costing around 335$ usd a month with the testing I have been doing, more just fyi is someone was looking to stand one up
  • @6370143984 #9843 11:51 AM, 09 Mar 2024
    this is so weird. just to confirm, you're on develop?
  • @6370143984 #9844 12:00 PM, 09 Mar 2024
    can you share your db like last time pls
  • @robotlovecoffee #9845 12:56 PM, 09 Mar 2024
    yes develop I think
  • @robotlovecoffee #9846 12:57 PM, 09 Mar 2024
    when I run git checkout I get the following from -core
  • @robotlovecoffee #9847 12:57 PM, 09 Mar 2024
    ubuntu@ip-172-31-52-115:~/counterparty-core$ git checkout develop
    Already on 'develop'
    Your branch is up to date with 'origin/develop'.
    ubuntu@ip-172-31-52-115:~/counterparty-core$
  • @6370143984 #9848 12:57 PM, 09 Mar 2024
    can you post the output of git branch
  • @robotlovecoffee #9849 12:58 PM, 09 Mar 2024
    ubuntu@ip-172-31-52-115:~/counterparty-core$ git branch
    * develop
    master
    ubuntu@ip-172-31-52-115:~/counterparty-core$
  • @robotlovecoffee #9850 12:58 PM, 09 Mar 2024
    should I just start from a fresh instance at this point?
  • @robotlovecoffee #9851 12:59 PM, 09 Mar 2024
    rule out red herrings?
  • @6370143984 #9853 01:03 PM, 09 Mar 2024
    I mean I guess it couldn't hurt? but we need the db first in order to rule out the possibility of non-determinism
  • @robotlovecoffee #9854 01:03 PM, 09 Mar 2024
    ok
  • @robotlovecoffee #9855 01:30 PM, 09 Mar 2024
    link to db
  • @robotlovecoffee #9856 01:31 PM, 09 Mar 2024
    https://mmord.s3.us-east-1.amazonaws.com/counterparty.db?response-content-disposition=inline&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEPb%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLWVhc3QtMSJHMEUCIQCgWbdpDA6QhB8kk63INQLI3Xhl93N4V3uaZQy5v2FbewIgfNiEzY8QGVqOwwCqvn%2BAN8f74bXwKaIQBJD9LeYxXoEq8QII7v%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FARAAGgw2MDYyOTE0Nzc3MjkiDPITnRVI5pq8nhNSKSrFAgxi20Ri80gCBwurh8ZYqTwpAOeqAnk%2FVtt6feptUmBg6xh2HDTlygQ1lRWM52MPMkCatd3DBeHSR8X0o9L%2BZP2o8yGZ35ILBUhRX8J4Oeot5Tf%2Blrz3eR3KYj6%2Bbq%2FPOydfXsu2CZW8lO49a%2FgIL6glk3Q6sPXwPBeIh9y%2FlUcjtZ6wzHwOOOAjwxUUsSKebHyUlsI98LbJaAy66t3oKKH4PB4XHXk54Imo2DdF6ZMlAHjd6igo2IoAOZaJzrDJD%2BFzyfjPwYS13fOuNIA%2F0Wd0NyU2m0HUAjrAbx5nnjecTZaEMF87LkndosDqf3rHHJj4RGTbknvyhQjJKUyue3Dqe3pXQyt8u4Y%2Fd1ABix0KlBr2Otr7ZuSWoz1Jg23rnniRL%2BecY09%2B58ETC1cE8mQqI4aZYgiFhrQ%2FLKfTIXK5%2BEIGaicw%2FYexrwY6swK7OYP7rtcx9BMwqE5mXAUMJ6vbVLKUr7CI4QdjgDvp%2FFvjzxQZFuZjAntibNmQkq2K0Dyy%2BCtSI4zRs75HZj1hhc49%2BVSkAq8v9bKhFQDPcSIE6G4nTpXGo2qjGeF1XoOzK3GQlcAHqWAyGBiD0RquqIJNtWoK5poLbA4DHw470gs4SWHWZzVs5EAsPsLthN%2BUhPQ8wyb2hHva0FCP1afFH4b37l4OsIS5UAPC8OmP%2FufAr1x%2B67CRN1%2BclYo1FtavT0j5AcmGslYv1Pyn0WwzXjtutMbl9MePp50Z1bfjbf9ntrQmJFp9yuhrGL0eDnuxWjSZvGFIxfHTSQYp%2FqzQ%2Fqr3nmsP%2BEpNcDEeEJ4XkcNOMyePgfKhFxVQuyJFgSmQl1KJF0C%2BKXcAIoxmc498OrkT&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20240309T133049Z&X-Amz-SignedHeaders=host&X-Amz-Expires=43200&X-Amz-Credential=ASIAY2KOJYTQT7DD7WUQ%2F20240309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=de7376cd66a5e6077d032b4a03b758cca80e3200ed64c2c7eb290dab45488973
  • @6370143984 #9857 01:35 PM, 09 Mar 2024
    tysm
  • @robotlovecoffee #9858 01:44 PM, 09 Mar 2024
    because the file is getting bigger you can use the awscli to send files from an E2C to S3
  • @robotlovecoffee #9859 01:44 PM, 09 Mar 2024
    just have to setup a user and grant permission
  • @robotlovecoffee #9860 01:45 PM, 09 Mar 2024
    without it would be hard for me up at camp with starlink on the upload