Giter Club home page Giter Club logo

github-notifier's Introduction

github-notifier

Summary:

Real-time notifications from github and github enterprise instances in your desktop.

Comment notification

Supported for OS X Yosemite and newer versions

Instructions for installation and usage

brew install sargsyan/github-notifier/github-notifier && github-notifier-install

Add more Github enterprise instances or change configurations with

github-notifier-configure

More information on installation is on https://githubnotifier.net/#install

If you like the application, please ★ the repo

Instructions for playing with source code

Prerequisites

Make sure that you have jq command installed. jq is needed to github API response parsing.

Installation

To install the application run

make install

It will post files needed to scheduled run into /Library/LaunchDaemons files of MacOS.

If you want to revert the actions of install then run

make uninstall

Configurations

The application is designed to run for multiple github instances on the same time.One instance is github.com the others are github enterprise instances. Generally you will need to have one or two configurations. You can list, create, remove, activate and deactivate configurations. to get the help for configure.sh just run.

./configure.sh

Testing

If something is not working in your system and you are sure that configurations are correct you can run unit tests for your system to see if system behaves correctly. For this you need to install test framework shell scripts and run unit tests locally

brew install shunit2
make test

Troubleshooting

To check the daemon logs for the error, use

tail -f /var/log/system.log

If the system logs tell that the application keeps exiting with non-zero exit codes, use

cat ~/Library/Logs/github_notif/service.log

Or locate github_notif folder in the Mac Console application.

Advanced users can change the source code on the installed package. For example, to change the code of the main script open the following files

ls /usr/local/Cellar/github-notifier/ #To get the current version
vi /usr/local/Cellar/github-notifier/<current_version>/lib/github_notif

github-notifier's People

Contributors

gitter-badger avatar sargsyan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

github-notifier's Issues

Error when showing notifications

2019-06-12 16:26:58 ERROR Cannot save last shown commit date. 2019-06-12 16:26:58 ERROR An error occured while showing notification. An error occured while accessing <URL for our github enterprise instance>/issues/comments/4035793: Not Found

Show push event details in notifications

Is your feature request related to a problem? Please describe.
Currently, whenever user pushes commits into a repository , the applications shows somebody updated the repository, without saying type of the update, and what has been changed. Mostly these happens when users push commits

Describe the solution you'd like
Whenever there is a push, the title of the notifications can be " pushed commits to PR". The body of the notifications will ideally show the list of the commits, line by line

feature request: open notification in "notification view"

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

Screen Shot 2020-06-21 at 11 40 11 AM

With github releasing their new notification interface, they introduced a notification view (see screenshot below) that lets you manage the state of the navigation.

I'm not quite sure how they enable it, but its likely doable.

By having this available, I can act on the notification in relation to what actually was said. The other route would be going to notifications and ticking it off, post view.

Describe the solution you'd like
Opening a notification via notification center leads to the event with a "notification view"

Describe alternatives you've considered
The alternative would be what exists today, plus having to go to the notifications screen, marking it as read.

feature request: filter notifications

Is your feature request related to a problem? Please describe.
I have a pretty busy notification feed and would like the option to choose what notifications are relevant at what time.

With the launch of notification filters, I like the idea of being able to choose one of the filters as a way of what I'd like to get bubbled up to my desktop.

In the same context, I also like the idea of being able to toggle filters. For instance, one for work and one for OSS work. Switching between them would allow you to "go off work" but still stay active in your github community.

Describe the solution you'd like
A way of configuring github-notifier to choose a notification filter to use for what notifications to show. Multiple profiles can be stored as well as a quick way to toggle between them.

Describe alternatives you've considered
None, really. I don't know any software that achieves the same.

Additional context

Perpetually repeating notifications

Describe the bug
I have configured github.com as the source of GitHub notification events. Though I successfully receive notifications, the same notification is re-posted multiple times. The only way to stop the notifications from recurring is to go to the Notification Center in GitHub and mark all notifications as read.

To Reproduce
Steps to reproduce the behavior:

  1. Receive a notification.
  2. Continue to receive the same notification.
  3. Go to Notification Center in GitHub and mark all notifications as read to stop receiving the same notification.

Expected behavior
I expect that the notification for any particular event is posted only once.

Screenshots
Screen Shot 2020-02-11 at 10 31 34 AM

Desktop (please complete the following information):

  • OSX version: MacOS 10.15.3

Additional context
None

Fix the globbing and splitting issues reported by shellcheck

Is your feature request related to a problem? Please describe.
Shellcheck reports issues on the program. The most important of them can be considered globbing and splitting issues. So as a first iteration fix that problems.

Describe the solution you'd like
shellcheck will not longer report SC2086.

Describe alternatives you've considered
Probably some SC2086 warnings can be ignored after carefully examination

No Info.plist file in application bundle or no NSPrincipalClass in the Info.plist file

Describe the bug
I am getting intermittent errors from the application failing to connect to my Github server. These errors come in the form of notifications. Checking the logs they contain 2020-08-06 09:46:25 ERROR Failed to connect to https://REDACTED/api/v3/notifications.
I have never successfully received a proper notification. Inspecting further I was am getting the failed to connect notification only when there is a new notification.

Running the tool manually I get no output and a response code of 0 when there are no notification updates. But when there is a notification update I get the error 2020-08-06 15:39:28.419 terminal-notifier[16497:137323] No Info.plist file in application bundle or no NSPrincipalClass in the Info.plist file, exiting.

To Reproduce
Steps to reproduce the behavior:

  1. Trigger a notification
  2. Run /usr/local/lib/github_notif before the tool runs automatically.

Expected behavior
I expected to see details of the notification

Screenshots
N/A

Desktop (please complete the following information):

  • OSX version: 10.14.6 (18G103)

Additional context
N/A

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.