OmniSharp / OmniSharp/csharp-language-server-protocol

Build process fails in linux due to incorrect filename

Open
#469 3 comments 1 reaction 0 assignees View on GitHub

A pull request for this has already been merged.

  • #474 by @david-driscoll — merged
Dominant language
C#
Stars
638
Forks
109
Avg merge
1m
Merged PRs (30d)
2

Description

Issue

Build fails due to a file not being found

╬══════════════════
║ Update Readme
╬═════════

FileNotFoundException: Could not find file '/home/eruizc/Repos/csharp-language-server-protocol/Readme.md'.
   at Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, String path, Boolean isDirectory, Func`2 errorRewriter)
   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String path, OpenFlags flags, Int32 mode)
   at System.IO.FileStream.OpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.StreamReader.ValidateArgsAndOpenPath(String path, Encoding encoding, Int32 bufferSize)
   at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks)
   at System.IO.File.InternalReadAllText(String path, Encoding encoding)
   at System.IO.File.ReadAllText(String path)
   at Rocket.Surgery.Nuke.EnsureReadmeIsUpdatedAttribute.OnAfterLogo(NukeBuild build, IReadOnlyCollection`1 executableTargets, IReadOnlyCollection`1 executionPlan) in /_/src/Nuke/EnsureReadmeIsUpdatedAttribute.cs:line 34
   at Nuke.Common.Utilities.Collections.EnumerableExtensions.ForEach[T](IEnumerable`1 enumerable, Action`1 action)
   at Nuke.Common.Execution.BuildManager.<>c__DisplayClass5_0`1.<Execute>g__ExecuteExtension|1[TExtension](Expression`1 action)
   at Nuke.Common.Execution.BuildManager.Execute[T](Expression`1[] defaultTargetExpressions)


Repeating warnings and errors:
FileNotFoundException: Could not find file '/home/eruizc/Repos/csharp-language-server-protocol/Readme.md'.
Repro steps
  1. Clone the repo git clone git@github.com:OmniSharp/csharp-language-server-protocol.git
  2. Set current dir cd csharp-language-server-protocol
  3. Make build script executable sudo chmod +x ./build.sh
  4. Attempt to run with sh sh -c ./build.sh
  5. Fails
Workaround

It tries to update the readme but doesn't found it (it searches for Readme.md and the file is called README.md, so we rename it)
mv README.md Readme.md

Additional info:

I guess this has something to do with #226 but the error is different so I decided to create a new issue.

Contributor guide

No contributing guide indexed for this repository

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 build.sh and the stack-trace location in EnsureReadmeIsUpdatedAttribute.cs at line 34. Reproduce the build on Linux and compare the filename used by the build with the repository's README.md; done means the build completes without the FileNotFoundException.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system
Issue type
Bug
Difficulty
1/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.