github-dependents-info 1.3.2__tar.gz → 1.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: github-dependents-info
3
- Version: 1.3.2
3
+ Version: 1.5.0
4
4
  Summary: Collect information about dependencies between a github repo and other repositories. Results available in JSON, markdown and badges.
5
5
  Home-page: https://github.com/nvuillam/github-dependents-info
6
6
  License: MIT
@@ -46,6 +46,8 @@ Description-Content-Type: text/markdown
46
46
 
47
47
  Collect information about dependencies between a github repo and other repositories.
48
48
 
49
+ [![See tutorial on youtube](assets/images/youtube-preview.png)](https://www.youtube.com/watch?v=katV9w0QhTQ)
50
+
49
51
  </div>
50
52
 
51
53
  _________________
@@ -55,6 +57,7 @@ GitHub API does not allow to collect information about package usage (**Used by*
55
57
 
56
58
  This package uses GitHub HTML to collect dependents information and can:
57
59
 
60
+ - Automate all the actions below [**using a simple GitHub Action**](#use-as-github-action) !
58
61
  - Output as text
59
62
  - Output as json (including shields.io markdown badges)
60
63
  - Generate summary markdown file
@@ -63,6 +66,7 @@ This package uses GitHub HTML to collect dependents information and can:
63
66
  - Handle multiple repositories packages
64
67
  - Filter results using minimum stars
65
68
 
69
+
66
70
  Badges example
67
71
 
68
72
  [![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)
@@ -264,6 +268,7 @@ _________________
264
268
  | -s<br/> --sort | String | _(optional)_ Sort order: name (default) or stars |
265
269
  | -x<br/> --minstars | String | _(optional)_ If set, filters repositories to keep only those with more than X stars |
266
270
  | -m<br/> --markdownfile | String | _(optional)_ Output markdown file file |
271
+ | -d<br/> --docurl | String | _(optional)_ Hyperlink to use when clicking on badge markdown file badge. (Default: link to markdown file) |
267
272
  | -p<br/> --mergepackages | String | _(optional)_ In case of multiple packages, merge their stats in a single one in markdown and json output |
268
273
  | -j<br/> --json | String | _(optional)_ Output in json format |
269
274
  | -v<br/> --version | Boolean | _(optional)_ Displays version of github-dependents-info |
@@ -302,12 +307,13 @@ _________________
302
307
 
303
308
  ## Use as GitHub Action
304
309
 
305
- Create a file **.github/workflows/github-dependents-info.yml** in your repository with the following content.
310
+ Create a file **.github/workflows/github-dependents-info.yml** in your repository with the following YAML content.
306
311
 
307
312
  If will generate a new Pull Request (or replace the pending one) every time the usage stats will have changed :)
308
313
 
314
+ Don't forget to add tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->` in your **README.md**, at the end of another badge line if you want github-dependents-info to replace its content automatically.
315
+
309
316
  ```yaml
310
- ---
311
317
  # GitHub Dependents Info workflow
312
318
  # More info at https://github.com/nvuillam/github-dependents-info/
313
319
  name: GitHub Dependents Info
@@ -318,7 +324,7 @@ on:
318
324
  workflow_dispatch:
319
325
  # On every push on selected branches (usually just main)
320
326
  push:
321
- branches: [main, setup-gdi]
327
+ branches: [main,master,setup-gdi]
322
328
  # Scheduled interval: Use CRON format https://crontab.guru/
323
329
  schedule:
324
330
  - cron: "0 0 * * 0" # Every sunday at midnight
@@ -346,7 +352,7 @@ jobs:
346
352
 
347
353
  # Collect data & generate markdown
348
354
  - name: GitHub Dependents Info
349
- uses: nvuillam/github-dependents-info@v1.3.2
355
+ uses: nvuillam/github-dependents-info@v1.5.0 # If you trust me enough you can replace version by "main" :)
350
356
  # See documentation for variables details: https://github.com/nvuillam/github-dependents-info?tab=readme-ov-file#%EF%B8%8F-usage
351
357
  with:
352
358
  repo: ${{ github.repository }}
@@ -17,6 +17,8 @@
17
17
 
18
18
  Collect information about dependencies between a github repo and other repositories.
19
19
 
20
+ [![See tutorial on youtube](assets/images/youtube-preview.png)](https://www.youtube.com/watch?v=katV9w0QhTQ)
21
+
20
22
  </div>
21
23
 
22
24
  _________________
@@ -26,6 +28,7 @@ GitHub API does not allow to collect information about package usage (**Used by*
26
28
 
27
29
  This package uses GitHub HTML to collect dependents information and can:
28
30
 
31
+ - Automate all the actions below [**using a simple GitHub Action**](#use-as-github-action) !
29
32
  - Output as text
30
33
  - Output as json (including shields.io markdown badges)
31
34
  - Generate summary markdown file
@@ -34,6 +37,7 @@ This package uses GitHub HTML to collect dependents information and can:
34
37
  - Handle multiple repositories packages
35
38
  - Filter results using minimum stars
36
39
 
40
+
37
41
  Badges example
38
42
 
39
43
  [![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)
@@ -235,6 +239,7 @@ _________________
235
239
  | -s<br/> --sort | String | _(optional)_ Sort order: name (default) or stars |
236
240
  | -x<br/> --minstars | String | _(optional)_ If set, filters repositories to keep only those with more than X stars |
237
241
  | -m<br/> --markdownfile | String | _(optional)_ Output markdown file file |
242
+ | -d<br/> --docurl | String | _(optional)_ Hyperlink to use when clicking on badge markdown file badge. (Default: link to markdown file) |
238
243
  | -p<br/> --mergepackages | String | _(optional)_ In case of multiple packages, merge their stats in a single one in markdown and json output |
239
244
  | -j<br/> --json | String | _(optional)_ Output in json format |
240
245
  | -v<br/> --version | Boolean | _(optional)_ Displays version of github-dependents-info |
@@ -273,12 +278,13 @@ _________________
273
278
 
274
279
  ## Use as GitHub Action
275
280
 
276
- Create a file **.github/workflows/github-dependents-info.yml** in your repository with the following content.
281
+ Create a file **.github/workflows/github-dependents-info.yml** in your repository with the following YAML content.
277
282
 
278
283
  If will generate a new Pull Request (or replace the pending one) every time the usage stats will have changed :)
279
284
 
285
+ Don't forget to add tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->` in your **README.md**, at the end of another badge line if you want github-dependents-info to replace its content automatically.
286
+
280
287
  ```yaml
281
- ---
282
288
  # GitHub Dependents Info workflow
283
289
  # More info at https://github.com/nvuillam/github-dependents-info/
284
290
  name: GitHub Dependents Info
@@ -289,7 +295,7 @@ on:
289
295
  workflow_dispatch:
290
296
  # On every push on selected branches (usually just main)
291
297
  push:
292
- branches: [main, setup-gdi]
298
+ branches: [main,master,setup-gdi]
293
299
  # Scheduled interval: Use CRON format https://crontab.guru/
294
300
  schedule:
295
301
  - cron: "0 0 * * 0" # Every sunday at midnight
@@ -317,7 +323,7 @@ jobs:
317
323
 
318
324
  # Collect data & generate markdown
319
325
  - name: GitHub Dependents Info
320
- uses: nvuillam/github-dependents-info@v1.3.2
326
+ uses: nvuillam/github-dependents-info@v1.5.0 # If you trust me enough you can replace version by "main" :)
321
327
  # See documentation for variables details: https://github.com/nvuillam/github-dependents-info?tab=readme-ov-file#%EF%B8%8F-usage
322
328
  with:
323
329
  repo: ${{ github.repository }}
@@ -32,6 +32,9 @@ def main(
32
32
  help="""Path to markdown file to insert/update Used By badge between tags
33
33
  <!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->""",
34
34
  ),
35
+ doc_url: str = typer.Option(
36
+ None, "-d", "--docurl", help="Hyperlink to use when clicking on badge markdown file badge"
37
+ ),
35
38
  badge_color: str = typer.Option("informational", "-c", "--markdownbadgecolor", help="Markdown badge color"),
36
39
  sort_key: str = typer.Option(None, "-s", "--sort", help="Sort of name(default) or stars"),
37
40
  min_stars: int = typer.Option(None, "-x", "--minstars", help="Filter dependents with less than X stars"),
@@ -98,6 +101,8 @@ def main(
98
101
  json_output=json_output,
99
102
  csv_directory=csv_directory,
100
103
  badge_markdown_file=badge_markdown_file,
104
+ doc_url=doc_url,
105
+ markdown_file=markdown_file,
101
106
  badge_color=badge_color,
102
107
  merge_packages=merge_packages,
103
108
  )
@@ -108,7 +113,7 @@ def main(
108
113
  gh_deps_info.build_markdown(file=markdown_file)
109
114
  # Update existing markdown to add badge
110
115
  if badge_markdown_file is not None:
111
- gh_deps_info.write_badge(badge_markdown_file)
116
+ gh_deps_info.write_badge(badge_markdown_file, "total_doc_url")
112
117
  # Print text or json result
113
118
  gh_deps_info.print_result()
114
119
 
@@ -21,6 +21,8 @@ class GithubDependentsInfo:
21
21
  self.min_stars = None if "min_stars" not in options else options["min_stars"]
22
22
  self.json_output = True if "json_output" in options and options["json_output"] is True else False
23
23
  self.merge_packages = True if "merge_packages" in options and options["merge_packages"] is True else False
24
+ self.doc_url = options["doc_url"] if "doc_url" in options else None
25
+ self.markdown_file = options["markdown_file"] if "markdown_file" in options else None
24
26
  self.badge_color = options["badge_color"] if "badge_color" in options else "informational"
25
27
  self.debug = True if "debug" in options and options["debug"] is True else False
26
28
  self.overwrite_progress = (
@@ -96,6 +98,15 @@ class GithubDependentsInfo:
96
98
  t.find("svg", {"class": "octicon-star"}).parent.text.strip().replace(",", "")
97
99
  ),
98
100
  }
101
+ # Collect avatar image
102
+ image = t.findAll("img", {"class": "avatar"})
103
+ if len(image) > 0 and image[0].attrs and "src" in image[0].attrs:
104
+ result_item["img"] = image[0].attrs["src"]
105
+ # Split owner and name
106
+ if "/" in result_item["name"]:
107
+ splits = str(result_item["name"]).split("/")
108
+ result_item["owner"] = splits[0]
109
+ result_item["repo_name"] = splits[1]
99
110
  # Skip result if less than minimum stars
100
111
  if self.min_stars is not None and result_item["stars"] < self.min_stars:
101
112
  continue
@@ -174,6 +185,13 @@ class GithubDependentsInfo:
174
185
  self.all_public_dependent_repos = sorted(self.all_public_dependent_repos, key=lambda d: d["name"])
175
186
 
176
187
  # Build total badges
188
+ doc_url_to_use = "https://github.com/nvuillam/github-dependents-info"
189
+ if self.doc_url is not None:
190
+ doc_url_to_use = self.doc_url
191
+ elif self.markdown_file is not None:
192
+ doc_url_to_use = f"https://github.com/{self.repo}/blob/main/{self.markdown_file}"
193
+ self.badges["total_doc_url"] = self.build_badge("Used%20by", self.total_sum, url=doc_url_to_use)
194
+
177
195
  self.badges["total"] = self.build_badge("Used%20by", self.total_sum)
178
196
  self.badges["public"] = self.build_badge("Used%20by%20(public)", self.total_public_sum)
179
197
  self.badges["private"] = self.build_badge("Used%20by%20(private)", self.total_private_sum)
@@ -334,9 +352,7 @@ class GithubDependentsInfo:
334
352
  ]
335
353
  md_lines += ["| Repository | Stars |", "| :-------- | -----: |"]
336
354
  for repo1 in self.all_public_dependent_repos:
337
- repo_label = repo1["name"]
338
- repo_stars = repo1["stars"]
339
- md_lines += [f"|[{repo_label}](https://github.com/{repo_label}) | {repo_stars} |"]
355
+ self.build_repo_md_line(md_lines, repo1)
340
356
  # Dependents by package
341
357
  else:
342
358
  for package in self.packages:
@@ -353,9 +369,7 @@ class GithubDependentsInfo:
353
369
  ]
354
370
  md_lines += ["| Repository | Stars |", "| :-------- | -----: |"]
355
371
  for repo1 in package["public_dependents"]:
356
- repo_label = repo1["name"]
357
- repo_stars = repo1["stars"]
358
- md_lines += [f"|[{repo_label}](https://github.com/{repo_label}) | {repo_stars} |"]
372
+ self.build_repo_md_line(md_lines, repo1)
359
373
  md_lines += [""]
360
374
 
361
375
  # footer
@@ -376,6 +390,20 @@ class GithubDependentsInfo:
376
390
  print("Wrote markdown file " + options["file"])
377
391
  return md_lines_str
378
392
 
393
+ def build_repo_md_line(self, md_lines, repo1):
394
+ repo_label = repo1["name"]
395
+ repo_stars = repo1["stars"]
396
+ image_md = ""
397
+ if "img" in repo1:
398
+ img = repo1["img"]
399
+ image_md = f'<img class="avatar mr-2" src="{img}" width="20" height="20" alt=""> '
400
+ if "owner" in repo1 and "repo_name" in repo1:
401
+ owner_md = "[" + repo1["owner"] + "](https://github.com/" + repo1["owner"] + ")"
402
+ repo_md = "[" + repo1["owner"] + "](https://github.com/" + repo1["owner"] + "/" + repo1["repo_name"] + ")"
403
+ md_lines += [f"|{image_md} &nbsp; {owner_md} / {repo_md} | {repo_stars} |"]
404
+ else:
405
+ md_lines += [f"|{image_md} &nbsp; [{repo_label}](https://github.com/{repo_label}) | {repo_stars} |"]
406
+
379
407
  def build_badge(self, label, nb, **options):
380
408
  if "url" in options:
381
409
  url = options["url"]
@@ -5,7 +5,7 @@ build-backend = "poetry.core.masonry.api"
5
5
 
6
6
  [tool.poetry]
7
7
  name = "github-dependents-info"
8
- version = "1.3.2"
8
+ version = "1.5.0"
9
9
  description = "Collect information about dependencies between a github repo and other repositories. Results available in JSON, markdown and badges."
10
10
  readme = "README.md"
11
11
  authors = ["nvuillam <nicolas.vuillamy@gmail.com>"]
@@ -45,7 +45,7 @@ bandit = "^1.7.5"
45
45
  black = {version = "^22.12.0", allow-prereleases = true}
46
46
  darglint = "^1.8.1"
47
47
  isort = {extras = ["colors"], version = "^5.13.2"}
48
- mypy = "^1.3"
48
+ mypy = "^1.8"
49
49
  mypy-extensions = "^1.0.0"
50
50
  pre-commit = "^3.6.0"
51
51
  pydocstyle = "^6.3.0"
@@ -53,7 +53,7 @@ pylint = "^3.0.0"
53
53
  pytest = "^7.3.1"
54
54
  pyupgrade = "^3.4.0"
55
55
  safety = "^2.3.5"
56
- coverage = "^7.3.3"
56
+ coverage = "^7.3.4"
57
57
  coverage-badge = "^1.1.0"
58
58
  pytest-html = "^4.1.1"
59
59
  pytest-cov = "^4.0.0"
@@ -0,0 +1,39 @@
1
+ # -*- coding: utf-8 -*-
2
+ from setuptools import setup
3
+
4
+ packages = \
5
+ ['github_dependents_info']
6
+
7
+ package_data = \
8
+ {'': ['*']}
9
+
10
+ install_requires = \
11
+ ['beautifulsoup4==4.12.2',
12
+ 'pandas>=2.0.0,<3.0.0',
13
+ 'requests>=2.31.0,<3.0.0',
14
+ 'rich>=12.6,<14.0',
15
+ 'typer[all]>=0.4,<0.10']
16
+
17
+ entry_points = \
18
+ {'console_scripts': ['github-dependents-info = '
19
+ 'github_dependents_info.__main__:app']}
20
+
21
+ setup_kwargs = {
22
+ 'name': 'github-dependents-info',
23
+ 'version': '1.5.0',
24
+ 'description': 'Collect information about dependencies between a github repo and other repositories. Results available in JSON, markdown and badges.',
25
+ 'long_description': '# github-dependents-info\n\n<div align="center">\n\n[![PyPI](https://img.shields.io/pypi/v/github-dependents-info)](https://pypi.org/project/github-dependents-info/)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/github-dependents-info)](https://pypi.org/project/github-dependents-info/)\n[![GitHub stars](https://img.shields.io/github/stars/nvuillam/github-dependents-info?cacheSeconds=3600)](https://github.com/nvuillam/github-dependents-info/stargazers/)\n[![Build status](https://github.com/nvuillam/github-dependents-info/workflows/build/badge.svg?branch=main&event=push)](https://github.com/nvuillam/github-dependents-info/actions?query=workflow%3Abuild)\n[![Python Version](https://img.shields.io/pypi/pyversions/github-dependents-info.svg)](https://pypi.org/project/github-dependents-info/)\n[![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/nvuillam/github-dependents-info/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)\n\n[![GitHub contributors](https://img.shields.io/github/contributors/nvuillam/github-dependents-info.svg)](https://github.com/nvuillam/github-dependents-info/graphs/contributors/)\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/nvuillam)](https://github.com/sponsors/nvuillam)\n[![MegaLinter](https://github.com/nvuillam/github-dependents-info/workflows/MegaLinter/badge.svg?branch=main)](https://oxsecurity.github.io/megalinter)\n[![License](https://img.shields.io/github/license/nvuillam/github-dependents-info)](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)\n\nCollect information about dependencies between a github repo and other repositories.\n\n[![See tutorial on youtube](assets/images/youtube-preview.png)](https://www.youtube.com/watch?v=katV9w0QhTQ)\n\n</div>\n\n_________________\n## 🚀 Features\n\nGitHub API does not allow to collect information about package usage (**Used by** on home, **Dependents** in insights section)\n\nThis package uses GitHub HTML to collect dependents information and can:\n\n- Automate all the actions below [**using a simple GitHub Action**](#use-as-github-action) !\n- Output as text\n- Output as json (including shields.io markdown badges)\n- Generate summary markdown file\n- Update existing markdown by inserting **Used by** badge within tags\n - `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`\n- Handle multiple repositories packages\n- Filter results using minimum stars\n\n\nBadges example\n\n[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n\n<details>\n <summary>JSON output</summary>\n\n```json\n{\n "all_public_dependent_repos": [\n {\n "name": "CIT-SeniorDesign/CIT-SeniorDesign.github.io",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/Jobsity-Challenge",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/automation-exercise-cypress",\n "stars": 0\n },\n {\n "name": "RecuencoJones/vscode-groovy-lint-issue",\n "stars": 0\n },\n {\n "name": "aboe026/data-structures",\n "stars": 0\n },\n {\n "name": "aboe026/shields.io-badge-results",\n "stars": 0\n },\n {\n "name": "aboe026/software-update-checker",\n "stars": 2\n },\n {\n "name": "katalon-labs/katalon-recorder-extension",\n "stars": 0\n },\n {\n "name": "mashafrancis/sa-jenkins",\n "stars": 0\n },\n {\n "name": "nvuillam/vscode-groovy-lint",\n "stars": 52\n },\n {\n "name": "run2cmd/dotfiles",\n "stars": 2\n }\n ],\n "packages": [\n {\n "id": null,\n "name": "nvuillam/npm-groovy-lint",\n "url": "https://github.com/nvuillam/npm-groovy-lint/network/dependents",\n "public_dependent_stars": 56,\n "public_dependents": [\n {\n "name": "CIT-SeniorDesign/CIT-SeniorDesign.github.io",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/Jobsity-Challenge",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/automation-exercise-cypress",\n "stars": 0\n },\n {\n "name": "RecuencoJones/vscode-groovy-lint-issue",\n "stars": 0\n },\n {\n "name": "aboe026/data-structures",\n "stars": 0\n },\n {\n "name": "aboe026/shields.io-badge-results",\n "stars": 0\n },\n {\n "name": "aboe026/software-update-checker",\n "stars": 2\n },\n {\n "name": "katalon-labs/katalon-recorder-extension",\n "stars": 0\n },\n {\n "name": "mashafrancis/sa-jenkins",\n "stars": 0\n },\n {\n "name": "nvuillam/vscode-groovy-lint",\n "stars": 52\n },\n {\n "name": "run2cmd/dotfiles",\n "stars": 2\n }\n ],\n "public_dependents_number": 11,\n "private_dependents_number": 4,\n "total_dependents_number": 15,\n "badges": {\n "total": "[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "public": "[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "private": "[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "stars": "[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)"\n }\n }\n ],\n "total_dependents_number": 15,\n "public_dependents_number": 11,\n "private_dependents_number": 4,\n "public_dependents_stars": 56,\n "badges": {\n "total": "[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "public": "[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "private": "[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "stars": "[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)"\n }\n}\n\n```\n</details>\n\n<details>\n <summary>Markdown output for single package</summary>\n\n```markdown\n# Dependents stats for nvuillam/npm-groovy-lint\n\n## Package nvuillam/npm-groovy-lint\n\n[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n\n| Repository | Stars |\n|:--------------------------------------------------------------------------------------------------------------|------:|\n| [CIT-SeniorDesign/CIT-SeniorDesign.github.io](https://github.com/CIT-SeniorDesign/CIT-SeniorDesign.github.io) | 0 |\n| [Moaz-Adel/Jobsity-Challenge](https://github.com/Moaz-Adel/Jobsity-Challenge) | 0 |\n| [Moaz-Adel/automation-exercise-cypress](https://github.com/Moaz-Adel/automation-exercise-cypress) | 0 |\n| [RecuencoJones/vscode-groovy-lint-issue](https://github.com/RecuencoJones/vscode-groovy-lint-issue) | 0 |\n| [aboe026/data-structures](https://github.com/aboe026/data-structures) | 0 |\n| [aboe026/shields.io-badge-results](https://github.com/aboe026/shields.io-badge-results) | 0 |\n| [aboe026/software-update-checker](https://github.com/aboe026/software-update-checker) | 2 |\n| [katalon-labs/katalon-recorder-extension](https://github.com/katalon-labs/katalon-recorder-extension) | 0 |\n| [mashafrancis/sa-jenkins](https://github.com/mashafrancis/sa-jenkins) | 0 |\n| [nvuillam/vscode-groovy-lint](https://github.com/nvuillam/vscode-groovy-lint) | 52 |\n| [run2cmd/dotfiles](https://github.com/run2cmd/dotfiles) | 2 |\n\n_Generated by [github-dependents-info](https://github.com/nvuillam/github-dependents-info)_\n```\n</details>\n\nNote: If your repository packages have millions of dependents, running github-dependent-infos could take hours, as it works by browsing and scraping HTML pages returned by GitHub. For example, [angular/angular dependents](assets/angular-package-usage.md) did run during several hours !\n\n- [Installation](#⚙️-installation)\n- [Usage](#🛠️-usage)\n- [Examples](#🧪-examples)\n- [Use as GitHub Action](#use-as-github-action)\n\n_________________\n## ⚙️ Installation\n\n```bash\npip install -U github-dependents-info\n```\n\nor install with `Poetry`\n\n```bash\npoetry add github-dependents-info\n```\n\n_________________\n## 🛠️ Usage\n\n```shell\n github-dependents-info [OPTIONS]\n```\n\n| Parameter | Type | Description |\n|-----------------------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| --repo | String | Repository. Example: `oxsecurity/megalinter` |\n| -b<br/> --badgemarkdownfile | String | _(optional)_ Path to markdown file where to insert/update **Used by** badge <br/> (must contain tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`) |\n| -s<br/> --sort | String | _(optional)_ Sort order: name (default) or stars |\n| -x<br/> --minstars | String | _(optional)_ If set, filters repositories to keep only those with more than X stars |\n| -m<br/> --markdownfile | String | _(optional)_ Output markdown file file |\n| -d<br/> --docurl | String | _(optional)_ Hyperlink to use when clicking on badge markdown file badge. (Default: link to markdown file) |\n| -p<br/> --mergepackages | String | _(optional)_ In case of multiple packages, merge their stats in a single one in markdown and json output |\n| -j<br/> --json | String | _(optional)_ Output in json format |\n| -v<br/> --version | Boolean | _(optional)_ Displays version of github-dependents-info |\n| --verbose | Boolean | _(optional)_ Verbose output |\n\n_________________\n## 🧪 Examples\n\n- Text output\n\n github-dependents-info --repo nvuillam/npm-groovy-lint\n\n- JSON output\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --json\n\n- Insert/Update **Used by** markdown badge within an existing markdown file containing tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --badgemarkdownfile ./README.md\n\n- Build markdown file with dependent repos (single package), sorted by name\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --markdownfile ./docs/package-usage.md --verbose\n\n- Build markdown file with dependent repos (single package), with minimum 10 stars\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --markdownfile ./docs/package-usage.md --minstars 10 --verbose\n\n- Build markdown file with dependent repos (multiple package), sorted by stars\n\n github-dependents-info --repo oxsecurity/megalinter --markdownfile ./docs/package-usage.md --sort stars --verbose\n\n- Build markdown file with dependent repos (multiple package), with merged list of packages in output markdown\n\n github-dependents-info --repo oxsecurity/megalinter --markdownfile ./docs/package-usage.md --sort stars --mergepackages --verbose\n\n## Use as GitHub Action\n\nCreate a file **.github/workflows/github-dependents-info.yml** in your repository with the following YAML content.\n\nIf will generate a new Pull Request (or replace the pending one) every time the usage stats will have changed :)\n\nDon\'t forget to add tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->` in your **README.md**, at the end of another badge line if you want github-dependents-info to replace its content automatically.\n\n```yaml\n# GitHub Dependents Info workflow\n# More info at https://github.com/nvuillam/github-dependents-info/\nname: GitHub Dependents Info\n\n# Let by default\non:\n # On manual launch\n workflow_dispatch:\n # On every push on selected branches (usually just main)\n push:\n branches: [main,master,setup-gdi]\n # Scheduled interval: Use CRON format https://crontab.guru/\n schedule:\n - cron: "0 0 * * 0" # Every sunday at midnight\n\npermissions: read-all\n\nconcurrency:\n group: ${{ github.ref }}-${{ github.workflow }}\n cancel-in-progress: true\n\njobs:\n build:\n name: GitHub Dependents Info\n runs-on: ubuntu-latest\n permissions:\n contents: write\n pull-requests: write\n steps:\n # Git Checkout\n - name: Checkout Code\n uses: actions/checkout@v4\n with:\n token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}\n fetch-depth: 0\n\n # Collect data & generate markdown\n - name: GitHub Dependents Info\n uses: nvuillam/github-dependents-info@v1.5.0 # If you trust me enough you can replace version by "main" :)\n # See documentation for variables details: https://github.com/nvuillam/github-dependents-info?tab=readme-ov-file#%EF%B8%8F-usage\n with:\n repo: ${{ github.repository }}\n # markdownfile: docs/github-dependents-info.md\n # badgemarkdownfile: README.md\n # sort: stars\n # minstars: "0"\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n # Workaround for git issues\n - name: Prepare commit\n run: sudo chown -R $USER:$USER .\n\n # Create pull request\n - name: Create Pull Request\n id: cpr\n uses: peter-evans/create-pull-request@v5\n with:\n token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}\n branch: github-dependents-info-auto-update\n commit-message: "[GitHub Dependents Info] Updated markdown file(s)"\n delete-branch: true\n title: "[GitHub Dependents Info] Updated markdown file"\n body: "_Generated with [github-dependents-info](https://github.com/nvuillam/github-dependents-info), by [Nicolas Vuillamy](https://github.com/nvuillam)_"\n labels: documentation\n - name: Create PR output\n run: |\n echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"\n echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"\n```\n\n_________________\n## 🛡 License\n\n[![License](https://img.shields.io/github/license/nvuillam/github-dependents-info)](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE)\n\nThis project is licensed under the terms of the `MIT` license. See [LICENSE](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE) for more details.\n\n_________________\n## Credits [![🚀 Your next Python package needs a bleeding-edge project structure.](https://img.shields.io/badge/python--package--template-%F0%9F%9A%80-brightgreen)](https://github.com/TezRomacH/python-package-template)\n\nThis package has been inspired by stackexchange post [How to use GitHub API to get a repository\'s dependents information in GitHub?](https://stackoverflow.com/questions/58734176/how-to-use-github-api-to-get-a-repositorys-dependents-information-in-github)\n- [Bertrand Martel](https://github.com/bertrandmartel)\n- [muvaf](https://stackoverflow.com/users/5233252/muvaf)\n- [Mo Ganji](https://www.linkedin.com/in/mohganji/) <!-- markdown-link-check-disable-line -->\n\nThis project was generated with [`python-package-template`](https://github.com/TezRomacH/python-package-template)\n',
26
+ 'author': 'nvuillam',
27
+ 'author_email': 'nicolas.vuillamy@gmail.com',
28
+ 'maintainer': 'None',
29
+ 'maintainer_email': 'None',
30
+ 'url': 'https://github.com/nvuillam/github-dependents-info',
31
+ 'packages': packages,
32
+ 'package_data': package_data,
33
+ 'install_requires': install_requires,
34
+ 'entry_points': entry_points,
35
+ 'python_requires': '>=3.9,<4.0',
36
+ }
37
+
38
+
39
+ setup(**setup_kwargs)
@@ -1,39 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- from setuptools import setup
3
-
4
- packages = \
5
- ['github_dependents_info']
6
-
7
- package_data = \
8
- {'': ['*']}
9
-
10
- install_requires = \
11
- ['beautifulsoup4==4.12.2',
12
- 'pandas>=2.0.0,<3.0.0',
13
- 'requests>=2.31.0,<3.0.0',
14
- 'rich>=12.6,<14.0',
15
- 'typer[all]>=0.4,<0.10']
16
-
17
- entry_points = \
18
- {'console_scripts': ['github-dependents-info = '
19
- 'github_dependents_info.__main__:app']}
20
-
21
- setup_kwargs = {
22
- 'name': 'github-dependents-info',
23
- 'version': '1.3.2',
24
- 'description': 'Collect information about dependencies between a github repo and other repositories. Results available in JSON, markdown and badges.',
25
- 'long_description': '# github-dependents-info\n\n<div align="center">\n\n[![PyPI](https://img.shields.io/pypi/v/github-dependents-info)](https://pypi.org/project/github-dependents-info/)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/github-dependents-info)](https://pypi.org/project/github-dependents-info/)\n[![GitHub stars](https://img.shields.io/github/stars/nvuillam/github-dependents-info?cacheSeconds=3600)](https://github.com/nvuillam/github-dependents-info/stargazers/)\n[![Build status](https://github.com/nvuillam/github-dependents-info/workflows/build/badge.svg?branch=main&event=push)](https://github.com/nvuillam/github-dependents-info/actions?query=workflow%3Abuild)\n[![Python Version](https://img.shields.io/pypi/pyversions/github-dependents-info.svg)](https://pypi.org/project/github-dependents-info/)\n[![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/nvuillam/github-dependents-info/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot)\n\n[![GitHub contributors](https://img.shields.io/github/contributors/nvuillam/github-dependents-info.svg)](https://github.com/nvuillam/github-dependents-info/graphs/contributors/)\n[![GitHub Sponsors](https://img.shields.io/github/sponsors/nvuillam)](https://github.com/sponsors/nvuillam)\n[![MegaLinter](https://github.com/nvuillam/github-dependents-info/workflows/MegaLinter/badge.svg?branch=main)](https://oxsecurity.github.io/megalinter)\n[![License](https://img.shields.io/github/license/nvuillam/github-dependents-info)](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)\n\nCollect information about dependencies between a github repo and other repositories.\n\n</div>\n\n_________________\n## 🚀 Features\n\nGitHub API does not allow to collect information about package usage (**Used by** on home, **Dependents** in insights section)\n\nThis package uses GitHub HTML to collect dependents information and can:\n\n- Output as text\n- Output as json (including shields.io markdown badges)\n- Generate summary markdown file\n- Update existing markdown by inserting **Used by** badge within tags\n - `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`\n- Handle multiple repositories packages\n- Filter results using minimum stars\n\nBadges example\n\n[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n\n<details>\n <summary>JSON output</summary>\n\n```json\n{\n "all_public_dependent_repos": [\n {\n "name": "CIT-SeniorDesign/CIT-SeniorDesign.github.io",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/Jobsity-Challenge",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/automation-exercise-cypress",\n "stars": 0\n },\n {\n "name": "RecuencoJones/vscode-groovy-lint-issue",\n "stars": 0\n },\n {\n "name": "aboe026/data-structures",\n "stars": 0\n },\n {\n "name": "aboe026/shields.io-badge-results",\n "stars": 0\n },\n {\n "name": "aboe026/software-update-checker",\n "stars": 2\n },\n {\n "name": "katalon-labs/katalon-recorder-extension",\n "stars": 0\n },\n {\n "name": "mashafrancis/sa-jenkins",\n "stars": 0\n },\n {\n "name": "nvuillam/vscode-groovy-lint",\n "stars": 52\n },\n {\n "name": "run2cmd/dotfiles",\n "stars": 2\n }\n ],\n "packages": [\n {\n "id": null,\n "name": "nvuillam/npm-groovy-lint",\n "url": "https://github.com/nvuillam/npm-groovy-lint/network/dependents",\n "public_dependent_stars": 56,\n "public_dependents": [\n {\n "name": "CIT-SeniorDesign/CIT-SeniorDesign.github.io",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/Jobsity-Challenge",\n "stars": 0\n },\n {\n "name": "Moaz-Adel/automation-exercise-cypress",\n "stars": 0\n },\n {\n "name": "RecuencoJones/vscode-groovy-lint-issue",\n "stars": 0\n },\n {\n "name": "aboe026/data-structures",\n "stars": 0\n },\n {\n "name": "aboe026/shields.io-badge-results",\n "stars": 0\n },\n {\n "name": "aboe026/software-update-checker",\n "stars": 2\n },\n {\n "name": "katalon-labs/katalon-recorder-extension",\n "stars": 0\n },\n {\n "name": "mashafrancis/sa-jenkins",\n "stars": 0\n },\n {\n "name": "nvuillam/vscode-groovy-lint",\n "stars": 52\n },\n {\n "name": "run2cmd/dotfiles",\n "stars": 2\n }\n ],\n "public_dependents_number": 11,\n "private_dependents_number": 4,\n "total_dependents_number": 15,\n "badges": {\n "total": "[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "public": "[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "private": "[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "stars": "[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)"\n }\n }\n ],\n "total_dependents_number": 15,\n "public_dependents_number": 11,\n "private_dependents_number": 4,\n "public_dependents_stars": 56,\n "badges": {\n "total": "[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "public": "[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "private": "[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)",\n "stars": "[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)"\n }\n}\n\n```\n</details>\n\n<details>\n <summary>Markdown output for single package</summary>\n\n```markdown\n# Dependents stats for nvuillam/npm-groovy-lint\n\n## Package nvuillam/npm-groovy-lint\n\n[![](https://img.shields.io/static/v1?label=Used%20by&message=15&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(public)&message=11&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(private)&message=4&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n[![](https://img.shields.io/static/v1?label=Used%20by%20(stars)&message=56&color=informational&logo=slickpic)](https://github.com/nvuillam/npm-groovy-lint/network/dependents)\n\n| Repository | Stars |\n|:--------------------------------------------------------------------------------------------------------------|------:|\n| [CIT-SeniorDesign/CIT-SeniorDesign.github.io](https://github.com/CIT-SeniorDesign/CIT-SeniorDesign.github.io) | 0 |\n| [Moaz-Adel/Jobsity-Challenge](https://github.com/Moaz-Adel/Jobsity-Challenge) | 0 |\n| [Moaz-Adel/automation-exercise-cypress](https://github.com/Moaz-Adel/automation-exercise-cypress) | 0 |\n| [RecuencoJones/vscode-groovy-lint-issue](https://github.com/RecuencoJones/vscode-groovy-lint-issue) | 0 |\n| [aboe026/data-structures](https://github.com/aboe026/data-structures) | 0 |\n| [aboe026/shields.io-badge-results](https://github.com/aboe026/shields.io-badge-results) | 0 |\n| [aboe026/software-update-checker](https://github.com/aboe026/software-update-checker) | 2 |\n| [katalon-labs/katalon-recorder-extension](https://github.com/katalon-labs/katalon-recorder-extension) | 0 |\n| [mashafrancis/sa-jenkins](https://github.com/mashafrancis/sa-jenkins) | 0 |\n| [nvuillam/vscode-groovy-lint](https://github.com/nvuillam/vscode-groovy-lint) | 52 |\n| [run2cmd/dotfiles](https://github.com/run2cmd/dotfiles) | 2 |\n\n_Generated by [github-dependents-info](https://github.com/nvuillam/github-dependents-info)_\n```\n</details>\n\nNote: If your repository packages have millions of dependents, running github-dependent-infos could take hours, as it works by browsing and scraping HTML pages returned by GitHub. For example, [angular/angular dependents](assets/angular-package-usage.md) did run during several hours !\n\n- [Installation](#⚙️-installation)\n- [Usage](#🛠️-usage)\n- [Examples](#🧪-examples)\n- [Use as GitHub Action](#use-as-github-action)\n\n_________________\n## ⚙️ Installation\n\n```bash\npip install -U github-dependents-info\n```\n\nor install with `Poetry`\n\n```bash\npoetry add github-dependents-info\n```\n\n_________________\n## 🛠️ Usage\n\n```shell\n github-dependents-info [OPTIONS]\n```\n\n| Parameter | Type | Description |\n|-----------------------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| --repo | String | Repository. Example: `oxsecurity/megalinter` |\n| -b<br/> --badgemarkdownfile | String | _(optional)_ Path to markdown file where to insert/update **Used by** badge <br/> (must contain tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`) |\n| -s<br/> --sort | String | _(optional)_ Sort order: name (default) or stars |\n| -x<br/> --minstars | String | _(optional)_ If set, filters repositories to keep only those with more than X stars |\n| -m<br/> --markdownfile | String | _(optional)_ Output markdown file file |\n| -p<br/> --mergepackages | String | _(optional)_ In case of multiple packages, merge their stats in a single one in markdown and json output |\n| -j<br/> --json | String | _(optional)_ Output in json format |\n| -v<br/> --version | Boolean | _(optional)_ Displays version of github-dependents-info |\n| --verbose | Boolean | _(optional)_ Verbose output |\n\n_________________\n## 🧪 Examples\n\n- Text output\n\n github-dependents-info --repo nvuillam/npm-groovy-lint\n\n- JSON output\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --json\n\n- Insert/Update **Used by** markdown badge within an existing markdown file containing tags `<!-- gh-dependents-info-used-by-start --><!-- gh-dependents-info-used-by-end -->`\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --badgemarkdownfile ./README.md\n\n- Build markdown file with dependent repos (single package), sorted by name\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --markdownfile ./docs/package-usage.md --verbose\n\n- Build markdown file with dependent repos (single package), with minimum 10 stars\n\n github-dependents-info --repo nvuillam/npm-groovy-lint --markdownfile ./docs/package-usage.md --minstars 10 --verbose\n\n- Build markdown file with dependent repos (multiple package), sorted by stars\n\n github-dependents-info --repo oxsecurity/megalinter --markdownfile ./docs/package-usage.md --sort stars --verbose\n\n- Build markdown file with dependent repos (multiple package), with merged list of packages in output markdown\n\n github-dependents-info --repo oxsecurity/megalinter --markdownfile ./docs/package-usage.md --sort stars --mergepackages --verbose\n\n## Use as GitHub Action\n\nCreate a file **.github/workflows/github-dependents-info.yml** in your repository with the following content.\n\nIf will generate a new Pull Request (or replace the pending one) every time the usage stats will have changed :)\n\n```yaml\n---\n# GitHub Dependents Info workflow\n# More info at https://github.com/nvuillam/github-dependents-info/\nname: GitHub Dependents Info\n\n# Let by default\non:\n # On manual launch\n workflow_dispatch:\n # On every push on selected branches (usually just main)\n push:\n branches: [main, setup-gdi]\n # Scheduled interval: Use CRON format https://crontab.guru/\n schedule:\n - cron: "0 0 * * 0" # Every sunday at midnight\n\npermissions: read-all\n\nconcurrency:\n group: ${{ github.ref }}-${{ github.workflow }}\n cancel-in-progress: true\n\njobs:\n build:\n name: GitHub Dependents Info\n runs-on: ubuntu-latest\n permissions:\n contents: write\n pull-requests: write\n steps:\n # Git Checkout\n - name: Checkout Code\n uses: actions/checkout@v4\n with:\n token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}\n fetch-depth: 0\n\n # Collect data & generate markdown\n - name: GitHub Dependents Info\n uses: nvuillam/github-dependents-info@v1.3.2\n # See documentation for variables details: https://github.com/nvuillam/github-dependents-info?tab=readme-ov-file#%EF%B8%8F-usage\n with:\n repo: ${{ github.repository }}\n # markdownfile: docs/github-dependents-info.md\n # badgemarkdownfile: README.md\n # sort: stars\n # minstars: "0"\n env:\n GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n\n # Workaround for git issues\n - name: Prepare commit\n run: sudo chown -R $USER:$USER .\n\n # Create pull request\n - name: Create Pull Request\n id: cpr\n uses: peter-evans/create-pull-request@v5\n with:\n token: ${{ secrets.PAT || secrets.GITHUB_TOKEN }}\n branch: github-dependents-info-auto-update\n commit-message: "[GitHub Dependents Info] Updated markdown file(s)"\n delete-branch: true\n title: "[GitHub Dependents Info] Updated markdown file"\n body: "_Generated with [github-dependents-info](https://github.com/nvuillam/github-dependents-info), by [Nicolas Vuillamy](https://github.com/nvuillam)_"\n labels: documentation\n - name: Create PR output\n run: |\n echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"\n echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"\n```\n\n_________________\n## 🛡 License\n\n[![License](https://img.shields.io/github/license/nvuillam/github-dependents-info)](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE)\n\nThis project is licensed under the terms of the `MIT` license. See [LICENSE](https://github.com/nvuillam/github-dependents-info/blob/master/LICENSE) for more details.\n\n_________________\n## Credits [![🚀 Your next Python package needs a bleeding-edge project structure.](https://img.shields.io/badge/python--package--template-%F0%9F%9A%80-brightgreen)](https://github.com/TezRomacH/python-package-template)\n\nThis package has been inspired by stackexchange post [How to use GitHub API to get a repository\'s dependents information in GitHub?](https://stackoverflow.com/questions/58734176/how-to-use-github-api-to-get-a-repositorys-dependents-information-in-github)\n- [Bertrand Martel](https://github.com/bertrandmartel)\n- [muvaf](https://stackoverflow.com/users/5233252/muvaf)\n- [Mo Ganji](https://www.linkedin.com/in/mohganji/) <!-- markdown-link-check-disable-line -->\n\nThis project was generated with [`python-package-template`](https://github.com/TezRomacH/python-package-template)\n',
26
- 'author': 'nvuillam',
27
- 'author_email': 'nicolas.vuillamy@gmail.com',
28
- 'maintainer': 'None',
29
- 'maintainer_email': 'None',
30
- 'url': 'https://github.com/nvuillam/github-dependents-info',
31
- 'packages': packages,
32
- 'package_data': package_data,
33
- 'install_requires': install_requires,
34
- 'entry_points': entry_points,
35
- 'python_requires': '>=3.9,<4.0',
36
- }
37
-
38
-
39
- setup(**setup_kwargs)