Skip to content

Cross-platform utility scripts on Windows #16846

Closed

Description

@bisubus

I'm submitting a ... (check one with "x")

[ ] bug report => search github for a similar issue or PR before submitting
[x] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question

Current behavior

Utility scripts (including Windows-specific scripts/windows/*) are not cross-platform, they are shell scripts and require *nix-like environment.

It is possible to run some scripts (test.sh, scripts/windows/*.sh) with Bash that comes with Git for Windows (which contains stripped-down MSYS and is a prerequisite):

"c:\PortableGit\bin\bash.exe" ./test.sh

Other scripts (build.sh) cannot be run with Bash from Git for Windows because they rely on *nix-like environment and require full MinGW installation (which isn't a prerequisite and works by a lucky chance):

# fails due to CRLF and numerous problems with Windows paths
c:\cygwin\bin\bash.exe build.sh 

# fails with `rsync: command not found` error
c:\PortableGit\bin\bash.exe build.sh 

# succeeds
c:\MinGW\msys\1.0\bin\bash.exe ./build.sh 

Expected behavior
Utility scripts are cross-platform and can be executed on Windows as .bat/.cmd files and/or Gulp tasks.

Minimal reproduction of the problem with instructions

What is the motivation / use case for changing the behavior?

Current scripts aren't cross-platform and don't match the requirements for building and testing on Windows.

Please tell us about your environment:

Windows 7 x64
Node 6.10.3
NPM 3.10.10
git 2.9.0.windows.1

  • Angular version: 4.2.0-beta.1

Activity

  1. added
    featureLabel used to distinguish feature request from other issues
    on Dec 5, 2017
  2. added this to the Backlog milestone on Jan 23, 2018
  3. alexeagle commented on Dec 3, 2018

    @alexeagle
    Contributor

    Angular is now built with Bazel. It still requires the minimal MSYS prerequisite which provides Bash.
    I'll leave this issue open since we need to update our DEVELOPER.md documentation.

  4. jelbourn commented on Oct 16, 2020

    @jelbourn
    Contributor

    Closing since this is obsolete now that Angular builds with bazel

  5. angular-automatic-lock-bot commented on Nov 16, 2020

    @angular-automatic-lock-bot

    This issue has been automatically locked due to inactivity.
    Please file a new issue if you are encountering a similar or related problem.

    Read more about our automatic conversation locking policy.

    This action has been performed automatically by a bot.

  6. locked and limited conversation to collaborators on Nov 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: build & ciRelated the build and CI infrastructure of the projectfeatureLabel used to distinguish feature request from other issuesfreq1: low

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions