Configure WhiteSource Bolt for GitHub - #1
Open
mend-bolt-for-github[bot] wants to merge 1 commit into
Open
Conversation
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
…changkun#322) Add a new section 2.7 covering three self-contained C++17 language features that were missing (tracked in #1): - inline variables (incl. in-class static member init) - nested namespace definitions (namespace A::B::C) - constexpr lambda Each has a runnable example mirrored under code/2 and verified to compile and run with clang++ -std=c++2a -pedantic. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
The diagnostic message of static_assert became optional in C++17. Add a subsection in 2.7 with a compiled example (code/2/2.24). Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Explain that copy elision when initializing from a same-type prvalue became mandatory in C++17, so returning a non-copyable/non-movable prvalue by value is now well-formed. Compiled example in code/3/3.8. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
New section 4.4 introduces the non-owning read-only std::string_view (with a lifetime caveat) and the non-arithmetic std::byte raw-memory type. Compiled examples in code/4/4.4 and code/4/4.5. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Replace the TODO stub with a full chapter on std::filesystem (C++17): path construction/decomposition, status queries (with error_code vs exception handling), directory iteration (directory_iterator and the recursive variant), and create/copy/remove operations. Includes a self-contained, runnable example (code/8/8.1) that works in a scratch directory under the temp path; verified to compile and run with clang++ -std=c++2a. Refs #1 changkun#269
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Add subsections in 2.7: aggregates may now have aggregate base classes and be brace-initialized through them; and std::conjunction/disjunction/ negation for composing type traits. Compiled examples code/2/2.25-2.26. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Section 4.5 covers try_emplace / insert_or_assign and node-based extract / merge; section 4.6 introduces polymorphic allocators (std::pmr) with a monotonic_buffer_resource example. Compiled examples code/4/4.6-4.7. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Extend 9.4 with dynamic allocation of over-aligned types: C++17 added operator new/delete overloads taking std::align_val_t, so new respects alignof for over-aligned types. Compiled example code/9/9.4. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Section 9.5 explains why reinterpret_cast-based type punning is UB (strict aliasing) and shows the correct std::memcpy and C++20 std::bit_cast approaches (compiled example code/9/9.5). Section 9.6 documents the C++17 special math functions, with an explicit caveat that libc++ historically lacks them (so no compiled example). Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Add a 2.7 subsection on __has_include for portable conditional header inclusion, with a compiled example (code/2/2.27). Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Replace the TODO stubs in the C++20 chapter with real content: - Concepts: a concrete, compiled requires-expression example - Modules: export/import syntax, with a note that it needs a module-aware multi-step build (not the repo one-liner) - Ranges: lazy filter|transform pipeline (compiled, code/10/10.3) - Coroutines: a minimal co_yield generator (compiled, code/10/10.4) - Correct two factual errors: Contracts were removed from C++20 (now targeting C++26, see changkun#318) and Transactional Memory is only a TS, never part of C++20; they are no longer presented as C++20. Refs #1
pull Bot
pushed a commit
that referenced
this pull request
Jun 7, 2026
Replace the TODO stubs with concrete, widely-accepted best practices across tools, coding style, performance, safety, maintainability, and portability. Reword the intro to reference the C++ Core Guidelines and frame the content as generally accepted practice rather than secret tips. Refs #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Welcome to WhiteSource Bolt for GitHub! This is an onboarding PR to help you understand and configure settings before WhiteSource starts scanning your repository for security vulnerabilities.
🚦 WhiteSource Bolt for GitHub will start scanning your repository only once you merge this Pull Request. To disable WhiteSource Bolt for GitHub, simply close this Pull Request.
What to Expect
This PR contains a '.whitesource' configuration file which can be customized to your needs. If no changes were applied to this file, WhiteSource Bolt for GitHub will use the default configuration.
Before merging this PR, Make sure the Issues tab is enabled. Once you merge this PR, WhiteSource Bolt for GitHub will scan your repository and create a GitHub Issue for every vulnerability detected in your repository.
If you do not want a GitHub Issue to be created for each detected vulnerability, you can edit the '.whitesource' file and set the 'minSeverityLevel' parameter to 'NONE'.
❓ Got questions? Check out WhiteSource Bolt for GitHub docs.
If you need any further assistance then you can also request help here.