microsoft / microsoft/terminal

build: either update nuget.exe in the repo or delete it and figure out a replacement for commandline build

Open
#5,541 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Area-Build Area-CodeHealth Issue-Task Product-Meta
Dominant language
C++
Stars
105k
Forks
9.6k
Avg merge
3d 17h
Merged PRs (30d)
29

Description

Environment

Windows build number: [Version 10.0.19041.208]
Windows Terminal version (if applicable): master branch commit ID: a76cee1d98c4368815013eaccc09c6f0d3fe62e9

Steps to reproduce

I was following this build doc for building in cmd.

1. clone this repo
2. cd into terminal folder
3. run git submodule update --init --recursive
4. run .\tools\razzle.cmd
5. The previous command will success but show:
        Setting up dev environment...
        Error parsing solution file at C:\Users\dynahcatq\OpenSource\terminal\OpenConsole.sln: Exception 
        has been thrown by the target of an invocation.
        The dev environment is ready to go!
6. run bcz
7. Then observe error:
        error : This project references NuGet
        package(s) that are missing on this computer. Use NuGet Package Restore to download them.
8. run nuget restore will also gives this error:
        Error parsing solution file at C:\Users\dynahcatq\OpenSource\terminal\OpenConsole.sln: Exception has been thrown by the target of an invocation.
9. run nuget update -self (This workaround will solve the problem)

It seems like the dep/nuget/nuget.exe is outdated (NuGet Version: 4.1.0.2450) and the .\tools\razzle.cmd will set PATH to use this outdated nuget. The nuget update -self will update it to latest version 5.5.1. Should we update nuget.exe in this repository?

Expected behavior

The dep\nuget should provide correct version to build, or the doc should be updated.

Actual behavior

The provided dep\nuget gives error when try to do nuget restore, the build with cmd process failed.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with doc/building.md and tools/razzle.cmd, then inspect dep/nuget/nuget.exe and the OpenConsole.sln restore path. Reproduce the command-line build and compare the bundled NuGet behavior with the documented workaround. Done means command-line restore and build work with the repository setup, or the documentation clearly specifies the replacement process.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.