Some suggestions about devcontainer.json, clang-tidy, cmake-format, and ubuntu jimmy.
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
調査の方向性
まず devcontainer.json、Dockerfile、.clang-tidy を調べ、次にプロジェクトが現在 CMake のフォーマットと Ubuntu のサポートをどのように扱っているかを確認します。変更を加える前に、どの提案を受け入れるかを確認してください。合意した開発コンテナ、lint、フォーマット、命名、Ubuntu に関する更新が一貫して反映されていれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Hello @lefticus. I admire your work. I have some suggestions and we can discuss about them and then I can create some PRs if they turn out to be good :
In devcontainer.json, add these settings for better automatically checking for Clang errors. VSCode shows nicely the problems and underlines the problematics line.
"C_Cpp.codeAnalysis.runAutomatically": true, // For automatically run code analysis on save
"C_Cpp.codeAnalysis.clangTidy.enabled": true, // Clang tidy checks are included when it is run code analysis
"C_Cpp.codeAnalysis.exclude": { // Exclude checking in out directory (using presets). Maybe need some other folders too.
"${workspaceFolder}/out/**": true
And add extension:
"cheshirekow.cmake-format" // For automatically run formating cmake files on save
This extension must have installed cmake-format. Because of this, we need to add in Dockerfile:
RUN python3 -m pip install cmake_format
In .clang-tidy I always like to add CheckOptions for example:
CheckOptions:
- { key: readability-identifier-naming.NamespaceCase, value: lower_case }
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
- { key: readability-identifier-naming.StructCase, value: CamelCase }
- { key: readability-identifier-naming.TemplateParameterCase, value: CamelCase }
- { key: readability-identifier-naming.FunctionCase, value: CamelCase }
- { key: readability-identifier-naming.VariableCase, value: lower_case }
- { key: readability-identifier-naming.PrivateMemberSuffix, value: _ }
- { key: readability-identifier-naming.ProtectedMemberSuffix, value: _ }
- { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE }
- { key: readability-identifier-naming.EnumConstantCase, value: CamelCase }
- { key: readability-identifier-naming.EnumConstantPrefix, value: k }
- { key: readability-identifier-naming.ConstexprVariableCase, value: CamelCase }
- { key: readability-identifier-naming.ConstexprVariablePrefix, value: k }
- { key: readability-identifier-naming.GlobalConstantCase, value: CamelCase }
- { key: readability-identifier-naming.GlobalConstantPrefix, value: k }
- { key: readability-identifier-naming.MemberConstantCase, value: CamelCase }
- { key: readability-identifier-naming.MemberConstantPrefix, value: k }
- { key: readability-identifier-naming.StaticConstantCase, value: CamelCase }
- { key: readability-identifier-naming.StaticConstantPrefix, value: k }
This force developers to use the same naming conventions. What do you think?
One more suggestion is to support the new ubuntu Jimmy.
- 主要言語
- CMake
- スター
- 1.8k
- フォーク
- 205
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
cpp-best-practices/cmake_template のほかの issue
-
Put back `-Wsign-conversion` for gcc in CompilerWarnings.cmake対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 2/5 1時間未満 初心者へのやさしさ 85/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
cpp-best-practices/cmake_template#140 · コメント 2 件 ·
-
From-scratch clone/build fails on `src/ftxui_sample/CMakeFiles/intro.dir/main.cpp.obj`対応中かも @leftibot が 195 日前に担当しました。 オープン
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
cpp-best-practices/cmake_template#139 · コメント 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
cpp-best-practices/cmake_template#91 · コメント 2 件 ·
cpp-best-practices/cmake_template の issue をすべて見る
似ている issue
-
Font inlining cache is not created or reused対応中かも @nagahara-naoki が今日担当しました。 オープンarea: @angular/build
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
angular/angular-cli#34719 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
osaurus-ai/osaurus#3422 ·
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
foundation/foundation-emails#2127 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
mw00/project-maya#983 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信