Git Product home page Git Product logo

bashmenot's People

Contributors

mietek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

bashmenot's Issues

cp -a from a pipe does not work as Halcyon expects

In 58e4a58 the cp invocation is changed to use -a instead of -p. However, halcyon invokes copy_file using bash's <(cmd) syntax, which passes in a pipe as the file argument; this doesn't work with cp -a. The actual behaviour is that it just removes the destination entirely, for some reason I don't understand, but the expected behaviour would be to replicate the pipe, which is not desireable either.

I'm not entirely sure if this should be considered a bug in bashmenot, or in halcyon, but the change was in bashmenot so I'm filing it here. Note that this is quite serious, as it breaks setting a large number of options from environment variables or command-line options when using halcyon.

Stop retrying curl requests on 000

curl can fail with 000 when cacert is missing or broken on the local machine:

-----> Restoring install directory
       Downloading https://halcyon.global.ssl.fastly.net/osx-10.10-x86_64/ghc-7.8.4/halcyon-install-b1105b3-hello-wai-1.0.tar.gz... 000 (unknown)
       Retrying in 2 seconds (1/5)... 000 (unknown)
       Retrying in 4 seconds (2/5)... 000 (unknown)
       Retrying in 8 seconds (3/5)... 000 (unknown)
       Retrying in 16 seconds (4/5)... 000 (unknown)

This isn’t a transient error, and shouldn’t cause requests to be retried.

Improve curl messages

Find a way to provide additional detail in curl messages, including:

  • Progress output
  • Additional server-provided error messages

For example, when using the s3-eu-central-1.amazonaws.com S3 endpoint, requests fail with 400 (bad request) due to lack of support for AWS Signature Version 4 (mietek/halcyon#49, #9), which is made clear by the additional message provided by Amazon:

The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.

This is related to #5.

Add functions to simplify Linux support

  • Function to locate the installed libgmp.so.3 or libgmp.so.10 and distinguish between the two
  • Function to locate the installed libtinfo.so.5 or libncurses.so.5
  • Function to determine whether the host platform is Debian-like and uses apt-get
  • Function to determine whether the host platform is RedHat-like and uses yum

Git URL could allow any commit'ish, not just branches

It would be nice to use an exact tagged version or a commit SHA-1 when appending to a Git URL. For example, a commit of Bashmenot could be pointed to by the URL https://github.com/mietek/bashmenot#08977d6 (or the full SHA-1).

The code here would seem to support doing so already:

quiet_git_do "${dir}" checkout "${branch}" || return 1

But this line will need a bit of adjustment to allow any commit-like identifier to be used:

quiet_git_do "${dir}" reset --hard "origin/${branch}" || return 1

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.