diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml index 4b9b146..d2d287c 100644 --- a/.github/workflows/phpunit.yml +++ b/.github/workflows/phpunit.yml @@ -41,7 +41,7 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} files: ./coverage.xml - fail_ci_if_error: true + fail_ci_if_error: false flags: unittests name: codecov-umbrella verbose: true diff --git a/README.md b/README.md index f317eae..d8e8f70 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,45 @@ -# good first issue +# Good First Issues -Make your first open-source contribution. +**Good First Issues** is an initiative to curate easy pickings from popular projects, so developers who've never contributed to open-source can get started quickly. +Website: [good-first-issues.github.io](https://good-first-issues.github.io) -https://gomzyakov.github.io/good-first-issue/ +This website is primarily targeted at developers who want to contribute to open source software but do not know where or how to start. +Open-source maintainers are always looking to get more people involved, but new developers generally think it's challenging to become a contributor. We believe getting developers to fix super-easy issues removes the barrier for future contributions. This is why *Good First Issues* exists. -# Как добавить свой репозиторий? +## Adding a new project -todo [repositories.json](https://github.com/gomzyakov/good-first-issue/blob/main/repositories.json) +You're welcome to add a new project in *Good First Issues*, just follow these steps: +- To maintain the quality of projects in *Good First Issues*, please make sure your GitHub repository meets the following criteria: -# Как это работает? + - It has at least three issues with the `good first issue` label. This label is already present on all repositories by default. If not, you can follow the steps [here](https://help.github.com/en/github/managing-your-work-on-github/applying-labels-to-issues-and-pull-requests). + - It contains a `README.md` with detailed setup instructions for the project -https://api.github.com/repos/gomzyakov/good-first-issue/issues?state=open&sort=updated&labels=good%20first%20issue + - It is actively maintained (last update less than 1 month ago) -Ежедневно запускается [cron.yml](#TODO) который _TODO_ +- Add your repository's path (in the format `owner/name` and lexicographic order) in [repositories.json](https://github.com/gomzyakov/good-first-issue/blob/main/repositories.json). + +- Create a new pull-request. Please add the link to the issues page of the repository in the PR description. Once the pull request is merged, the changes will be live on [good-first-issues.github.io](https://good-first-issues.github.io). + +## How does it work? + +- First *Good First Issues* is a static website that uses [PHP](https://www.php.net)` to generate HTML files. +- We use [GitHub REST API](https://docs.github.com/en/rest) to fetch issues from the repositories listed in [repositories.json](https://github.com/gomzyakov/good-first-issue/blob/main/repositories.json). +- To periodically cycle through issues (twice a day), we use [GitHub Workflow](https://docs.github.com/en/actions/using-workflows). + +## Help us grow + +Navigating open-source projects can be quite overwhelming for beginners and experienced contributors alike. *Good First Issues* looks to solve this problem by providing a platform that serves as a starting point for those looking to get started with open-source or those who are looking to get into a new project. + +The more people who know about [good-first-issues.github.io](https://good-first-issues.github.io), the better. There are various ways you can help us grow: you could contribute to `awesome` lists, blog about us, reach out to bloggers, tech influences, developer and open-source on Twitter and YouTube, for example. Try and get [good-first-issues.github.io](https://good-first-issues.github.io) mentioned in a video or tweet! + +## Suggestions and wishes + +If you have questions or suggestions (or found a bug), you can always write to [issues](https://github.com/good-first-issues/good-first-issues.github.io/issues). + +## License + +This is open-sourced software licensed under the [MIT License](https://github.com/good-first-issues/good-first-issues.github.io/blob/main/LICENSE). diff --git a/src/Generator.php b/src/Generator.php index c3e62ca..68c60c5 100644 --- a/src/Generator.php +++ b/src/Generator.php @@ -37,6 +37,7 @@ public function run(): void $repositories = $this->github_api_client->requestRepositoriesData($repository_names); // TODO сортируем репозитории по updated at + // TODO удаляем неактивные репозитории foreach ($repositories as $repository) { print_r('Get issues for repository: ' . $repository->full_name . "\n"); diff --git a/tests/RendererTest.php b/tests/RendererTest.php new file mode 100644 index 0000000..9342ba2 --- /dev/null +++ b/tests/RendererTest.php @@ -0,0 +1,21 @@ +assertInstanceOf(Renderer::class, $generator); + } +}