~ruther/guix-local

350ebf03be7efa731092c4a3e79ad1498bd1f798 — Nicolas Graves 4 months ago 2e4c2c6
gnu: dbxfs: Update to 2.0.1.

* gnu/packages/python-xyz.scm (dbxfs): Update to 2.0.1.
[source]<patches>: Drop patch.  The code has been reorganized in a way
that makes it easier to drop the sentry_sdk dependency.
[arguments]<#:phases>: Drop the sentry_sdk dependency in phase
'relax-requirements.
[propagated-inputs]: Remove python-keyring, python-keyrings-alt.

Change-Id: Ied640a1b5de9ed2dae462184cce51692243b9dfb
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
3 files changed, 31 insertions(+), 114 deletions(-)

M gnu/local.mk
M gnu/packages/file-systems.scm
D gnu/packages/patches/dbxfs-remove-sentry-sdk.patch
M gnu/local.mk => gnu/local.mk +0 -1
@@ 1161,7 1161,6 @@ dist_patch_DATA =						\
  %D%/packages/patches/dbus-helper-search-path.patch		\
  %D%/packages/patches/dbus-c++-gcc-compat.patch		\
  %D%/packages/patches/dbus-c++-threading-mutex.patch		\
  %D%/packages/patches/dbxfs-remove-sentry-sdk.patch		\
  %D%/packages/patches/ddd-build.patch				\
  %D%/packages/patches/debops-setup-py-avoid-git.patch	\
  %D%/packages/patches/dee-vapi.patch			\

M gnu/packages/file-systems.scm => gnu/packages/file-systems.scm +31 -32
@@ 49,6 49,7 @@
  #:use-module (guix build-system go)
  #:use-module (guix build-system linux-module)
  #:use-module (guix build-system pyproject)
  #:use-module (guix build-system python)
  #:use-module (guix build-system qt)
  #:use-module (guix build-system trivial)
  #:use-module (guix utils)


@@ 2010,50 2011,48 @@ compatible directories.")
(define-public dbxfs
  (package
    (name "dbxfs")
    (version "1.0.63")
    (version "2.0.1")
    (source
      (origin
        ;; Release tarball contains files not in git repository.
        (method git-fetch)
        (uri (git-reference
               (url "https://thelig.ht/code/dbxfs")
               (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
         (base32
          "1vzfhw3z2r0rb6s0qdzirh3pl7rv1z8xmxa0z5h7h1wqhpl05ai7"))
        (patches (search-patches "dbxfs-remove-sentry-sdk.patch"))
        (snippet
         #~(begin (use-modules (guix build utils))
                  ;; Don't check for package updates.
                  (substitute* "dbxfs/main.py"
                    (("if version") "if False"))))))
     (origin
       (method url-fetch)
       (uri (pypi-uri "dbxfs" version))
       (sha256
        (base32 "1ml03anr6zz26ab3d8z1r8klz9bfincrn5v53l725svar9an0b12"))))
    (build-system pyproject-build-system)
    (arguments
     '(#:tests? #f
       #:phases
       (modify-phases %standard-phases
         (add-after 'unpack 'relax-requirements
           (lambda _
             (substitute* "setup.py"
               (("keyrings.alt>=3.1,<5")
                "keyrings.alt>=3.1")))))))
     (list
      ;; XXX: No tests in Pypi archive. git-fetch fails to download the
      ;; git source upstream though.
      #:tests? #f
      #:phases
      #~(modify-phases %standard-phases
          (add-after 'unpack 'relax-requirements
            (lambda _
              (substitute* "setup.py"
                (("\"sentry_sdk.*\",")
                 ""))
              (substitute* "dbxfs/main.py"
                (("import sentry_sdk")
                 "")
                (("^(\\s)sentry_sdk\\.init" all space)
                 (string-append space "import sentry_sdk\n" all))
                ;; Don't check for package updates.
                (("if version")
                 "if False")))))))
    (propagated-inputs
     (list python-appdirs
           python-block-tracing
           python-dropbox
           python-keyring
           python-keyrings-alt
           python-privy
           python-userspacefs))
    (native-inputs
     (list python-setuptools))
  (home-page "https://thelig.ht/code/dbxfs/")
  (synopsis "User-space file system for Dropbox")
  (description
   "@code{dbxfs} allows you to mount your Dropbox folder as if it were a
    (home-page "https://thelig.ht/code/dbxfs/")
    (synopsis "User-space file system for Dropbox")
    (description
     "@code{dbxfs} allows you to mount your Dropbox folder as if it were a
local file system using FUSE.")
  (license license:gpl3+)))
    (license license:gpl3+)))

(define-public rewritefs
  (let ((revision "1")

D gnu/packages/patches/dbxfs-remove-sentry-sdk.patch => gnu/packages/patches/dbxfs-remove-sentry-sdk.patch +0 -81
@@ 1,81 0,0 @@
sentry-sdk provides a link to sentry.io, a service which monitors applications deployed in the wild.
Defaults to true. Best to just remove the option.

diff --git a/dbxfs/main.py b/dbxfs/main.py
index 458e82a..784dd2a 100755
--- a/dbxfs/main.py
+++ b/dbxfs/main.py
@@ -43,8 +43,6 @@ import userspacefs
 import keyring
 from keyring.errors import KeyringError
 
-import sentry_sdk
-
 from block_tracing import block_tracing
 
 from dbxfs.dbxfs import FileSystem as DropboxFileSystem
@@ -127,16 +125,6 @@ def on_new_process(proc_args):
     level = [logging.WARNING, logging.INFO, logging.DEBUG][min(2, verbose)]
     logging.basicConfig(level=level, handlers=[logging_stream], format=format_)
 
-    if int(proc_args.get('send_error_reports', '0')):
-        version = proc_args['version']
-        try:
-            sentry_sdk.init("https://b4b13ebd300849bd92260507a594e618@sentry.io/1293235",
-                            release='%s@%s' % (APP_NAME, version),
-                            with_locals=False)
-            sentry_sdk.set_user(dict(id=proc_args['sentry_user']))
-        except Exception:
-            log.warning("Failed to initialize sentry", exc_info=True)
-
 def create_fs(fs_args):
     refresh_token = fs_args.get('refresh_token')
     access_token = fs_args.get('access_token')
@@ -527,10 +515,6 @@ deprecated, this functionality will be removed in the future.
         config['asked_send_error_reports'] = True
         save_config = True
 
-    if config.get("send_error_reports", False) and not isinstance(config.get("sentry_user", None), str):
-        config['sentry_user'] = uuid.uuid4().hex
-        save_config = True
-
     if save_refresh_token and yes_no_input("Do you want \"%s\" to be the default mount point?" % (mount_point,), default_yes=True):
         config['mount_point'] = mount_point
         save_config = True
@@ -541,15 +525,6 @@ deprecated, this functionality will be removed in the future.
 
     log.info("Starting %s...", APP_NAME)
 
-    if config.get('send_error_reports', False):
-        try:
-            sentry_sdk.init("https://b4b13ebd300849bd92260507a594e618@sentry.io/1293235",
-                            release='%s@%s' % (APP_NAME, version),
-                            with_locals=False)
-            sentry_sdk.set_user(dict(id=config['sentry_user']))
-        except Exception:
-            log.warning("Failed to initialize sentry", exc_info=True)
-
     if cache_folder is None:
         cache_folder = os.path.join(appdirs.user_cache_dir(APP_NAME), "file_cache")
         try:
@@ -602,8 +577,6 @@ deprecated, this functionality will be removed in the future.
     proc_args['verbose'] = str(args.verbose)
     proc_args['version'] = version
     proc_args['send_error_reports'] = str(int(config.get('send_error_reports', False)))
-    if config.get('send_error_reports', False):
-        proc_args['sentry_user'] = config['sentry_user']
 
     return userspacefs.simple_main(mount_point, display_name,
                                    ('dbxfs.main.create_fs', fs_args),
diff --git a/setup.py b/setup.py
index ae696e9..869d0db 100644
--- a/setup.py
+++ b/setup.py
@@ -47,7 +47,6 @@ setup(
         "privy>=6.0,<7",
         "keyring>=15.1.0",
         "keyrings.alt>=3.1,<5",
-        "sentry_sdk>=1.0,<2",
     ],
     extras_require={
         'safefs': ["safefs"],