Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compat tests 451rc #1912

Merged
merged 5 commits into from
Oct 15, 2024
Merged

Compat tests 451rc #1912

merged 5 commits into from
Oct 15, 2024

Commits on Oct 14, 2024

  1. Introducing compatibility tests

    The new compatibility tests are in `tests/compat`.
    This includes the following:
    - `old_venv` fixture which allows executing some arctic commands frow
      within a custom venv.
    - 2 compatibility tests. One of which showcases an issue with modifying
      library options of old environments.
    - Tweak to the Build and Test workflow to run the compat tests only on
      newer python versions
    IvoDD committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    4f9de21 View commit details
    Browse the repository at this point in the history
  2. Make modify_library_option backwards compatible

    Previously modifying a library option with a new version (>=v3.0.0)
    would break old libraries (<v3.0.0)
    
    This was because of the storage overrides introduced in v3.0.0.
    
    This change moves the logic to modify a library option to C++
    and it does the protobuf modification without applying a storage
    override.
    
    This makes storage overrides work well with both old libraries (as
    demonstrated by now passing compatibility tests) and with new libraries
    (as confirmed by test_arctic_library_management.py)
    IvoDD committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    686f39e View commit details
    Browse the repository at this point in the history
  3. Inspect unaltered library config

    - Exposes a `read_unaltered_lib_cfg` method for the `LibraryTool`
    - Uses it in compatibility modification test to verify that we only
      change the new fields
    IvoDD committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    17fc484 View commit details
    Browse the repository at this point in the history
  4. Mongo destruction segfault fix

    When destructing the mongo storage it was possible to destruct the api
    instance before destructing the pool.
    
    Moved the instance from the `MongoStorage` to the `MongoClient` to be
    kept as a guard around the `mongocxx::pool`. `MongoStorage` didn't need
    any sensitive mongocxx objects.
    
    We also disable mongo tests for 4.5.0 as it contains the problematic
    segfault.
    IvoDD committed Oct 14, 2024
    Configuration menu
    Copy the full SHA
    216985e View commit details
    Browse the repository at this point in the history

Commits on Oct 15, 2024

  1. Use ubuntu-22.04

    There have been some mono issues with ubuntu-latest, so we reverted to
    ubuntu-22.04 for now.
    
    The cibw-docker-image workflow was not updated because updating it
    causes the rebuilt of the manylinux docker image which fails because of
    CentOS 7 being EOL.
    IvoDD committed Oct 15, 2024
    Configuration menu
    Copy the full SHA
    01dbdff View commit details
    Browse the repository at this point in the history