Giter VIP home page Giter VIP logo

ghtrend's Introduction

GhTrend

PyPI - Version PyPI - Downloads

Request and parse Github trending page.

Usage:

$ get-trend [OPTIONS] [DATE_RANGE] [OUT_FILE]

Arguments:

  • [DATE_RANGE]: Choose from: daily, weekly, monthly
  • [OUT_FILE]: Enter the filepath csv to be stored at

Options:

  • --quiet / --no-quiet: [default: no-quiet]
  • --version / --no-version
  • --install-completion: Install completion for the current shell.
  • --show-completion: Show completion for the current shell, to copy it or customize the installation.
  • --help: Show this message and exit.

Dependency:

  • requests
  • BeautifulSoup4
  • typer

ghtrend's People

Contributors

cybershang avatar

Watchers

 avatar

ghtrend's Issues

Successful Implementation of Build and Publish Workflow with OIDC

After several attempts, I've managed to streamline the workflow for building and publishing using OIDC. Here's an overview of the challenges I encountered and the solutions I found:

Incorrect Usage of Poetry for PyPI Token Configuration

Issue No.1: Initially, I used the command poetry config pypi-token.pypi <my-token>. This approach is incorrect in the context of OIDC because it statically sets a PyPI token in the Poetry configuration. When using OIDC, tokens are dynamically generated and provided as environment variables for each workflow run. Static tokens do not align with the dynamic and secure nature of OIDC tokens.

Solution: The correct approach is to use the command poetry -u __token__ -p {PYPI_API_TOKEN}. This command dynamically sets the PyPI token for each run. This method ensures that the latest, temporary OIDC token is used for each deployment, enhancing security and aligning with the best practices of CI/CD pipelines.

Reusing the Same Release Tag

Issue No.2: Consistently using the same release tag led to the triggering of older workflows, resulting in unexpected behavior.

Solution: To ensure that the latest workflow changes are applied, always use a unique release tag for each new release in GitHub. This practice ensures that each release is associated with the correct version of the workflow.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.