dug 0.1.0.alpha2 → 0.2.0
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.
- checksums.yaml +4 -4
- data/README.md +35 -13
- data/lib/dug/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0d92695864762a5b6667cb71be82f5655118bed7
|
4
|
+
data.tar.gz: 03a4ae0c0d2ebc6b2622a84ce2b9bc2d3ae0500e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec5f7374bf6513f68903ccef656b0d1825cf6c8df350c20396bf89b4e4bfbb49e508b9789100a52d8ad99004b9191aaa56521eb90d5d327500f6c3443ecefb3b
|
7
|
+
data.tar.gz: ca0c3d4b18afa6c6d76a9b9641143f402f71abd963c0fb463e0d3c664d8e977967fc9486e09c5b9c4e56095abb647ae7d441ace680321ff56279602e64c7f59c
|
data/README.md
CHANGED
@@ -6,13 +6,14 @@
|
|
6
6
|
|
7
7
|
Created out of frustration. _"[D]amn yo[u], [G]mail!"_
|
8
8
|
|
9
|
-
**Dug is a simple, configurable gem to organize your GitHub notification emails
|
10
|
-
ways Gmail can't and in an easier-to-
|
11
|
-
Gmail API to do all the things that
|
12
|
-
|
13
|
-
|
14
|
-
"Commented", etc.
|
9
|
+
**Dug is a simple, configurable gem to organize your GitHub notification emails
|
10
|
+
in ways Gmail can't and in an easier-to-maintain way than large, slow Google
|
11
|
+
Apps Scripts.** It interacts with Google's Gmail API to do all the things that
|
12
|
+
people usually do with Gmail filters (label by organization name, repository
|
13
|
+
name) as well as parse GitHub's custom X headers to label your messages with
|
14
|
+
things like "Mentioned by name", "Assigned to me", "Commented", etc.
|
15
15
|
|
16
|
+

|
16
17
|
|
17
18
|
## Quick Installation
|
18
19
|
|
@@ -23,13 +24,13 @@ whatever).
|
|
23
24
|
|
24
25
|
Basic installation steps:
|
25
26
|
|
26
|
-
1. Install Dug
|
27
|
+
1. **Install Dug**
|
27
28
|
|
28
29
|
```
|
29
30
|
$ gem install dug
|
30
31
|
```
|
31
32
|
|
32
|
-
2. Create a YAML Rule file
|
33
|
+
2. **Create a YAML Rule file.** Example (`dug_rules.yml`):
|
33
34
|
|
34
35
|
```
|
35
36
|
---
|
@@ -63,12 +64,24 @@ Basic installation steps:
|
|
63
64
|
* Label notifications with `Team mention` if a team I am a part of is mentioned in it.
|
64
65
|
* Label notifications with `Assigned to me` if the Issue/PR is assigned to me.
|
65
66
|
|
66
|
-
3.
|
67
|
+
3. **Configure Gmail.** In Gmail...
|
67
68
|
|
68
|
-
|
69
|
+
* Create the label "GitHub" and then "Unprocessed" nested underneath it (will show up as "GitHub/Unprocessed").
|
70
|
+
* Create all of the labels in the preceding step if you don't have them already.
|
71
|
+
* Set up the following filters:
|
72
|
+
```
|
73
|
+
Matches: from:(notifications@github.com)
|
74
|
+
Do this: Apply label "GitHub/Unprocessed"
|
75
|
+
|
76
|
+
# This filter is optional but highly recommended.
|
77
|
+
Matches: from:(notifications@github.com) -{cc: youremail@example.non}
|
78
|
+
Do this: Skip Inbox
|
79
|
+
```
|
80
|
+
|
81
|
+
4. **Create a project in the [Google Developers Console](https://console.developers.google.com)** to authenticate to the
|
69
82
|
Gmail API via OAuth 2.0. If you need help, detailed instructions are included further in this document.
|
70
83
|
|
71
|
-
5. Create a script
|
84
|
+
5. **Create a runner script.** Example (`script.rb`; fill in your OAuth credentials):
|
72
85
|
|
73
86
|
```ruby
|
74
87
|
require 'dug'
|
@@ -85,7 +98,7 @@ Basic installation steps:
|
|
85
98
|
Dug::Runner.run
|
86
99
|
```
|
87
100
|
|
88
|
-
6. Run the script and watch your notifications get organized! The first time your run this you will be given a link to
|
101
|
+
6. **Run the script** and watch your notifications get organized! The first time your run this you will be given a link to
|
89
102
|
visit in your browser to sign in to Gmail verify via a one time token.
|
90
103
|
|
91
104
|
```
|
@@ -96,7 +109,10 @@ Basic installation steps:
|
|
96
109
|
just write a loop in your script `loop do; Dug::Runner.run; sleep 60; end`. How you run it is completely up to you,
|
97
110
|
and really doesn't matter.
|
98
111
|
|
99
|
-
|
112
|
+
Woo, you're done! Now organizing GitHub notifications, after you subscribe to something on GitHub, is as easy as making
|
113
|
+
a label and adding it to your rules YAML.
|
114
|
+
|
115
|
+
**For more help, see verbose instructions below.**
|
100
116
|
|
101
117
|
## Verbose Installation/Usage
|
102
118
|
|
@@ -171,6 +187,12 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
|
|
171
187
|
`rake test` to run the tests. You can also run `bin/console` for an interactive
|
172
188
|
prompt that will allow you to experiment.
|
173
189
|
|
190
|
+
## TODO
|
191
|
+
* Add option to parse message body for labelling
|
192
|
+
* Add more built-in reasons such as "Closed" statuses
|
193
|
+
* The Google Auth Library has an API for Redis that could be supported easily.
|
194
|
+
* Moar tests, plz
|
195
|
+
|
174
196
|
## Contributing
|
175
197
|
|
176
198
|
Bug reports and pull requests are welcome on GitHub at https://github.com/chrisarcand/dug.
|
data/lib/dug/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dug
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Arcand
|
@@ -106,9 +106,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
106
106
|
version: '0'
|
107
107
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
|
-
- - "
|
109
|
+
- - ">="
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version:
|
111
|
+
version: '0'
|
112
112
|
requirements: []
|
113
113
|
rubyforge_project:
|
114
114
|
rubygems_version: 2.5.1
|