Skip to content

Code Review Videos

Stephan T. Lavavej edited this page May 31, 2023 · 80 revisions

Overview

The maintainers of the repo have been hosting "Code Review Meetings" where a member of the team reviews an open Pull Request in a Microsoft Teams meeting. In attendance are other members of the STL team and often individuals from other MSVC-related teams (such as the MSVC compiler team). The purpose of these meetings is to provide insight into the reviewing process for the STL, share communal knowledge and background, and answer questions.

We've received some feedback from contributors that there is a desire for live coding/reviewing to provide some insight into how maintainers fix issues, plan features, check for bugs, etc. In response, we've decided to make the recordings of some of these Code Review Meetings public! They will be posted on YouTube on the Microsoft Visual Studio official channel, and can be found in this playlist.

Videos

Pull Request for Review Review Date YouTube Video Link
#1546: Prepare the constexpr machinery
needed for string and vector
2021-01-14 https://youtu.be/FUzrnHEiFI0
#1564: <syncstream>: implement
basic_syncbuf and basic_osyncstream
2021-01-28 https://youtu.be/dajUiLUeIas
#1564 (part 2): <syncstream>: implement
basic_syncbuf and basic_osyncstream
2021-02-04 https://youtu.be/bVi1xjo5RbY
#1629: <variant>: P0608R2 Improving
variant's converting constructor/assignment
2021-02-11 https://youtu.be/OyJVxNSyp70
#1502: P0980R1 constexpr std::string 2021-02-18 https://youtu.be/cwES3Keg58s
#1671: <chrono>: C++20 clocks,
clock_cast, tzdb::leap_seconds
2021-03-04 https://youtu.be/WX3OmVu4lAs
#1723: Loading time_zone and time_zone_link names 2021-03-11 https://youtu.be/MODhhr7m-5s
#1772: More optimizations for contiguous iterators 2021-03-25 https://youtu.be/mxD76vhsbkA
#1834: <format> assumes strings
are encoded in the active code page
2021-04-15 https://youtu.be/T4uzpkjMJX4
#1771: Cleanup vector a bit 2021-04-29 https://youtu.be/lN21eGSJfdU
#1877: Conditionally Borrowed Ranges 2021-05-13 https://youtu.be/kuW9IB63MDU
#1810: Optimizations for unreachable sentinels 2021-05-20 https://youtu.be/QwAuibCoxmg
#1131: Specialize find and count for vector<bool> 2021-06-03 https://youtu.be/AFQsXKL5pEY
#1994: Implement P1425R4 iterator
range constructors for stack and queue
2021-06-17 https://youtu.be/txh3c7n9-M8
#1588: <chrono>: make system_clock::now() and
file_clock aware of Windows leap second handling
2021-06-24 https://youtu.be/c7DT28TV0AY
#2019: <functional>: Implement invoke_r 2021-07-08 https://youtu.be/uEqP6Lg91vY
#2029: Implement P0448R4 spanstream 2021-07-22 https://youtu.be/-5lp8Ak4SG4
#2038: Implement P2328R1 join_view
Should Join All Views Of Ranges
2021-07-29 https://youtu.be/SnA5-aNES78
#2029 (part 2): Implement P0448R4 spanstream 2021-08-05 https://youtu.be/DUYym8072Zc
#2032: P1518R2 Stop Overconstraining
Allocators In Container Deduction Guides
2021-08-19 https://youtu.be/I3QIr7ho3qc
#2158: Extend memcpy, memmove,
and memcmp optimizations
2021-09-02 https://youtu.be/aQ4isF4f0bY
#2158 (part 2): Extend memcpy, memmove,
and memcmp optimizations
2021-09-09 https://youtu.be/YojGZFdCH-k
#2043: Optimize is_permutation
for reversed sequences
2021-09-23 Coming soon...
#2217: Replace tag dispatch with if constexpr
for _Choose_pocca, _Choose_pocma
2021-09-30 Coming soon...
#2071: <vector>: Add ASan annotations. 2021-10-14 Coming soon...
#2258: Implement P1072R10
basic_string::resize_and_overwrite
2021-11-04 Coming soon...
#2301: Implement P0798R8 monadic
operations for std::optional
2021-11-18 Coming soon...
#2350: P2077R3 Heterogeneous Erasure Overloads 2021-12-02 Coming soon...
#2380: Untag dispatch find 2021-12-09 Coming soon...
#2450: <ratio>: Use constexpr
functions instead of TMPs
2022-01-13 Coming soon...
#2437: <format>: Compile-time
string size estimation
2022-01-27 Coming soon...
#2498: constexpr all the
generate_canonical parameters
2022-02-03 Coming soon...
#2443: <format>: std::format should
work for volatile arguments
2022-02-17 Coming soon...
#2502: <stacktrace> 2022-03-10 Coming soon...
#2434: SSE2 & AVX2 std::find & std::count 2022-03-24 Coming soon...
#2619: Implement P2441R2 views::join_with 2022-03-31 Coming soon...
#2643: <expected> Implement P0323R12 2022-04-14 Coming soon...
#2643 (part 2): <expected> Implement P0323R12 2022-04-28 Coming soon...
#2447: Implement vectorized
min_ / max_element for ints
2022-05-12 Coming soon...
#2580: Implement P2440R1 ranges::iota,
ranges::shift_left, ranges::shift_right
2022-05-26 https://youtu.be/Waeq-IJ38AI
#1794: Use iterator concept
in vector's range constructor
2022-06-09 https://youtu.be/o4fYwtKpoz4
#2806: P1206R7 Conversions
From Ranges To Containers
2022-06-23 Coming soon...
#2806 (part 2): P1206R7 Conversions
From Ranges To Containers
2022-07-07 Coming soon...
#2661: P2387R3 Pipe for
user defined range adaptors
2022-07-14 Coming soon...
#2981: P1899R3: views::stride 2022-08-04 Coming soon...
#2211: [[nodiscard]] messages 2022-08-25 https://youtu.be/FwLRIvUV584
#3099: Folding algorithms 2022-09-15 Coming soon...
#3035: P2321R2: Added std::views::zip. 2022-10-13 https://youtu.be/mHQ5fn_9sXA
#3164: Re-enable ASAN string annotations 2022-11-03 Coming soon...
#3268: P1223R5: find_last, et al. 2022-12-08 Coming soon...
#3322: P2321R2: Added std::views::zip_transform. 2023-01-12 Coming soon...
#3361: Implement P2505R5 Monadic Functions
For std::expected
2023-02-07 Coming soon...
#3353: [vector.bool] Optimize
copy / move algorithms
2023-02-23 Coming soon...
#3337: P2093R14: Formatted Output 2023-03-16 Coming soon...
#3364: Implement LWG-2381 Inconsistency
in parsing floating point numbers
2023-04-06 Coming soon...
#3656: Implement the ? format specifier
for strings and characters
2023-04-27 Coming soon...