Bug 258419 - net-im/py-matrix-synapse: Update to 1.45.1
Summary: net-im/py-matrix-synapse: Update to 1.45.1
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Ashish SHUKLA
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-09-11 07:20 UTC by Ashish SHUKLA
Modified: 2021-11-24 11:22 UTC (History)
2 users (show)

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


Attachments
Update diff (2.16 KB, patch)
2021-09-11 07:20 UTC, Ashish SHUKLA
no flags Details | Diff
Update diff (2.19 KB, patch)
2021-09-25 06:09 UTC, Ashish SHUKLA
no flags Details | Diff
Log of failed test cases (16.91 KB, text/plain)
2021-09-25 06:13 UTC, Ashish SHUKLA
no flags Details
Update to 1.45.1 (3.57 KB, patch)
2021-10-21 17:40 UTC, Ashish SHUKLA
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 2021-09-11 07:20:04 UTC
Created attachment 227823 [details]
Update diff

Update to 1.42.0
Comment 1 Sascha Biberhofer 2021-09-14 08:18:33 UTC
(In reply to Ashish SHUKLA from comment #0)
Sorry for the delay, I've been a bit busy. :(

Diff looks fine to me, but running the tests currently results in an error, though I'm not sure if this is actually synapse's fault. It might be caused by the recent bump in py-xmlschema, but I'll need a bit of time to properly pinpoint this issue. Full error:

tests.handlers.test_saml
===============================================================================
[ERROR]
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/twisted/trial/runner.py", line 598, in loadPackage
    module = modinfo.load()
  File "/usr/local/lib/python3.8/site-packages/twisted/python/modules.py", line 390, in load
    return self.pathEntry.pythonPath.moduleLoader(self.name)
  File "/usr/local/lib/python3.8/site-packages/twisted/python/reflect.py", line 298, in namedAny
    topLevelPackage = _importAndCheckStack(trialname)
  File "/usr/local/lib/python3.8/site-packages/twisted/python/reflect.py", line 239, in _importAndCheckStack
    return __import__(importName)
  File "/var/ports/usr/local/ports/net-im/py-matrix-synapse/work-py38/synapse-1.42.0/tests/rest/client/test_login.py", line 34, in <module>
    from tests.handlers.test_saml import has_saml2
  File "/var/ports/usr/local/ports/net-im/py-matrix-synapse/work-py38/synapse-1.42.0/tests/handlers/test_saml.py", line 27, in <module>
    import saml2.config
  File "/usr/local/lib/python3.8/site-packages/saml2/config.py", line 22, in <module>
    from saml2.mdstore import MetadataStore
  File "/usr/local/lib/python3.8/site-packages/saml2/mdstore.py", line 28, in <module>
    from saml2.httpbase import HTTPBase
  File "/usr/local/lib/python3.8/site-packages/saml2/httpbase.py", line 13, in <module>
    from saml2.pack import http_post_message
  File "/usr/local/lib/python3.8/site-packages/saml2/pack.py", line 20, in <module>
    from saml2.sigver import REQ_ORDER, RESP_ORDER
  File "/usr/local/lib/python3.8/site-packages/saml2/sigver.py", line 55, in <module>
    from saml2.xml.schema import node_to_schema
  File "/usr/local/lib/python3.8/site-packages/saml2/xml/schema/__init__.py", line 3, in <module>
    from xmlschema import XMLSchema as _XMLSchema
  File "/usr/local/lib/python3.8/site-packages/xmlschema/__init__.py", line 20, in <module>
    from .dataobjects import DataElement, DataElementConverter, DataBindingConverter
  File "/usr/local/lib/python3.8/site-packages/xmlschema/dataobjects.py", line 20, in <module>
    from . import validators
  File "/usr/local/lib/python3.8/site-packages/xmlschema/validators/__init__.py", line 21, in <module>
    from .identities import XsdSelector, XsdFieldSelector, XsdIdentity, XsdKeyref, XsdKey, \
  File "/usr/local/lib/python3.8/site-packages/xmlschema/validators/identities.py", line 24, in <module>
    from .attributes import XsdAttribute
  File "/usr/local/lib/python3.8/site-packages/xmlschema/validators/attributes.py", line 27, in <module>
    from .simple_types import XsdSimpleType
  File "/usr/local/lib/python3.8/site-packages/xmlschema/validators/simple_types.py", line 31, in <module>
    from .facets import XsdFacet, XsdWhiteSpaceFacet, XSD_10_FACETS_BUILDERS, \
  File "/usr/local/lib/python3.8/site-packages/xmlschema/validators/facets.py", line 674, in <module>
    def evaluate_last(self, context=None):
  File "/usr/local/lib/python3.8/site-packages/elementpath/tdop.py", line 734, in bind
    assert callable(getattr(token_class, func.__name__, None)), \
builtins.AssertionError: The name 'evaluate_last' does not match with a callable of <class 'xmlschema.validators.facets._LastFunction'>.
Comment 2 Sascha Biberhofer 2021-09-19 18:43:24 UTC
Found some time to work on this issue and got a useful pointer from other packagers: The issue with the teststuite is not a py-matrix-synapse problem but rather bug #258610. Updating the py-elementpath dependency fixes py-xmlschema and makes the synapse teststuite pass, so I think we can merge this and wait for #258610, as the problem will exist in either synapse version.
Comment 3 Ashish SHUKLA freebsd_committer freebsd_triage 2021-09-23 03:15:26 UTC
(In reply to Sascha Biberhofer from comment #2)

Thanks, also there is an update[0] to Synapse, so I'll be submitting a new diff for your approval soon, if no one else beats me to it.

[0] https://github.com/matrix-org/synapse/releases/tag/v1.43.0
Comment 4 Ashish SHUKLA freebsd_committer freebsd_triage 2021-09-25 06:09:11 UTC
Created attachment 228159 [details]
Update diff

Update to 1.43.0
Comment 5 Ashish SHUKLA freebsd_committer freebsd_triage 2021-09-25 06:13:32 UTC
Created attachment 228160 [details]
Log of failed test cases

There are couple of test cases which failed. The log of failures is attached.

Thanks!
Comment 6 László Károlyi 2021-10-18 17:30:50 UTC
1.44 is already out. Should I look into it or is anything in preparation already?
Comment 7 Sascha Biberhofer 2021-10-18 17:55:59 UTC
(In reply to László Károlyi from comment #6)
I've been meaning to update to 1.44.0 asap, but I've ran into the same problems in the testsuit as Ashish Shukla. Moreover, I'm currently pretty swamped with work and will realistically only be able to look into this on Friday at earliest. Any help in pinpointing the issue would be greatly appreciated, as I usually try to keep this port reasonable up to date, but I don't want to risk pushing a faulty update either. :/
Comment 8 Sascha Biberhofer 2021-10-20 17:26:24 UTC
Quick update: I've contacted upstream about this and the test suite failures are caused by a problem with py-canonicaljson and not an issue with synapse per se, see bug #259323.

After updating py-canonicaljson, the synapse test suite passes fine for me, which suggests that we should just go ahead and update the port. Since 1.45.1 has just been released, I'll try and get this tested until the weekend (especially since there's a potential performance regression which might have been introducted with 1.44.0, see [1]).

[1] https://github.com/matrix-org/synapse/issues/11049
Comment 9 Ashish SHUKLA freebsd_committer freebsd_triage 2021-10-21 17:40:14 UTC
Created attachment 228927 [details]
Update to 1.45.1

Also ran the test suite with py-canonicaljson bumped to 1.5.0:

Ran 1925 tests in 922.270s

PASSED (skips=36, successes=1889)
Comment 10 Ashish SHUKLA freebsd_committer freebsd_triage 2021-10-21 17:41:52 UTC
Following are changes (also noted in header of the diff): 

- Update to 1.45.1
- Bump dependency on canonicaljson to 1.5.0
- Lower the bounds for pysaml2 to reflect upstream
- Also add dependency on pyjwt for jwt feature (implied)

Thanks!
Comment 11 László Károlyi 2021-10-21 17:50:43 UTC
This is great news, thanks for the contribution! Spared me some work.

Can't wait to have this in the pkg database.
Comment 12 Sascha Biberhofer 2021-10-23 09:29:51 UTC
(In reply to Ashish SHUKLA from comment #10)

Thank you for updating the diff! I'd ACK all of these changes, except perhaps the py-canonicaljson version bump. The higher version is required to fix a regression in py-canonicaljson wrt the py-frozendict in ports but *not* strictly speaking as a synapse dependency. I'd prefer if we could leave that dependency in sync with upstream, as synapse would still function with the 1.4.0 version of py-canonicaljson otherwise.

Other than that, the diff looks perfectly fine, applies just as fine, builds perfectly fine and has been in production use on one of my servers without any problems for the past 36 hours, so I think we can safely push that update. :)
Comment 13 commit-hook freebsd_committer freebsd_triage 2021-10-24 06:05:01 UTC
A commit in branch main references this bug:

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

commit de975a8893aa319c9066d9198fb79a139fca55f3
Author:     Ashish SHUKLA <ashish@FreeBSD.org>
AuthorDate: 2021-10-24 06:02:41 +0000
Commit:     Ashish SHUKLA <ashish@FreeBSD.org>
CommitDate: 2021-10-24 06:02:41 +0000

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

    - Lower the bounds for pysaml2 to reflect upstream
    - Also add dependency on pyjwt for jwt feature (implied)

    PR:             258419
    Approved by:    Sascha Biberhofer <ports at skyforge dot at>

 net-im/py-matrix-synapse/Makefile | 11 +++++------
 net-im/py-matrix-synapse/distinfo |  6 +++---
 2 files changed, 8 insertions(+), 9 deletions(-)
Comment 14 Ashish SHUKLA freebsd_committer freebsd_triage 2021-10-24 06:06:33 UTC
Committed, thank you for approving the changes (minus the canonicaljson change, which I excluded from the commit).
Comment 15 commit-hook freebsd_committer freebsd_triage 2021-11-24 11:22:31 UTC
A commit in branch 2021Q4 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0af37290a379ae5de4f818333934c655ee4f94ba

commit 0af37290a379ae5de4f818333934c655ee4f94ba
Author:     Ashish SHUKLA <ashish@FreeBSD.org>
AuthorDate: 2021-10-24 06:02:41 +0000
Commit:     Ashish SHUKLA <ashish@FreeBSD.org>
CommitDate: 2021-11-24 11:20:25 +0000

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

    - Lower the bounds for pysaml2 to reflect upstream
    - Also add dependency on pyjwt for jwt feature (implied)

    PR:             258419
    Approved by:    Sascha Biberhofer <ports at skyforge dot at>

    (cherry picked from commit de975a8893aa319c9066d9198fb79a139fca55f3)

 net-im/py-matrix-synapse/Makefile | 11 +++++------
 net-im/py-matrix-synapse/distinfo |  6 +++---
 2 files changed, 8 insertions(+), 9 deletions(-)