Powerline: Request for maintainers

Created on 20 Jun 2019  ·  11Comments  ·  Source: powerline/powerline

There seem to be issues and pull requests piling up in the past 9 months of no merges or commits.

It's understandable that the current maintainer, @Lokaltog, might be busy, but can you please share or transfer maintenance responsibilities? Perhaps @PH111P of the most active fork might be willing.

Many people use this for their daily productivity, and lack of active maintenance is a bit of a frustration.

discussion

Most helpful comment

For what it's worth, switching to using YAML for configuration would add support for comments, and IMHO more readable syntax (assuming you're ok with indentation that matters).

Since YAML is a superset of JSON, all current configuration files are already valid YAML, and the changes in the code would be minimal. Probably as easy as accept a couple additional file extensions, and using yaml.safe_load instead of json.load. You would need to add a dependency on PyYAML (or some other YAML library, but PyYAML is the most common).

All 11 comments

I haven't used powerline myself for years, so a lack of interest is the main reason I haven't been contributing to it. I'd be happy to add contributors to the main repo if anyone is up for the task.

I'd be happy to help.

Thanks. @ZyX-I Any thoughts?

I'm interested but I do object to how slow powerline runs, so would probably takes things in a different direction.

EDIT: I'm very interested @Lokaltog would be great to have some discussion with the current maintainers, or even a statement about what they would like to see. If the focus is purely "we just want updates so powerline doesn't break with new versions of each dependency" I'm moderately interested, but if "we just want powerline to be faster and to see ever more people have awesome looking and awesome working shell environments", then it's definitely something that I'm passionate about.

I agree with @ryanerwin; and I am interested in contributing too.

@ryanerwin I'm not using powerline myself and haven't used it for many years, so I'm not sure what state the project is currently in, and I don't really have any opinions on where it should go in the future.

I'm also not sure what to do with this repo, I've considered archiving it and leaving it up to the community to maintain a fork to avoid another event-stream situation. But since this would probably kill the repo I'll instead add you guys to a maintaner team and try to follow up on the development for a while.

Thanks @Lokaltog!
For now, I will start fixing some bugs such as #1953 or #2013. Regarding the future, I do have some new features lying around, I will have to polish them before we can start to think about adding them to the main repo though.

I took a look at this code ~1.5 years ago, but then somehow lost interest for it.
With Hacktoberfest I got motivated again to do something here and hope that my motivation will last for a bit.
Anyway, I'm happy that there seems to be at least some more activity recently.

Regarding the future direction, I'm having some issues with the current CI environment, as this is giving ~5k lines of output, but most of it seems to be non relevant bash output and it's not really clear why tests are failing and how they are exactly failing. Don't get me wrong, I like the fact that this repository has this huge amount of tests, but redoing the test execution workflow could benefit to the readability.

Also I'm not a huge fan of the current installation and configuration workflow, all of this seems to be tedious and error-prone. I am often getting some errors when configuring powerline without having a clue why this happens. Also JSON is in my opinion exceptionally bad for configuration files as it does not support comments (if you don't add them like VSCode did it).
Unfortunately for the last point I'm the wrong person to ask how to do better, but that would maybe be something to address in the future.

@StopMotionCuber Json5 supports comments, so maybe the project could just change to reading the config files with json5. Although the dev says it's super slow (and as far as I can see, the configs are read often and not just on startup?).

I don't think rewriting powerline to use a different configuration is really needed (although comments would indeed be nice; perhaps we could use fields starting with an underscore for that, that are then ignored by powerline):

  • There is a linter for the config files (powerline-lint), further, major text editors usually show errors in json files directly
  • In particular, switching to a different configuration method would mean essentially rewriting powerline; also this would break all existing configurations.

Regarding the tests, I agree with @StopMotionCuber though: Navigating to a failing test case is a pain; some test cases sometimes fail for no obvious reason, etc... However, again, rewriting this is probably a lot of work.

For what it's worth, switching to using YAML for configuration would add support for comments, and IMHO more readable syntax (assuming you're ok with indentation that matters).

Since YAML is a superset of JSON, all current configuration files are already valid YAML, and the changes in the code would be minimal. Probably as easy as accept a couple additional file extensions, and using yaml.safe_load instead of json.load. You would need to add a dependency on PyYAML (or some other YAML library, but PyYAML is the most common).

Was this page helpful?
0 / 5 - 0 ratings