Skip to content

Conversation

@filzrev
Copy link
Contributor

@filzrev filzrev commented Feb 20, 2024

This PR intended to fix #8028.

When building API metadata from C#/VB source files.
The DefineConstants properties defined in docfx.json are not currently used.

This PR add logics to read DefineConstants MSBuild properties and set values to CSharpParseOptions/ VisualBasicParseOptions.

@codecov
Copy link

codecov bot commented Feb 20, 2024

Codecov Report

Attention: 3 lines in your changes are missing coverage. Please review.

Comparison is base (fe673ec) 74.31% compared to head (34bcf53) 74.29%.
Report is 30 commits behind head on main.

Files Patch % Lines
src/Docfx.Dotnet/CompilationHelper.cs 89.28% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #9707      +/-   ##
==========================================
- Coverage   74.31%   74.29%   -0.03%     
==========================================
  Files         536      536              
  Lines       23189    23224      +35     
  Branches     4056     4067      +11     
==========================================
+ Hits        17234    17255      +21     
- Misses       4853     4866      +13     
- Partials     1102     1103       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@filzrev filzrev force-pushed the feat-enable-defineconstants-on-sourcebuild branch from 342e66c to 34bcf53 Compare February 20, 2024 02:20
@yufeih yufeih added the new-feature Makes the pull request to appear in "New Features" section of the next release note label Feb 20, 2024
Copy link
Contributor

@yufeih yufeih left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great thank you @filzrev !

@yufeih yufeih merged commit 3a46668 into dotnet:main Feb 20, 2024
renovate bot referenced this pull request in dotnet/dotnet-operator-sdk Apr 7, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [docfx](https://togithub.com/dotnet/docfx) | `2.75.3` -> `2.76.0` |
[![age](https://developer.mend.io/api/mc/badges/age/nuget/docfx/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/docfx/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/docfx/2.75.3/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/docfx/2.75.3/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>dotnet/docfx (docfx)</summary>

### [`v2.76.0`](https://togithub.com/dotnet/docfx/releases/tag/v2.76.0)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### 🎉 New Features

- feat: Add DefineConstants supports for source file based build by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9707](https://togithub.com/dotnet/docfx/pull/9707)
- feat: Add additional layout options to modern template by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9737](https://togithub.com/dotnet/docfx/pull/9737)
- feat: Add pdfPrintBackground setting by
[@&#8203;cjlotz](https://togithub.com/cjlotz) in
[https://github.com/dotnet/docfx/pull/9742](https://togithub.com/dotnet/docfx/pull/9742)
- feat: Update roslyn packages by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9753](https://togithub.com/dotnet/docfx/pull/9753)
- feat: Publish nightly pre-release packages by
[@&#8203;yufeih](https://togithub.com/yufeih) in
[https://github.com/dotnet/docfx/pull/9788](https://togithub.com/dotnet/docfx/pull/9788)
- feat: Add DLL references support for file-based API metadata
generation by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9825](https://togithub.com/dotnet/docfx/pull/9825)
- feat: Support DOCFX_SOURCE_REPOSITORY_URL by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9759](https://togithub.com/dotnet/docfx/pull/9759)
- feat: Add feature to configure markdig extension by docfx.json
configs. by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9820](https://togithub.com/dotnet/docfx/pull/9820)
- feat: Support for all emphasis supported by MarkDig by
[@&#8203;EMaderbacher](https://togithub.com/EMaderbacher) in
[https://github.com/dotnet/docfx/pull/9762](https://togithub.com/dotnet/docfx/pull/9762)

##### 🐞 Bug Fixes

- fix: `docfx download` command behaviors by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9721](https://togithub.com/dotnet/docfx/pull/9721)
- fix: Resolved .NET SDK version problem on source-based API metadata
generation by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9713](https://togithub.com/dotnet/docfx/pull/9713)
- fix: Don't overwrite `_disabledToc` when metadata is explicitly
defined by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9741](https://togithub.com/dotnet/docfx/pull/9741)
- fix: Outputted PDF displays garbled characters when name contains
non-ASCII chars by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9769](https://togithub.com/dotnet/docfx/pull/9769)
- fix: Move script tags into head in modern template by
[@&#8203;fuzzykiller](https://togithub.com/fuzzykiller) in
[https://github.com/dotnet/docfx/pull/9768](https://togithub.com/dotnet/docfx/pull/9768)
- fix: Broken examples problems when using inheritdoc tag by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9754](https://togithub.com/dotnet/docfx/pull/9754)
- fix: NullReferenceException occurred when both include and exclude are
null by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9786](https://togithub.com/dotnet/docfx/pull/9786)
- fix: Change JsonSchema EvaluationOptions instance to shared object by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9807](https://togithub.com/dotnet/docfx/pull/9807)
- fix: Bug fix Invalid documentation on type parameter
[#&#8203;9755](https://togithub.com/dotnet/docfx/issues/9755) by
[@&#8203;soniyaprasad77](https://togithub.com/soniyaprasad77) in
[https://github.com/dotnet/docfx/pull/9806](https://togithub.com/dotnet/docfx/pull/9806)

##### 🚀 Performance Improvements

- perf: Optimize xrefmap.json file deserialization performance by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9824](https://togithub.com/dotnet/docfx/pull/9824)

##### 🔧 Engineering

- chore: percy snapshot by [@&#8203;yufeih](https://togithub.com/yufeih)
in
[https://github.com/dotnet/docfx/pull/9747](https://togithub.com/dotnet/docfx/pull/9747)
- chore: Add detailed error message for specific exceptions by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9746](https://togithub.com/dotnet/docfx/pull/9746)
- chore: update pdfpig nuget package version by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9803](https://togithub.com/dotnet/docfx/pull/9803)

##### 📄 Documentation

- docs: Split docfx CLI reference docs based on commands by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9708](https://togithub.com/dotnet/docfx/pull/9708)
- docs: Update markdown documentation regarding MarkDig extension by
[@&#8203;tbolon](https://togithub.com/tbolon) in
[https://github.com/dotnet/docfx/pull/9810](https://togithub.com/dotnet/docfx/pull/9810)
- docs: Update `docfx.json` config reference document by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9813](https://togithub.com/dotnet/docfx/pull/9813)
- docs: Correct `docfx template` page title by
[@&#8203;peitschie](https://togithub.com/peitschie) in
[https://github.com/dotnet/docfx/pull/9812](https://togithub.com/dotnet/docfx/pull/9812)
- docs: Add a warning about relative path resolution. by
[@&#8203;voroninp](https://togithub.com/voroninp) in
[https://github.com/dotnet/docfx/pull/9828](https://togithub.com/dotnet/docfx/pull/9828)

#### New Contributors

- [@&#8203;EMaderbacher](https://togithub.com/EMaderbacher) made their
first contribution in
[https://github.com/dotnet/docfx/pull/9762](https://togithub.com/dotnet/docfx/pull/9762)
- [@&#8203;fuzzykiller](https://togithub.com/fuzzykiller) made their
first contribution in
[https://github.com/dotnet/docfx/pull/9768](https://togithub.com/dotnet/docfx/pull/9768)
- [@&#8203;soniyaprasad77](https://togithub.com/soniyaprasad77) made
their first contribution in
[https://github.com/dotnet/docfx/pull/9806](https://togithub.com/dotnet/docfx/pull/9806)
- [@&#8203;tbolon](https://togithub.com/tbolon) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9810](https://togithub.com/dotnet/docfx/pull/9810)
- [@&#8203;peitschie](https://togithub.com/peitschie) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9812](https://togithub.com/dotnet/docfx/pull/9812)
- [@&#8203;voroninp](https://togithub.com/voroninp) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9828](https://togithub.com/dotnet/docfx/pull/9828)

**Full Changelog**:
dotnet/docfx@v2.75.3...v2.76.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone
Europe/Zurich, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/buehler/dotnet-operator-sdk).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
ian-buse referenced this pull request in dh2i-devs/dotnet-operator-sdk May 3, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [docfx](https://togithub.com/dotnet/docfx) | `2.75.3` -> `2.76.0` |
[![age](https://developer.mend.io/api/mc/badges/age/nuget/docfx/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/docfx/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/docfx/2.75.3/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/docfx/2.75.3/2.76.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>dotnet/docfx (docfx)</summary>

### [`v2.76.0`](https://togithub.com/dotnet/docfx/releases/tag/v2.76.0)

<!-- Release notes generated using configuration in .github/release.yml
at main -->

#### What's Changed

##### 🎉 New Features

- feat: Add DefineConstants supports for source file based build by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9707](https://togithub.com/dotnet/docfx/pull/9707)
- feat: Add additional layout options to modern template by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9737](https://togithub.com/dotnet/docfx/pull/9737)
- feat: Add pdfPrintBackground setting by
[@&#8203;cjlotz](https://togithub.com/cjlotz) in
[https://github.com/dotnet/docfx/pull/9742](https://togithub.com/dotnet/docfx/pull/9742)
- feat: Update roslyn packages by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9753](https://togithub.com/dotnet/docfx/pull/9753)
- feat: Publish nightly pre-release packages by
[@&#8203;yufeih](https://togithub.com/yufeih) in
[https://github.com/dotnet/docfx/pull/9788](https://togithub.com/dotnet/docfx/pull/9788)
- feat: Add DLL references support for file-based API metadata
generation by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9825](https://togithub.com/dotnet/docfx/pull/9825)
- feat: Support DOCFX_SOURCE_REPOSITORY_URL by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9759](https://togithub.com/dotnet/docfx/pull/9759)
- feat: Add feature to configure markdig extension by docfx.json
configs. by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9820](https://togithub.com/dotnet/docfx/pull/9820)
- feat: Support for all emphasis supported by MarkDig by
[@&#8203;EMaderbacher](https://togithub.com/EMaderbacher) in
[https://github.com/dotnet/docfx/pull/9762](https://togithub.com/dotnet/docfx/pull/9762)

##### 🐞 Bug Fixes

- fix: `docfx download` command behaviors by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9721](https://togithub.com/dotnet/docfx/pull/9721)
- fix: Resolved .NET SDK version problem on source-based API metadata
generation by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9713](https://togithub.com/dotnet/docfx/pull/9713)
- fix: Don't overwrite `_disabledToc` when metadata is explicitly
defined by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9741](https://togithub.com/dotnet/docfx/pull/9741)
- fix: Outputted PDF displays garbled characters when name contains
non-ASCII chars by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9769](https://togithub.com/dotnet/docfx/pull/9769)
- fix: Move script tags into head in modern template by
[@&#8203;fuzzykiller](https://togithub.com/fuzzykiller) in
[https://github.com/dotnet/docfx/pull/9768](https://togithub.com/dotnet/docfx/pull/9768)
- fix: Broken examples problems when using inheritdoc tag by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9754](https://togithub.com/dotnet/docfx/pull/9754)
- fix: NullReferenceException occurred when both include and exclude are
null by [@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9786](https://togithub.com/dotnet/docfx/pull/9786)
- fix: Change JsonSchema EvaluationOptions instance to shared object by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9807](https://togithub.com/dotnet/docfx/pull/9807)
- fix: Bug fix Invalid documentation on type parameter
[#&#8203;9755](https://togithub.com/dotnet/docfx/issues/9755) by
[@&#8203;soniyaprasad77](https://togithub.com/soniyaprasad77) in
[https://github.com/dotnet/docfx/pull/9806](https://togithub.com/dotnet/docfx/pull/9806)

##### 🚀 Performance Improvements

- perf: Optimize xrefmap.json file deserialization performance by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9824](https://togithub.com/dotnet/docfx/pull/9824)

##### 🔧 Engineering

- chore: percy snapshot by [@&#8203;yufeih](https://togithub.com/yufeih)
in
[https://github.com/dotnet/docfx/pull/9747](https://togithub.com/dotnet/docfx/pull/9747)
- chore: Add detailed error message for specific exceptions by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9746](https://togithub.com/dotnet/docfx/pull/9746)
- chore: update pdfpig nuget package version by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9803](https://togithub.com/dotnet/docfx/pull/9803)

##### 📄 Documentation

- docs: Split docfx CLI reference docs based on commands by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9708](https://togithub.com/dotnet/docfx/pull/9708)
- docs: Update markdown documentation regarding MarkDig extension by
[@&#8203;tbolon](https://togithub.com/tbolon) in
[https://github.com/dotnet/docfx/pull/9810](https://togithub.com/dotnet/docfx/pull/9810)
- docs: Update `docfx.json` config reference document by
[@&#8203;filzrev](https://togithub.com/filzrev) in
[https://github.com/dotnet/docfx/pull/9813](https://togithub.com/dotnet/docfx/pull/9813)
- docs: Correct `docfx template` page title by
[@&#8203;peitschie](https://togithub.com/peitschie) in
[https://github.com/dotnet/docfx/pull/9812](https://togithub.com/dotnet/docfx/pull/9812)
- docs: Add a warning about relative path resolution. by
[@&#8203;voroninp](https://togithub.com/voroninp) in
[https://github.com/dotnet/docfx/pull/9828](https://togithub.com/dotnet/docfx/pull/9828)

#### New Contributors

- [@&#8203;EMaderbacher](https://togithub.com/EMaderbacher) made their
first contribution in
[https://github.com/dotnet/docfx/pull/9762](https://togithub.com/dotnet/docfx/pull/9762)
- [@&#8203;fuzzykiller](https://togithub.com/fuzzykiller) made their
first contribution in
[https://github.com/dotnet/docfx/pull/9768](https://togithub.com/dotnet/docfx/pull/9768)
- [@&#8203;soniyaprasad77](https://togithub.com/soniyaprasad77) made
their first contribution in
[https://github.com/dotnet/docfx/pull/9806](https://togithub.com/dotnet/docfx/pull/9806)
- [@&#8203;tbolon](https://togithub.com/tbolon) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9810](https://togithub.com/dotnet/docfx/pull/9810)
- [@&#8203;peitschie](https://togithub.com/peitschie) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9812](https://togithub.com/dotnet/docfx/pull/9812)
- [@&#8203;voroninp](https://togithub.com/voroninp) made their first
contribution in
[https://github.com/dotnet/docfx/pull/9828](https://togithub.com/dotnet/docfx/pull/9828)

**Full Changelog**:
dotnet/docfx@v2.75.3...v2.76.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 9pm,before 6am" in timezone
Europe/Zurich, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/buehler/dotnet-operator-sdk).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4yNjkuMiIsInVwZGF0ZWRJblZlciI6IjM3LjI2OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
p-kostov pushed a commit to ErpNetDocs/docfx that referenced this pull request Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-feature Makes the pull request to appear in "New Features" section of the next release note

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DefineConstants / MSBuild Properties not working with non-csproj configurations.

2 participants