Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(CI): investigate windows workflows vs real world usage #562

Closed
2 of 3 tasks
lukekarrys opened this issue Sep 29, 2022 · 1 comment
Closed
2 of 3 tasks

chore(CI): investigate windows workflows vs real world usage #562

lukekarrys opened this issue Sep 29, 2022 · 1 comment
Labels

Comments

@lukekarrys
Copy link
Contributor

lukekarrys commented Sep 29, 2022

We currently run tests with the following workflow settings for Windows:

os: windows-latest
shell: cmd

Something I didn't realize is that the windows-2022 runner image ships with Bash 5.1.16(1)-release. Ref: actions/runner-images.

This caused unexpected behavior when trying to setup my windows dev environent because I was mistakenly trying to run everything with cmd.exe without bash installed. And things like touch prepack which we run in tests worked in CI but on my my machine. Ref: https://github.com/npm/cli/blob/f0e758494698d9dd8a58d07bf71c87608c36869e/workspaces/libnpmpack/test/index.js#L40-L41

Exit Criteria:

  • Create contributing guide for windows
    • Including either a guide to settings for autocrlf or having template-oss create a gitattributes file
  • Audit windows CI setup to ensure it matches real world usage and what we want to test
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 22, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. We now normalize everything to `lf` in git and force `bat`
  and `cmd` files to use `crlf` upon checkout.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
lukekarrys added a commit to npm/cli that referenced this issue Jun 23, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
@lukekarrys
Copy link
Contributor Author

this has been fixed for the cli in npm/cli#6586. the template oss changes are tracked in npm/template-oss#318

wraithgar pushed a commit to npm/cli that referenced this issue Jun 26, 2023
This makes it possible to do a fresh clone of this repo in Windows, and
be able to run the resetdeps command successfully and then have a clean
git status. We now check for a clean git status in during CI in Windows
which was previously excluded.

The changes required were to:
- Delete our workspace symlinks from node_modules and add a step to
  resetdeps that will do a platform dependent symlink before the initial
  reification
- Add line ending normalization to our `.gitattributes` file and commit
  the result. Git will store text with LF line endings automatically,
  except for some files like `cmd` scripts that need to be `crlf` and
  shell scripts that need to be `lf`.
- Update workflows to call `node scripts/resetdeps.js` directly since a
  fresh clone of the repo wont have any symlinks in place, so any
  `node .` command will fail due to missing workspaces.

Ref: npm/statusboard#562
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants