Bug 271787 - net-im/py-matrix-synapse: update to 1.85.2, and then work on devel/py-simplejson and devel/py-pyicu issues
Summary: net-im/py-matrix-synapse: update to 1.85.2, and then work on devel/py-simplej...
Status: In Progress
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Li-Wen Hsu
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-02 14:50 UTC by Ashish SHUKLA
Modified: 2023-10-04 01:24 UTC (History)
5 users (show)

See Also:
bugzilla: maintainer-feedback? (ports)


Attachments
Update diff (3.92 KB, patch)
2023-06-02 14:50 UTC, Ashish SHUKLA
no flags Details | Diff
patch for updating to 1.85.0 (7.30 KB, patch)
2023-06-06 13:28 UTC, Li-Wen Hsu
no flags Details | Diff
update to 1.85.1 (7.30 KB, patch)
2023-06-07 14:44 UTC, Li-Wen Hsu
no flags Details | Diff
patch for updating to 1.85.2 (7.30 KB, patch)
2023-06-09 03:09 UTC, Li-Wen Hsu
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ashish SHUKLA freebsd_committer freebsd_triage 2023-06-02 14:50:47 UTC
Created attachment 242557 [details]
Update diff

- Update to 1.84.1


Following is an excerpt from the testsuite:


===============================================================================                                                                                                                                                                                                                     [SKIPPED]
Requires jaeger_client

tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_nested_spans
tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_overlapping_spans
tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_start_active_span
tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_trace_decorator_deferred
tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_trace_decorator_async
tests.logging.test_opentracing.LogContextScopeManagerTestCase.test_trace_decorator_sync                                                                                                                                                                                                             ===============================================================================
[SKIPPED]
Test only applies when postgres is used as the database

tests.storage.test_room_search.MessageSearchTest.test_postgres_web_search_for_phrase
===============================================================================                                                                                                                                                                                                                     [SKIPPED]                                                                                                                                                                                                                                                                                           Requires PyICU

tests.storage.test_user_directory.UserDirectoryICUTestCase.test_icu_word_boundary
tests.storage.test_user_directory.UserDirectoryICUTestCase.test_icu_word_boundary_punctuation                                                                                                                                                                                                       tests.storage.test_user_directory.UserDirectoryICUTestCase.test_regex_word_boundary_punctuation
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir                                                                                                                                                                                                            tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_all_users
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_ascii_case_insensitivity                                                                                                                                                                                   tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_start_of_user_id
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_stop_words                                                                                                                                                                                                 tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_unicode_case_insensitivity
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_unicode_normalization
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_limit_correct
===============================================================================
[SKIPPED]
not supported yet

tests.storage.test_user_directory.UserDirectoryStoreTestCase.test_search_user_dir_accent_insensitivity
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_accent_insensitivity
===============================================================================
[SKIPPED]
not supported

tests.storage.test_user_directory.UserDirectoryStoreTestCase.test_search_user_dir_dotted_dotless_i_case_insensitivity
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_dotted_dotless_i_case_insensitivity
-------------------------------------------------------------------------------
Ran 2725 tests in 111.673s

PASSED (skips=94, successes=2631)
Comment 1 Nuno Teixeira freebsd_committer freebsd_triage 2023-06-03 14:05:08 UTC
(In reply to Ashish SHUKLA from comment #0)
Hello Ashish,

Did you try TEST_DEPENDS=devel/py-pyicu ?
Comment 2 Ashish SHUKLA freebsd_committer freebsd_triage 2023-06-06 09:26:22 UTC
(In reply to Nuno Teixeira from comment #1)

Hi,

Thanks for the advice, but unfortunately that didn't help:


running build
running build_py
running build_ext
running install_lib
creating /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9
creating /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages
creating /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages/icu
copying build/lib.freebsd-13.2-RELEASE-amd64-cpython-39/icu/__init__.py -> /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages/icu
copying build/lib.freebsd-13.2-RELEASE-amd64-cpython-39/_icu.cpython-39.so -> /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages
copying build/lib.freebsd-13.2-RELEASE-amd64-cpython-39/PyICU.py -> /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages
byte-compiling /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages/icu/__init__.py to __init__.cpython-39.pyc
byte-compiling /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages/PyICU.py to PyICU.cpython-39.pyc
writing byte-compilation script '/tmp/tmpfielsaja.py'
/usr/local/bin/python3.9 /tmp/tmpfielsaja.py
removing /tmp/tmpfielsaja.py
running install_egg_info
running egg_info
writing PyICU.egg-info/PKG-INFO
writing dependency_links to PyICU.egg-info/dependency_links.txt
writing top-level names to PyICU.egg-info/top_level.txt
reading manifest file 'PyICU.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'PyICU.egg-info/SOURCES.txt'
Copying PyICU.egg-info to /wrkdirs/usr/ports/devel/py-pyicu/work-py39/stage/usr/local/lib/python3.9/site-packages/PyICU-2.4.3-py3.9.egg-info
running install_scripts
writing list of installed files to '/wrkdirs/usr/ports/devel/py-pyicu/work-py39/.PLIST.pymodtmp'
====> Compressing man pages (compress-man)
===>  Installing for py39-pyicu-2.4.3_6
===>  Checking if py39-pyicu is already installed
===>   Registering installation for py39-pyicu-2.4.3_6 as automatic
[pkg.FreeBSD.org] Installing py39-pyicu-2.4.3_6...
===>   py39-matrix-synapse-1.84.1 depends on package: py39-pyicu>=0 - found
===>   Returning to build of py39-matrix-synapse-1.84.1
===>   py39-matrix-synapse-1.84.1 depends on file: /usr/local/bin/python3.9 - found
cd /wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/matrix_synapse-1.84.1 && PYTHONPATH="/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/stage//usr/local/lib/python3.9/site-packages:." trial-3.9 -j 4 tests
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
To install run:
    pip install --upgrade --force "pyicu" "pyicu"
Missing Requirements: "pyicu", "pyicu"
...
...
tests.storage.test_user_directory.UserDirectoryStoreTestCase.test_search_user_dir_dotted_dotless_i_case_insensitivity
tests.storage.test_user_directory.UserDirectoryStoreTestCaseWithIcu.test_search_user_dir_dotted_dotless_i_case_insensitivity
===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 711, in loadByName
    return self.suiteFactory([self.findByName(name, recurse=recurse)])
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 474, in findByName
    obj = reflect.namedModule(searchName)
  File "/usr/local/lib/python3.9/site-packages/twisted/python/reflect.py", line 156, in namedModule
    topLevel = __import__(name)
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/matrix_synapse-1.84.1/tests/app/test_homeserver_start.py", line 15, in <module>
    import synapse.app.homeserver
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/stage/usr/local/lib/python3.9/site-packages/synapse/app/__init__.py", line 28, in <module>
    sys.exit(1)
builtins.SystemExit: 1
...
...
tests.app.test_homeserver_start
===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 711, in loadByName
    return self.suiteFactory([self.findByName(name, recurse=recurse)])
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 474, in findByName
    obj = reflect.namedModule(searchName)
  File "/usr/local/lib/python3.9/site-packages/twisted/python/reflect.py", line 156, in namedModule
    topLevel = __import__(name)
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/matrix_synapse-1.84.1/tests/app/test_openid_listener.py", line 21, in <module>
    from synapse.app.generic_worker import GenericWorkerServer
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/stage/usr/local/lib/python3.9/site-packages/synapse/app/__init__.py", line 28, in <module>
    sys.exit(1)
builtins.SystemExit: 1


tests.storage.test_rollback_worker
===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 711, in loadByName
    return self.suiteFactory([self.findByName(name, recurse=recurse)])
  File "/usr/local/lib/python3.9/site-packages/twisted/trial/runner.py", line 474, in findByName
    obj = reflect.namedModule(searchName)
  File "/usr/local/lib/python3.9/site-packages/twisted/python/reflect.py", line 156, in namedModule
    topLevel = __import__(name)
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/matrix_synapse-1.84.1/tests/test_phone_home.py", line 20, in <module>
    from synapse.app.phone_stats_home import phone_stats_home
  File "/wrkdirs/usr/ports/net-im/py-matrix-synapse/work-py39/stage/usr/local/lib/python3.9/site-packages/synapse/app/__init__.py", line 28, in <module>
    sys.exit(1)
builtins.SystemExit: 1

tests.test_phone_home
-------------------------------------------------------------------------------
Ran 2619 tests in 106.640s

FAILED (skips=28, errors=28, successes=2563)
*** Error code 1

Stop.
make: stopped in /usr/ports/net-im/py-matrix-synapse
Comment 3 Li-Wen Hsu freebsd_committer freebsd_triage 2023-06-06 10:15:21 UTC
Does it needs devel/py-simplejson as 1.82.0?
Comment 4 Li-Wen Hsu freebsd_committer freebsd_triage 2023-06-06 13:28:25 UTC
Created attachment 242637 [details]
patch for updating to 1.85.0

1.85.0 is out
Comment 5 Li-Wen Hsu freebsd_committer freebsd_triage 2023-06-07 14:44:53 UTC
Created attachment 242660 [details]
update to 1.85.1
Comment 6 Li-Wen Hsu freebsd_committer freebsd_triage 2023-06-09 03:09:30 UTC
Created attachment 242697 [details]
patch for updating to 1.85.2
Comment 7 Sascha Biberhofer 2023-06-18 19:49:46 UTC
(In reply to Li-Wen Hsu from comment #6)

Hi and sorry for the (very) late reply to this issue. The patch looks good to me!

The testsuite passess successfully and the resulting package has been working fine in production for the last day. As far as I can tell, the package doesn't exhibit any issues wrt to devel/py-simplejson (which is absent on my server without causing any issues).

As far as the pyicu tests are concerned: These are currently an optional dependency (as far as synapse is concerned) and I'm not quite sure that the test issues here are related to the synapse package. I believe that our pyicu package might be broken, as an installation of py39-pyicu doesn't show up on pip freeze.
Comment 8 commit-hook freebsd_committer freebsd_triage 2023-06-19 19:18:52 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9001ee757b8352f23b4289cf7f5f88c49d448508

commit 9001ee757b8352f23b4289cf7f5f88c49d448508
Author:     Li-Wen Hsu <lwhsu@FreeBSD.org>
AuthorDate: 2023-06-19 19:18:30 +0000
Commit:     Li-Wen Hsu <lwhsu@FreeBSD.org>
CommitDate: 2023-06-19 19:18:30 +0000

    net-im/py-matrix-synapse: Update to 1.85.2

    PR:             271787
    Approved by:    Sascha Biberhofer <ports@skyforge.at> (maintainer)

 net-im/py-matrix-synapse/Makefile                  |  5 ++---
 net-im/py-matrix-synapse/Makefile.crates           |  8 ++++----
 net-im/py-matrix-synapse/distinfo                  | 22 +++++++++++-----------
 .../py-matrix-synapse/files/patch-pyproject.toml   | 18 ++++++++++++++----
 net-im/py-matrix-synapse/files/patch-setup.py      |  4 ++--
 5 files changed, 33 insertions(+), 24 deletions(-)
Comment 9 Li-Wen Hsu freebsd_committer freebsd_triage 2023-06-19 19:20:28 UTC
(In reply to Sascha Biberhofer from comment #7)
Thanks for the reply, let's keep this ticket open a little more to continue work on simplejson and pyicu issues.