-
Notifications
You must be signed in to change notification settings - Fork 129
Unsubscribe from all/selected repository notifications #641
Comments
More precisely, do you want to unsubscribe from all repositories of a given organization? |
Duplicates #633? |
@TPS I'd rather keep this open, since #633 is too broad, and this is more specific. Also I think this is about unsub from a given organization at once (hopefully OP will confirm), which does not seem to be mentioned at #633 But it's hard to be sure, since that one is so huge. Small specific issues rock. |
Hopefully related :) On Sun, 10 Apr 2016, 08:31 Ciro Santilli 六四事件 法轮功 包卓轩, <
|
I experienced this just recently. Any chance that someone's working on a feature to unsubscribe all from an organization? |
Urgent? Run this on https://github.com/watching: function unwatchOrgRepos(orgName) {
var repoItems = document.querySelectorAll(".repo-list > li")
repoItems.forEach(function (item) {
var repoOrgElement = item.querySelector(".repo-name").previousElementSibling;
var repoOrgName = repoOrgElement.innerText;
if (repoOrgName === orgName) {
var unwatchButton = item.querySelector(".js-unsubscribe-form > button");
unwatchButton.click();
var itemName = repoOrgElement.parentElement.innerText;
console.log("Unwatched " + itemName);
}
});
} Usage: unwatchOrgRepos("test"); |
+1 wish this feature |
There is an "Unwatch all" button now on your github watching page now. |
Hi, I think this issue can be closed since I think @GentryRiggen 's solution is good enough. |
How do I I had to run @acjh's script to achieve this, but there should be an official way to do this... |
I don't see an "Unwatch All" button and it looks like the page changed enough that some previous scripts didn't work for me. I managed to tweak one to work: |
If the unwatch button is removed, would it better if this issue reopened again ? |
The button was removed, they moved this feature to Settings. Now you have to go to: |
I'm not currently seeing the Unwatch All button or equivalent, so reopening. 😭 |
Also running into this issue, I joined a new organization with hundreds of repositories and am only interested in one or two of them but am getting emails every 3-5 minutes with updates. |
When I got a new job, my profile settings wound up with me subscribed to every repo in their Github org (>600). I had other subscriptions that I didn't want to lose, so I cobbled this together to delete subscriptions I had only in my new company's org. https://gist.github.com/benwillkommen/b7549414883087923ad574d1e846c5f9 |
Awesome @benwillkommen , this actually will help the whole community. I'll do my own with Node.js from your gist just for fun (of course I'll share it hahaha) Thanks dude! |
@benwillkommen you are THE dude! Thank you so much! |
@benwillkommen pagination only worked if first page had a matching result. I improved using the |
@jetersen I updated the gist. Thanks for the fix! |
@benwillkommen Thanks for the gist. Do you know what OAuth scopes are needed for it to work? |
@DavidNemeskey it is mentioned in the README as well 🤔 You need "repo" |
@jetersen Duh. I knew I should have learned to read... 😄 |
While scripts are nice and all, I'd rather use the UI, which was a hard find, but very useful after finding. https://github.com/notifications/subscriptions removed 150+ subs in less than a minute. |
@k1sul1 the URL is not helpful for repo watching. |
This has bit me badly twice. The last one was so bad that the ghunwatch tool I found was hitting rate limits w/o making progress on unsubscribing me. I've written this: https://gist.github.com/zenspider/1db3199dabdfc14e20083a848f98d15d that uses octokit.rb to unsubscribe to anything matching the org off of your authenticated user. This way it should always make progress regardless of rate limiting. |
I'd also like to say something I don't think I've seen in here: First "Unwatch All" is NOT the solution. If it is actually all (I'm too scared to find out), then I lose everything I want to watch, which is currently ~225 projects. If it is only the things on that page (or the javascript "solutions" above), then yesterday I would have had to click that damn button 50 times (~2500 repos auto-watched and then several hundred notifications sent). Neither is a working solution. My script above addresses this but is still a fairly unwieldy hammer. Second, this NEEDS to have a global setting for the user's preferences, plus per-organization overrides. It also NEEDS to have the ability to apply watch/unwatch to an entire org at a time. Anything less than this is an unworkable mess that requires too much manual intervention and cuts into my productivity (and sanity). |
A single button to unwatch everything related to a single repo/org would be a great step, though, can always provide more fine tooling. |
@khionu I've done that via the gist above |
I managed to get the script of @acjh #641 (comment) working on the current version of https://github.com/watching function unwatchOrgRepos(orgName) {
var repoItems = document.querySelectorAll(".repo-list > li")
repoItems.forEach(function (item) {
var repoOrgElement = item.querySelector(".pr-3");
var repoOrgName = repoOrgElement.innerText;
if (repoOrgName.startsWith(orgName)) {
var unwatchButton = item.querySelector("notifications-list-subscription-form [value=ignore]");
dbg = unwatchButton;
if (unwatchButton.value === "ignore"){
unwatchButton.click();
console.log("Unwatched " + repoOrgName);
}
}
});
} (Use at your own risk; my total live time experience with javascript sums up to less than 10 hours ;)) |
@Mofef Thanks for the updated function. It works perfectly. |
Emphasis mine. It's still a problem... and potentially toxic one as well. Let me explain:
If step three was a bad situation... then having to be reminded of the bad situation by getting daily notifications is an incredibly unwelcome intrusion. In my own case, it wasn't bad... but one can easily imagine a bad situation. And the only recourse is to spend hours (either manually, or cobbling together the right code based on whatever today's UI code is...) unsubscribing to old notification threads or nuke a whole profile? I've left the org, I'm no longer on any teams on the org, and I've unwatched the repositories in question. Now I've still 1000+ only because an old team I used to be on was mentioned? Why? This is not great. And not great for anyone likely to experience a bad situation in step 3. |
Nowadays you can turn off the automatic subscription when you join an org for instance. |
So maybe this issue could be resolved with a corresponding setting to unsubscribe when those conditions are no longer met, & corresponding manual mass unsubscribe option for an entire repo, org, &c, on the appropriate pages. |
Mass unsubscribe buttons are exactly what we have been asking for |
How about going to https://github.com/settings/notifications > Custom Routing and using a defunct email address for the org you want to ditch. |
IP Tables for notifications... 😂 |
Steps to reproduce:
Please make it easier.
The text was updated successfully, but these errors were encountered: