def on_project_open(self, project: RomProject): self.project = project if SHOW_ROM_NAME: self.rom_name = os.path.basename(project.filename) else: self.rom_name = "Version " + version() self._update_current_presence()
def on_settings_about_clicked(self, *args): about: Gtk.AboutDialog = self.builder.get_object("about_dialog") about.connect("response", lambda d, r: d.hide()) def activate_link(l, uri, *args): webbrowser.open_new_tab(uri) return True about.connect("activate-link", activate_link) header_bar: Optional[Gtk.HeaderBar] = about.get_header_bar() if header_bar is not None: # Cool bug??? And it only works on the left as well, wtf? header_bar.set_decoration_layout('close') about.set_version(version()) about.run()
def release_version(is_dev_version: bool): """Same as ui_utils.version but for dev builds this will only return the SHA.""" raw_version = version(ignore_dev=True) try: return raw_version[raw_version.index('.dev0+') + 6:] except ValueError: if is_dev_version: # Get commit import shutil git_bin = shutil.which("git") if git_bin is None: import subprocess try: return subprocess.check_output( [git_bin, 'rev-parse', 'HEAD']).decode('utf-8')[:8] # type: ignore except subprocess.CalledProcessError as ex: raise ValueError( "Was unable to determine dev version") from ex else: return raw_version
def init(): global already_init if not already_init: try: is_dev = version() == 'dev' if is_dev: settings = {'debug': True, 'environment': 'development'} else: settings = {'debug': False, 'environment': 'production'} sentry_logging = LoggingIntegration( level=logging.INFO, # Capture info and above as breadcrumbs event_level=None # Send no errors as events ) sentry_sdk.init( SENTRY_ENDPOINT, traces_sample_rate=0.2, release=release_version(is_dev), integrations=[sentry_logging], **settings # type: ignore ) except Exception as ex: logger.error("Failed setting up Sentry", exc_info=ex) already_init = True
def collect_app_context() -> Dict[str, 'Captured']: return { "app_start_time": APP_START_TIME.isoformat(), "app_version": version() }