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

[docs] Fix malformed csv files #80567

Closed
wants to merge 2 commits into from
Closed

Conversation

wusatosi
Copy link

@wusatosi wusatosi commented Feb 3, 2024

This commit includes fixes malformed csv files:
FormatPaper.csv
FormatIssues.csv
Cxx23Issues.csv
Cxx23Papers.csv
Cxx20Issues.csv
FormatIssues.csv
ZipProjects.csv

These are all the csv files in this repository that is malformed (reported by csval), most of them are missing the "label" column.

Note that csv files under "./libcxx/test/libcxx/transitive_includes/" are space-separated but not comma-separated, which may not be conforming to the csv specification, but is not included in this PR.

I can setup a GitHub CI validating the updated csv file in another pr if that would be desired.

@wusatosi wusatosi requested a review from a team as a code owner February 3, 2024 21:52
Copy link

github-actions bot commented Feb 3, 2024

Thank you for submitting a Pull Request (PR) to the LLVM Project!

This PR will be automatically labeled and the relevant teams will be
notified.

If you wish to, you can add reviewers by using the "Reviewers" section on this page.

If this is not working for you, it is probably because you do not have write
permissions for the repository. In which case you can instead tag reviewers by
name in a comment by using @ followed by their GitHub username.

If you have received no comments on your PR for a week, you can request a review
by "ping"ing the PR by adding a comment “Ping”. The common courtesy "ping" rate
is once a week. Please remember that you are asking for valuable time from other developers.

If you have further questions, they may be answered by the LLVM GitHub User Guide.

You can also ask questions in a comment on this PR, on the LLVM Discord or on the forums.

@llvmbot llvmbot added the libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. label Feb 3, 2024
@llvmbot
Copy link
Collaborator

llvmbot commented Feb 3, 2024

@llvm/pr-subscribers-libcxx

Author: None (wusatosi)

Changes

This commit includes fixes malformed csv files:
FormatPaper.csv
FormatIssues.csv
Cxx23Issues.csv
Cxx23Papers.csv
Cxx20Issues.csv
FormatIssues.csv
ZipProjects.csv

These are all the csv files in this repository that is malformed (reported by csval), most of them are missing the "label" column.

Note that csv files under "./libcxx/test/libcxx/transitive_includes/" are space-separated but not comma-separated, which may not be conforming to the csv specification, but is not included in this PR.

I can setup a GitHub CI validating the updated csv file in another pr if that would be desired.


Patch is 178.20 KiB, truncated to 20.00 KiB below, full version: https://github.com/llvm/llvm-project/pull/80567.diff

7 Files Affected:

  • (modified) libcxx/docs/Status/Cxx20Issues.csv (+203-203)
  • (modified) libcxx/docs/Status/Cxx20Papers.csv (+162-162)
  • (modified) libcxx/docs/Status/Cxx23Issues.csv (+79-79)
  • (modified) libcxx/docs/Status/Cxx23Papers.csv (+59-59)
  • (modified) libcxx/docs/Status/FormatIssues.csv (+6-6)
  • (modified) libcxx/docs/Status/FormatPaper.csv (+9-9)
  • (modified) libcxx/docs/Status/ZipProjects.csv (+25-25)
diff --git a/libcxx/docs/Status/Cxx20Issues.csv b/libcxx/docs/Status/Cxx20Issues.csv
index 964c21df97e21..be39afb97abd8 100644
--- a/libcxx/docs/Status/Cxx20Issues.csv
+++ b/libcxx/docs/Status/Cxx20Issues.csv
@@ -1,208 +1,208 @@
 "Issue #","Issue Name","Meeting","Status","First released version","Labels"
-"`2070 <https://wg21.link/LWG2070>`__","``allocate_shared``\  should use ``allocator_traits<A>::construct``\ ","Toronto","Resolved by `P0674R1 <https://wg21.link/P0674R1>`__",""
-"`2444 <https://wg21.link/LWG2444>`__","Inconsistent complexity for ``std::sort_heap``\ ","Toronto","|Nothing To Do|",""
-"`2593 <https://wg21.link/LWG2593>`__","Moved-from state of Allocators","Toronto","",""
-"`2597 <https://wg21.link/LWG2597>`__","``std::log``\  misspecified for complex numbers","Toronto","",""
-"`2783 <https://wg21.link/LWG2783>`__","``stack::emplace()``\  and ``queue::emplace()``\  should return ``decltype(auto)``\ ","Toronto","|Complete|",""
-"`2932 <https://wg21.link/LWG2932>`__","Constraints on parallel algorithm implementations are underspecified","Toronto","",""
-"`2937 <https://wg21.link/LWG2937>`__","Is ``equivalent(""existing_thing"", ""not_existing_thing"")``\  an error","Toronto","|Complete|",""
-"`2940 <https://wg21.link/LWG2940>`__","``result_of``\  specification also needs a little cleanup","Toronto","|Nothing To Do|",""
-"`2942 <https://wg21.link/LWG2942>`__","LWG 2873's resolution missed ``weak_ptr::owner_before``\ ","Toronto","|Complete|",""
-"`2954 <https://wg21.link/LWG2954>`__","Specialization of the convenience variable templates should be prohibited","Toronto","|Complete|",""
-"`2961 <https://wg21.link/LWG2961>`__","Bad postcondition for ``set_default_resource``\ ","Toronto","|Complete|","16.0"
-"`2966 <https://wg21.link/LWG2966>`__","Incomplete resolution of US 74","Toronto","|Nothing To Do|",""
-"`2974 <https://wg21.link/LWG2974>`__","Diagnose out of bounds ``tuple_element/variant_alternative``\ ","Toronto","|Complete|",""
+"`2070 <https://wg21.link/LWG2070>`__","``allocate_shared``\  should use ``allocator_traits<A>::construct``\ ","Toronto","Resolved by `P0674R1 <https://wg21.link/P0674R1>`__","",""
+"`2444 <https://wg21.link/LWG2444>`__","Inconsistent complexity for ``std::sort_heap``\ ","Toronto","|Nothing To Do|","",""
+"`2593 <https://wg21.link/LWG2593>`__","Moved-from state of Allocators","Toronto","","",""
+"`2597 <https://wg21.link/LWG2597>`__","``std::log``\  misspecified for complex numbers","Toronto","","",""
+"`2783 <https://wg21.link/LWG2783>`__","``stack::emplace()``\  and ``queue::emplace()``\  should return ``decltype(auto)``\ ","Toronto","|Complete|","",""
+"`2932 <https://wg21.link/LWG2932>`__","Constraints on parallel algorithm implementations are underspecified","Toronto","","",""
+"`2937 <https://wg21.link/LWG2937>`__","Is ``equivalent(""existing_thing"", ""not_existing_thing"")``\  an error","Toronto","|Complete|","",""
+"`2940 <https://wg21.link/LWG2940>`__","``result_of``\  specification also needs a little cleanup","Toronto","|Nothing To Do|","",""
+"`2942 <https://wg21.link/LWG2942>`__","LWG 2873's resolution missed ``weak_ptr::owner_before``\ ","Toronto","|Complete|","",""
+"`2954 <https://wg21.link/LWG2954>`__","Specialization of the convenience variable templates should be prohibited","Toronto","|Complete|","",""
+"`2961 <https://wg21.link/LWG2961>`__","Bad postcondition for ``set_default_resource``\ ","Toronto","|Complete|","16.0",""
+"`2966 <https://wg21.link/LWG2966>`__","Incomplete resolution of US 74","Toronto","|Nothing To Do|","",""
+"`2974 <https://wg21.link/LWG2974>`__","Diagnose out of bounds ``tuple_element/variant_alternative``\ ","Toronto","|Complete|","",""
 "","","","","",""
-"`2779 <https://wg21.link/LWG2779>`__","[networking.ts] Relax requirements on buffer sequence iterators","Albuquerque","",""
-"`2870 <https://wg21.link/LWG2870>`__","Default value of parameter theta of polar should be dependent","Albuquerque","|Complete|",""
-"`2935 <https://wg21.link/LWG2935>`__","What should create_directories do when p already exists but is not a directory?","Albuquerque","|Nothing To Do|",""
-"`2941 <https://wg21.link/LWG2941>`__","[thread.req.timing] wording should apply to both member and namespace-level functions","Albuquerque","|Nothing To Do|",""
-"`2944 <https://wg21.link/LWG2944>`__","LWG 2905 accidentally removed requirement that construction of the deleter doesn't throw an exception","Albuquerque","|Nothing To Do|",""
-"`2945 <https://wg21.link/LWG2945>`__","Order of template parameters in optional comparisons","Albuquerque","|Complete|",""
-"`2948 <https://wg21.link/LWG2948>`__","unique_ptr does not define operator<< for stream output","Albuquerque","|Complete|",""
-"`2950 <https://wg21.link/LWG2950>`__","std::byte operations are misspecified","Albuquerque","|Complete|",""
-"`2952 <https://wg21.link/LWG2952>`__","iterator_traits should work for pointers to cv T","Albuquerque","|Complete|",""
-"`2953 <https://wg21.link/LWG2953>`__","LWG 2853 should apply to deque::erase too","Albuquerque","|Complete|",""
-"`2958 <https://wg21.link/LWG2958>`__","Moves improperly defined as deleted","Albuquerque","|Complete|",""
-"`2964 <https://wg21.link/LWG2964>`__","Apparently redundant requirement for dynamic_pointer_cast","Albuquerque","",""
-"`2965 <https://wg21.link/LWG2965>`__","Non-existing path::native_string() in filesystem_error::what() specification","Albuquerque","|Nothing To Do|",""
-"`2972 <https://wg21.link/LWG2972>`__","What is ``is_trivially_destructible_v<int>``\ ?","Albuquerque","|Complete|",""
-"`2976 <https://wg21.link/LWG2976>`__","Dangling uses_allocator specialization for packaged_task","Albuquerque","|Complete|",""
-"`2977 <https://wg21.link/LWG2977>`__","unordered_meow::merge() has incorrect Throws: clause","Albuquerque","|Nothing To Do|",""
-"`2978 <https://wg21.link/LWG2978>`__","Hash support for pmr::string and friends","Albuquerque","|Complete|","16.0"
-"`2979 <https://wg21.link/LWG2979>`__","aligned_union should require complete object types","Albuquerque","|Complete|",""
-"`2980 <https://wg21.link/LWG2980>`__","Cannot compare_exchange empty pointers","Albuquerque","",""
-"`2981 <https://wg21.link/LWG2981>`__","Remove redundant deduction guides from standard library","Albuquerque","|Nothing To Do|",""
-"`2982 <https://wg21.link/LWG2982>`__","Making size_type consistent in associative container deduction guides","Albuquerque","",""
-"`2988 <https://wg21.link/LWG2988>`__","Clause 32 cleanup missed one typename","Albuquerque","|Complete|","13.0"
-"`2993 <https://wg21.link/LWG2993>`__","reference_wrapper<T> conversion from T&&","Albuquerque","|Complete|","13.0"
-"`2998 <https://wg21.link/LWG2998>`__","Requirements on function objects passed to {``forward_``,}list-specific algorithms","Albuquerque","|Nothing To Do|",""
-"`3001 <https://wg21.link/LWG3001>`__","weak_ptr::element_type needs remove_extent_t","Albuquerque","|Complete|","14.0"
-"`3024 <https://wg21.link/LWG3024>`__","variant's copies must be deleted instead of disabled via SFINAE","Albuquerque","|Complete|",""
+"`2779 <https://wg21.link/LWG2779>`__","[networking.ts] Relax requirements on buffer sequence iterators","Albuquerque","","",""
+"`2870 <https://wg21.link/LWG2870>`__","Default value of parameter theta of polar should be dependent","Albuquerque","|Complete|","",""
+"`2935 <https://wg21.link/LWG2935>`__","What should create_directories do when p already exists but is not a directory?","Albuquerque","|Nothing To Do|","",""
+"`2941 <https://wg21.link/LWG2941>`__","[thread.req.timing] wording should apply to both member and namespace-level functions","Albuquerque","|Nothing To Do|","",""
+"`2944 <https://wg21.link/LWG2944>`__","LWG 2905 accidentally removed requirement that construction of the deleter doesn't throw an exception","Albuquerque","|Nothing To Do|","",""
+"`2945 <https://wg21.link/LWG2945>`__","Order of template parameters in optional comparisons","Albuquerque","|Complete|","",""
+"`2948 <https://wg21.link/LWG2948>`__","unique_ptr does not define operator<< for stream output","Albuquerque","|Complete|","",""
+"`2950 <https://wg21.link/LWG2950>`__","std::byte operations are misspecified","Albuquerque","|Complete|","",""
+"`2952 <https://wg21.link/LWG2952>`__","iterator_traits should work for pointers to cv T","Albuquerque","|Complete|","",""
+"`2953 <https://wg21.link/LWG2953>`__","LWG 2853 should apply to deque::erase too","Albuquerque","|Complete|","",""
+"`2958 <https://wg21.link/LWG2958>`__","Moves improperly defined as deleted","Albuquerque","|Complete|","",""
+"`2964 <https://wg21.link/LWG2964>`__","Apparently redundant requirement for dynamic_pointer_cast","Albuquerque","","",""
+"`2965 <https://wg21.link/LWG2965>`__","Non-existing path::native_string() in filesystem_error::what() specification","Albuquerque","|Nothing To Do|","",""
+"`2972 <https://wg21.link/LWG2972>`__","What is ``is_trivially_destructible_v<int>``\ ?","Albuquerque","|Complete|","",""
+"`2976 <https://wg21.link/LWG2976>`__","Dangling uses_allocator specialization for packaged_task","Albuquerque","|Complete|","",""
+"`2977 <https://wg21.link/LWG2977>`__","unordered_meow::merge() has incorrect Throws: clause","Albuquerque","|Nothing To Do|","",""
+"`2978 <https://wg21.link/LWG2978>`__","Hash support for pmr::string and friends","Albuquerque","|Complete|","16.0",""
+"`2979 <https://wg21.link/LWG2979>`__","aligned_union should require complete object types","Albuquerque","|Complete|","",""
+"`2980 <https://wg21.link/LWG2980>`__","Cannot compare_exchange empty pointers","Albuquerque","","",""
+"`2981 <https://wg21.link/LWG2981>`__","Remove redundant deduction guides from standard library","Albuquerque","|Nothing To Do|","",""
+"`2982 <https://wg21.link/LWG2982>`__","Making size_type consistent in associative container deduction guides","Albuquerque","","",""
+"`2988 <https://wg21.link/LWG2988>`__","Clause 32 cleanup missed one typename","Albuquerque","|Complete|","13.0",""
+"`2993 <https://wg21.link/LWG2993>`__","reference_wrapper<T> conversion from T&&","Albuquerque","|Complete|","13.0",""
+"`2998 <https://wg21.link/LWG2998>`__","Requirements on function objects passed to {``forward_``,}list-specific algorithms","Albuquerque","|Nothing To Do|","",""
+"`3001 <https://wg21.link/LWG3001>`__","weak_ptr::element_type needs remove_extent_t","Albuquerque","|Complete|","14.0",""
+"`3024 <https://wg21.link/LWG3024>`__","variant's copies must be deleted instead of disabled via SFINAE","Albuquerque","|Complete|","",""
 "","","","","",""
-"`2164 <https://wg21.link/LWG2164>`__","What are the semantics of ``vector.emplace(vector.begin(), vector.back())``\ ?","Jacksonville","|Complete|",""
-"`2243 <https://wg21.link/LWG2243>`__","``istream::putback``\  problem","Jacksonville","|Complete|",""
-"`2816 <https://wg21.link/LWG2816>`__","``resize_file``\  has impossible postcondition","Jacksonville","|Nothing To Do|",""
-"`2843 <https://wg21.link/LWG2843>`__","Unclear behavior of ``std::pmr::memory_resource::do_allocate()``\ ","Jacksonville","|Complete|",""
-"`2849 <https://wg21.link/LWG2849>`__","Why does ``!is_regular_file(from)``\  cause ``copy_file``\  to report a ""file already exists"" error?","Jacksonville","|Nothing To Do|",""
-"`2851 <https://wg21.link/LWG2851>`__","``std::filesystem``\  enum classes are now underspecified","Jacksonville","|Nothing To Do|",""
-"`2946 <https://wg21.link/LWG2946>`__","LWG 2758's resolution missed further corrections","Jacksonville","|Complete|",""
-"`2969 <https://wg21.link/LWG2969>`__","``polymorphic_allocator::construct()``\  shouldn't pass ``resource()``\ ","Jacksonville","|Complete|",""
-"`2975 <https://wg21.link/LWG2975>`__","Missing case for ``pair``\  construction in scoped and polymorphic allocators","Jacksonville","",""
-"`2989 <https://wg21.link/LWG2989>`__","``path``\ 's stream insertion operator lets you insert everything under the sun","Jacksonville","|Complete|",""
-"`3000 <https://wg21.link/LWG3000>`__","``monotonic_memory_resource::do_is_equal``\  uses ``dynamic_cast``\  unnecessarily","Jacksonville","|Complete|","16.0"
-"`3002 <https://wg21.link/LWG3002>`__","[networking.ts] ``basic_socket_acceptor::is_open()``\  isn't ``noexcept``\ ","Jacksonville","",""
-"`3004 <https://wg21.link/LWG3004>`__","|sect|\ [string.capacity] and |sect|\ [vector.capacity] should specify time complexity for ``capacity()``\ ","Jacksonville","|Nothing To Do|",""
-"`3005 <https://wg21.link/LWG3005>`__","Destruction order of arrays by ``make_shared/allocate_shared``\  only recommended?","Jacksonville","",""
-"`3007 <https://wg21.link/LWG3007>`__","``allocate_shared``\  should rebind allocator to *cv*-unqualified ``value_type``\  for construction","Jacksonville","",""
-"`3009 <https://wg21.link/LWG3009>`__","Including ``<string_view>``\  doesn't provide ``std::size/empty/data``\ ","Jacksonville","|Complete|",""
-"`3010 <https://wg21.link/LWG3010>`__","[networking.ts] ``uses_executor``\  says ""if a type ``T::executor_type``\  exists""","Jacksonville","",""
-"`3013 <https://wg21.link/LWG3013>`__","``(recursive_)directory_iterator``\  construction and traversal should not be ``noexcept``\ ","Jacksonville","|Complete|",""
-"`3014 <https://wg21.link/LWG3014>`__","More ``noexcept``\  issues with filesystem operations","Jacksonville","|Complete|",""
-"`3015 <https://wg21.link/LWG3015>`__","``copy_options::*unspecified*``\  underspecified","Jacksonville","|Nothing To Do|",""
-"`3017 <https://wg21.link/LWG3017>`__","``list splice``\  functions should use ``addressof``\ ","Jacksonville","|Complete|",""
-"`3020 <https://wg21.link/LWG3020>`__","[networking.ts] Remove spurious nested ``value_type``\  buffer sequence requirement","Jacksonville","",""
-"`3026 <https://wg21.link/LWG3026>`__","``filesystem::weakly_canonical``\  still defined in terms of ``canonical(p, base)``\ ","Jacksonville","|Complete|",""
-"`3030 <https://wg21.link/LWG3030>`__","Who shall meet the requirements of ``try_lock``\ ?","Jacksonville","|Nothing To Do|",""
-"`3034 <https://wg21.link/LWG3034>`__","P0767R1 breaks previously-standard-layout types","Jacksonville","|Complete|",""
-"`3035 <https://wg21.link/LWG3035>`__","``std::allocator``\ 's constructors should be ``constexpr``\ ","Jacksonville","|Complete|",""
-"`3039 <https://wg21.link/LWG3039>`__","Unnecessary ``decay``\  in ``thread``\  and ``packaged_task``\ ","Jacksonville","|Complete|",""
-"`3041 <https://wg21.link/LWG3041>`__","Unnecessary ``decay``\  in ``reference_wrapper``\ ","Jacksonville","|Complete|",""
-"`3042 <https://wg21.link/LWG3042>`__","``is_literal_type_v``\  should be inline","Jacksonville","|Complete|",""
-"`3043 <https://wg21.link/LWG3043>`__","Bogus postcondition for ``filesystem_error``\  constructor","Jacksonville","|Complete|",""
-"`3045 <https://wg21.link/LWG3045>`__","``atomic<floating-point>``\  doesn't have ``value_type``\  or ``difference_type``\ ","Jacksonville","",""
-"`3048 <https://wg21.link/LWG3048>`__","``transform_reduce(exec, first1, last1, first2, init)``\  discards execution policy","Jacksonville","|Complete|","17.0"
-"`3051 <https://wg21.link/LWG3051>`__","Floating point classifications were inadvertently changed in P0175","Jacksonville","|Nothing To Do|",""
-"`3075 <https://wg21.link/LWG3075>`__","``basic_string``\  needs deduction guides from ``basic_string_view``\ ","Jacksonville","|Complete|",""
+"`2164 <https://wg21.link/LWG2164>`__","What are the semantics of ``vector.emplace(vector.begin(), vector.back())``\ ?","Jacksonville","|Complete|","",""
+"`2243 <https://wg21.link/LWG2243>`__","``istream::putback``\  problem","Jacksonville","|Complete|","",""
+"`2816 <https://wg21.link/LWG2816>`__","``resize_file``\  has impossible postcondition","Jacksonville","|Nothing To Do|","",""
+"`2843 <https://wg21.link/LWG2843>`__","Unclear behavior of ``std::pmr::memory_resource::do_allocate()``\ ","Jacksonville","|Complete|","",""
+"`2849 <https://wg21.link/LWG2849>`__","Why does ``!is_regular_file(from)``\  cause ``copy_file``\  to report a ""file already exists"" error?","Jacksonville","|Nothing To Do|","",""
+"`2851 <https://wg21.link/LWG2851>`__","``std::filesystem``\  enum classes are now underspecified","Jacksonville","|Nothing To Do|","",""
+"`2946 <https://wg21.link/LWG2946>`__","LWG 2758's resolution missed further corrections","Jacksonville","|Complete|","",""
+"`2969 <https://wg21.link/LWG2969>`__","``polymorphic_allocator::construct()``\  shouldn't pass ``resource()``\ ","Jacksonville","|Complete|","",""
+"`2975 <https://wg21.link/LWG2975>`__","Missing case for ``pair``\  construction in scoped and polymorphic allocators","Jacksonville","","",""
+"`2989 <https://wg21.link/LWG2989>`__","``path``\ 's stream insertion operator lets you insert everything under the sun","Jacksonville","|Complete|","",""
+"`3000 <https://wg21.link/LWG3000>`__","``monotonic_memory_resource::do_is_equal``\  uses ``dynamic_cast``\  unnecessarily","Jacksonville","|Complete|","16.0",""
+"`3002 <https://wg21.link/LWG3002>`__","[networking.ts] ``basic_socket_acceptor::is_open()``\  isn't ``noexcept``\ ","Jacksonville","","",""
+"`3004 <https://wg21.link/LWG3004>`__","|sect|\ [string.capacity] and |sect|\ [vector.capacity] should specify time complexity for ``capacity()``\ ","Jacksonville","|Nothing To Do|","",""
+"`3005 <https://wg21.link/LWG3005>`__","Destruction order of arrays by ``make_shared/allocate_shared``\  only recommended?","Jacksonville","","",""
+"`3007 <https://wg21.link/LWG3007>`__","``allocate_shared``\  should rebind allocator to *cv*-unqualified ``value_type``\  for construction","Jacksonville","","",""
+"`3009 <https://wg21.link/LWG3009>`__","Including ``<string_view>``\  doesn't provide ``std::size/empty/data``\ ","Jacksonville","|Complete|","",""
+"`3010 <https://wg21.link/LWG3010>`__","[networking.ts] ``uses_executor``\  says ""if a type ``T::executor_type``\  exists""","Jacksonville","","",""
+"`3013 <https://wg21.link/LWG3013>`__","``(recursive_)directory_iterator``\  construction and traversal should not be ``noexcept``\ ","Jacksonville","|Complete|","",""
+"`3014 <https://wg21.link/LWG3014>`__","More ``noexcept``\  issues with filesystem operations","Jacksonville","|Complete|","",""
+"`3015 <https://wg21.link/LWG3015>`__","``copy_options::*unspecified*``\  underspecified","Jacksonville","|Nothing To Do|","",""
+"`3017 <https://wg21.link/LWG3017>`__","``list splice``\  functions should use ``addressof``\ ","Jacksonville","|Complete|","",""
+"`3020 <https://wg21.link/LWG3020>`__","[networking.ts] Remove spurious nested ``value_type``\  buffer sequence requirement","Jacksonville","","",""
+"`3026 <https://wg21.link/LWG3026>`__","``filesystem::weakly_canonical``\  still defined in terms of ``canonical(p, base)``\ ","Jacksonville","|Complete|","",""
+"`3030 <https://wg21.link/LWG3030>`__","Who shall meet the requirements of ``try_lock``\ ?","Jacksonville","|Nothing To Do|","",""
+"`3034 <https://wg21.link/LWG3034>`__","P0767R1 breaks previously-standard-layout types","Jacksonville","|Complete|","",""
+"`3035 <https://wg21.link/LWG3035>`__","``std::allocator``\ 's constructors should be ``constexpr``\ ","Jacksonville","|Complete|","",""
+"`3039 <https://wg21.link/LWG3039>`__","Unnecessary ``decay``\  in ``thread``\  and ``packaged_task``\ ","Jacksonville","|Complete|","",""
+"`3041 <https://wg21.link/LWG3041>`__","Unnecessary ``decay``\  in ``reference_wrapper``\ ","Jacksonville","|Complete|","",""
+"`3042 <https://wg21.link/LWG3042>`__","``is_literal_type_v``\  should be inline","Jacksonville","|Complete|","",""
+"`3043 <https://wg21.link/LWG3043>`__","Bogus postcondition for ``filesystem_error``\  constructor","Jacksonville","|Complete|","",""
+"`3045 <https://wg21.link/LWG3045>`__","``atomic<floating-point>``\  doesn't have ``value_type``\  or ``difference_type``\ ","Jacksonville","","",""
+"`3048 <https://wg21.link/LWG3048>`__","``transform_reduce(exec, first1, last1, first2, init)``\  discards execution policy","Jacksonville","|Complete|","17.0",""
+"`3051 <https://wg21.link/LWG3051>`__","Floating point classifications were inadvertently changed in P0175","Jacksonville","|Nothing To Do|","",""
+"`3075 <https://wg21.link/LWG3075>`__","``basic_string``\  needs deduction guides from ``basic_string_view``\ ","Jacksonville","|Complete|","",""
 "","","","","",""
-"`2139 <https://wg21.link/LWG2139>`__","What is a user-defined type?","Rapperswil","",""
-"`2970 <https://wg21.link/LWG2970>`__","Return type of st...
[truncated]

@philnik777
Copy link
Contributor

What problem does this solve?

@wusatosi
Copy link
Author

wusatosi commented Feb 3, 2024

What problem does this solve?

The listed csv files are currently malformed.

Currently this does not impact document generation on llvm side, but it prevents outside scripts from analyzing these files, like GitHub.

Copy link

github-actions bot commented Feb 5, 2024

⚠️ We detected that you are using a GitHub private e-mail address to contribute to the repo.
Please turn off Keep my email addresses private setting in your account.

This commit includes changes to:
FormatPaper.csv
FormatIssues.csv
Cxx23Issues.csv
Cxx23Papers.csv
Cxx20Issues.csv
FormatIssues.csv
ZipProjects.csv
Copy link
Member

@ldionne ldionne left a comment

Choose a reason for hiding this comment

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

IMO this makes sense, but could we add the CSV validation in this PR? Otherwise there’s no « testing » for this change.

@wusatosi
Copy link
Author

wusatosi commented Feb 7, 2024

IMO this makes sense, but could we add the CSV validation in this PR? Otherwise there’s no « testing » for this change.

Technically you can check this pr by just looking at the csv file on GitHub, broken csv is reported by GitHub

Broken (current):
https://github.com/llvm/llvm-project/blob/1b03cbc93989c84ad0b78c27d4427a7eaa5842f1/libcxx/docs/Status/FormatPaper.csv
Fixed:
https://github.com/wusatosi/llvm-project/blob/91963d8d02ee1cffea6b0a1da2f9b5bee2b08c4f/libcxx/docs/Status/FormatPaper.csv

But yes this definitely needs to be in the CI.

What is the standard for adding code-format check in CI? Should I add this functionality as a stand-alone CI file, or should I add this functionality to which existing pipeline? (Is it code-format-helper.py?)

@ldionne
Copy link
Member

ldionne commented Feb 8, 2024

@wusatosi What dependencies do you need to implement this check? If there are basically no dependencies that need to be installed, I would add it so that it gets checked as part of check-cxx, I think. But otherwise I would probably add it to .github/workflows/libcxx-check-generated-files.yml (and rename that file to something like libcxx-lightweight-checks.yml.

@wusatosi
Copy link
Author

wusatosi commented Feb 8, 2024

@wusatosi What dependencies do you need to implement this check? If there are basically no dependencies that need to be installed, I would add it so that it gets checked as part of check-cxx, I think. But otherwise I would probably add it to .github/workflows/libcxx-check-generated-files.yml (and rename that file to something like libcxx-lightweight-checks.yml.

Thanks for the reply, a simple python script should be sufficient, I don't think we need another Action.

I am not familiar with the CI so I don't really understand what "check-cxx" pipeline you are referring to.

By name, it looks like Test documentation build and check code formatting pipelines sounds like a good place to put in, though technically broken CSV doesn't break the documentation generation.

Is there any CI person I can consult on where to put this check in?

@mordante
Copy link
Member

a simple python script should be sufficient

Do you have an example of that script?

Is there any CI person I can consult on where to put this check in?

The best place to ask questions is the #libcxx channel on LLVM’s Discord server.

@philnik777
Copy link
Contributor

Is there any interest in pursuing this? If not, let's close this PR.

@ldionne
Copy link
Member

ldionne commented Jun 7, 2024

Tentatively closing to clear up the review queue, please reopen if you want to pursue.

@ldionne ldionne closed this Jun 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants