Giter VIP home page Giter VIP logo

Comments (9)

jbernard avatar jbernard commented on July 19, 2024

Thanks for asking, the short answer is "yes, definately". I completely agree that I need make up my mind, settle on an interface, and move on.

Over time a few nice features have been contributed and I'm very grateful for all of the contributions. With those features and their interaction with others, has come a larger amount of complexity than I'd hoped - and that's really my fault.

I've recently found both some free time and motivation to take a step back and try to see a cleaner implementation and that's what I've been commiting to the master branch. There you will find a new CLI interface (based on Click), which also brings shell completion, colors, and much simplier CLI code.
I didn't mean for it to be a rewrite (I know that's annoying) but it's what works for me given my available free time, so that's the approach I've taken. I've purposely not included anything but the bare minimum features so that I can make sure I get the object model and abstractions correct - before then adding additional features such as configuration files, nested directories/files, prefixes, etc. It would be great to leave some of those out as less code means less complexity and fewer bugs, I'm hoping that folks that use this program will chime in with what's needed and what's not-so-important.

What's in master at the moment supports only flat repositories - where each dotfile is a file (no directories or packages). If you're curious, I'd love to get your feedback on the progress so far.

My next todo item is to support nested dotfiles and directories (with arbitrary depth instead of 'packages') which I think will both simplify the configuration file and make the application more versitile.

Whatever this current effort ends up becoming, is what will be version 1.0. I've learned a lot since it started and I think the result will be much better. Thanks for reading all of this ;)

from dotfiles.

pradyunsg avatar pradyunsg commented on July 19, 2024

I'd love to get your feedback on the progress so far.

Sure. If there's anything you want/someone to help out, lemme know. 😄 (goto next comment)

I didn't mean for it to be a rewrite

It's always painful to do rewrites but the end result is always better, unless rushed. Or so I've been told.

My next todo item is to support nested dotfiles and directories (with arbitrary depth instead of 'packages')...

Could you make a TODO file so that other's can chip in with their ideas about what coming? And also to act as a roadmap/guide for others.

Thanks for reading all of this ;)

You're welcome. 😉


Two questions:

  • Will dotfiles be sticking to ini format or shifting to something else like JSON, YAML or even TOML to the configuration file?
  • Once 1.0.0 comes out, could the stale branches be trimmed?

Just couple of throwout suggestions:

PS: I have a feeling that I'm going to bother you a bit with a lot of questions and hopefully, balance it out with some help...

[editted]

from dotfiles.

pradyunsg avatar pradyunsg commented on July 19, 2024

you will find a new CLI interface (based on Click), which also brings shell completion, colors, and much simplier CLI code

Shoutout to @mitsuhiko
Thanks for an awesome CLI library! 🎉

from dotfiles.

jbernard avatar jbernard commented on July 19, 2024

I'll add a TODO maybe as a file or in the form of a collection of github issues, as soon as I'm confident about the current baseline.

I don't have an affinity to configuration format, once I get to that point I'll take a look and see what seems like the best fit. Thanks for the suggestions, I didn't know about TOML.

Stale branches will be trimmed, I'll circle back for those pretty soon.

I agree with the semver approach, and a 0.7.0 release will probably be next, certainly not 0.6.x since most things have changed. I would normally bump the major, except that means 1.0 which carries a few other expectations that I don't want to make right away. But 1.0.0 will hopefully follow soon after.

from dotfiles.

jbernard avatar jbernard commented on July 19, 2024

Getting really close to the next release, closing this for now. At the moment there is no configuration file at all, only two env vars for overriding repository path and color options. I'll probably release with that and see how many people get angry ;) I need a little time to use it and see if I like the decisions I made, so we'll see. Will trim the branches and update version shortly

from dotfiles.

pradyunsg avatar pradyunsg commented on July 19, 2024

Any updates? You don't seem to have made any release without the configuration files. 😕

I did fail to mention, the re-write is definitely neater. 😄

Sidenote: I think it might be a good idea to not mix cli and configuration. How about a config.py for all things configuration.

PS: I'm eagerly waiting. 😁 Any ideas as to when this lands?

from dotfiles.

jbernard avatar jbernard commented on July 19, 2024

Sorry, I got a chance to do some traveling and then life got a little crazy for a bit. Give me a few days, if I don't get something out by next week I'll owe you a beer (or coffee or tea).

from dotfiles.

pradyunsg avatar pradyunsg commented on July 19, 2024

Sure thing. No issues. It would be odd if life didn't come in the way. 😛

And, I'm not legally allowed to drink beer yet. 👶

from dotfiles.

pradyunsg avatar pradyunsg commented on July 19, 2024

You owe me a Coke (or Sprite, depends on my mood).

from dotfiles.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.