{"payload":{"allShortcutsEnabled":false,"fileTree":{"fedmsg_notify":{"items":[{"name":"distro_specific","path":"fedmsg_notify/distro_specific","contentType":"directory"},{"name":"__init__.py","path":"fedmsg_notify/__init__.py","contentType":"file"},{"name":"daemon.py","path":"fedmsg_notify/daemon.py","contentType":"file"},{"name":"filters.py","path":"fedmsg_notify/filters.py","contentType":"file"},{"name":"gui.py","path":"fedmsg_notify/gui.py","contentType":"file"}],"totalCount":5},"":{"items":[{"name":"conf","path":"conf","contentType":"directory"},{"name":"fedmsg_notify","path":"fedmsg_notify","contentType":"directory"},{"name":".gitignore","path":".gitignore","contentType":"file"},{"name":"LICENSE","path":"LICENSE","contentType":"file"},{"name":"MANIFEST.in","path":"MANIFEST.in","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"setup.py","path":"setup.py","contentType":"file"}],"totalCount":7}},"fileTreeProcessingTime":7.9580139999999995,"foldersToFetch":[],"repo":{"id":7964139,"defaultBranch":"develop","name":"fedmsg-notify","ownerLogin":"fedora-infra","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-02-01T18:54:35.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/3316637?v=4","public":true,"private":false,"isOrgOwned":true},"symbolsExpanded":false,"treeExpanded":true,"refInfo":{"name":"develop","listCacheKey":"v0:1542104174.0","canEdit":false,"refType":"branch","currentOid":"74f3e001523e1d3be268598f1fbed165372b5913"},"path":"fedmsg_notify/filters.py","currentUser":null,"blob":{"rawLines":["# This file is a part of fedmsg-notify.","#","# fedmsg-notify is free software: you can redistribute it and/or modify","# it under the terms of the GNU General Public License as published by","# the Free Software Foundation, either version 3 of the License, or","# (at your option) any later version.","#","# fedmsg-notify is distributed in the hope that it will be useful,","# but WITHOUT ANY WARRANTY; without even the implied warranty of","# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the","# GNU General Public License for more details.","#","# You should have received a copy of the GNU General Public License","# along with fedmsg-notify. If not, see .","#","# Copyright (C) 2012, 2013 Red Hat, Inc.","# Authors: Luke Macken ","","import json","import logging","","from twisted.internet import reactor","","from .distro_specific import (get_installed_packages,"," get_reported_bugs,"," get_user_packages)","","log = logging.getLogger('moksha.hub')","","","class Filter(object):"," __description__ = None"," __user_entry__ = None",""," def __init__(self, settings):"," self.settings = settings",""," def match(self, msg, processor):"," raise NotImplementedError",""," @classmethod"," def is_available(self):"," return True",""," def __repr__(self):"," return '<%s>' % self.__class__.__name__","","","class ReportedBugsFilter(Filter):"," \"\"\" Matches messages that reference bugs that abrt has encountered \"\"\""," __description__ = 'Bugs that you have encountered'",""," def __init__(self, settings):"," \"\"\" Pull bug numbers out of local reports \"\"\""," self.bugs = get_reported_bugs()",""," def match(self, msg, processor):"," \"\"\" Check if this update fixes and of our bugs \"\"\""," if processor.__name__ == 'Bodhi':"," update = msg['msg'].get('update')"," if update:"," bugs = [bug['bug_id'] for bug in update['bugs']]"," for bug in self.bugs:"," if bug in bugs:"," log.info(\"Message contains bug that user filed!\")"," return True",""," @classmethod"," def is_available(self):"," return not getattr(get_reported_bugs, 'disabled', False)","","","class MyPackageFilter(Filter):"," \"\"\" Matches messages regarding packages that a given user has ACLs on \"\"\""," __description__ = 'Packages that these users maintain'"," __user_entry__ = 'Usernames'",""," def __init__(self, settings):"," self.usernames = settings.replace(',', ' ').split()"," self.packages = set()"," reactor.callInThread(self._query_maintained_packages)",""," def _query_maintained_packages(self):"," self.packages = get_user_packages(self.usernames)",""," def match(self, msg, processor):"," packages = processor.packages(msg)"," for package in self.packages:"," if package in packages:"," return True","","","class UsernameFilter(Filter):"," \"\"\" Matches messages that contain specific usernames \"\"\""," __description__ = 'Messages that reference specific users'"," __user_entry__ = 'Usernames'",""," def __init__(self, settings):"," self.usernames = settings.replace(',', ' ').split()",""," def match(self, msg, processor):"," for username in processor.usernames(msg):"," if username in self.usernames:"," return True","","","class PackageFilter(Filter):"," \"\"\" Matches messages referencing packages that are specified by the user \"\"\""," __description__ = 'Messages that reference specific packages'"," __user_entry__ = 'Packages'",""," def __init__(self, settings):"," self.packages = settings.replace(',', ' ').split()",""," def match(self, msg, processor):"," for package in processor.packages(msg):"," if package in self.packages:"," return True","","","class InstalledPackageFilter(Filter):"," \"\"\" Matches messages referencing packages that are installed locally \"\"\""," __description__ = 'Packages that you have installed'",""," def __init__(self, settings):"," self.packages = []"," reactor.callInThread(self._query_local_packages)",""," def _query_local_packages(self):"," self.packages = list(get_installed_packages())",""," def match(self, msg, processor):"," for package in processor.packages(msg):"," if package in self.packages:"," return True","","","def get_enabled_filters(settings, key='enabled-filters'):"," try:"," return json.loads(settings.get_string(key))"," except ValueError:"," return settings.get_string(key).split()","","","filters = ["," ReportedBugsFilter,"," InstalledPackageFilter,"," PackageFilter,"," MyPackageFilter,"," UsernameFilter,","]"],"stylingDirectives":[[{"start":0,"end":39,"cssClass":"pl-c"}],[{"start":0,"end":1,"cssClass":"pl-c"}],[{"start":0,"end":71,"cssClass":"pl-c"}],[{"start":0,"end":70,"cssClass":"pl-c"}],[{"start":0,"end":67,"cssClass":"pl-c"}],[{"start":0,"end":37,"cssClass":"pl-c"}],[{"start":0,"end":1,"cssClass":"pl-c"}],[{"start":0,"end":66,"cssClass":"pl-c"}],[{"start":0,"end":64,"cssClass":"pl-c"}],[{"start":0,"end":63,"cssClass":"pl-c"}],[{"start":0,"end":46,"cssClass":"pl-c"}],[{"start":0,"end":1,"cssClass":"pl-c"}],[{"start":0,"end":67,"cssClass":"pl-c"}],[{"start":0,"end":72,"cssClass":"pl-c"}],[{"start":0,"end":1,"cssClass":"pl-c"}],[{"start":0,"end":40,"cssClass":"pl-c"}],[{"start":0,"end":43,"cssClass":"pl-c"}],[],[{"start":0,"end":6,"cssClass":"pl-k"},{"start":7,"end":11,"cssClass":"pl-s1"}],[{"start":0,"end":6,"cssClass":"pl-k"},{"start":7,"end":14,"cssClass":"pl-s1"}],[],[{"start":0,"end":4,"cssClass":"pl-k"},{"start":5,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":28,"cssClass":"pl-k"},{"start":29,"end":36,"cssClass":"pl-s1"}],[],[{"start":0,"end":4,"cssClass":"pl-k"},{"start":6,"end":21,"cssClass":"pl-s1"},{"start":22,"end":28,"cssClass":"pl-k"},{"start":30,"end":52,"cssClass":"pl-s1"}],[{"start":30,"end":47,"cssClass":"pl-s1"}],[{"start":30,"end":47,"cssClass":"pl-s1"}],[],[{"start":0,"end":3,"cssClass":"pl-s1"},{"start":4,"end":5,"cssClass":"pl-c1"},{"start":6,"end":13,"cssClass":"pl-s1"},{"start":14,"end":23,"cssClass":"pl-en"},{"start":24,"end":36,"cssClass":"pl-s"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":12,"cssClass":"pl-v"},{"start":13,"end":19,"cssClass":"pl-s1"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":26,"cssClass":"pl-c1"}],[{"start":4,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":25,"cssClass":"pl-c1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":32,"cssClass":"pl-s1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":13,"cssClass":"pl-k"},{"start":14,"end":33,"cssClass":"pl-v"}],[],[{"start":4,"end":16,"cssClass":"pl-en"},{"start":5,"end":16,"cssClass":"pl-s1"}],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":20,"cssClass":"pl-en"},{"start":21,"end":25,"cssClass":"pl-s1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":19,"cssClass":"pl-c1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":21,"cssClass":"pl-s"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":28,"cssClass":"pl-s1"},{"start":29,"end":38,"cssClass":"pl-s1"},{"start":39,"end":47,"cssClass":"pl-s1"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":24,"cssClass":"pl-v"},{"start":25,"end":31,"cssClass":"pl-v"}],[{"start":4,"end":74,"cssClass":"pl-s"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":54,"cssClass":"pl-s"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":53,"cssClass":"pl-s"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":17,"cssClass":"pl-s1"},{"start":18,"end":19,"cssClass":"pl-c1"},{"start":20,"end":37,"cssClass":"pl-en"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":58,"cssClass":"pl-s"}],[{"start":8,"end":10,"cssClass":"pl-k"},{"start":11,"end":20,"cssClass":"pl-s1"},{"start":21,"end":29,"cssClass":"pl-s1"},{"start":30,"end":32,"cssClass":"pl-c1"},{"start":33,"end":40,"cssClass":"pl-s"}],[{"start":12,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":24,"cssClass":"pl-s1"},{"start":25,"end":30,"cssClass":"pl-s"},{"start":32,"end":35,"cssClass":"pl-en"},{"start":36,"end":44,"cssClass":"pl-s"}],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":15,"end":21,"cssClass":"pl-s1"}],[{"start":16,"end":20,"cssClass":"pl-s1"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":24,"end":27,"cssClass":"pl-s1"},{"start":28,"end":36,"cssClass":"pl-s"},{"start":38,"end":41,"cssClass":"pl-k"},{"start":42,"end":45,"cssClass":"pl-s1"},{"start":46,"end":48,"cssClass":"pl-c1"},{"start":49,"end":55,"cssClass":"pl-s1"},{"start":56,"end":62,"cssClass":"pl-s"}],[{"start":16,"end":19,"cssClass":"pl-k"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":24,"end":26,"cssClass":"pl-c1"},{"start":27,"end":31,"cssClass":"pl-s1"},{"start":32,"end":36,"cssClass":"pl-s1"}],[{"start":20,"end":22,"cssClass":"pl-k"},{"start":23,"end":26,"cssClass":"pl-s1"},{"start":27,"end":29,"cssClass":"pl-c1"},{"start":30,"end":34,"cssClass":"pl-s1"}],[{"start":24,"end":27,"cssClass":"pl-s1"},{"start":28,"end":32,"cssClass":"pl-en"},{"start":33,"end":72,"cssClass":"pl-s"}],[{"start":24,"end":30,"cssClass":"pl-k"},{"start":31,"end":35,"cssClass":"pl-c1"}],[],[{"start":4,"end":16,"cssClass":"pl-en"},{"start":5,"end":16,"cssClass":"pl-s1"}],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":20,"cssClass":"pl-en"},{"start":21,"end":25,"cssClass":"pl-s1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":18,"cssClass":"pl-c1"},{"start":19,"end":26,"cssClass":"pl-en"},{"start":27,"end":44,"cssClass":"pl-s1"},{"start":46,"end":56,"cssClass":"pl-s"},{"start":58,"end":63,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":21,"cssClass":"pl-v"},{"start":22,"end":28,"cssClass":"pl-v"}],[{"start":4,"end":77,"cssClass":"pl-s"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":58,"cssClass":"pl-s"}],[{"start":4,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":32,"cssClass":"pl-s"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":22,"cssClass":"pl-s1"},{"start":23,"end":24,"cssClass":"pl-c1"},{"start":25,"end":33,"cssClass":"pl-s1"},{"start":34,"end":41,"cssClass":"pl-en"},{"start":42,"end":45,"cssClass":"pl-s"},{"start":47,"end":50,"cssClass":"pl-s"},{"start":52,"end":57,"cssClass":"pl-en"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":27,"cssClass":"pl-en"}],[{"start":8,"end":15,"cssClass":"pl-s1"},{"start":16,"end":28,"cssClass":"pl-en"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":34,"end":60,"cssClass":"pl-s1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":34,"cssClass":"pl-en"},{"start":35,"end":39,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":41,"cssClass":"pl-en"},{"start":42,"end":46,"cssClass":"pl-s1"},{"start":47,"end":56,"cssClass":"pl-s1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":16,"cssClass":"pl-s1"},{"start":17,"end":18,"cssClass":"pl-c1"},{"start":19,"end":28,"cssClass":"pl-s1"},{"start":29,"end":37,"cssClass":"pl-en"},{"start":38,"end":41,"cssClass":"pl-s1"}],[{"start":8,"end":11,"cssClass":"pl-k"},{"start":12,"end":19,"cssClass":"pl-s1"},{"start":20,"end":22,"cssClass":"pl-c1"},{"start":23,"end":27,"cssClass":"pl-s1"},{"start":28,"end":36,"cssClass":"pl-s1"}],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":15,"end":22,"cssClass":"pl-s1"},{"start":23,"end":25,"cssClass":"pl-c1"},{"start":26,"end":34,"cssClass":"pl-s1"}],[{"start":16,"end":22,"cssClass":"pl-k"},{"start":23,"end":27,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":20,"cssClass":"pl-v"},{"start":21,"end":27,"cssClass":"pl-v"}],[{"start":4,"end":60,"cssClass":"pl-s"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":62,"cssClass":"pl-s"}],[{"start":4,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":32,"cssClass":"pl-s"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":22,"cssClass":"pl-s1"},{"start":23,"end":24,"cssClass":"pl-c1"},{"start":25,"end":33,"cssClass":"pl-s1"},{"start":34,"end":41,"cssClass":"pl-en"},{"start":42,"end":45,"cssClass":"pl-s"},{"start":47,"end":50,"cssClass":"pl-s"},{"start":52,"end":57,"cssClass":"pl-en"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":11,"cssClass":"pl-k"},{"start":12,"end":20,"cssClass":"pl-s1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":24,"end":33,"cssClass":"pl-s1"},{"start":34,"end":43,"cssClass":"pl-en"},{"start":44,"end":47,"cssClass":"pl-s1"}],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":15,"end":23,"cssClass":"pl-s1"},{"start":24,"end":26,"cssClass":"pl-c1"},{"start":27,"end":31,"cssClass":"pl-s1"},{"start":32,"end":41,"cssClass":"pl-s1"}],[{"start":16,"end":22,"cssClass":"pl-k"},{"start":23,"end":27,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":19,"cssClass":"pl-v"},{"start":20,"end":26,"cssClass":"pl-v"}],[{"start":4,"end":80,"cssClass":"pl-s"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":65,"cssClass":"pl-s"}],[{"start":4,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":31,"cssClass":"pl-s"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":32,"cssClass":"pl-s1"},{"start":33,"end":40,"cssClass":"pl-en"},{"start":41,"end":44,"cssClass":"pl-s"},{"start":46,"end":49,"cssClass":"pl-s"},{"start":51,"end":56,"cssClass":"pl-en"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":11,"cssClass":"pl-k"},{"start":12,"end":19,"cssClass":"pl-s1"},{"start":20,"end":22,"cssClass":"pl-c1"},{"start":23,"end":32,"cssClass":"pl-s1"},{"start":33,"end":41,"cssClass":"pl-en"},{"start":42,"end":45,"cssClass":"pl-s1"}],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":15,"end":22,"cssClass":"pl-s1"},{"start":23,"end":25,"cssClass":"pl-c1"},{"start":26,"end":30,"cssClass":"pl-s1"},{"start":31,"end":39,"cssClass":"pl-s1"}],[{"start":16,"end":22,"cssClass":"pl-k"},{"start":23,"end":27,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":5,"cssClass":"pl-k"},{"start":6,"end":28,"cssClass":"pl-v"},{"start":29,"end":35,"cssClass":"pl-v"}],[{"start":4,"end":76,"cssClass":"pl-s"}],[{"start":4,"end":19,"cssClass":"pl-s1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":56,"cssClass":"pl-s"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":16,"cssClass":"pl-en"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":31,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"}],[{"start":8,"end":15,"cssClass":"pl-s1"},{"start":16,"end":28,"cssClass":"pl-en"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":34,"end":55,"cssClass":"pl-s1"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":29,"cssClass":"pl-en"},{"start":30,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":28,"cssClass":"pl-en"},{"start":29,"end":51,"cssClass":"pl-en"}],[],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-en"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":20,"end":23,"cssClass":"pl-s1"},{"start":25,"end":34,"cssClass":"pl-s1"}],[{"start":8,"end":11,"cssClass":"pl-k"},{"start":12,"end":19,"cssClass":"pl-s1"},{"start":20,"end":22,"cssClass":"pl-c1"},{"start":23,"end":32,"cssClass":"pl-s1"},{"start":33,"end":41,"cssClass":"pl-en"},{"start":42,"end":45,"cssClass":"pl-s1"}],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":15,"end":22,"cssClass":"pl-s1"},{"start":23,"end":25,"cssClass":"pl-c1"},{"start":26,"end":30,"cssClass":"pl-s1"},{"start":31,"end":39,"cssClass":"pl-s1"}],[{"start":16,"end":22,"cssClass":"pl-k"},{"start":23,"end":27,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":3,"cssClass":"pl-k"},{"start":4,"end":23,"cssClass":"pl-en"},{"start":24,"end":32,"cssClass":"pl-s1"},{"start":34,"end":37,"cssClass":"pl-s1"},{"start":37,"end":38,"cssClass":"pl-c1"},{"start":38,"end":55,"cssClass":"pl-s"}],[{"start":4,"end":7,"cssClass":"pl-k"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":19,"cssClass":"pl-s1"},{"start":20,"end":25,"cssClass":"pl-en"},{"start":26,"end":34,"cssClass":"pl-s1"},{"start":35,"end":45,"cssClass":"pl-en"},{"start":46,"end":49,"cssClass":"pl-s1"}],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":21,"cssClass":"pl-v"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":23,"cssClass":"pl-s1"},{"start":24,"end":34,"cssClass":"pl-en"},{"start":35,"end":38,"cssClass":"pl-s1"},{"start":40,"end":45,"cssClass":"pl-en"}],[],[],[{"start":0,"end":7,"cssClass":"pl-s1"},{"start":8,"end":9,"cssClass":"pl-c1"}],[{"start":4,"end":22,"cssClass":"pl-v"}],[{"start":4,"end":26,"cssClass":"pl-v"}],[{"start":4,"end":17,"cssClass":"pl-v"}],[{"start":4,"end":19,"cssClass":"pl-v"}],[{"start":4,"end":18,"cssClass":"pl-v"}],[]],"colorizedLines":null,"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/fedora-infra/fedmsg-notify/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null},"displayName":"filters.py","displayUrl":"https://github.com/fedora-infra/fedmsg-notify/blob/develop/fedmsg_notify/filters.py?raw=true","headerInfo":{"blobSize":"4.57 KB","deleteTooltip":"You must be signed in to make or propose changes","editTooltip":"You must be signed in to make or propose changes","ghDesktopPath":"https://desktop.github.com","isGitLfs":false,"onBranch":true,"shortPath":"59e6cf7","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Ffedora-infra%2Ffedmsg-notify%2Fblob%2Fdevelop%2Ffedmsg_notify%2Ffilters.py","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"151","truncatedSloc":"114"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplate":null,"discussionTemplate":null,"language":"Python","languageID":303,"large":false,"planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/fedora-infra/fedmsg-notify/blob/develop/fedmsg_notify/filters.py","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","releasePath":"/fedora-infra/fedmsg-notify/releases/new?marketplace=true","showPublishActionBanner":false},"rawBlobUrl":"https://github.com/fedora-infra/fedmsg-notify/raw/develop/fedmsg_notify/filters.py","renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"shortPath":null,"symbolsEnabled":true,"tabSize":8,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timed_out":false,"not_analyzed":false,"symbols":[{"name":"log","kind":"constant","ident_start":986,"ident_end":989,"extent_start":986,"extent_end":1023,"fully_qualified_name":"log","ident_utf16":{"start":{"line_number":27,"utf16_col":0},"end":{"line_number":27,"utf16_col":3}},"extent_utf16":{"start":{"line_number":27,"utf16_col":0},"end":{"line_number":27,"utf16_col":37}}},{"name":"Filter","kind":"class","ident_start":1032,"ident_end":1038,"extent_start":1026,"extent_end":1379,"fully_qualified_name":"Filter","ident_utf16":{"start":{"line_number":30,"utf16_col":6},"end":{"line_number":30,"utf16_col":12}},"extent_utf16":{"start":{"line_number":30,"utf16_col":0},"end":{"line_number":45,"utf16_col":47}}},{"name":"__description__","kind":"constant","ident_start":1052,"ident_end":1067,"extent_start":1052,"extent_end":1074,"fully_qualified_name":"Filter.__description__","ident_utf16":{"start":{"line_number":31,"utf16_col":4},"end":{"line_number":31,"utf16_col":19}},"extent_utf16":{"start":{"line_number":31,"utf16_col":4},"end":{"line_number":31,"utf16_col":26}}},{"name":"__user_entry__","kind":"constant","ident_start":1079,"ident_end":1093,"extent_start":1079,"extent_end":1100,"fully_qualified_name":"Filter.__user_entry__","ident_utf16":{"start":{"line_number":32,"utf16_col":4},"end":{"line_number":32,"utf16_col":18}},"extent_utf16":{"start":{"line_number":32,"utf16_col":4},"end":{"line_number":32,"utf16_col":25}}},{"name":"__init__","kind":"function","ident_start":1110,"ident_end":1118,"extent_start":1106,"extent_end":1168,"fully_qualified_name":"Filter.__init__","ident_utf16":{"start":{"line_number":34,"utf16_col":8},"end":{"line_number":34,"utf16_col":16}},"extent_utf16":{"start":{"line_number":34,"utf16_col":4},"end":{"line_number":35,"utf16_col":32}}},{"name":"match","kind":"function","ident_start":1178,"ident_end":1183,"extent_start":1174,"extent_end":1240,"fully_qualified_name":"Filter.match","ident_utf16":{"start":{"line_number":37,"utf16_col":8},"end":{"line_number":37,"utf16_col":13}},"extent_utf16":{"start":{"line_number":37,"utf16_col":4},"end":{"line_number":38,"utf16_col":33}}},{"name":"is_available","kind":"function","ident_start":1267,"ident_end":1279,"extent_start":1263,"extent_end":1306,"fully_qualified_name":"Filter.is_available","ident_utf16":{"start":{"line_number":41,"utf16_col":8},"end":{"line_number":41,"utf16_col":20}},"extent_utf16":{"start":{"line_number":41,"utf16_col":4},"end":{"line_number":42,"utf16_col":19}}},{"name":"__repr__","kind":"function","ident_start":1316,"ident_end":1324,"extent_start":1312,"extent_end":1379,"fully_qualified_name":"Filter.__repr__","ident_utf16":{"start":{"line_number":44,"utf16_col":8},"end":{"line_number":44,"utf16_col":16}},"extent_utf16":{"start":{"line_number":44,"utf16_col":4},"end":{"line_number":45,"utf16_col":47}}},{"name":"ReportedBugsFilter","kind":"class","ident_start":1388,"ident_end":1406,"extent_start":1382,"extent_end":2242,"fully_qualified_name":"ReportedBugsFilter","ident_utf16":{"start":{"line_number":48,"utf16_col":6},"end":{"line_number":48,"utf16_col":24}},"extent_utf16":{"start":{"line_number":48,"utf16_col":0},"end":{"line_number":69,"utf16_col":64}}},{"name":"__description__","kind":"constant","ident_start":1495,"ident_end":1510,"extent_start":1495,"extent_end":1545,"fully_qualified_name":"ReportedBugsFilter.__description__","ident_utf16":{"start":{"line_number":50,"utf16_col":4},"end":{"line_number":50,"utf16_col":19}},"extent_utf16":{"start":{"line_number":50,"utf16_col":4},"end":{"line_number":50,"utf16_col":54}}},{"name":"__init__","kind":"function","ident_start":1555,"ident_end":1563,"extent_start":1551,"extent_end":1674,"fully_qualified_name":"ReportedBugsFilter.__init__","ident_utf16":{"start":{"line_number":52,"utf16_col":8},"end":{"line_number":52,"utf16_col":16}},"extent_utf16":{"start":{"line_number":52,"utf16_col":4},"end":{"line_number":54,"utf16_col":39}}},{"name":"match","kind":"function","ident_start":1684,"ident_end":1689,"extent_start":1680,"extent_end":2131,"fully_qualified_name":"ReportedBugsFilter.match","ident_utf16":{"start":{"line_number":56,"utf16_col":8},"end":{"line_number":56,"utf16_col":13}},"extent_utf16":{"start":{"line_number":56,"utf16_col":4},"end":{"line_number":65,"utf16_col":35}}},{"name":"is_available","kind":"function","ident_start":2158,"ident_end":2170,"extent_start":2154,"extent_end":2242,"fully_qualified_name":"ReportedBugsFilter.is_available","ident_utf16":{"start":{"line_number":68,"utf16_col":8},"end":{"line_number":68,"utf16_col":20}},"extent_utf16":{"start":{"line_number":68,"utf16_col":4},"end":{"line_number":69,"utf16_col":64}}},{"name":"MyPackageFilter","kind":"class","ident_start":2251,"ident_end":2266,"extent_start":2245,"extent_end":2916,"fully_qualified_name":"MyPackageFilter","ident_utf16":{"start":{"line_number":72,"utf16_col":6},"end":{"line_number":72,"utf16_col":21}},"extent_utf16":{"start":{"line_number":72,"utf16_col":0},"end":{"line_number":89,"utf16_col":27}}},{"name":"__description__","kind":"constant","ident_start":2358,"ident_end":2373,"extent_start":2358,"extent_end":2412,"fully_qualified_name":"MyPackageFilter.__description__","ident_utf16":{"start":{"line_number":74,"utf16_col":4},"end":{"line_number":74,"utf16_col":19}},"extent_utf16":{"start":{"line_number":74,"utf16_col":4},"end":{"line_number":74,"utf16_col":58}}},{"name":"__user_entry__","kind":"constant","ident_start":2417,"ident_end":2431,"extent_start":2417,"extent_end":2445,"fully_qualified_name":"MyPackageFilter.__user_entry__","ident_utf16":{"start":{"line_number":75,"utf16_col":4},"end":{"line_number":75,"utf16_col":18}},"extent_utf16":{"start":{"line_number":75,"utf16_col":4},"end":{"line_number":75,"utf16_col":32}}},{"name":"__init__","kind":"function","ident_start":2455,"ident_end":2463,"extent_start":2451,"extent_end":2632,"fully_qualified_name":"MyPackageFilter.__init__","ident_utf16":{"start":{"line_number":77,"utf16_col":8},"end":{"line_number":77,"utf16_col":16}},"extent_utf16":{"start":{"line_number":77,"utf16_col":4},"end":{"line_number":80,"utf16_col":61}}},{"name":"_query_maintained_packages","kind":"function","ident_start":2642,"ident_end":2668,"extent_start":2638,"extent_end":2733,"fully_qualified_name":"MyPackageFilter._query_maintained_packages","ident_utf16":{"start":{"line_number":82,"utf16_col":8},"end":{"line_number":82,"utf16_col":34}},"extent_utf16":{"start":{"line_number":82,"utf16_col":4},"end":{"line_number":83,"utf16_col":57}}},{"name":"match","kind":"function","ident_start":2743,"ident_end":2748,"extent_start":2739,"extent_end":2916,"fully_qualified_name":"MyPackageFilter.match","ident_utf16":{"start":{"line_number":85,"utf16_col":8},"end":{"line_number":85,"utf16_col":13}},"extent_utf16":{"start":{"line_number":85,"utf16_col":4},"end":{"line_number":89,"utf16_col":27}}},{"name":"UsernameFilter","kind":"class","ident_start":2925,"ident_end":2939,"extent_start":2919,"extent_end":3359,"fully_qualified_name":"UsernameFilter","ident_utf16":{"start":{"line_number":92,"utf16_col":6},"end":{"line_number":92,"utf16_col":20}},"extent_utf16":{"start":{"line_number":92,"utf16_col":0},"end":{"line_number":103,"utf16_col":27}}},{"name":"__description__","kind":"constant","ident_start":3014,"ident_end":3029,"extent_start":3014,"extent_end":3072,"fully_qualified_name":"UsernameFilter.__description__","ident_utf16":{"start":{"line_number":94,"utf16_col":4},"end":{"line_number":94,"utf16_col":19}},"extent_utf16":{"start":{"line_number":94,"utf16_col":4},"end":{"line_number":94,"utf16_col":62}}},{"name":"__user_entry__","kind":"constant","ident_start":3077,"ident_end":3091,"extent_start":3077,"extent_end":3105,"fully_qualified_name":"UsernameFilter.__user_entry__","ident_utf16":{"start":{"line_number":95,"utf16_col":4},"end":{"line_number":95,"utf16_col":18}},"extent_utf16":{"start":{"line_number":95,"utf16_col":4},"end":{"line_number":95,"utf16_col":32}}},{"name":"__init__","kind":"function","ident_start":3115,"ident_end":3123,"extent_start":3111,"extent_end":3200,"fully_qualified_name":"UsernameFilter.__init__","ident_utf16":{"start":{"line_number":97,"utf16_col":8},"end":{"line_number":97,"utf16_col":16}},"extent_utf16":{"start":{"line_number":97,"utf16_col":4},"end":{"line_number":98,"utf16_col":59}}},{"name":"match","kind":"function","ident_start":3210,"ident_end":3215,"extent_start":3206,"extent_end":3359,"fully_qualified_name":"UsernameFilter.match","ident_utf16":{"start":{"line_number":100,"utf16_col":8},"end":{"line_number":100,"utf16_col":13}},"extent_utf16":{"start":{"line_number":100,"utf16_col":4},"end":{"line_number":103,"utf16_col":27}}},{"name":"PackageFilter","kind":"class","ident_start":3368,"ident_end":3381,"extent_start":3362,"extent_end":3818,"fully_qualified_name":"PackageFilter","ident_utf16":{"start":{"line_number":106,"utf16_col":6},"end":{"line_number":106,"utf16_col":19}},"extent_utf16":{"start":{"line_number":106,"utf16_col":0},"end":{"line_number":117,"utf16_col":27}}},{"name":"__description__","kind":"constant","ident_start":3476,"ident_end":3491,"extent_start":3476,"extent_end":3537,"fully_qualified_name":"PackageFilter.__description__","ident_utf16":{"start":{"line_number":108,"utf16_col":4},"end":{"line_number":108,"utf16_col":19}},"extent_utf16":{"start":{"line_number":108,"utf16_col":4},"end":{"line_number":108,"utf16_col":65}}},{"name":"__user_entry__","kind":"constant","ident_start":3542,"ident_end":3556,"extent_start":3542,"extent_end":3569,"fully_qualified_name":"PackageFilter.__user_entry__","ident_utf16":{"start":{"line_number":109,"utf16_col":4},"end":{"line_number":109,"utf16_col":18}},"extent_utf16":{"start":{"line_number":109,"utf16_col":4},"end":{"line_number":109,"utf16_col":31}}},{"name":"__init__","kind":"function","ident_start":3579,"ident_end":3587,"extent_start":3575,"extent_end":3663,"fully_qualified_name":"PackageFilter.__init__","ident_utf16":{"start":{"line_number":111,"utf16_col":8},"end":{"line_number":111,"utf16_col":16}},"extent_utf16":{"start":{"line_number":111,"utf16_col":4},"end":{"line_number":112,"utf16_col":58}}},{"name":"match","kind":"function","ident_start":3673,"ident_end":3678,"extent_start":3669,"extent_end":3818,"fully_qualified_name":"PackageFilter.match","ident_utf16":{"start":{"line_number":114,"utf16_col":8},"end":{"line_number":114,"utf16_col":13}},"extent_utf16":{"start":{"line_number":114,"utf16_col":4},"end":{"line_number":117,"utf16_col":27}}},{"name":"InstalledPackageFilter","kind":"class","ident_start":3827,"ident_end":3849,"extent_start":3821,"extent_end":4359,"fully_qualified_name":"InstalledPackageFilter","ident_utf16":{"start":{"line_number":120,"utf16_col":6},"end":{"line_number":120,"utf16_col":28}},"extent_utf16":{"start":{"line_number":120,"utf16_col":0},"end":{"line_number":134,"utf16_col":27}}},{"name":"__description__","kind":"constant","ident_start":3940,"ident_end":3955,"extent_start":3940,"extent_end":3992,"fully_qualified_name":"InstalledPackageFilter.__description__","ident_utf16":{"start":{"line_number":122,"utf16_col":4},"end":{"line_number":122,"utf16_col":19}},"extent_utf16":{"start":{"line_number":122,"utf16_col":4},"end":{"line_number":122,"utf16_col":56}}},{"name":"__init__","kind":"function","ident_start":4002,"ident_end":4010,"extent_start":3998,"extent_end":4111,"fully_qualified_name":"InstalledPackageFilter.__init__","ident_utf16":{"start":{"line_number":124,"utf16_col":8},"end":{"line_number":124,"utf16_col":16}},"extent_utf16":{"start":{"line_number":124,"utf16_col":4},"end":{"line_number":126,"utf16_col":56}}},{"name":"_query_local_packages","kind":"function","ident_start":4121,"ident_end":4142,"extent_start":4117,"extent_end":4204,"fully_qualified_name":"InstalledPackageFilter._query_local_packages","ident_utf16":{"start":{"line_number":128,"utf16_col":8},"end":{"line_number":128,"utf16_col":29}},"extent_utf16":{"start":{"line_number":128,"utf16_col":4},"end":{"line_number":129,"utf16_col":54}}},{"name":"match","kind":"function","ident_start":4214,"ident_end":4219,"extent_start":4210,"extent_end":4359,"fully_qualified_name":"InstalledPackageFilter.match","ident_utf16":{"start":{"line_number":131,"utf16_col":8},"end":{"line_number":131,"utf16_col":13}},"extent_utf16":{"start":{"line_number":131,"utf16_col":4},"end":{"line_number":134,"utf16_col":27}}},{"name":"get_enabled_filters","kind":"function","ident_start":4366,"ident_end":4385,"extent_start":4362,"extent_end":4551,"fully_qualified_name":"get_enabled_filters","ident_utf16":{"start":{"line_number":137,"utf16_col":4},"end":{"line_number":137,"utf16_col":23}},"extent_utf16":{"start":{"line_number":137,"utf16_col":0},"end":{"line_number":141,"utf16_col":47}}},{"name":"filters","kind":"constant","ident_start":4554,"ident_end":4561,"extent_start":4554,"extent_end":4679,"fully_qualified_name":"filters","ident_utf16":{"start":{"line_number":144,"utf16_col":0},"end":{"line_number":144,"utf16_col":7}},"extent_utf16":{"start":{"line_number":144,"utf16_col":0},"end":{"line_number":150,"utf16_col":1}}}]}},"copilotInfo":null,"copilotAccessAllowed":false,"csrf_tokens":{"/fedora-infra/fedmsg-notify/branches":{"post":"w9krkKas47hNO9bsUrQCtuiulitjRkORhs2qzrezdv5NdoyY5rqIGPRYtzy-mhcfdmO_QjyT9kogE6c9IhsYjQ"},"/repos/preferences":{"post":"lF540tEv6uul35RetREbGfoxwfdq2ypOKJ8om2KvOFhuNbKtrt9y36xMSz7X1UE8Dc1b-YHUK5EHxLtkaBC5dw"}}},"title":"fedmsg-notify/fedmsg_notify/filters.py at develop ยท fedora-infra/fedmsg-notify"}