Saravanan666/pypi-org huggingface dataset:
Package: github-trending-repos
GitHub Trending Repositories CLIA command-line tool for retrieving trending GitHub repositories based on different time periods.Table of ContentsFeaturesInstallationUsageOptionsExamplesLicenseFeaturesFetch trending repositories from GitHub.Filter repositories by programming language.Display repository information including name, author, link, description, language, stars, and forks.Installationpipinstallgithub-trending-reposUsagegithub-trending-reposdaily--languagepython--page1daily,weekly, ormonthlyare the available time periods.--languageallows you to filter repositories by programming language.--pagelets you navigate through different pages of results (0 to 4).Optionsperiod: Trending period (daily,weekly, ormonthly).language: Filter repositories by programming language.save: Save data as JSON (optional).page: Page index (default: 0).ExamplesRetrieve daily trending Python repositories:github-trending-reposdaily--languagepythonSave weekly trending repositories with JavaScript language to a JSON file:github-trending-reposweekly--languagejavascript--saveView the second page of monthly trending repositories:github-trending-reposmonthly--page1LicenseThis project is licensed under the MIT License - see theLICENSEfile for details.
Package: github-tui
Github-TUIGithub TUI for issues, notifications, discussions, and PR
management. A terminal tool for focused management of the writing and
community aspects of open source programming.LicenseBSD 3Copyright 2022 Christopher OstrouchovRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Package: github-utils-api
GitHub Utils APIWhat is it?This package is used to provide asimplepython interface for interacting with GitHub.
It is based on the official public Rest API documentation and private methods discovered by the community.This project is documented athttps://githubutilsapi.readthedocs.io/How to Install?From PyPI$pipinstallgithub-utils-apiFrom SourceGit clone repositoryUsepip install -r requirements.txtto install the required packagesorpipenv install && pipenv install --devHow to use?Import this python package and code.fromgithubutilsapiimportGithubUtilsApiHow to contribute?First of all, I am happy for any PR requests.
Let's fork and provide your changes :)Fork this projectInstall required software Python3Make your changesRemember to generate documented methodsTest your changes and create the pull requestLicenseThis project is licensed under the terms of the MIT license.For a copy, seehttps://opensource.org/licenses/MIT.
Package: github-vanity
Write to your GitHub activity chart.Licensed under the MIT License, seeLICENSE.InstallationInstall from the cheese shop.pipinstallgithub-vanityUsageInitialize an empty Git repository which you will submit to GitHub.Populate the repo with the desired text:vanitywrite"Hello there!"Push the repo to GitHub and presto!Referencevanity write [options] texttext- text to write to the commit chartAvailable options:-h,–help- show usage instructions-d,–start_date- the date to start with,should be a Sunday-o,–offset- number of spaces to leave to the left (default is 0)-s,–spacing- spacing between letters (default is 1)-w,–space_width- width of space character (default is 4)-c,–commits- number of commits per pixel (default is 50)The defaultstart_dateis the Sunday 52 weeks before the last one, which
is the first pixel visible on the commit chart.
Package: github-vulnerability-exporter
This package exports theSecurity Vulnerability Alertsfrom GitHub for all repositories of an organization asPrometheusmetrics.UsageConfigure API tokenYou’ll need to provide an access token with scoperepoto access the GitHub API.
See theGitHub documentationfor details.Start HTTP serviceStart the HTTP server like this:$ GITHUB_AUTHTOKEN=MYTOKEN GITHUB_OWNER=MyGitHubOrgOrUser github_vulnerability_exporter --host=127.0.0.1 --port=9597Pass--ttl=SECONDSto cache GitHub API results for the given time or -1 to disable (default is 600).
Prometheus considers metrics stale after 300s, so that’s the highest scrape_interval one should use.
However it’s usually unnecessary to hit the API that often, since the vulnerability alert information does not change that rapidly.Pass--forkedif you want to include forked repositories (not sure if they actually receive vulnerability alerts, though).Configure Prometheusscrape_configs:
  - job_name: 'vulnerabilities'
    scrape_interval: 300s
    static_configs:
      - targets: ['localhost:9597']We export one metric, a gauge calledgithub_vulnerability_alerts,
with labels{repository="MyGitHubOrgOrUser/my-repository-name,status="active|dismissed"}.Additionally, aghvuln_scrape_duration_secondsgauge is exported.CHANGES1.5.2 (2023-04-11)Brown-bag release1.5.1 (2023-04-11)Interpret “dismissedAt: unknown” as dismissed, not active1.5.0 (2019-06-07)Add in-memory caching so we don’t have to hit the API on each scrape1.4.0 (2019-06-07)Support collecting data for repositories of either an organization or a user1.3.0 (2019-06-07)Make listen host configurable1.2.0 (2019-06-07)Addstatuslabel to differentiate between active and dismissed alerts1.1.0 (2019-06-07)Allow configuring via environment variables as well as command line parameters1.0.1 (2019-06-07)Increase repository query batch size.1.0.0 (2019-06-06)First release.
Package: github_watcher
github_watcher is a package for keeping an eye for pull requests that fulfill certain criteria. If you’re overseeing some tricky lines of code, you can get an alert and a link to any pull request that modifies those lines.You can also specify a list of regular expressions for which to watch each pull request. If you get a match in any file (source or destination) in any PR you’ll get an alert and a link to it.You can find more info on the github page.https://github.com/akellehe/github-watcher
Package: github-webhooks
Installation$[sudo]pipinstallgithub-webhooksConfigbashpythonexport GITHUB_TOKEN="your_github_token"os.environ["GITHUB_TOKEN"]="your_github_token"Examples$cdpath/to/repo
$python-mgithub_webhooks.create"push"https://xxx.execute-api.us-east-1.amazonaws.com/run
$python-mgithub_webhooks.names
web
$python-mgithub_webhooks.urls
https://xxx.execute-api.us-east-1.amazonaws.com/run
$python-mgithub_webhooks.delete"web"~/.github-webhooks.ini[name]
  url = https://xxx.execute-api.us-east-1.amazonaws.com/run
  events = push$ python -m github_webhooks.init "name"Linkswebhooks REST API v3readme42.com
Package: github-webhooks-framework
Python GitHub Webhooks FrameworkSimple and lightweight micro framework for quick integration withGitHub
webhooks.It's based onFastAPIandpydantic, nothing more!Async and mypy friendly.InstallationJust addgithub-webhooks-frameworkpackage.Example:pip install github-webhooks-frameworkpoetry add github-webhooks-frameworkExampleCreate fileexample.pyand copy next code:importuvicornfrompydanticimportBaseModelfromgithub_webhooksimportcreate_appfromgithub_webhooks.schemasimportWebhookCommonPayload# WebhookCommonPayload is based on pydantic.BaseModelclassPullRequestPayload(WebhookCommonPayload):classPull(BaseModel):title:strurl:straction:strpull_request:Pull# Initialize Webhook Appapp=create_app()# Register webhook handler:#   `pull_request` - name of an event to handle#   `PullRequestPayload` - webhook payload will be parsed into this model@app.hooks.register('pull_request',PullRequestPayload)asyncdefhandler(payload:PullRequestPayload)->None:print(f'New pull request{payload.pull_request.title}')print(f'  link:{payload.pull_request.url}')print(f'  author:{payload.sender.login}')if__name__=='__main__':# start uvicorn serveruvicorn.run(app)Let's have detailed overview.We start by defining payloadModelto parse incomingPull Request Body.classPullRequestPayload(WebhookCommonPayload):classPull(BaseModel):title:strurl:straction:strpull_request:PullIn this example we only want to getaction,pull_request.titleandpull_request.urlfrom payload.By subclassingWebhookCommonPayloadmodel will automatically getsender,repositoryandorganizationfields.Next - we are creating ASGI app (based on FastAPI app)app=create_app()Optionally we can provide heresecret_tokenGithub Webhook secretapp=create_app(secret_token='super-secret-token')And time to define our handler@app.hooks.register('pull_request',PullRequestPayload)asyncdefhandler(payload:PullRequestPayload)->None:print(f'New pull request{payload.pull_request.title}')print(f'  link:{payload.pull_request.url}')print(f'  author:{payload.sender.login}')We are using here@app.hooks.registerdeco, which accepts 2 arguments:event: str- name of webhook eventpayload_cls: pydantic.BaseModel- pydantic model class to parse request, subclassed frompydantic.BaseModelorWebhookCommonPayload.And our handler function must be any of this signatures:asyncdefhandler(payload:PullRequestPayload)->None:...asyncdefhandler(payload:PullRequestPayload,headers:WebhookHeaders)->Optional[str]:# `headers` will be WebhookHeaders model with Github Webhook headers parsed....And the last - let's launch it.For example with uvicornuvicornexample:appWebhook will be available onhttp://localhost:8000/hookThat's it!
Now you have a webhook server, which can handle incoming Github Webhook requests.
Package: github-webhooks-framework2
Python GitHub Webhooks FrameworkNOTE:Forked fromgithub_webhooksas I needed to access more things:query params from incoming webhooks for identificationbackground_tasksto handle long running webhook actions.Simple and lightweight micro framework for quick integration withGitHub
webhooks.It's based onFastAPIandpydantic, nothing more!Async and mypy friendly.InstallationJust addgithub-webhooks-framework2package.Example:pip install github-webhooks-framework2poetry add github-webhooks-framework2ExampleCreate fileexample.pyand copy next code:importuvicornfrompydanticimportBaseModelfromgithub_webhooksimportcreate_appfromgithub_webhooks.schemasimportWebhookCommonPayload# WebhookCommonPayload is based on pydantic.BaseModelclassPullRequestPayload(WebhookCommonPayload):classPull(BaseModel):title:strurl:straction:strpull_request:Pull# Initialize Webhook Appapp=create_app()# Register webhook handler:#   `pull_request` - name of an event to handle#   `PullRequestPayload` - webhook payload will be parsed into this model@app.hooks.register('pull_request',PullRequestPayload)asyncdefhandler(payload:PullRequestPayload)->None:print(f'New pull request{payload.pull_request.title}')print(f'  link:{payload.pull_request.url}')print(f'  author:{payload.sender.login}')if__name__=='__main__':# start uvicorn serveruvicorn.run(app)Let's have detailed overview.We start by defining payloadModelto parse incomingPull Request Body.classPullRequestPayload(WebhookCommonPayload):classPull(BaseModel):title:strurl:straction:strpull_request:PullIn this example we only want to getaction,pull_request.titleandpull_request.urlfrom payload.By subclassingWebhookCommonPayloadmodel will automatically getsender,repositoryandorganizationfields.Next - we are creating ASGI app (based on FastAPI app)app=create_app()Optionally we can provide heresecret_tokenGithub Webhook secretapp=create_app(secret_token='super-secret-token')And time to define our handler@app.hooks.register('pull_request',PullRequestPayload)asyncdefhandler(payload:PullRequestPayload)->None:print(f'New pull request{payload.pull_request.title}')print(f'  link:{payload.pull_request.url}')print(f'  author:{payload.sender.login}')We are using here@app.hooks.registerdeco, which accepts 2 arguments:event: str- name of webhook eventpayload_cls: pydantic.BaseModel- pydantic model class to parse request, subclassed frompydantic.BaseModelorWebhookCommonPayload.And our handler function can include the following params:asyncdefhandler(payload:PullRequestPayload,headers:WebhookHeaders,query_params:QueryParams,background_tasks:BackgroundTasks)->Optional[str]:# `headers` will be WebhookHeaders model with Github Webhook headers parsed....When not in need of any of the named params simply take them as**_: Anyas not used:asyncdefhandler(payload:PullRequestPayload,**_:Any)->Optional[str]:...An example setup can be found inexample/server.py.References:DevelopmentInstall local venv:python -m venv .venvActivate:. .venv/bin/activateInstall deps withpip install -r requirements.txt -r requirements-test.txtWhen done with packages:./freeze-requirements.sh
Package: github-wiki-page-index
GitHub Wiki Page IndexThis package will generate a page index for your GitHub Wiki, and
optionally insert it into the Home.md file. It can also be set up as
a GitHub Action to auto-update the Home.md file when the wiki is
edited.UsageTo start, clone your GitHub repo's wiki to your local file system:git clone https://github.com/paulsuh/<reponame>.wiki.gitThere are then two modes of running the code:Generate the Page Index and print it to stdout. You can then paste
this into your Home.md file.python generate_wiki_page_index.py <path to cloned wiki>Have the Page Index automatically inserted into your Home.md file.python generate_wiki_page_index.py --insert <path to cloned wiki>The first time the index is automatically inserted into the Home.md
file it will be added to the very beginning of the file. The top and
bottom of the inserted Page Index will be marked by a pair of HTML
comments. Any subsequent runs to update the Page Index will preserve
any text above or below the index.TaggingYou can place a line of text containing tags in each page. The
script will scan for the first line that starts with "Tags:" and use
that to list the page in a section. Only one line is used, so it is
most efficient if the tags are put on the first line of the page.Tags are snake case and case-sensitive.Tag_oneandTag_Oneare
considered to be two different tags. When the headings are rendered,
underscores are turned into spaces. A page can have any number of
tags.Tags can be hierarchical, with segments separated by a hyphen ('-').
For example,Tag_Level_One-Level_Two-Subtag_Level_Threewill produce
a structure that looks like:Tag Level OneLevel TwoSubtag Level ThreeTitle of the PageThe first part of the page index will the pages that have no tags,
listed in alphabetical order. Then, each tag will have a section
listing the pages that have that tag, and then subheadings for pages
that are tagged with hierarchical tags.Automated DeploymentTBA
Package: githuby
githubySimple package for fetching user data from GitHub. This package provides
one simple async functionfetch_user(), which wraps the data returned by the
GitHub API into aUserobject which then can be used to easily access
the data. Repositories are also fetched and wrapped up intoRepositoryinstances.InstallingPython3.8 or above is required.pipinstallgithubyQuick Examplefromgithubyimportfetch_userimportasyncioasyncdefmain():user=awaitfetch_user("chr3st5an")print(f"{user.username}#{user.id}has{len(user.repositories)}repos:")forrepoinuser.repositories:print(f"{repo.name}@{repo.url}")asyncio.run(main())... or from the CLIpython-mgithubychr3st5an
Package: githunt
githuntBrowse most stared repositories by date on Github from your command line.This libray is inspired by theGithuntwebapp created byKamran Ahmed, you can view ithere.PrerequisitesRequires Python 3.7 or greaterInstallationpip install githuntUsagegithunt --help

# Output
Usage: githunt [OPTIONS]

  Returns repositories based on the language. repositories are sorted by
  stars

Options:
  -l, --language TEXT  language filter (eg: python)
  -d, --date TEXT      date in the ISO8601 format which is YYYY-MM-DD (year-
                       month-day)
  -f, --fmt TEXT       output format, it can be either table or colored
  --help               Show this message and exit.
Package: githyperlink
githyperlinkGet a link to the hosted html version of a git-tracked file or directory.This is relevant only for git remotes that serve html, like github and gitlab.Usage$gethyperlink[PATH](Note the spelling here:gethyperlink).IfPATHis not specified, a link for the current directory is given.Example$cdmy-pretty-repo/subdir

$gethyperlinksomefile.jl
https://github.com/yourname/my-pretty-repo/blob/main/subdir/somefile.jlYou might want to define an alias, for example, in~/.bashrc:aliasgl="gethyperlink"# Or maybe 'gurl' (get url) 💅Direct usage in Pythonfromgithyperlinkimportget_hyperlinkprint(get_hyperlink(__file__))# → https://gitlab.com/you/my_scripts/blob/main/this_script.pyThe argument toget_hyperlinkcan be a string, as above, or apathlib.Path.Installationpip install githyperlinkThis will get you the,and makes the command-line toolgethyperlinkglobally available.To upgrade an existing installation to the version above, usepip install -U githyperlink.Requires Python ≥ 3.9.Featuresgitis called directly, in a subprocess: this is faster than the default usage ofGitPython, and spares a dependency. (Currently, we only depend onclick).Not many features.This makes the source code easier to grok, and easier to modify for your own purposes.
Package: giticket
========giticket========.. image:: https://img.shields.io/pypi/v/giticket.svg:target: https://pypi.python.org/pypi/giticket.. image:: https://travis-ci.com/milin/giticket.svg?branch=master:target: https://travis-ci.org/milin/giticket.. image:: https://readthedocs.org/projects/giticket/badge/?version=latest:target: https://giticket.readthedocs.io/en/latest/?badge=latest:alt: Documentation StatusAuto add ticket info to your git commits.* Free software: MIT license* Documentation: https://giticket.readthedocs.io.Features--------This hook saves developers time by prepending ticket numbers to commit-msgs.For this to work the following two conditions must be met:- The ticket format regex specified must match, if the regex is passed in.- The branch name format must be <ticket number>_<rest of the branch name>For e.g. if you name your branch ``JIRA-1234_awesome_feature`` and commit ``Fix some bug``, the commit will be updated to ``JIRA-1234 Fix some bug``.Pass ``--regex=`` or update ``args: [--regex=<custom regex>]`` in your .yaml file if you have custom ticket regex.By default it's ``[A-Z]+-\d+``.Pass ``--format=`` or update ``args: [--format=<custom template string>]`` in your .yaml file if you have custom message replacement.By default it's ``'{ticket} {commit_msg}``, where ``ticket`` is replaced with the found ticket number and ``commit_msg`` is replaced with the original commit message.It is best used along with pre-commit_. You can use it along with pre-commit by adding the following hook in your ``.pre-commit-config.yaml`` file.::repos:- repo:  https://github.com/milin/giticketrev: 'e0bf7ae'hooks:- id:  giticketargs: ['--regex=PROJ-[0-9]', --format='"{ticket} {commit-msg}"']  # OptionalYou need to have precommit setup to use this hook.--------------------------------------------------Install Pre-commit and the commit-msg hook-type.::pip install pre-commit==1.11.1pre-commit installpre-commit install --hook-type commit-msg.. _pre-commit: https://pre-commit.com/=======History=======0.1.5 (2019-04-23)------------------* Add custom commit message template to be passed in.0.1.0 (2019-01-02)------------------* First release on PyPI.
Package: gitid
GitIDGitID is a command-line tool for managing multiple git identities on the same machine. This is particularly useful for shared machines where multiple people develop in the same workspaces, which is in some cases unavoidable.With GitID, users can store their git identities and quickly load them in their shell, so their commits are marked with their name and email.Note that GitID only sets commit authors and committers, and doesnotaffect authorization.InstallationInstallation is easy:pipinstallgitid
gitidinitbash# change to your shell of choiceInstallation IssuesSome environments may not place the script on the path. If your shell can't find thegitidscript, you can do one of the following:Install with sudo:sudo-HpipinstallgitidOr add the following snippet to your~/.bashrc(or equivalent startup file):exportPATH="$PATH:<PATH_TO_GITID>"Unsupported shellIf your shell is unsupported bygitid init, simply addalias gitid="source gitid"to the appropriate startup file of your shell.WorkflowSuppose both Frodo Baggins and Samwise Gamgee want to develop on the same computer. They would add their git identities like so:gitidaddfrodo"Frodo Baggins"frodo@shire.com
gitidaddsam"Samwise Gamgee"sam@shire.comNow Frodo wants to write some code:gitidsetfrodo
...gitcommands...
gitcommit# This commit is marked with "Frodo Baggins <frodo@shire.com>" as the committer and authorSeparately, possibly at the same time (in a different session), Samwise also wants to write code:gitidsetsam
...gitcommands...
gitcommit# This commit is marked with "Samwise Gamgee <sam@shire.com>" as the committer and authorAll identities can be viewed:gitidlistWhich outputs: (*marks the active identity)Stored identities:
    ( ) frodo: Frodo Baggins <frodo@shire.com>
    (*) sam: Samwise Gamgee <sam@shire.com>Identities can also be removed:gitidremovefrodo# removes Frodo's identitygitidclear# removes all stored identities
Package: git-id
git-idAn ID manager for git.An Identity / Profile consists of name, email, and signingkey, and this command aims to manage them and help switch between them seamlessly.how to install$ pip install git-idUsageinfo- show info / add identity$ git id infoinfowill retrieve identity from current repository and search a matching identity in the registry ($HOME/.git-id.yml).If no matching identity is found, then asks you if you want to register it.ls- list identities in the registry$ git id lslswill show all the identities in the registry.use- use an identity$ git id use <profile_id>usewill set the identity of the current repository to the identity<profile_id>in the registry.create- create an identity$ git id createcreatewill create + register a new identity interactively/non-interactively.
Package: git-identity
git-identityQuickly set user.name and user.email for a repository, based on a config file.
Available onpypi.InstallationRecommended installation is withpipx:pipxinstallgit-identityAutocompletionAutocompletion is done withargcomplete.
Install, and add the following to your shell's startup scripts:eval"$(register-python-argcompletegit-identity)"ConfigurationThis project will look forgit-identity.jsonin the XDG config folder (typically$HOME/.config/).{"identities":{"<alias>":{"name":"Alex Ample","email":"alexample@example.com"}}}aliasis what is used when invoking the command.UsageAfter installation, youmay use this as a git subcommand(though argcomplete only works when you invoke it asgit-identity)gitidentity<alias>