From e2a2306910da6b2c080937c497544b22c5f652f6 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:09:39 +0530 Subject: [PATCH 01/16] Added CONTRIBUTING.md --- CONTRIBUTING.md | 171 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..e3bf932 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,171 @@ +# Welcome to CONTRIBUTING.md + +Hey there, fellow Developer !!!... I'm happy to see you being hyped about making your *(probably first)* open-source contribution to this repo. We heartily welcome you to an amazing journey of open-source contribution. I hope you have fun learning and teaching at the same time. For the **C-CPP-Projects** repo, you'll be contributing the mini-projects that you’ve built while learning the concepts of c/c++ *(or)* c/cpp. + +## Setting up Environment + +You don't need any special dependencies to use it locally, Just make sure you have *[**git**](https://git-scm.com/ "visit official website") and required complier. It's recommended that GitHub cli *(or)* [**gh**](https://cli.github.com/ "visit official website") is installed for easier access to your repo, but that's totally optional. + +## Getting Started with Contribution + +So, before you jump right into your code editor and start working on your project, make sure you understand and follow the file structure and guidelines which are mentioned below. + +### Instructions and Guidelines + +- Most of the time you'll be working on c/c++ rather than the default files present within the repo. So, Make sure you **do not add/remove/modify any content present with the default files**. + + > [!IMPORTANT] + > - If any such changes are to be found within your Pull Request *(PR)*, then it will be **rejected** i.e., until and unless it's mentioned on an [Issue](https://github.com/Grow-with-Open-Source/C-CPP-Projects/issues "goto issues tab"). + > - If you wish to work on default file *(either to update or fix a bug)*, create an issue first and get assigned to the issue to let others know that the issue has been recorded and you've already begun working on it. + +- Also, your c/c++ code will be linted automatically as soon as you make the PR. The PR will be merged if and only if all the checks are completed. If there's any issue with the linting of your work, you can contact the maintainer within the conversation tab of your PR. + +- The linter used in the repo is [C/C++ Linter](https://github.com/marketplace/actions/c-c-linter "view in marketplace"), this linter is using [clang-tidy](https://clang.llvm.org/extra/clang-tidy/ "visit official website") and [clang-format](https://clang.llvm.org/docs/ClangFormatStyleOptions.html "visit official website") for stict checking of code-writing standards *(which mean they also check for the way you write your code)*. Even though your code successfully complies and runs as expected, if it's not following the coding standards or clang rules then the checks fails. + +- If you facing an issue while fixing your code to follow the coding standards then make sure to check the linting workflow as the step `Show diffs and exit` within the liniting workflow displays output of the command `clang-format-12 -style=Google ` *(which basically shows the formatted version of your code by following the stye guide provided by Google)*. + +
+ Thinking why did we use the workflow to format the code for you ? +
+ + > These coding style *(or)* standards will help you write more clean and understandable code thus increaing the readablitly and overall quality of the code. If we did the job for you by formating the code into the recommended coding standards, then it might slow you down in long run of writing and maintain your code. Even though it help you right now to contribute to this repo, you'll not be able to learn something new. Thus, we decided to help you by providing result of formatted code, in case your were not able to figure out. Happy learning and contributing + +
+
+ +#### File Structure + +- The basic file structure of this repo *(excluding any contributions)* as follows: + + > ``` + > /C-CPP-Projects/ + > | + > ├── .github + > | ├── data + > | | └── contributors-log.json + > | ├── scripts + > | | ├── convert_to_html_tables.py + > | | ├── update_contributors_log.py + > | | └── update_index_md.py + > | └── workflows + > | ├── C-CPP-linter.yml + > | ├── deploy-gh-pages.yml + > | └── update-contributors-details.yml + > ├── _includes + > | └── head-custom.html + > ├── assets + > | └── img + > | ├── page-cover.png + > | └── favicon.icon + > ├── index.md + > ├── _config.yml + > ├── .gitignore + > ├── LICENSE + > ├── CODE_OF_CONDUCT.md + > ├── CONTRIBUTING.md + > └── README.md + > ``` + +- Before you begin with your project contribution, make sure you create a new directory *(or)* folder within the repo with your project name. + + > [!NOTE] + > It's suggested to use any of the following naming conventions for the directory *(or)* folder: + > + > | Format | Example | + > | :---: | :---: | + > | Separated with dashes | `/my-project-name/` | + > | Separated with underscores | `/my_project_name/` | + > + > Note that you can also use spaces *(like `/my project name/`)* but it's recommended to use any of the above-mentioned naming conversions. + +- You can write simple docs for your project using [markdown](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax "visit official GitHub Markdown Docs"). You can write descriptions, add screenshots or even upload a video. **Just make sure documentation is done within files named `README.md` *(or)* `index.md`** + +- Even if you're project is small, try to keep it organized by keeping related files within their directories/folders + +
+ Here's an sample example +
+ + ``` + /C-CPP-Projects/ + | + ├── + └── + ├── header-files + | └── + ├── main.c # or `main.cpp` + └── README.md + ``` + + > [!NOTE] + > Note that this is an example to give you an idea of organizing files, no need to follow the exact pattern. You can come up with your own hierarchy based on your requirements. + +
+
+ +### Contributing + +Now that you have a basic understanding of this repo, let's talk a bit about the process of contributing... + +- **Step 1:** You start you setting up the environment [*(as discussed above)*](#setting-up-environment). + +- **Step 2:** Now start by [forking](https://github.com/Grow-with-Open-Source/C-CPP-Projects/fork "let's fork the repo") the repository. + +- **Step 3:** Clone the forked repository to your local machine. + ```bash + #cloning the repo + git clone https://github.com//C-CPP-Projects.git + + #entering the project directory + cd C-CPP-Projects + ``` + +- **Step 4:** Create a new branch to work on your contribution. use the following command: + ```bash + # create and check out to new branch + git checkout -b + + # check your branch currently in + git branch + ``` + +- **Step 5:** Now go ahead and create your own directory/folder with your project name with a proper naming convention and finish your project while maintaining a [file structure](#file-structure) & following other rules [*(as discussed above)*](#instructions-and-guidelines). + +- **Step 6:** Make sure you commit each and every change while working on your project parallelly, *(like one commit for creating `index.js`, another for writing a piece of code, and so on...)*. Using the following command: + ```bash + # tracking or staging the changes + git add . + + # commiting the changes + git commit -m " + ``` + + > [!IMPORTANT] + > Make sure to commit your each and every change with proper description + +- **Step 7:** After committing all the changes and completion of your work. push your commit to your forked repo, using the following commands: + ```bash + # check your branch name + git branch + + # push your commit to the origin repo + git push origin + ``` + +- **Step 8:** Now, create a pull request to the [original repo](https://github.com/Grow-with-Open-Source/C-CPP-Projects). [Learn about Pull requests](https://docs.github.com/articles/using-pull-requests "official GitHub documentation") + +- **Step 9:** After creating the pull request wait till the linting checks are done, if there's any issue with your c/c++ code then the checks won't pass. And if the checks won't pass you have to fix the errors, you can check the linting workflow to know where the error occurred. If you need any help, you can contact the maintainer within the PR. + +- **Step 10:** If the linting checks are done and your code passes the liniting checks, then wait for the maintainer to review your code and merge the pull request. If there's any issue with your PR, the maintainer will contact you and with the help of the maintainer you can resolve the issue, so that the maintainer merge your PR. + +When the maintainer merges your PR, you have successfully made your *(probably first)* open-source contribution to showcase your learning and provide a reference to a complete newbie. Everybody can see your work and make use of it. Good job, mate !!... + +## Rules and Regulations + +Here are some ground rules that you need to follow: + +- It's important for you to commit to each and every change. Don't just finish all of your work with a single commit. If you're a newbie, it will only be tolerated 3 times. +- Sending several pull requests for a single post is not accepted. +- Your Pull Request will not be merged, if you have modified, changed or deleted any files or content that doesn't belong to you. +- Pull Request containing any illegal, NFSW or any other content which doesn't help others in any way possible will be closed immediately. +- The Pull Request will only be merged if everything seems to be in order. You be notified if you did something wrong, and your pull request will only be merged if the notified changes are made. \ No newline at end of file From 790b16b66cbd8fdd8254bb97c4890811597a4e2e Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:10:29 +0530 Subject: [PATCH 02/16] Added CODE_OF_CONDUCT.md --- CODE_OF_CONDUCT.md | 128 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 CODE_OF_CONDUCT.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..b57bffe --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,128 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series +of actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or +permanent ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within +the community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.0, available at +https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by [Mozilla's code of conduct +enforcement ladder](https://github.com/mozilla/diversity). + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see the FAQ at +https://www.contributor-covenant.org/faq. Translations are available at +https://www.contributor-covenant.org/translations. \ No newline at end of file From da2cfa06cba5d146015efdfdd81403fdd72291c4 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:14:55 +0530 Subject: [PATCH 03/16] Added images --- assets/img/favicon.ico | Bin 0 -> 15086 bytes assets/img/page-cover.png | Bin 0 -> 285612 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 assets/img/favicon.ico create mode 100644 assets/img/page-cover.png diff --git a/assets/img/favicon.ico b/assets/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..aea9b4c0b16260afba11a2068a084b4f3ee25ae2 GIT binary patch literal 15086 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 Wiu=|RTU9DkEh+eO<*prl==*<`nk>=) literal 0 HcmV?d00001 diff --git a/assets/img/page-cover.png b/assets/img/page-cover.png new file mode 100644 index 0000000000000000000000000000000000000000..59783f2c8f7d94853e9b6700d370a297aa49002b GIT binary patch literal 285612 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π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 literal 0 HcmV?d00001 From ffc99115fba08c4d76c347d53fe46c7f7456e792 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:16:56 +0530 Subject: [PATCH 04/16] Added head-custom.html --- _includes/head-custom.html | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 _includes/head-custom.html diff --git a/_includes/head-custom.html b/_includes/head-custom.html new file mode 100644 index 0000000..26baf9a --- /dev/null +++ b/_includes/head-custom.html @@ -0,0 +1,2 @@ + + \ No newline at end of file From f3ea959612ff3f7e71d1e62ae07e866e479130ae Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:18:37 +0530 Subject: [PATCH 05/16] Added index.md --- index.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 index.md diff --git a/index.md b/index.md new file mode 100644 index 0000000..1804241 --- /dev/null +++ b/index.md @@ -0,0 +1,26 @@ +# Welcome to [C-CPP-Projects](https://github.com/Grow-with-Open-Source/C-CPP-Projects/ "visit original repo") + +Welcome to **C-CPP-Projects**, your friendly initiation into the world of open-source contributions! Whether you're new to coding or have some experience, this repository is a great place to start your open-source journey. Our goal is to nurture your growth by providing a curated collection of C-CPP projects that are both engaging and educational. With the support of our dedicated maintainers, you'll gain the confidence and expertise to seamlessly contribute to more substantial open-source endeavors. We're excited to have you on board, so dive right in, explore, and begin your open-source adventure today! + +# Table of Contribution + +
+ + +| Project Title | Contributor Names | Pull Requests | Demo | +| --- | --- | --- | --- | +| {init} | [iamwatchdogs](https://github.com/iamwatchdogs "goto iamwatchdogs profile") | [#1](https://github.com/Grow-with-Open-Source/C-CPP-Projects/pull/1 "visit pr \#1") | [/Grow-with-Open-Source/C-CPP-Projects/](https://github.com/Grow-with-Open-Source/C-CPP-Projects "view the result of {init}") | + + +
+
+ +# Thank you Contributors + +Thank you for your valuable contribution to this repo. Your work will not be forgotten... + + \ No newline at end of file From e73b41ed038eb0fc9b0b3ed229052ee3aa0e101c Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:21:21 +0530 Subject: [PATCH 06/16] Added _config.yml --- _config.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 _config.yml diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..6593d19 --- /dev/null +++ b/_config.yml @@ -0,0 +1,22 @@ +theme: jekyll-theme-cayman +title: 'C-CPP-Projects' +page_title: 'Jumpstart Open-Source with C/C++' +description: 'Start Your Open-Source Journey with C/C++ Projects' +logo: 'assets/img/favicon.ico' +defaults: + - scope: + path: '' + values: + image: + path: 'assets/img/page-cover.png' + height: 630 + width: 1200 +exclude: + - .gitignore + - README.md + - CONTRIBUTING.md + - CODE_OF_CONDUCT.md + - LICENSE + +# For reference, Jekyll SEO Tag: +# https://github.com/jekyll/jekyll-seo-tag/blob/master/lib/template.html \ No newline at end of file From f2871447470d4faba73d701d4e6bc146398bf55a Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:28:43 +0530 Subject: [PATCH 07/16] Updated README.md --- README.md | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 81 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 51132b4..dcbd96f 100644 --- a/README.md +++ b/README.md @@ -1 +1,81 @@ -# C-CPP-Projects \ No newline at end of file +# C-CPP-Projects + +
+ +![C](https://img.shields.io/badge/c-%2300599C.svg?style=for-the-badge&logo=c&logoColor=white) +![C++](https://img.shields.io/badge/c++-%2300599C.svg?style=for-the-badge&logo=c%2B%2B&logoColor=white) +![Visual Studio Code](https://img.shields.io/badge/Visual%20Studio%20Code-0078d7.svg?style=for-the-badge&logo=visual-studio-code&logoColor=white) +![GitHub Actions](https://img.shields.io/badge/github%20actions-%232671E5.svg?style=for-the-badge&logo=githubactions&logoColor=white) +![Github Pages](https://img.shields.io/badge/github%20pages-121013?style=for-the-badge&logo=github&logoColor=white) + +
+ +[![Open Source Love](https://badges.frapsoft.com/os/v2/open-source.svg?v=103)](https://github.com/Grow-with-Open-Source) +![issues](https://img.shields.io/github/issues/Grow-with-Open-Source/C-CPP-Projects) +![Pull Request](https://img.shields.io/github/issues-pr/Grow-with-Open-Source/C-CPP-Projects) +![Stars](https://img.shields.io/github/stars/Grow-with-Open-Source/C-CPP-Projects?style=flat&logo=github) +![Forks](https://img.shields.io/github/forks/Grow-with-Open-Source/C-CPP-Projects?style=flat&logo=github) +![GitHub license](https://img.shields.io/github/license/Grow-with-Open-Source/C-CPP-Projects.svg?color=blue) + +
+ +Welcome to **C-CPP-Projects**, one of the best ways to introduce the world of open-source contribution! Whether you're a beginner looking to take your first steps or an intermediate developer seeking to refine your skills, this repository is designed to make your journey into open-source development. This repo will provide with best hands-on understanding of open source contributions. + +Our mission is to empower newcomers, providing them with a welcoming environment to learn and grow in the open-source community. This repo offers a curated collection of C-CPP-based projects that are both fun to work on and highly educational. Through hands-on experience and guidance from our dedicated team of maintainers, you'll gain the skills and confidence to contribute to larger projects with ease. We can't wait to see what you'll bring to the open-source table – so dive in, explore, and start your open-source adventure today! + +[![page-cover](assets/img/page-cover.png)](https://grow-with-open-source.github.io/C-CPP-Projects/) + +All your work details, including the path to your work, will be displayed on the Jekyll-based pages that are deployed using GitHub Pages. So, we expect quality work from you so that everyone can view your work with ease. This repo will not only introduce open-source contributions but also be one of the best platforms to showcase your skills and learn new skills from other projects. Thus, you'll be learning and teaching at the same time. + +## Contribution + +Hey there, fellow developer !!!... I'm happy to see you are interested in contributing to this repo. As this is an open-source repo containing a collection of C-CPP-based projects, you're always welcome to showcase your learning & implementation efforts. As the repo will be hosted using GitHub pages, you can write small documentation explaining about your project. As your work is being hosted live, we expect you to make some quality contributions so that others can learn and appreciate your work. + +> [!IMPORTANT] +> Make sure to check the [CONTRIBUTING.md](https://github.com/Grow-with-Open-Source/C-CPP-Projects/blob/main/CONTRIBUTING.md "goto CONTRIBUTING.md") to understand the rules, file structure and step-by-step guide for contribution. + +- **Step 1:** Make sure you have required tools within you local machine *(like *git, vs code, node.js and so on)*. +- **Step 2:** Now start by [forking](https://github.com/Grow-with-Open-Source/C-CPP-Projects/fork "let's fork the repo") the repository. +- **Step 3:** Clone the forked repository to your local machine. + ```bash + #cloning the repo + git clone https://github.com//C-CPP-Projects.git + ``` +- **Step 4:** Create a new branch to work on your contribution. use the following command: + ```bash + # create and check out to new branch + git checkout -b + ``` +- **Step 5:** Now go ahead and create your directory/folder with your project name with a proper naming convention and finish your project while maintaining a file structure & following other rules [*(checkout CONTRIBUTING.md for more details)*](https://github.com/Grow-with-Open-Source/C-CPP-Projects/blob/main/CONTRIBUTING.md#instructions-and-guidelines). +- **Step 6:** Make sure you commit every change while working on your project parallelly. Using the following command: + ```bash + # tracking or staging the changes + git add . + + # commiting the changes + git commit -m "" + ``` + + > [!IMPORTANT] + > Make sure to commit each change with a proper description +- **Step 7:** After committing all the changes and completion of your work. push your commit to your forked repo, using the following commands: + ```bash + # push your commit to the origin repo + git push origin + ``` + +- **Step 8:** Now, create a pull request to the [original repo](https://github.com/Grow-with-Open-Source/C-CPP-Projects). [*Learn about Pull requests*](https://docs.github.com/articles/using-pull-requests "official GitHub documentation") +- **Step 9:** After making PR, check for the linting check to pass. If the linting checks fail, find and fix the issue with the help of the eslint result in workflow. +- **Step 10:** If the liniting checks passed, then wait for the maintainer to check and merge the pull request. + +When the maintainer merges your PR, you have successfully made your *(probably first)* open-source contribution to showcase your learning and provide a reference to a complete newbie. Everybody can see your work and make use of it. Good job, mate !!... + +# Contributors + +Thank you for your valuable contribution to this repo. Your work will not be forgotten... + + \ No newline at end of file From adab415115a305520d3ef79324bf0638d4d0d4c5 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:30:30 +0530 Subject: [PATCH 08/16] Updated .gitignore --- .gitignore | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitignore b/.gitignore index 259148f..f50cdbb 100644 --- a/.gitignore +++ b/.gitignore @@ -30,3 +30,9 @@ *.exe *.out *.app + +# IDE settings +.vscode + +# MAC files +.DS_Store \ No newline at end of file From 81e0fe8d76e1a3430cd4f38819c41d0e2b31baa2 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:32:31 +0530 Subject: [PATCH 09/16] Added contributors-log.json --- .github/data/contributors-log.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .github/data/contributors-log.json diff --git a/.github/data/contributors-log.json b/.github/data/contributors-log.json new file mode 100644 index 0000000..74f27b3 --- /dev/null +++ b/.github/data/contributors-log.json @@ -0,0 +1,7 @@ +{ + "{init}": { + "contributor-name": ["iamwatchdogs"], + "pull-request-number": ["1"], + "demo-path": "https://github.com/Grow-with-Open-Source/C-CPP-Projects" + } +} From e2d68bee2065709dd6bfaa1aeba4fc6ec3856e91 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:33:40 +0530 Subject: [PATCH 10/16] Added update_contributors_log.py --- .github/scripts/update_contributors_log.py | 129 +++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 .github/scripts/update_contributors_log.py diff --git a/.github/scripts/update_contributors_log.py b/.github/scripts/update_contributors_log.py new file mode 100644 index 0000000..f346182 --- /dev/null +++ b/.github/scripts/update_contributors_log.py @@ -0,0 +1,129 @@ +#!/usr/bin/env python + +import os +import json + +''' +This script requires following environment variables: + +- REPO_NAME: + > example: 'iamwatchdogs/test' + > GitHub action variable: ${{ github.repository }} + +- PR_NUMBER: + > example: '5' + > GitHub action variable: ${{ github.event.pull_request.number }} +''' + +def get_project_title(pr_data): + + # Setting default value + project_title = 'root' + + # Iterating through the "files" list + for i in pr_data["files"]: + if '/' in i["path"]: + project_title = i["path"] + break + + # If we find a directory + if project_title != 'root': + project_title = project_title.split('/')[0] + + return project_title + +def get_contributor_name(pr_data): + return pr_data["author"]["login"] + +def get_demo_path(pr_data): + + # Getting required values + REPO_NAME = os.environ.get('REPO_NAME') + PROJECT_NAME = get_project_title(pr_data) + + # Handling a base case + if PROJECT_NAME == 'root': + return f'https://github.com/{REPO_NAME}/' + + # Setting default value + demo_path = f'https://github.com/{REPO_NAME}/tree/main/{PROJECT_NAME}' + found_required_path = False + + # Iterating through the "files" list + for file_data in pr_data["files"]: + path = file_data["path"] + if "index.html" in path: + demo_path = path + found_required_path = True + break + elif path.lower().endswith('index.md') or path.lower().endswith('readme.md'): + demo_path = path + found_required_path = True + + # Modifying demo path as a route + if found_required_path: + demo_path = '/'.join(demo_path.split('/')[:-1]) + + # Checking out for spaces: + if ' ' in demo_path: + demo_path = '%20'.join(demo_path.split()) + + return demo_path + +def main(): + + # Setting required file paths + CURRENT_PR_DETAILS_PATH = 'pr.json' + CONTRIBUTORS_LOG_PATH = '.github/data/contributors-log.json' + + # Reading contents from the current pr + with open(CURRENT_PR_DETAILS_PATH, 'r') as json_file: + current_pr = json.load(json_file) + + # Getting required value for update + PROJECT_TITLE = get_project_title(current_pr) + CONTRIBUTOR_NAME = get_contributor_name(current_pr) + PR_NUMBER = os.environ.get('PR_NUMBER') + DEMO_PATH = get_demo_path(current_pr) + + # Creating a new dict objects for JSON conversion + existing_data = None + new_data = { + PROJECT_TITLE: { + "contributor-name": [CONTRIBUTOR_NAME], + "pull-request-number": [PR_NUMBER], + "demo-path": DEMO_PATH + } + } + + # Processing the data dumps + operation_name = None + if os.path.exists(CONTRIBUTORS_LOG_PATH): + + # Reading existing Log file + with open(CONTRIBUTORS_LOG_PATH, 'r') as json_file: + existing_data = json.load(json_file) + + # performing updation or addition based on `PROJECT_TITLE` + if PROJECT_TITLE in existing_data: + if CONTRIBUTOR_NAME not in existing_data[PROJECT_TITLE]["contributor-name"]: + existing_data[PROJECT_TITLE]["contributor-name"].append(CONTRIBUTOR_NAME) + if PR_NUMBER not in existing_data[PROJECT_TITLE]["pull-request-number"]: + existing_data[PROJECT_TITLE]["pull-request-number"].append(PR_NUMBER) + operation_name = 'Updated' + else: + existing_data.update(new_data) + operation_name = 'Appended data to' + else: + existing_data = new_data + operation_name = 'Created' + + # Dumping the data into log file + with open(CONTRIBUTORS_LOG_PATH, 'w') as json_file: + json.dump(existing_data, json_file, indent=2) + + # Output message + print(f'Successfully {operation_name} the log file') + +if __name__ == '__main__': + main() \ No newline at end of file From e446842b75fb85d8a80d79fa0e8453284c9e0f70 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:34:20 +0530 Subject: [PATCH 11/16] Added update_index_md.py --- .github/scripts/update_index_md.py | 110 +++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 .github/scripts/update_index_md.py diff --git a/.github/scripts/update_index_md.py b/.github/scripts/update_index_md.py new file mode 100644 index 0000000..950fc79 --- /dev/null +++ b/.github/scripts/update_index_md.py @@ -0,0 +1,110 @@ +#!/usr/bin/env python + +import os +import json + +''' +This script requires following environment variables: + +- REPO_NAME: + > example: 'iamwatchdogs/test' + > GitHub action variable: ${{ github.repository }} +''' + +def find_table_points(lines): + + # Setting default return values + table_start = None + table_end = None + + # Setting the markers + table_start_marker = '' + table_end_marker = '' + + # Iterating over lines to find the markers + for index, line in enumerate(lines): + if table_start is None and table_start_marker in line: + table_start = index + elif table_end is None and table_end_marker in line: + table_end = index + if table_start is not None and table_end is not None: + break + + # Checking for possible errors + if table_start is None or table_end is None: + print('Table not found in the file.') + exit(1) + elif table_start >= table_end: + print('Invaild use of table markers.') + exit(2) + + return (table_start, table_end) + + +def main(): + + # Retrieving Environmental variables + REPO_NAME = os.environ.get('REPO_NAME') + + # Setting path for the log JSON file + TARGET_FILE = 'index.md' + CONTRIBUTORS_LOG = '.github/data/contributors-log.json' + + # Retrieving data from log file + with open(CONTRIBUTORS_LOG, 'r') as json_file: + data = json.load(json_file) + + # Reading lines from the file + with open(TARGET_FILE, 'r') as file: + lines = file.readlines() + + # Calculating Stating and ending points of the targeted table + table_start, table_end = find_table_points(lines) + + # Creating table header if doesn't exist + if table_end - table_start == 1: + table_header = list() + table_header.append('| Project Title | Contributor Names | Pull Requests | Demo |\n') + table_header.append('| --- | --- | --- | --- |\n') + lines[table_start+1:table_end] = table_header + + # Initializing empty list for lines + updated_lines = list() + + # Iterating over log to update target file + for title, details in data.items(): + + # Processing contributors-names + contributors_names = details['contributor-name'] + contributors_names_list = [f'[{name}](https://github.com/{name} "goto {name} profile")' for name in contributors_names] + contributors_names_output = ', '.join(contributors_names_list) + + # Processing pull-requests + pull_requests = details['pull-request-number'] + pull_requests_list = [f'[#{pr}](https://github.com/{REPO_NAME}/pull/{pr} "visit pr \#{pr}")' for pr in pull_requests] + pull_requests_output = ', '.join(pull_requests_list) + + # Processing demo-path + demo_path = details['demo-path'] + if ' ' in demo_path: + demo_path = '%20'.join(demo_path.split()) + demo_path_output = f'[/{REPO_NAME}/{title}/]({demo_path} "view the result of {title}")' + if title == 'root' or title == '{init}': + demo_path_output = f'[/{REPO_NAME}/]({demo_path} "view the result of {title}")' + + # Appending all data together + updated_lines.append(f'| {title} | {contributors_names_output} | {pull_requests_output} | {demo_path_output} |\n') + + # Updating the lines with updated data + lines[table_start+3:table_end] = updated_lines + + # Updating the target file + with open(TARGET_FILE, 'w') as file: + file.writelines(lines) + + # Printing Success Message + print(f"Updated '{TARGET_FILE}' Successfully") + + +if __name__ == '__main__': + main() \ No newline at end of file From a199e79da8f90a0ae3805e1ff827831d85c53b43 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:34:50 +0530 Subject: [PATCH 12/16] Added convert_to_html_tables.py --- .github/scripts/convert_to_html_tables.py | 122 ++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 .github/scripts/convert_to_html_tables.py diff --git a/.github/scripts/convert_to_html_tables.py b/.github/scripts/convert_to_html_tables.py new file mode 100644 index 0000000..2573a2e --- /dev/null +++ b/.github/scripts/convert_to_html_tables.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python + +import os +import json + +''' +This script requires following environment variables: + +- REPO_NAME: + > example: 'iamwatchdogs/test' + > GitHub action variable: ${{ github.repository }} +''' + +def find_table_points(lines): + + # Setting default return values + table_start = None + table_end = None + + # Setting the markers + table_start_marker = '' + table_end_marker = '' + + # Iterating over lines to find the markers + for index, line in enumerate(lines): + if table_start is None and table_start_marker in line: + table_start = index + elif table_end is None and table_end_marker in line: + table_end = index + if table_start is not None and table_end is not None: + break + + # Checking for possible errors + if table_start is None or table_end is None: + print('Table not found in the file.') + exit(1) + elif table_start >= table_end: + print('Invaild use of table markers.') + exit(2) + + return (table_start, table_end) + + +def main(): + + # Retrieving Environmental variables + REPO_NAME = os.environ.get('REPO_NAME') + + # Setting path for the log JSON file + TARGET_FILE = 'index.md' + CONTRIBUTORS_LOG = '.github/data/contributors-log.json' + + # Retrieving data from log file + with open(CONTRIBUTORS_LOG, 'r') as json_file: + data = json.load(json_file) + + # Reading lines from the file + with open(TARGET_FILE, 'r') as file: + lines = file.readlines() + + # Calculating Stating and ending points of the targeted table + table_start, table_end = find_table_points(lines) + + # Creating HTML table header to replace md table + table_header = list() + table_header.append('\n') + table_header.append('\t\n') + table_header.append('\t\t\n') + table_header.append('\t\t\n') + table_header.append('\t\t\n') + table_header.append('\t\t\n') + table_header.append('\t\n') + + # Initializing empty list for lines + updated_lines = list() + + # Iterating over log to update target file + for title, details in data.items(): + + # Processing contributors-names + contributors_names = details['contributor-name'] + contributors_names_list = [f'{name}' for name in contributors_names] + contributors_names_output = ', '.join(contributors_names_list) + + # Processing pull-requests + pull_requests = details['pull-request-number'] + pull_requests_list = [f'{pr}' for pr in pull_requests] + pull_requests_output = ', '.join(pull_requests_list) + + # Processing demo-path + demo_path = details['demo-path'] + if ' ' in demo_path: + demo_path = '%20'.join(demo_path.split()) + demo_path_output = f'/{REPO_NAME}/{title}/' + if title == 'root' or title == '{init}': + demo_path_output = f'/{REPO_NAME}/' + + + # Appending all data together + updated_lines.append('\t\n') + updated_lines.append(f'\t\t\n') + updated_lines.append(f'\t\t\n') + updated_lines.append(f'\t\t\n') + updated_lines.append(f'\t\t\n') + updated_lines.append(f'\t\n') + + # Table footer + table_footer = ['
Project TitleContributor NamesPull RequestsDemo
{title}{contributors_names_output}{pull_requests_output}{demo_path_output}
\n'] + + # Updating the lines with updated data + lines[table_start+1:table_end] = table_header+updated_lines+table_footer + + # Updating the target file + with open(TARGET_FILE, 'w') as file: + file.writelines(lines) + + # Printing Success Message + print(f"Updated '{TARGET_FILE}' Successfully") + + +if __name__ == '__main__': + main() \ No newline at end of file From 4f8d97f4f52267e74f740e49a14fd2634543f646 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:35:34 +0530 Subject: [PATCH 13/16] Added c-cpp-linter.yml --- .github/workflows/c-cpp-linter.yml | 72 ++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/c-cpp-linter.yml diff --git a/.github/workflows/c-cpp-linter.yml b/.github/workflows/c-cpp-linter.yml new file mode 100644 index 0000000..0ee5058 --- /dev/null +++ b/.github/workflows/c-cpp-linter.yml @@ -0,0 +1,72 @@ +name: c-cpp-linter + +on: + pull_request: + branches: [main] + paths: ['**.c', '**.cpp', '**.h', '**.hpp', '**.cc', '**.hh', '**.cxx', '**.hxx'] + +jobs: + c-cpp-linter: + runs-on: ubuntu-latest + steps: + - name: Check out the repo + uses: actions/checkout@v4.1.0 + + - uses: cpp-linter/cpp-linter-action@v2.6.1 + id: linter + continue-on-error: false + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + style: file + tidy-checks: '' + thread-comments: true + step-summary: true + + - name: Fail checks + if: steps.linter.outputs.checks-failed > 0 + run: | + echo "Some files failed the linting checks!" + echo "No. of checks failed: ${{ steps.linter.outputs.checks-failed }}" + echo "Use the clang-format diffs to find more help" + + - name: Setup Python + if: steps.linter.outputs.checks-failed > 0 + uses: actions/setup-python@v4.7.1 + with: + python-version: '3.12' + + - name: Getting PR details + if: steps.linter.outputs.checks-failed > 0 + run: | + touch pr.json # creating empty file for paths + gh pr view $PR_NUMBER --json files > pr.json # storing file paths + touch res # creating empty file for final output + env: + PR_NUMBER: ${{ github.event.pull_request.number }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Python script for clang diff + if: steps.linter.outputs.checks-failed > 0 + uses: jannekem/run-python-script-action@v1 + with: + script: | + import os + import json + import sys + with open('pr.json','r') as json_file: + data = json.load(json_file) + for file in data["files"]: + path = file["path"] + if os.path.exists(path): + os.system('echo "" >> res') + os.system(f'echo "Filename: {path}" >> res') + os.system('echo "" >> res') + os.system(f'clang-format-12 -style=Google {path} >> res') + os.system('echo ---------------------------------------- >> res') + + - name: Show diffs and exit + if: steps.linter.outputs.checks-failed > 0 + run: | + cat res + exit 1 \ No newline at end of file From 792c1d53af25d5e036e75d67f76a8ffd7ad6ea35 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:36:18 +0530 Subject: [PATCH 14/16] Added update-contributors-details.yml --- .../workflows/update-contributors-details.yml | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/update-contributors-details.yml diff --git a/.github/workflows/update-contributors-details.yml b/.github/workflows/update-contributors-details.yml new file mode 100644 index 0000000..aeb9faa --- /dev/null +++ b/.github/workflows/update-contributors-details.yml @@ -0,0 +1,63 @@ +name: update-contributor-details + +on: + pull_request_target: + types: [closed] + branches: [main] + +env: + REPO_NAME: ${{ github.repository }} + PR_NUMBER: ${{ github.event.pull_request.number }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + +jobs: + update-by-pr: + if: ${{ github.event.pull_request.title != 'init' && github.event.pull_request.merged == true }} + runs-on: ubuntu-latest + + permissions: + contents: write + + steps: + - name: Checking out the repo + uses: actions/checkout@v4.1.0 + + - name: Setup Python + uses: actions/setup-python@v4.7.1 + + - name: Getting PR details + run: | + touch pr.json + gh pr view $PR_NUMBER --json author,url,files > pr.json + + - name: Updating log file + run: | + if [ ! -d ".github/data" ]; then + mkdir .github/data + echo "Create `.github/data` directory" + fi + python .github/scripts/update_contributors_log.py + cat .github/data/contributors-log.json + + - name: Updating index.md file + run: | + python .github/scripts/update_index_md.py + cat index.md + + - name: Remove unwanted files + run: rm pr.json + + - name: Commit and Push + run: | + if [ "$(git status | grep 'Changes not staged\|Untracked files')" ]; then + git diff + git config --global user.email "actions@github.com" + git config --global user.name "GitHub Actions" + git add . + git commit -m "Updated Contributors Details" + git push origin main + echo "Pushed the update successfully" + else + echo "Nothing to push" + exit 1 + fi \ No newline at end of file From 6c5552f18d9a48776c2dcc9ea00ac21db17ad5e2 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:38:08 +0530 Subject: [PATCH 15/16] Added deploy-gh-pages.yml --- .github/workflows/deploy-gh-pages.yml | 57 +++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 .github/workflows/deploy-gh-pages.yml diff --git a/.github/workflows/deploy-gh-pages.yml b/.github/workflows/deploy-gh-pages.yml new file mode 100644 index 0000000..accd813 --- /dev/null +++ b/.github/workflows/deploy-gh-pages.yml @@ -0,0 +1,57 @@ +name: deploy + +on: + workflow_run: + workflows: [update-contributor-details] + types: [completed] + + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4.1.0 + - name: Setting up python environment + uses: actions/setup-python@v4.7.1 + - name: Replace md table with HTML table + run: | + if [ -f ".github/data/contributors-log.json" ]; then + python .github/scripts/convert_to_html_tables.py + else + echo "contributors log is not present, proceeding to deploy anyway..." + fi + env: + REPO_NAME: ${{ github.repository }} + - name: Setup Pages + uses: actions/configure-pages@v3 + - name: Build with Jekyll + uses: actions/jekyll-build-pages@v1 + with: + source: ./ + destination: ./_site + - name: Upload artifact + uses: actions/upload-pages-artifact@v2 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v2 \ No newline at end of file From d7fea22f5c41f78781d6eaf08586bd7c7015e0f3 Mon Sep 17 00:00:00 2001 From: iamwatchdogs Date: Mon, 16 Oct 2023 14:39:44 +0530 Subject: [PATCH 16/16] Updated CONTRIBUTING.md --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e3bf932..f5b0865 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -48,7 +48,7 @@ So, before you jump right into your code editor and start working on your projec > | | ├── update_contributors_log.py > | | └── update_index_md.py > | └── workflows - > | ├── C-CPP-linter.yml + > | ├── c-cpp-linter.yml > | ├── deploy-gh-pages.yml > | └── update-contributors-details.yml > ├── _includes