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

Angular CLI v8 `ng new` generates Angular v7 files #14603

Open
DeborahK opened this issue May 31, 2019 · 6 comments
Open

Angular CLI v8 `ng new` generates Angular v7 files #14603

DeborahK opened this issue May 31, 2019 · 6 comments

Comments

@DeborahK
Copy link
Contributor

@DeborahK DeborahK commented May 31, 2019

🐞 Bug report

Command (mark with an x)

- [x ] new
- [ ] build
- [ ] serve
- [ ] test
- [ ] e2e
- [ ] generate
- [ ] add
- [ ] update
- [ ] lint
- [ ] xi18n
- [ ] run
- [ ] config
- [ ] help
- [ ] version
- [ ] doc

Is this a regression?

Probably not

Yes, the previous version in which this bug was not present was...

Description

A clear and concise description of the problem...

The package.json file created with ng new is set to version 7 files instead of version 8 files.

🔬 Minimal Reproduction

  1. Installed Angular CLI v8.01
  2. ng new myApp
  3. Opened the package.json file and the versions are set to 7.x
  "dependencies": {
    "@angular/animations": "~7.2.0",
    "@angular/common": "~7.2.0",
    "@angular/compiler": "~7.2.0",
    "@angular/core": "~7.2.0",
    "@angular/forms": "~7.2.0",
    "@angular/platform-browser": "~7.2.0",
    "@angular/platform-browser-dynamic": "~7.2.0",
    "@angular/router": "~7.2.0",
    "core-js": "^2.5.4",
    "rxjs": "~6.3.3",
    "tslib": "^1.9.0",
    "zone.js": "~0.8.26"
  },

🔥 Exception or Error





🌍 Your Environment



Angular CLI: 8.0.1
Node: 10.15.0
OS: win32 x64
Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.800.1
@angular-devkit/core         8.0.1
@angular-devkit/schematics   8.0.1
@schematics/angular          8.0.1
@schematics/update           0.800.1
rxjs                         6.4.0


Anything else relevant?

@DeborahK
Copy link
Contributor Author

@DeborahK DeborahK commented May 31, 2019

This issue was resolved by removing an errant node-modules folder. It appears that it invokes the local CLI when one exists and one existed in the node-modules folder.

Suggested change (from Filipe): "We can detect whether or not the command runs in a workspace and that should bound the mechanism for using the local version."

@markgoho
Copy link
Contributor

@markgoho markgoho commented Jun 2, 2019

I don't know if this picture is accurate, but what it sounds like is that you were in a directory with a node_modules folder that contained v7 of the Angular CLI and when running ng new myApp it installed Angular v7.

After removing the node_modules folder, and running the command again, npm used the global version of the Angular CLI (v8) and installed v8 of Angular.

If this is accurate, there isn't a bug here, this is just the way node and npm work.

@mgechev
Copy link
Member

@mgechev mgechev commented Jun 11, 2019

Maybe it's worth outputting a warning message to set clear expectations.

@clydin
Copy link
Member

@clydin clydin commented Jun 12, 2019

ng new is intended to be a global command. The problem here is that it is also a local command (albeit a non-functional local command if within a workspace).

@rubiesonthesky
Copy link

@rubiesonthesky rubiesonthesky commented Jun 12, 2019

I have problem where the new project is Angular 6. Global cli is latest.

$ npm list -g --depth=0
/Users/<user>/.nvm/versions/node/v12.4.0/lib
├── @angular/[email protected]
└── [email protected]

The directory where I'm using ng new doesn't have any modules installed.

$ npm list
/Users/<user>/code
└── (empty)
$ ng --version

Angular CLI: 6.0.8
Node: 12.4.0
OS: darwin x64
Angular:
...

Package                      Version
------------------------------------------------------
@angular-devkit/architect    <error>
@angular-devkit/core         <error>
@angular-devkit/schematics   <error>
@schematics/angular          <error>
@schematics/update           <error>
rxjs                         <error>

The directory where using ng new command has a lot other Angular project directories, can it be that ng tries to use @angular/cli from some subdirectory's node_modules?

@abierbaum
Copy link

@abierbaum abierbaum commented Dec 10, 2019

I just ran into this issue for several hours. I had a node_modules directory in the directory I was running ng new from and didn't realize it. Would definitely be nice to have a warning message.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
7 participants
You can’t perform that action at this time.