dotnet / dotnet/docfx

metadata filename clash between namespace and class name - macOS and docker containers with mounted volumes on Windows or macOS hosts.

Open
#6,852 6 comments 0 reactions 0 assignees View on GitHub
fundamental fundamental: xplat
Dominant language
C#
Stars
4.4k
Forks
890
Avg merge
2h 11m
Merged PRs (30d)
10

Description

**Operating System**:
`Windows` or `MacOS`
Docker containers with mounted volumes on Windows or macOS hosts.

**DocFX Version Used**:
docfx 2.56.6.0

**Template used**:
`default`

**Steps to Reproduce**:

1. checkout the sample project that repro the issue from here - https://github.com/farcasclaudiu/docfx_conflict
2. build project (dotnet build) - should succeed
3. run `docfx ./docfx_project/docfx.json --force --debug` command
It fails.

**Expected Behavior**:
to generate the apidoc _site without any error.

**Actual Behavior**:
error in command line:
`[20-12-04 01:01:31.963]Error:[BuildCommand.BuildCore.Build Document.LinkPhaseHandlerWithIncremental.Apply Templates](api/docfx_conflict.yml)Error transforming model "/var/folders/87/y9_3c0qn76g9wlzzg5m8fsl40000gn/T/docfx/rawmodel/api/docfx_conflict.raw.json" generated from "api/docfx_conflict.yml" using "ManagedReference.html.primary.js". Error running Transform function inside template preprocessor: type is undefined`

**Cause of the error**
The error message is not very helpful unfortunately.
The error is caused because in the project coexist a namespace (`docfx_conflict.member`) and a class (`docfx_conflict.Member`) and docfx generated yaml metadata files for both of these, but the OS filesystem is case insensitive. One will be overwritten I guess.

Any idea?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.