• 
      

    Check for node and nodejs when running setup.py develop.

    Review Request #8511 — Created Oct. 31, 2016 and submitted

    Information

    Djblets
    release-0.8.x
    0ee16b5...

    Reviewers

    If node isn't installed, setup.py develop will fail part-way through
    the installation process. However, if it's installed but as nodejs
    (such as on Ubuntu), it will all work correctly until you go to run
    Review Board, at which point it will fail confusingly when it fails to
    find node in the path.

    We now check for both node and nodejs, and provide appropriate error
    messages depending on what we find or don't find.

    Tested with node in the path and without.

    Tested without node in the path but with and without nodejs in the
    path.

    Saw the expected behavior in all cases.

    Description From Last Updated

    This second sentence is a little confusing.

    daviddavid
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          setup.py
      
      
      
      Tool: Pyflakes
      Processed Files:
          setup.py
      
      
    2. 
        
    chipx86
    reviewbot
    1. Tool: PEP8 Style Checker
      Processed Files:
          setup.py
      
      
      
      Tool: Pyflakes
      Processed Files:
          setup.py
      
      
    2. 
        
    david
    1. 
        
    2. setup.py (Diff revision 2)
       
       
       
      Show all issues

      This second sentence is a little confusing.

      1. Not sure if I've made it better or worse, but give me your thoughts on the latest wording.

      2. Better, but ln -s definitely isn't going to work on Windows.

      3. True, but this is really only an Ubuntu problem. They rename it because of a legacy package with a binary called "node". Everywhere else, it's just installed as "node".

    3. 
        
    chipx86
    reviewbot
    1. Tool: Pyflakes
      Processed Files:
          setup.py
      
      
      
      Tool: PEP8 Style Checker
      Processed Files:
          setup.py
      
      
    2. 
        
    david
    1. Ship It!
    2. 
        
    gmyers
    1. 
        
    2. setup.py (Diff revision 3)
       
       

      I think check_output was added in Python 2.7, but doesn't this version of Djblets support Python 2.6? Ditto below.

      1. Good catch. I'll have to adjust this.

        I had originally used check_call, but that ends up outputting content.. I'll have to look into options here.

    3. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-0.8.x (aca66dc)