Giter VIP home page Giter VIP logo

Comments (9)

aantron avatar aantron commented on August 31, 2024

I'm still thinking about this. I am considering disabling CI for master instead, since it will be redundant – everything will already have been tested before it gets merged. That would leave no good branch to use for a status image, unless I commit to having some kind of "staging" branch. If I use the latest build over the whole project, it might scare people away instead, since those can fail on any pull request.

There is also the matter of not making the README uglier :)

EDIT: To be more clear, I will be doing all merges in temporary staging branches that will get tested, then fast forward master to them on success. The same goes for pull requests that don't require special merging work. I am not sure if it's worthwhile to have a permanent staging branch only for the sake of having badges, but maybe it is.

from better-enums.

UnrealQuester avatar UnrealQuester commented on August 31, 2024

Currently master seems to be the latest stable branch. If the badge is limited to that branch, the users can see that this project has
a) tests
b) passing tests
just by looking at your README. These status images are not for you. You already tested the code and know that it works. But your users don't.

from better-enums.

aantron avatar aantron commented on August 31, 2024

I already understand that it's not for me, and that there is value in using something people immediately recognize.

Nonetheless, the badges communicate not exactly the right information about the project. The information I want to efficiently communicate is that master is always stable. The information the badges do communicate is that master is sometimes stable, but might not be, and that there are intervals when this information is pending because the build has not finished. In fact, there are never any such intervals. So, as you can see, the badges don't do what I really want.

I am even considering things such as using static images (with some ALT text to justify the deception for those who discover it). But I am also quite likely to just use the badges normally because it's simple, even though sloppy. I simply want to look for better options first. It's not an emergency and I am not being ignorant or stubborn.

I am aware of the ability to limit the badges to master. As I explained before, having builds for master is redundant because it wastes time building. It's also imprecise, because the build can be pending, when in fact a build of the exact same commit has already completed. I am trying to avoid these drawbacks, if it is possible in a reasonable way. Yes, they are minor, but, sorry for repeating, it's not such an emergency that I can't spend a few days thinking about it in my downtime. It's worth something to me if I can communicate the reliability of master as easily as a badge communicates the status of the latest build. If I can't, then I fall back to the regular badges.

I would appreciate any useful information you have. Please don't repeatedly tell me what I and everyone else who uses GitHub already knows.

from better-enums.

UnrealQuester avatar UnrealQuester commented on August 31, 2024

If you are looking for static images, shields.io might do what you want.

AFAIK if a build is pending/cancelled/in progress, travis/appveyor will display the last build status instead.

from better-enums.

aantron avatar aantron commented on August 31, 2024

Thanks, that looks cool :)

I don't know for sure if Travis/AppVeyor would display a pending status, but AppVeyor docs do mention configurable pendingText. Maybe they only show that if there is no previous completed build for a branch/project, but it still spooks me, at least at first glance.

from better-enums.

UnrealQuester avatar UnrealQuester commented on August 31, 2024

I just checked and travis does indeed wait for the build to complete before updating the badge. Appveyor displays a "pending" status image instead.

from better-enums.

aantron avatar aantron commented on August 31, 2024

Right, thanks. So, this behavior is acceptable, but not optimal.

It's a valid issue, just not immediately clear how to best resolve it. There is, after all, some value in even "redundant" master builds, since I might make a mistake when fast-forwarding, or doing something else.

from better-enums.

aantron avatar aantron commented on August 31, 2024

FYI

from better-enums.

UnrealQuester avatar UnrealQuester commented on August 31, 2024

Looks good!

from better-enums.

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.