Revitalizing Beem - Call for feedback

in HiveDevs11 months ago (edited)

I'm planning to fork Beem and maintain it with proper documentation and unit-test coverage. I'll also address current known bugs, and update the library as HIVE RPC APIs progress and release more updates in the future.

However, I want to understand the current problems users having. I see a lot of complaints that it's not maintained. It's understandable, but there is no exact definition of the problems about what did you try, what went south, and so on.

So, if you're using Beem, please let me know in the comments. And if you're using Beem and having bugs, or have feature requests, also include in the comment.

Before working on that, I want to learn if there is still a user base trying to work with it. I personally use Beem in a couple of scripts, and they're working fine in general, however, my use case is limited, as %90 of my work flow is handled by Lighthive.

You might wonder what will happen to Lighthive? It will stay the same. By design it's a simple library and don't have much encapsulation, classes, helpers like Beem.

It's a trade-off between usability and complexity, so Lighthive will stay there and maintained as is for power-users, while Beem will be more user-friendly starting point for less experienced people in the programming.

Also open to any collabration for maintaining it, but this is a topic brought before - it seems we need one person to take the first step for active maintenance, then the contributions will follow.

TL;DR:

  1. Please reply in the comments if you're using Beem
  2. Please explain the current problems you have with Beem.
  3. Please explain the feature ideas for Beem.
Sort:  

I still have a lightweight api at https://api.ausbit.dev running, with a lot of the calls using beem. Still works for my purposes :)

looking sharp!

I don't use Beem, but I have many friends who use it on Hive and they are happy with it. If you are planning an enhancement to it, that would be great.

Coincidentally I started using it for the first time yesterday in some scripts. But I'm a complete beginner on this front and never used Lighthive.

Hoi Michel,

Het is leuk. Welkom bij HIVE ecosysteem.

Give it a shot and let me know :) Beem is more beginner-friendly though.

Thanks! Ik ben geen expert en nog zeker aan het leren hier. Tips zijn dus altijd welkom.

I'm working on a similar regular update like Steevc's Britlist posts. I use it there mainly. You'll see the post once I figured it all out I'm sure :)

I've also started a witness recently, in case you want to support me 🤓

Hey Emre, I've been tinkering with beem a bit more and have been goin through the documentation. If you start working on that, perhaps a quick find/replace on steem would be good :)

I use Beem and hiveengine from holger for a lot of scripts, but I'm no pro. It would be great to improve both libs. Some of the problems were already mentioned in the comments.

The automatically node switching is a cool feature for beginners, but you can't change the node list.

The get_reblogs_by method of the comment module is broken. But it is just a small error. But it is hard for noobs to find this error. The key word account is causing the error.

https://github.com/holgern/beem/blob/master/beem/comment.py#L620

In the the hiveengine lib are tons of errors and missing methods. I can make you a list of problems I had with this lib if you want.

In the the hiveengine lib are tons of errors and missing methods. I can make you a list of problems I had with this lib if you want.

That would be perfect, don't need much detail. Once the new repository up, you can open tickets directly.

I am using Beem for several things from root posting, commenting, transfers, following, and such. All of them are working fine but from time to time the documentation is holding me back from using it in more scripts or I even switched to other languages to fix issues. For querying data like delegations, blogs, and all of this I have switched to Hivesql which is not a good sign. hivesql could be subscription-based sometime in the future and I would like to do all the querying via Beem if possible. Honestly, I don't remember the issues unfortunately but I had issues and had to fix them quickly. An actively maintained lib and a more active discord could have saved me from these steps many times.

Thank you for planning to maintain this important piece of our dev life!

I followed Beem link which took me to github 😅 thats when I immediately knew I was in over my head lol not a user

I use beem.

GitHub shows holgern active in other repos a few months ago. It might be worth attempting to get in touch to see if he will make you a maintainer on the Beem repo.

Tried reaching out 3x times, no luck. If you know anybody have a contact, that would be good to use the same name.

Unfortunately I don’t have a contact.

Thanks for stepping up to resolve this. Having a robust Python library is importing for the Hive network. You may even consider requesting DHF funding.

He has no interest.

You def. can get in touch and he will reply.
He made an official statement about that before he left.

I could not get a response from him in emails.

try @xeroc

if that still doesn't work, contact me privately.

I use it for some personal scripts and it's mostly working fine. Would be great to have it actively maintained. I think @slobbercops found a bug recently that I looked at with him. I'm sure you'll get support for working on it. We need good tools.

Thanks steevc, good to hear. What do you use it for if you don't mind answering. Good luck on your next run :)

I use it for the @proofofbrian bot and for generating the #britlist. I would like to try some other things some time.

I'm using Beem all over the place across my various projects as well as the Lighthive library.

I'll be happy to help out and I think this project is very important and deserves root support. I'm really not experienced at publishing real libraries like this so I'll be happy to learn some of that side of it with you.

When I have more time I'll talk to you direct about specifics of Beem but for now its mostly working.

Thanks Brian!

Loading...

I'm not a dev, but I know that some of my friends on Hive that are developers use it. SO this will be very helpful.

Thanks Eddie.

Please reply in the comments if you're using Beem

I do, a lot.

Please explain the current problems you have with Beem.

  1. Openssl error requires turning on legacy algorithms to get it to install.
  2. A lot of helper functions don't work any more, like vote/downvote % are off
  3. Doesn't support Hive Engine, his Hive Engine module is abandoned as well although I just use a very simple wrapper for Hive Engine.
  4. Lots of STEEM code still in it. Could be gutted.

Most things work, and it's in a more usable state than any other library, but it's abandonware at this point.

Please explain the feature ideas for Beem.

  1. Hive Engine support

I am curious though, how does Lighthive differ from Beem? I assume outside of how you interact with it, it is mostly the helper functions? Is it worth digging into Beem rather than making Lighthive better?

Loading...

PIZZA!
The Hive.Pizza team manually curated this post.

You can now send $PIZZA tips in Discord via tip.cc!

We use Beem for some scripts and it's working fine. Although it could help to have a better documentation and more features like preprocessing some blockchain information for the current amount of delegation to/from an account for example.

Thanks hivecuba. Incoming delegations should be easy afaik, I need to check the outgoing delegations, though. Last time I checked it was tricky in RPC level.

I am using quite a lot for many scripts inherent to STEMsocial. So far, the features I need are (still?) supported.

Hello I want to inform you that I gave you my support with my vote, good luck.

Hello I want to inform you that I gave you my support with my vote, I hope you solve your problem and stay in the top 20.

I recently started to learn Python and I have been using Beem quite a bit. I have a small github page that I am putting code into. It's simple stuff, but we have to start somewhere. My most recent project was trying to pull historic HP values from the chain for example, my HP staked 30 days ago, 60 days ago, 120 days ago etc. But I couldn't get it to work properly and the documentation and support was spotty. I just joined the Beem Discord server and I have a different question in there that I didn't see in the docs.

Greetings, I just voted for you, I hope you overcome that problem and stay in the top 20.

I'm using Beem in several projects, too. It works fine. I remember I have gotten bugs but I solved them somehow and now I don't remember much. I'll report new issues when I come across them. Great initiative.

Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!

Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).

You may also include @stemsocial as a beneficiary of the rewards of this post to get a stronger support. 
 

Just to make sure that you are aware of existence of HELpy which beem (or similar projects) could make use of.

I just want to drop this here

https://github.com/holgern/beem/compare/master...brianoflondon:beem:master

I've been using this version of Beem forked from Holgren's with a couple of tiny fixes. It seems to work.

I know there is this one on GitLab which I'm not sure what the state of it is.

https://gitlab.syncad.com/hive/beem

What would be nice if we can't get Holgren's repo back is to at least have a new version BeemAgain or something on PyPy.

Holaaaa!!! te vote como testigo exito

Me too thought to properly manage the beem (at least documentation n installation) cause libraries stuff is still big for me.
U took the first step. Will try my best to get involved somehow. Always remember that oldies who were just making a lot because of no competition will always shun new comers cause their time will come to an end because of real talented workers. N beware of under the table tactics. Cause the ones who were famous wdout any talent n work will always turn ur enemies n will find ways to pull ur legs in ways u wont imagine.