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

Mob 3.0.3 #89

Merged
merged 9 commits into from
Aug 5, 2021
Merged

Mob 3.0.3 #89

merged 9 commits into from
Aug 5, 2021

Conversation

kbessonov1984
Copy link
Collaborator

@kbessonov1984 kbessonov1984 commented Jul 30, 2021

This small fix resolves issue #82 related to inability to put a .lock file in read-only file system context. In addition, inside the databases integrity verify function (verify_init(logger, database_dir)) the external mob_init process launching function now uses sys.executable keyword instead of python as on some systems python binary is called via python3 causing a failure (confirmed on Ubuntu 21.01 clean install). The sys.executable guarantees that default python executable is launched depending on the context (system, conda, virtual environment).

The read-only file system was emulated by making the entire mob-suite package directory read-only for non-root users
drwxrwxr-x 3 root root 4.0K Jul 30 12:05 databases. In such context the non-root users will see these additional warning messages but execution continues

2021-07-30 12:08:16,494 root WARNING: Lock file is already removed by some other process or read-only file system [in /usr/local/lib/python3.9/dist-packages/mob_suite-3.0.3-py3.9.egg/mob_suite/utils.py:468]
2021-07-30 12:08:16,495 root WARNING: [Errno 2] No such file or directory: '/usr/local/lib/python3.9/dist-packages/mob_suite-3.0.3-py3.9.egg/mob_suite/databases/ETE3_DB.lock' [in /usr/local/lib/python3.9/dist-packages/mob_suite-3.0.3-py3.9.egg/mob_suite/utils.py:469]

…y database query does not fail the run. Updated README with new instructions on Singularity and install from Source code
…are readable by the other users by setting permission 755
… destination folder as it is not supported contrary to shutil.copy()
@kbessonov1984
Copy link
Collaborator Author

Finally the 2 issues were fixed 1) file permissions (i.e. file metadata) after database archive download and unpacking are NOT copied by the the executing process thanks to shutil.copyfile(); 2) read-only file system is not an issue anymore as .lock file placement is optional now.

@dpbastedo
Copy link

Recent updates to v 3.0.3 were successfully tested on Windows system WSL 2.0, confirming that the lock file is now optional and file permissions errors have been resolved.

@kbessonov1984
Copy link
Collaborator Author

Docker image assembled successfully and pytest all passed tests. Merging into a main branch and also releasing version 3.0.3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
2 participants