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

Concept: Features / Default features / add default features section to troubleshooting guide #255

Merged
merged 9 commits into from
Feb 27, 2024

Conversation

JavierMatosD
Copy link
Contributor

No description provided.

Copy link
Contributor

Learn Build status updates of commit 25c6d5b:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.


### Resolution

To ensure that transitive dependencies like `X` are installed without their default features, you need to promote them to direct dependencies in your top-level manifest and explicitly disable their default features. Modify your `vcpkg.json` to include `X` directly with `"default-features": false`:
Copy link
Contributor

Choose a reason for hiding this comment

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

This instruction doesn't lead to the desired resolution when the user needs third port Z which depends on X but lacks the "default-features": false property on the X dependency just because Z's maintainers weren't aware of the default features (at that time).

  • The user can't override the behavior.
  • The user will face difficulties to realize that this is a port bug in Z.
  • The Z maintainers have no tool support to check which dependencies have default features
  • The Z maintainers have no way to express that they really want to depend on default-features.

All up to brainware.

@Thomas1664
Copy link
Contributor

I agree with @dg0yt s comments: You basically have to remember which ports do have default features. Considering that this may change over time, it's almost impossible to avoid the kind of bug @dg0yt describes. Given that default features often lead to much more ports being built, I think this feature should be refined or entirely removed.

vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/users/versioning-troubleshooting.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vicroms
vicroms previously requested changes Feb 8, 2024
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
@vicroms
Copy link
Member

vicroms commented Feb 12, 2024

See #264 for existing documentation that should be included in a standalone features article.

@JavierMatosD JavierMatosD changed the title Concept: Default features / add default features section to troubleshooting guide Concept: Features / Default features / add default features section to troubleshooting guide Feb 21, 2024
Copy link
Contributor

Learn Build status updates of commit c099112:

✅ Validation status: passed

File Status Preview URL Details
.openpublishing.redirection.json ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

Copy link
Contributor

Learn Build status updates of commit 8aecb9f:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/commands/install.md ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/reference/vcpkg-json.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/binarycaching.md ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

Copy link
Contributor

Learn Build status updates of commit bb15527:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/commands/install.md ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/reference/vcpkg-json.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/binarycaching.md ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

Copy link
Member

@vicroms vicroms left a comment

Choose a reason for hiding this comment

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

Partial review

vcpkg/concepts/features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Outdated Show resolved Hide resolved
Copy link
Contributor

Learn Build status updates of commit c3a636f:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/commands/install.md ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/reference/vcpkg-json.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/binarycaching.md ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

vcpkg/TOC.yml Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
Copy link
Contributor

Learn Build status updates of commit 6001874:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/commands/install.md ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/reference/vcpkg-json.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/binarycaching.md ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/default-features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Outdated Show resolved Hide resolved
vcpkg/concepts/features.md Show resolved Hide resolved
Copy link
Contributor

Learn Build status updates of commit adc02c6:

✅ Validation status: passed

File Status Preview URL Details
vcpkg/commands/install.md ✅Succeeded View
vcpkg/concepts/default-features.md ✅Succeeded View
vcpkg/concepts/features.md ✅Succeeded View
vcpkg/reference/vcpkg-json.md ✅Succeeded View
vcpkg/TOC.yml ✅Succeeded View
vcpkg/users/binarycaching.md ✅Succeeded View
vcpkg/users/versioning-troubleshooting.md ✅Succeeded View

For more details, please refer to the build report.

For any questions, please:

Copy link

PRMerger Results

Issue Description
Added File(s) This PR contains added files. New files require human review.
Yaml File(s) This PR includes changes to .yml file(s) owned by another author.
File Change Percent This PR contains file(s) with more than 30% file change.

@vicroms vicroms merged commit 5ed8cb1 into microsoft:main Feb 27, 2024
2 checks passed
@JavierMatosD JavierMatosD deleted the default_features branch July 20, 2024 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants