carderne / signal-export

Export your Signal chats to markdown files with attachments
Other
436 stars 46 forks source link

Bump pysqlcypher3 to 1.2.0? #96

Closed huyz closed 1 year ago

huyz commented 1 year ago

Desktop (please complete the following information):

Describe the bug

I can't install pysqlcypher3 1.1.0 for some reason but 1.2.0 works

To reproduce

❯ echo $C_INCLUDE_PATH
/opt/homebrew/Cellar/sqlcipher/4.5.3/include
❯ echo $LIBRARY_PATH
/opt/homebrew/Cellar/sqlcipher/4.5.3/lib

❯ pip install pysqlcipher3==1.1.0
Collecting pysqlcipher3==1.1.0
  Using cached pysqlcipher3-1.1.0.tar.gz (102 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: pysqlcipher3
  Building wheel for pysqlcipher3 (setup.py) ... done
  WARNING: Legacy build of wheel for 'pysqlcipher3' created no files.
  Command arguments: '/Users/huy/cabinet/Personal/Computing/Signal Conversations/signal-export/venv/bin/python' -u -c '
  exec(compile('"'"''"'"''"'"'
  # This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
  #
  # - It imports setuptools before invoking setup.py, to enable projects that directly
  #   import from `distutils.core` to work with newer packaging standards.
  # - It provides a clear error message when setuptools is not installed.
  # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
  #   setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
  #     manifest_maker: standard file '"'"'-c'"'"' not found".
  # - It generates a shim setup.py, for handling setup.cfg-only projects.
  import os, sys, tokenize

  try:
      import setuptools
  except ImportError as error:
      print(
          "ERROR: Can not execute `setup.py` since setuptools is not available in "
          "the build environment.",
          file=sys.stderr,
      )
      sys.exit(1)

  __file__ = %r
  sys.argv[0] = __file__

  if os.path.exists(__file__):
      filename = __file__
      with tokenize.open(__file__) as f:
          setup_py_code = f.read()
  else:
      filename = "<auto-generated setuptools caller>"
      setup_py_code = "from setuptools import setup; setup()"

  exec(compile(setup_py_code, filename, "exec"))
  '"'"''"'"''"'"' % ('"'"'/private/var/folders/cd/80666smx571dkz_nttfhf7dw0000gn/T/pip-install-ws79iwf0/pysqlcipher3_bf1d9d18a46a41e5bf3ad313f88f6611/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' bdist_wheel -d /private/var/folders/cd/80666smx571dkz_nttfhf7dw0000gn/T/pip-wheel-rans94ew
  Command output: [use --verbose to show]
  Running setup.py clean for pysqlcipher3
Failed to build pysqlcipher3
ERROR: Could not build wheels for pysqlcipher3, which is required to install pyproject.toml-based projects

❯ pip install pysqlcipher3==1.2.0
Collecting pysqlcipher3==1.2.0
  Using cached pysqlcipher3-1.2.0-cp311-cp311-macosx_12_0_arm64.whl
Installing collected packages: pysqlcipher3
Successfully installed pysqlcipher3-1.2.0
carderne commented 1 year ago

Assume you're on Python 3.11? That seems to be the change in 1.2.0. Fixed here https://github.com/carderne/signal-export/commit/98d1b4cc79ff9221c415ab1063a0378e9ab87879 and released as v1.6.0.

huyz commented 1 year ago

Yes I am on 3.11.

Thanks!