Coder Social home page Coder Social logo

vaguecoder / gorilla-mux Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gorilla/mux

1.0 1.0 3.0 464 KB

A fork of gorilla/mux, the powerful HTTP router and URL matcher for building Go web servers with ๐Ÿฆ

Home Page: http://www.gorillatoolkit.org/pkg/mux

License: BSD 3-Clause "New" or "Revised" License

Go 99.84% Makefile 0.16%
golang gorilla-mux router webserver

gorilla-mux's People

Contributors

bgaifullin avatar bign8 avatar brocaar avatar burrbd avatar chrishines avatar djgilcrease avatar dmitshur avatar ejholmes avatar elithrar avatar fharding1 avatar kimmachinegun avatar kisielk avatar kushmansingh avatar moraes avatar mtso avatar muesli avatar nickhudkins avatar nmiyake avatar owenthereal avatar pschlump avatar roobre avatar seriousben avatar shanesaww avatar shkw avatar sqs avatar tanryberdi avatar ttencate avatar tumdum avatar vaguecoder avatar vivekv96 avatar

Stargazers

 avatar

Watchers

 avatar

gorilla-mux's Issues

[Enhancement] Add `TODO` Section in All Issue Templates

Is your enhancement request related to a problem on existing feature? Please describe.

NA

Describe the solution you'd like

Add TODO Section in All Issue Templates

Describe alternatives you've considered

NA

Additional context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Misc] Add Issue Templates for Documentation & Misc.

Describe the Request/Issue

Add 2 new templates:

  1. Misc. template for any non bug/feature/documentation request.
  2. Documentation template for adding/fixing documentation.

Describe the Solution You Think

Add 2 templates in .github

Additional Context

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.

[Misc] Need `enhancement` issue template similar to `feature`

Describe the Request/Issue

Currently, we have 4 issue templates, among which feature is the closest to enhancements. However, it is better to have one enhancement template.

Describe the Solution You Think

Copy paste feature template as enhancement template with minor changes.

Additional Context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Tests] Add Coverage for `route.go`

Is it related to any existing issue, discussion or PR?

NA.

If about fixing existing tests, please explain in detail.

NA.

If about deletion of existing tests, please explain in detail.

NA

If about missing coverage, list in any of the following.

File(s):

  1. route.go (Current coverage: 81.8%)

If about adding extra tests, list existing below and explain the reason.

NA

Additional context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Feature] Add CodeQL to Pipeline

Is your feature request related to a problem? Please describe.

Need a step in the pipeline for analysis of security vulnerabilities.

Describe the solution you'd like

Add CodeQL to the pipeline.

Describe alternatives you've considered

Not sure.

Additional context

Refer etcd's CodeQL Step

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

Add a Makefile

Add a Makefile with targets like test at the very least.

[Feature] GitHub Actions

Is your feature request related to a problem? Please describe.

No. Just that the repo is a fork and CircleCI is not active on it. I wish to migrate it to GitHub Actions.

Describe the solution you'd like

Create GitHub Action's workflows for

  1. Linter (either golangci-lint if already available in project, or use the old school gofmt, golint, go vet, etc.
  2. Go test

Describe alternatives you've considered

GitHub Actions

Additional context

Workflows of the following can be referenced:

  1. etcd
  2. gin

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR. But if someone is willing to do it, go ahead.

[Enhancement] Add Linter Check in Test Workflow

Is your enhancement request related to a problem on existing feature? Please describe.

NA

Describe the solution you'd like

Add linter step in test.yaml

Describe alternatives you've considered

A separate workflow would also work.

Additional context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Enhancement] Workflow to Check `todo` Tag on Issue/PR

Is your enhancement request related to a problem on existing feature? Please describe.

Naah!

Describe the solution you'd like

At this point, it is just an idea. Need to check if a GitHub action workflow can detect the todo tag and fail the workflow for the developer to manually check and finish the TODOs.

Describe alternatives you've considered

If automation on this doesn't work (or too much of hard work for this simple thing), we have to stick to manually checking before approving the PRs (for todo tags on both PR & issue).

Additional context

  • todo tags on open issues/PRs can be found here.
  • Initial thought of adding todo is to signify that the issue or PR has some action items which have to be converted as issues. But this can be open-ended in future.

TODO (if any)

Add details of what todo tag does, as explained above, in CONTRIBUTING.md

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Bug] `ioutil` is deprecated

Describe the Bug

ioutil is deprecated. Replace all occurrences of ioutil with io or os w.r.t. the functions in use.

To Reproduce

NA

Additional Context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Misc] Need to Release `0.0.0`

Describe the Request/Issue

Since this is a fork, gorilla/mux v1.8.0 should be released as v0.0.0 here.

Describe the Solution You Think

Since gorilla mux is just a package and not a cmd tool, no releasers like goreleaser be used. However, the release page might need the source code section as in gorilla/mux v1.8.0.

The release page might require a template consisting

  1. Release version details
  2. Change log
  3. Contributors

I've added release-drafter to the project. Hence the template changes have to be done in .github/release-drafter.yml. However, I'm not sure how to release the first-ever version.

Additional Context

Refer release-drafter for more info on how to fix the template and to release.

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Enhancement] Use `actions/cache`

Is your enhancement request related to a problem on existing feature? Please describe.

Yes. The first GitHub action that I just added using #18 needs some caching of dependency installation.

Describe the solution you'd like

Use actions/cache which already available with GitHub actions. A bit of exploration is required.

Describe alternatives you've considered

Not sure.

Additional context

rs/zerolog makes use of the actions/cache. Need to check if using it as is will do us any good or if there are better usable ways.

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Tests] Add Coverage for `mux.go`

Is it related to any existing issue, discussion or PR?

NA.

If about fixing existing tests, please explain in detail.

NA.

If about deletion of existing tests, please explain in detail.

NA

If about missing coverage, list in any of the following.

File(s):

  1. mux.go (Current coverage: 90.3%)

If about adding extra tests, list existing below and explain the reason.

NA

Additional context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Feature] CodeCov Bot

Is your feature request related to a problem? Please describe.

NA

Describe the solution you'd like

Add CodeCov bot in GitHub actions.

Describe alternatives you've considered

Not sure. I need to check.

Additional context

It's good to have a check.

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

Unarchive the fork and make it downloadable

  1. Just replace the archive statement with details about the forking.
  2. Replace the module path in go.mod so it can be downloaded using go get -u github.com/vaguecoder/gorilla-mux

[Documentation] Move Examples to a Directory

What?

Currently, all examples are on README.md making scroll forever. Need to move them to a directory examples/ with respective document names and hyperlinks, except for installation and examples (which only has 3 code blocks).

Why?

README.md too lengthy.

Additional Context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Tests] Add Coverage for `regexp.go`

Is it related to any existing issue, discussion or PR?

NA.

If about fixing existing tests, please explain in detail.

NA.

If about deletion of existing tests, please explain in detail.

NA

If about missing coverage, list in any of the following.

File(s):

  1. regexp.go (Current coverage: 91.5%)

If about adding extra tests, list existing below and explain the reason.

NA

Additional context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Feature] Script for Coverage Check

Is your feature request related to a problem? Please describe.

Currently, we only check coverage in local run with manual validation. Need to automate for CI/CD.

Describe the solution you'd like

Need a script that will fail if the expected threshold is not met. This can then be run from GitHub actions on every push or PR.

Describe alternatives you've considered

Make target would also do the trick. But as the commands grow in size, it gets a hassle to overload makefile.

Additional context

  1. GitHub actions already have the unit test run workflow(s). Just need to add a separate workflow of coverage check.
  2. If using a script, it should run on bash (zsh user myself, I still think bash is the standard). Syntax differences of different shells or WSL is a headache of the future developers.

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Misc] Issue Template for `Tests`

Describe the Request/Issue

Need issue template for tests.

Describe the Solution You Think

Create issue templates similar to these for tests.

Additional Context

NA

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

[Documentation] We need `CONTRIBUTING.md`

What?

We need CONTRIBUTING.md for guidelines on contributing to this project. It should have detail on

  1. What copyleft license is included (the original gorilla mux has BSD-3 and we are leaving it as is)
  2. Every commit should be signed, and DCO bot checks for it, etc.
  3. How to test in local before committing changes
  4. Milestones and versioning
  5. Issue types
  6. Label types

Why?

As communication on issue/PR is hard, it is better to clarify a few things for contributors.

Additional Context

Samples:

  1. Kanister's
  2. Helm's
  3. Etcd's

Ownership of Contribution

If the triage is approved,

  • I wish to submit the PR myself.
  • I wish to submit the PR. But if someone is willing to do it, go ahead.
  • I don't know how to fix this or make these changes. I wish others to pick this up for me.

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.