📁
SKYSHELL MANAGER
PHP v8.0.30
Create
Create
Path:
root
/
home
/
godaofbq
/
hyperxpod.com
/
wp-includes
/
Name
Size
Perm
Actions
📁
ID3
-
0555
🗑️
🏷️
🔒
📁
IXR
-
0555
🗑️
🏷️
🔒
📁
PHPMailer
-
0555
🗑️
🏷️
🔒
📁
Requests
-
0755
🗑️
🏷️
🔒
📁
SimplePie
-
0555
🗑️
🏷️
🔒
📁
Text
-
0555
🗑️
🏷️
🔒
📁
abilities-api
-
0555
🗑️
🏷️
🔒
📁
ai-client
-
0555
🗑️
🏷️
🔒
📁
assets
-
0555
🗑️
🏷️
🔒
📁
block-bindings
-
0555
🗑️
🏷️
🔒
📁
block-patterns
-
0555
🗑️
🏷️
🔒
📁
block-supports
-
0555
🗑️
🏷️
🔒
📁
blocks
-
0555
🗑️
🏷️
🔒
📁
build
-
0555
🗑️
🏷️
🔒
📁
certificates
-
0555
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
customize
-
0755
🗑️
🏷️
🔒
📁
fonts
-
0755
🗑️
🏷️
🔒
📁
html-api
-
0555
🗑️
🏷️
🔒
📁
images
-
0755
🗑️
🏷️
🔒
📁
interactivity-api
-
0555
🗑️
🏷️
🔒
📁
js
-
0555
🗑️
🏷️
🔒
📁
l10n
-
0755
🗑️
🏷️
🔒
📁
php-ai-client
-
0555
🗑️
🏷️
🔒
📁
php-compat
-
0755
🗑️
🏷️
🔒
📁
pomo
-
0755
🗑️
🏷️
🔒
📁
rest-api
-
0555
🗑️
🏷️
🔒
📁
sitemaps
-
0555
🗑️
🏷️
🔒
📁
sodium_compat
-
0755
🗑️
🏷️
🔒
📁
style-engine
-
0555
🗑️
🏷️
🔒
📁
theme-compat
-
0755
🗑️
🏷️
🔒
📁
widgets
-
0755
🗑️
🏷️
🔒
📄
abilities-api.php
23.8 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
abilities.php
7.82 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
admin-bar.php
38.39 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
admin.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
atomlib.php
11.9 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
author-template.php
19.38 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
block-template.php
17.83 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
blocks.php
116.64 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
bookmark-template.php
12.47 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
bookmark.php
15.29 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
cache-compat.php
10.76 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
canonical.php
34.18 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
capabilities.php
42.61 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-feed.php
0.53 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-phpass.php
6.61 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-phpmailer.php
0.65 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-pop3.php
20.63 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-requests.php
2.18 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-simplepie.php
0.44 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-smtp.php
0.45 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-nav-menu.php
11.76 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-page-dropdown.php
2.65 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-page.php
7.43 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-admin-bar.php
17.58 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-ajax-response.php
5.14 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-application-passwords.php
16.7 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-bindings-registry.php
8.07 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-editor-context.php
1.32 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-list.php
4.6 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-parser-block.php
2.5 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-parser-frame.php
1.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-pattern-categories-registry.php
4.28 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-processor.php
68.32 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-supports.php
6.4 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-template.php
1.99 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-templates-registry.php
6.91 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-type-registry.php
4.91 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-type.php
16.83 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block.php
24.14 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-comment-query.php
47.49 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-manager.php
198.13 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-nav-menus.php
56.61 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-setting.php
29.26 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-date-query.php
35.13 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-dependency.php
2.59 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-duotone.php
39.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-embed.php
15.54 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-exception.php
0.48 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-fatal-error-handler.php
7.96 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-feed-cache-transient.php
3.23 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-hook.php
16.25 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-cookie.php
7.1 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-curl.php
12.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-ixr-client.php
3.43 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-requests-hooks.php
1.97 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-response.php
2.91 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-icons-registry.php
7.67 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-list-util.php
7.27 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-locale-switcher.php
6.62 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-locale.php
16.45 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-matchesmapregex.php
1.79 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-meta-query.php
29.79 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-metadata-lazyloader.php
6.67 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-navigation-fallback.php
8.98 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-network-query.php
19.25 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-network.php
12.01 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-object-cache.php
17.11 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-oembed-controller.php
6.74 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-oembed.php
30.86 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-paused-extensions-storage.php
4.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-phpmailer.php
4.25 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-plugin-dependencies.php
24.59 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-post-type.php
29.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-query.php
159.73 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-recovery-mode.php
11.18 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-rewrite.php
62.2 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-roles.php
9.1 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-scripts.php
35.93 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-session-tokens.php
7.15 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-simplepie-file.php
3.47 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-site-query.php
30.74 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-speculation-rules.php
7.38 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-styles.php
13.04 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-tax-query.php
19.12 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-taxonomy.php
18.12 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-term-query.php
39.8 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-text-diff-renderer-table.php
18.49 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json-data.php
1.77 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json-resolver.php
34.86 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json-schema.php
7.19 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json.php
169.57 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme.php
64.22 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-token-map.php
27.95 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-url-pattern-prefixer.php
4.69 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-user-query.php
43.07 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-user.php
22.48 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-walker.php
13.01 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-widget-factory.php
3.27 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp.php
26.01 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wpdb.php
115.86 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
compat-utf8.php
19.1 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
connectors.php
23.52 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
core.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
cron.php
44.18 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
date.php
0.39 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
default-constants.php
11.35 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
default-filters.php
36.8 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
default-widgets.php
2.24 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
deprecated.php
189.43 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
embed-template.php
0.33 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
error-protection.php
4.25 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
24.9 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-atom-comments.php
5.38 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-atom.php
3.05 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss.php
1.16 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss2-comments.php
4.04 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss2.php
3.71 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
feed.php
24.6 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
fonts.php
9.94 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
formatting.php
346.87 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
functions.php
283.77 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
functions.wp-scripts.php
20.01 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
functions.wp-styles.php
8.45 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
general-template.php
170.83 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
global-styles-and-settings.php
20.29 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
l10n.php
69.74 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
link-template.php
156.39 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
load.php
55.41 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-default-filters.php
6.48 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-deprecated.php
21.24 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-files.php
2.79 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-network.php
3.69 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-site.php
40.75 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
post-template.php
67.01 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
post.php
289.58 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
query.php
36.23 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
rewrite.php
19.36 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
robots-template.php
5.06 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
rss.php
22.66 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
shortcodes.php
23.47 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
sitemaps.php
3.16 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
speculative-loading.php
8.4 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
spl-autoload-compat.php
0.43 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
template-canvas.php
0.53 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
theme-i18n.json
1.85 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
theme-previews.php
2.82 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
theme-templates.php
3.96 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
theme.json
8.83 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
update.php
37.38 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
user.php
175.64 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
vars.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
version.php
1.32 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
view-transitions.php
0.59 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
widgets.php
69.17 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-blog-header.php
9.57 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-cron.php
2.74 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-db.php
0.43 KB
0755
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-mail.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-settings.php
7.11 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
xmlrpc.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: flatpak-bisect
#!/usr/bin/python3 import re import argparse import os import gi import json import subprocess gi.require_version('Flatpak', '1.0') from gi.repository import Flatpak from gi.repository import GLib def get_bisection_data(): return {'ref': None, 'good': None, 'bad': None, 'refs': None, 'log': None, 'messages': None} class Bisector(): def load_cache(self): try: os.makedirs(os.path.join(GLib.get_user_cache_dir(), 'flatpak')) except FileExistsError: pass self.cache_path = os.path.join(GLib.get_user_cache_dir(), 'flatpak', '%s-%s-bisect.status' % ( self.name, self.branch)) try: with open(self.cache_path, 'rb') as f: self.data = json.load(f) except FileNotFoundError: self.data = None def dump_data(self): with open(self.cache_path, 'w') as f: json.dump(self.data, f) def setup_flatpak_app(self): self.installation = Flatpak.Installation.new_user() kind = Flatpak.RefKind.APP if self.runtime: kind = Flatpak.RefKind.RUNTIME try: self.cref = self.installation.get_installed_ref(kind, self.name, None, self.branch, None) except GLib.Error as e: print("%s\n\nMake sure %s is installed as a " "user (flatpak install --user) and specify `--runtime`" " if it is a runtime." % (e, self.name)) return -1 return 0 def run(self): self.name = self.name[0] self.load_cache() res = self.setup_flatpak_app() if res: return res try: func = getattr(self, self.subparser_name) except AttributeError: print('No action called %s' % self.subparser_name) return -1 res = func() if self.data: self.dump_data() return res def set_reference_commits(self, set_name, check_name): if not self.data: print("You need to first start the bisection") return -1 ref = self.cref.get_latest_commit() if self.data[check_name] == ref: print('Commit %s is already set as %s...' % ( ref, check_name)) return 1 if ref not in self.data['refs']: print("%s is not a known commit." % ref) return -1 print("Setting %s as %s commit" % (ref, set_name)) self.data[set_name] = ref if self.data[set_name] and self.data[check_name]: x1 = self.data['refs'].index(self.data['good']) x2 = self.data['refs'].index(self.data['bad']) refs = self.data['refs'][x1:x2] if not refs: print("==========================" "First bad commit is:\n%s" "==========================" % self.data['message'][self.data['bad']]) exit(0) ref = refs[int(len(refs) / 2)] if self.data['good'] == ref: print("\n==========================\n" "First bad commit is:\n\n%s" "==========================" % self.data['messages'][self.data['bad']]) exit(0) return self.checkout(ref) return -1 def load_refs(self): repodir, refname = self.download_history() history = subprocess.check_output(['ostree', 'log', '--repo', repodir, refname]).decode() refs = [] messages = {} message = "" _hash = '' for l in history.split('\n'): rehash = re.search('(?<=^commit )\w+', l) if rehash: if message: messages[_hash] = message _hash = rehash.group(0) refs.insert(0, _hash) message = "" message += l + '\n' if message: messages[_hash] = message self.data['refs'] = refs self.data['log'] = history self.data['messages'] = messages def good(self): if not self.data['bad']: print("Set the bad commit first") exit(-1) return self.set_reference_commits('good', 'bad') def bad(self): return self.set_reference_commits('bad', 'good') def start(self): if self.data: print('Bisection already started') return -1 print("Updating to %s latest commit" % self.name) self.reset(False) self.data = get_bisection_data() self.load_refs() def download_history(self): print("Getting history") appidir = os.path.abspath(os.path.join(self.cref.get_deploy_dir(), '..')) dirname = "app" if self.runtime: dirname = "runtime" appidir = appidir.split('/%s/' % dirname) repodir = os.path.join(appidir[0], 'repo') refname = self.cref.get_origin() + ':' + dirname + '/' + self.cref.get_name() + '/' + self.cref.get_arch() + '/' + self.cref.get_branch() # FIXME Getting `error: Exceeded maximum recursion` in ostree if using --depth=-1 (or > 250) subprocess.call(['ostree', 'pull', '--depth=250', '--commit-metadata-only', '--repo', repodir, refname]) return repodir, refname def log(self): if self.data: cmd = ['echo', self.data['log']] else: repodir, refname = self.download_history() cmd = ['ostree', 'log', '--repo', repodir, refname] pager = os.environ.get('PAGER') if pager: stdout = subprocess.PIPE else: stdout = None p = subprocess.Popen(cmd, stdout=stdout) if pager: subprocess.check_call((pager), stdin=p.stdout) p.wait() def checkout(self, commit=None): if not commit: commit = self.commit[0] refname = self.cref.get_name() + '/' + self.cref.get_arch() + '/' + self.cref.get_branch() print("Checking out %s" % commit) return subprocess.call(['flatpak', 'update', '--user', refname, '--commit', commit]) def reset(self, v=True): if not self.data: if v: print("Not bisecting, nothing to reset") return -1 refname = self.cref.get_name() + '/' + self.cref.get_arch() + '/' + self.cref.get_branch() print("Removing %s" % self.cache_path) os.remove(self.cache_path) self.data = None return subprocess.call(['flatpak', 'update', '--user', refname]) if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument('name', nargs=1, help='Application/Runtime to bisect') parser.add_argument('-b', '--branch', default='master', help='The branch to bisect') parser.add_argument('-r', '--runtime', action="store_true", help='Bisecting a runtime not an app') subparsers = parser.add_subparsers(dest='subparser_name') subparsers.required = True start_parser = subparsers.add_parser('start', help="Start bisection") bad_parser = subparsers.add_parser('bad', help="Set current version as bad") good_parser = subparsers.add_parser('good', help="Set current version as good") log_parser = subparsers.add_parser('log', help="Download and print application commit history") checkout_parser = subparsers.add_parser('checkout', help="Checkout defined commit") checkout_parser.add_argument('commit', nargs=1, help='The commit hash to checkout') reset_parser = subparsers.add_parser('reset', help="Reset all bisecting data and go back to latest commit") bisector = Bisector() options = parser.parse_args(namespace=bisector) bisector.run()
Save