Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-PyCondor for openSUSE:Factory
checked in at 2022-08-20 20:28:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-PyCondor (Old)
and /work/SRC/openSUSE:Factory/.python-PyCondor.new.2083 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-PyCondor"
Sat Aug 20 20:28:56 2022 rev:3 rq:998227 version:0.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-PyCondor/python-PyCondor.changes
2022-01-26 21:28:31.505355072 +0100
+++
/work/SRC/openSUSE:Factory/.python-PyCondor.new.2083/python-PyCondor.changes
2022-08-20 20:29:17.261456615 +0200
@@ -1,0 +2,24 @@
+Fri Aug 19 14:03:26 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
+
+- Removed python-PyCondor-collections.abc-Iterable.patch.
+ Already applied upstream
+
+-------------------------------------------------------------------
+Wed Aug 17 22:59:08 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
+
+- update to 0.6.0
+ * Bug fix release to get development started again.
+ New Features:
+ * No new features added
+ Changes:
+ * Transition to pycondor namespace (See :pr:`149`)
+ Improvements to testing and infrastructure (See :pr:`135`, :pr:`148`,
:pr:`149`, :pr:`141`, and :pr:`152`)
+ Use sphinx extlinks in the changelog (See :pr:`130`)
+ Bug Fixes:
+ * Fix counting of unready jobs in monitor (See :pr:`138`)
+ * Updates to the logging setup (See :pr:`129`)
+ * Fix issue in python 3.8 (See :pr:`140`)
+ Documentation:
+ * Migrate documentation to readthedocs (See :pr:`150`)
+
+-------------------------------------------------------------------
Old:
----
PyCondor-0.5.0.tar.gz
python-PyCondor-collections.abc-Iterable.patch
New:
----
PyCondor-0.6.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-PyCondor.spec ++++++
--- /var/tmp/diff_new_pack.Q7Jhz8/_old 2022-08-20 20:29:17.733457924 +0200
+++ /var/tmp/diff_new_pack.Q7Jhz8/_new 2022-08-20 20:29:17.737457935 +0200
@@ -18,14 +18,12 @@
%global modname PyCondor
Name: python-PyCondor
-Version: 0.5.0
+Version: 0.6.0
Release: 0
Summary: Python utility for HTCondor
License: MIT
URL: https://github.com/jrbourbeau/pycondor
Source:
https://files.pythonhosted.org/packages/source/P/PyCondor/PyCondor-%{version}.tar.gz
-#
https://github.com/jrbourbeau/pycondor/commit/b41b17546c898d5cc2368b92fda86473c605e923
-Patch0: python-PyCondor-collections.abc-Iterable.patch
BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
@@ -44,7 +42,6 @@
%prep
%setup -q -n PyCondor-%{version}
-%patch0 -p1
sed -Ei "1{/^#!\/usr\/bin\/env python/d}" pycondor/tests/example_script.py
%build
++++++ PyCondor-0.5.0.tar.gz -> PyCondor-0.6.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/PKG-INFO new/PyCondor-0.6.0/PKG-INFO
--- old/PyCondor-0.5.0/PKG-INFO 2018-11-06 02:26:44.000000000 +0100
+++ new/PyCondor-0.6.0/PKG-INFO 2022-07-13 12:31:35.144494000 +0200
@@ -1,56 +1,11 @@
Metadata-Version: 2.1
Name: PyCondor
-Version: 0.5.0
+Version: 0.6.0
Summary: Python utility for HTCondor
-Home-page: https://github.com/jrbourbeau/pycondor
+Home-page: https://github.com/pycondor/pycondor
Author: James Bourbeau
Author-email: [email protected]
License: MIT
-Description: # PyCondor
-
- [](https://travis-ci.org/jrbourbeau/pycondor)
-
[](https://codecov.io/gh/jrbourbeau/pycondor)
- 
- 
- 
-
- PyCondor (Python HTCondor) is a tool to help build and submit
workflows to HTCondor in a straight-forward manner with minimal hassle.
-
-
- ## Documentation
-
- The documentation for PyCondor can be found at
https://jrbourbeau.github.io/pycondor.
-
-
- ## Installation
-
-
- PyCondor can be installed using `pip`
-
- ```
- pip install pycondor
- ```
-
- or `conda`
-
- ```
- conda install -c conda-forge pycondor
- ```
-
- For more information see the [installation
instructions](https://jrbourbeau.github.io/pycondor/installation.html) in the
[documentation](https://jrbourbeau.github.io/pycondor).
-
-
- ## Contributing
-
- To contribute to PyCondor, please see the [contributing
guide](https://jrbourbeau.github.io/pycondor/contributing.html) in the
documentation.
-
-
- ## License
-
- [MIT License](LICENSE)
-
- Copyright (c) 2018 James Bourbeau
-
Keywords: python condor htcondor high-throughput computing utility tool
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
@@ -65,5 +20,57 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
Description-Content-Type: text/markdown
Provides-Extra: dev
+License-File: LICENSE
+
+# PyCondor
+
+[](https://github.com/pycondor/pycondor/actions/workflows/test.yml)
+[](https://codecov.io/gh/pycondor/pycondor)
+
+
+
+
+PyCondor (Python HTCondor) is a tool to help build and submit workflows to
HTCondor in a straight-forward manner with minimal hassle.
+
+
+## Documentation
+
+The documentation for PyCondor can be found at
https://pycondor.github.io/pycondor.
+
+
+## Installation
+
+
+PyCondor can be installed using `pip`
+
+```
+pip install pycondor
+```
+
+or `conda`
+
+```
+conda install -c conda-forge pycondor
+```
+
+For more information see the [installation
instructions](https://pycondor.github.io/pycondor/installation.html) in the
[documentation](https://pycondor.github.io/pycondor).
+
+
+## Contributing
+
+To contribute to PyCondor, please see the [contributing
guide](https://pycondor.github.io/pycondor/contributing.html) in the
documentation.
+
+
+## License
+
+[MIT License](LICENSE)
+
+Copyright (c) 2018 James Bourbeau
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/PyCondor.egg-info/PKG-INFO
new/PyCondor-0.6.0/PyCondor.egg-info/PKG-INFO
--- old/PyCondor-0.5.0/PyCondor.egg-info/PKG-INFO 2018-11-06
02:26:44.000000000 +0100
+++ new/PyCondor-0.6.0/PyCondor.egg-info/PKG-INFO 2022-07-13
12:31:35.000000000 +0200
@@ -1,56 +1,11 @@
Metadata-Version: 2.1
Name: PyCondor
-Version: 0.5.0
+Version: 0.6.0
Summary: Python utility for HTCondor
-Home-page: https://github.com/jrbourbeau/pycondor
+Home-page: https://github.com/pycondor/pycondor
Author: James Bourbeau
Author-email: [email protected]
License: MIT
-Description: # PyCondor
-
- [](https://travis-ci.org/jrbourbeau/pycondor)
-
[](https://codecov.io/gh/jrbourbeau/pycondor)
- 
- 
- 
-
- PyCondor (Python HTCondor) is a tool to help build and submit
workflows to HTCondor in a straight-forward manner with minimal hassle.
-
-
- ## Documentation
-
- The documentation for PyCondor can be found at
https://jrbourbeau.github.io/pycondor.
-
-
- ## Installation
-
-
- PyCondor can be installed using `pip`
-
- ```
- pip install pycondor
- ```
-
- or `conda`
-
- ```
- conda install -c conda-forge pycondor
- ```
-
- For more information see the [installation
instructions](https://jrbourbeau.github.io/pycondor/installation.html) in the
[documentation](https://jrbourbeau.github.io/pycondor).
-
-
- ## Contributing
-
- To contribute to PyCondor, please see the [contributing
guide](https://jrbourbeau.github.io/pycondor/contributing.html) in the
documentation.
-
-
- ## License
-
- [MIT License](LICENSE)
-
- Copyright (c) 2018 James Bourbeau
-
Keywords: python condor htcondor high-throughput computing utility tool
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
@@ -65,5 +20,57 @@
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
+Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
Description-Content-Type: text/markdown
Provides-Extra: dev
+License-File: LICENSE
+
+# PyCondor
+
+[](https://github.com/pycondor/pycondor/actions/workflows/test.yml)
+[](https://codecov.io/gh/pycondor/pycondor)
+
+
+
+
+PyCondor (Python HTCondor) is a tool to help build and submit workflows to
HTCondor in a straight-forward manner with minimal hassle.
+
+
+## Documentation
+
+The documentation for PyCondor can be found at
https://pycondor.github.io/pycondor.
+
+
+## Installation
+
+
+PyCondor can be installed using `pip`
+
+```
+pip install pycondor
+```
+
+or `conda`
+
+```
+conda install -c conda-forge pycondor
+```
+
+For more information see the [installation
instructions](https://pycondor.github.io/pycondor/installation.html) in the
[documentation](https://pycondor.github.io/pycondor).
+
+
+## Contributing
+
+To contribute to PyCondor, please see the [contributing
guide](https://pycondor.github.io/pycondor/contributing.html) in the
documentation.
+
+
+## License
+
+[MIT License](LICENSE)
+
+Copyright (c) 2018 James Bourbeau
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/README.md new/PyCondor-0.6.0/README.md
--- old/PyCondor-0.5.0/README.md 2018-07-27 20:37:04.000000000 +0200
+++ new/PyCondor-0.6.0/README.md 2022-07-13 11:47:06.000000000 +0200
@@ -1,7 +1,7 @@
# PyCondor
-[](https://travis-ci.org/jrbourbeau/pycondor)
-[](https://codecov.io/gh/jrbourbeau/pycondor)
+[](https://github.com/pycondor/pycondor/actions/workflows/test.yml)
+[](https://codecov.io/gh/pycondor/pycondor)



@@ -11,7 +11,7 @@
## Documentation
-The documentation for PyCondor can be found at
https://jrbourbeau.github.io/pycondor.
+The documentation for PyCondor can be found at
https://pycondor.github.io/pycondor.
## Installation
@@ -29,12 +29,12 @@
conda install -c conda-forge pycondor
```
-For more information see the [installation
instructions](https://jrbourbeau.github.io/pycondor/installation.html) in the
[documentation](https://jrbourbeau.github.io/pycondor).
+For more information see the [installation
instructions](https://pycondor.github.io/pycondor/installation.html) in the
[documentation](https://pycondor.github.io/pycondor).
## Contributing
-To contribute to PyCondor, please see the [contributing
guide](https://jrbourbeau.github.io/pycondor/contributing.html) in the
documentation.
+To contribute to PyCondor, please see the [contributing
guide](https://pycondor.github.io/pycondor/contributing.html) in the
documentation.
## License
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/__version__.py
new/PyCondor-0.6.0/pycondor/__version__.py
--- old/PyCondor-0.5.0/pycondor/__version__.py 2018-11-06 02:17:22.000000000
+0100
+++ new/PyCondor-0.6.0/pycondor/__version__.py 2022-07-13 12:29:30.000000000
+0200
@@ -1,2 +1,2 @@
-__version__ = '0.5.0'
+__version__ = '0.6.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/basenode.py
new/PyCondor-0.6.0/pycondor/basenode.py
--- old/PyCondor-0.5.0/pycondor/basenode.py 2018-07-25 18:45:23.000000000
+0200
+++ new/PyCondor-0.6.0/pycondor/basenode.py 2022-06-24 19:43:56.000000000
+0200
@@ -66,8 +66,9 @@
# Ensure that node is a BaseNode
if not isinstance(node, BaseNode):
raise TypeError(
- 'add_parent() is expecting a Job or Dagman instance.'
- ' Got an object of type {}'.format(type(node)))
+ 'add_parent() is expecting a Job or Dagman instance.'
+ ' Got an object of type {}'.format(type(node)),
+ )
# Don't bother continuing if node is already in the parents list
if self._hasparent(node):
@@ -98,8 +99,10 @@
"""
# Check that nodes is a list/tuple of BaseNode objects
- if (isinstance(nodes, (list, tuple)) and
- all([isinstance(node, BaseNode) for node in nodes])):
+ if (
+ isinstance(nodes, (list, tuple))
+ and all([isinstance(node, BaseNode) for node in nodes])
+ ):
for node in nodes:
self.add_parent(node)
else:
@@ -128,8 +131,9 @@
# Ensure that node is a BaseNode
if not isinstance(node, BaseNode):
raise TypeError(
- 'add_child() is expecting a Job or Dagman instance.'
- ' Got an object of type {}'.format(type(node)))
+ 'add_child() is expecting a Job or Dagman instance.'
+ ' Got an object of type {}'.format(type(node)),
+ )
# Don't bother continuing if node is already in the children list
if self._haschild(node):
@@ -159,8 +163,10 @@
"""
# Check that nodes is a list/tuple of BaseNode objects
- if (isinstance(nodes, (list, tuple)) and
- all([isinstance(node, BaseNode) for node in nodes])):
+ if (
+ isinstance(nodes, (list, tuple))
+ and all([isinstance(node, BaseNode) for node in nodes])
+ ):
for node in nodes:
self.add_child(node)
else:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/cli.py
new/PyCondor-0.6.0/pycondor/cli.py
--- old/PyCondor-0.5.0/pycondor/cli.py 2018-09-12 18:11:48.000000000 +0200
+++ new/PyCondor-0.6.0/pycondor/cli.py 2022-07-13 11:47:06.000000000 +0200
@@ -66,7 +66,7 @@
if idx == 0:
datetime_current = line_to_datetime(line)
if status_str in line:
- num_line = lines[idx-2]
+ num_line = lines[idx - 2]
node_counts = [i for i in num_line.split(' ') if i != ''
and ':' not in i and '/' not in i]
node_counts = map(int, node_counts)
@@ -75,7 +75,7 @@
if node_counts:
status = Status(*node_counts)
else:
- status = Status(*[0]*len(_states))
+ status = Status(*[0] * len(_states))
datetime_current = datetime.now()
yield status, datetime_current
@@ -114,11 +114,11 @@
frac_done = 0
width = int(frac_done * length)
- bar_str = '\r[{0:<{1}}] {2}% Done'.format(prog_char*width, length,
- int(100*frac_done))
+ bar_str = '\r[{0:<{1}}] {2}% Done'.format(prog_char * width, length,
+ int(100 * frac_done))
count_str = '{} done, {} queued, {} ready, {} unready, {} failed'.format(
- status.Done, status.Queued, status.Ready,
- status.UnReady, status.Failed)
+ status.Done, status.Queued, status.Ready,
+ status.UnReady, status.Failed)
dt = datetime_current - datetime_start
time_str = '{:0.1f}m'.format(dt.seconds / 60)
@@ -182,7 +182,7 @@
with open(dag_out_file, 'r') as f:
datetime_start = line_to_datetime(f.readline())
- current_status = Status(*[0]*len(_states))
+ current_status = Status(*[0] * len(_states))
try:
for status, datetime_current in status_generator(dag_out_file):
# If no line with dagman status is found, wait and try again
@@ -196,9 +196,12 @@
prog_char=prog_char)
sys.stdout.write(prog_str)
sys.stdout.flush()
- # Exit if all jobs are either Done or Failed
- n_finished = current_status.Done + current_status.Failed
- if n_finished == sum(current_status) and sum(current_status) != 0:
+ # Exit if at least one job is Done or Failed (something ran) and
+ # all jobs either Done, Failed, or UnReady (nothing left to run)
+ n_jobs = sum(current_status)
+ n_ran = current_status.Done + current_status.Failed
+ n_finished = n_ran + current_status.UnReady
+ if n_jobs and n_ran and n_finished == n_jobs:
sys.exit(0)
else:
time.sleep(time_)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/dagman.py
new/PyCondor-0.6.0/pycondor/dagman.py
--- old/PyCondor-0.5.0/pycondor/dagman.py 2018-11-05 04:24:29.000000000
+0100
+++ new/PyCondor-0.6.0/pycondor/dagman.py 2022-06-24 19:43:56.000000000
+0200
@@ -13,7 +13,8 @@
if not isinstance(dagman, Dagman):
raise TypeError(
- 'Expecting a Dagman object, got {}'.format(type(dagman)))
+ 'Expecting a Dagman object, got {}'.format(type(dagman)),
+ )
subdag_string = 'SUBDAG EXTERNAL {} {}'.format(dagman.submit_name,
dagman.submit_file)
@@ -279,8 +280,9 @@
"""
if getattr(self, '_built', False):
self.logger.warning(
- '{} submit file has already been built. '
- 'Skipping the build process...'.format(self.name))
+ '{} submit file has already been built. '
+ 'Skipping the build process...'.format(self.name),
+ )
return self
name = self._get_fancyname() if fancyname else self.name
@@ -328,8 +330,11 @@
# Write lines to dag submit file
with open(submit_file, 'w') as dag:
- dag.writelines('\n'.join(lines + ['\n#Inter-job dependencies'] +
- parent_child_lines))
+ dag.writelines('\n'.join(
+ lines
+ + ['\n#Inter-job dependencies']
+ + parent_child_lines),
+ )
self._built = True
self.logger.info('Dagman submission file for {} successfully '
@@ -368,13 +373,15 @@
# Check that there are no illegal node names for newer condor versions
condor_version = get_condor_version()
if condor_version >= (8, 7, 2) and self._has_bad_node_names:
- err = ("Found an illegal character (either '+' or '.') in the "
- "name for a node in Dagman {}. As of HTCondor version "
- "8.7.2, '+' and '.' are prohibited in Dagman node names. "
- "This means a '+' or '.' character is in a Job name, "
- "Dagman name, or the name for a Job argument.".format(
- self.name))
- raise RuntimeError(err)
+ raise RuntimeError(
+ "Found an illegal character (either '+' or '.') in the "
+ "name for a node in Dagman {}. As of HTCondor version "
+ "8.7.2, '+' and '.' are prohibited in Dagman node names. "
+ "This means a '+' or '.' character is in a Job name, "
+ "Dagman name, or the name for a Job argument.".format(
+ self.name,
+ ),
+ )
# Execute condor_submit_dag command
out, err = submit_dag_proc.communicate()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/job.py
new/PyCondor-0.6.0/pycondor/job.py
--- old/PyCondor-0.5.0/pycondor/job.py 2018-11-03 18:39:48.000000000 +0100
+++ new/PyCondor-0.6.0/pycondor/job.py 2022-06-20 09:26:43.000000000 +0200
@@ -1,7 +1,11 @@
import os
import subprocess
-from collections import namedtuple, Iterable
+from collections import namedtuple
+try:
+ from collections.abc import Iterable
+except ImportError: # python < 3.3
+ from collections import Iterable
from .utils import (checkdir, string_rep, requires_command,
split_command_string, decode_string)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/tests/test_cli.py
new/PyCondor-0.6.0/pycondor/tests/test_cli.py
--- old/PyCondor-0.5.0/pycondor/tests/test_cli.py 2018-10-17
21:40:05.000000000 +0200
+++ new/PyCondor-0.6.0/pycondor/tests/test_cli.py 2022-06-24
19:43:56.000000000 +0200
@@ -36,7 +36,7 @@
# Create status that is 99.5% done. Want to make sure this is displayed
# as 99% done, not 100% done. See issue #51.
- jobs = [0]*len(_states)
+ jobs = [0] * len(_states)
jobs[0], jobs[2] = 199, 1
status = Status(*jobs)
prog_bar_str = progress_bar_str(status, datetime.now(), datetime.now(),
@@ -49,7 +49,7 @@
def test_progress_bar_str_null_status():
# Test that a null status (all zeroes) is handled properly
- jobs = [0]*len(_states)
+ jobs = [0] * len(_states)
status = Status(*jobs)
prog_bar_str = progress_bar_str(status, datetime.now(), datetime.now(),
length=30, prog_char='#')
@@ -89,7 +89,7 @@
runner = CliRunner()
result = runner.invoke(monitor, [non_exist_file])
assert result.exit_code == 2
- excerpt = 'Path "{}" does not exist'.format(non_exist_file)
+ excerpt = "Path '{}' does not exist".format(non_exist_file)
assert excerpt in result.output.replace('\r', '')
@@ -99,7 +99,7 @@
runner = CliRunner()
result = runner.invoke(submit, [non_exist_executable])
assert result.exit_code == 2
- excerpt = 'Path "{}" does not exist'.format(non_exist_executable)
+ excerpt = "Path '{}' does not exist".format(non_exist_executable)
assert excerpt in result.output.replace('\r', '')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/tests/test_dagman.py
new/PyCondor-0.6.0/pycondor/tests/test_dagman.py
--- old/PyCondor-0.5.0/pycondor/tests/test_dagman.py 2018-09-11
23:22:02.000000000 +0200
+++ new/PyCondor-0.6.0/pycondor/tests/test_dagman.py 2022-06-24
19:43:56.000000000 +0200
@@ -94,8 +94,9 @@
subdag_str = _get_subdag_string(dagman)
expected_str = 'SUBDAG EXTERNAL {} {}.submit'.format(
- dagman.name,
- os.path.join(submit_dir, dagman.name))
+ dagman.name,
+ os.path.join(submit_dir, dagman.name),
+ )
assert subdag_str == expected_str
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/tests/test_utils.py
new/PyCondor-0.6.0/pycondor/tests/test_utils.py
--- old/PyCondor-0.5.0/pycondor/tests/test_utils.py 2018-11-03
18:39:48.000000000 +0100
+++ new/PyCondor-0.6.0/pycondor/tests/test_utils.py 2022-06-24
19:43:56.000000000 +0200
@@ -93,11 +93,12 @@
filename = os.path.join('condor', 'submit', 'job.submit')
command = "condor_submit -maxjobs 1000 -interactive {}".format(filename)
expected = [
- 'condor_submit',
- '-maxjobs',
- '1000',
- '-interactive',
- filename]
+ 'condor_submit',
+ '-maxjobs',
+ '1000',
+ '-interactive',
+ filename,
+ ]
result = split_command_string(command)
assert result == expected
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/tests/test_visualize.py
new/PyCondor-0.6.0/pycondor/tests/test_visualize.py
--- old/PyCondor-0.5.0/pycondor/tests/test_visualize.py 2018-11-05
04:24:29.000000000 +0100
+++ new/PyCondor-0.6.0/pycondor/tests/test_visualize.py 2022-06-24
19:43:56.000000000 +0200
@@ -1,14 +1,15 @@
+import os
+import re
import pytest
-graphviz = pytest.importorskip('graphviz') # noqa: E402
-import os
-import re
from pycondor.job import Job
from pycondor.dagman import Dagman
from pycondor.visualize import visualize, extract_format, dag_to_graphviz
from pycondor.utils import clear_pycondor_environment_variables
+graphviz = pytest.importorskip('graphviz') # noqa: E402
+
clear_pycondor_environment_variables()
here = os.path.abspath(os.path.dirname(__file__))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/pycondor/utils.py
new/PyCondor-0.6.0/pycondor/utils.py
--- old/PyCondor-0.5.0/pycondor/utils.py 2018-11-03 18:39:48.000000000
+0100
+++ new/PyCondor-0.6.0/pycondor/utils.py 2022-06-20 09:26:43.000000000
+0200
@@ -14,8 +14,7 @@
# Specify logging settings
-logging.basicConfig(
- format='%(levelname)s: pycondor - %(name)s : %(message)s')
+formatter = logging.Formatter('%(levelname)s: pycondor - %(name)s :
%(message)s')
logging_level_dict = {0: logging.WARNING, 1: logging.INFO, 2: logging.DEBUG}
@@ -52,6 +51,9 @@
'Valid options are {}.'.format(
verbose, cls.name, logging_level_dict.keys()))
logger = logging.getLogger(cls.name)
+ stream_handler = logging.StreamHandler(sys.stdout)
+ stream_handler.setFormatter(formatter)
+ logger.addHandler(stream_handler)
logger.setLevel(logging_level_dict[verbose])
return logger
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/setup.cfg new/PyCondor-0.6.0/setup.cfg
--- old/PyCondor-0.5.0/setup.cfg 2018-11-06 02:26:44.000000000 +0100
+++ new/PyCondor-0.6.0/setup.cfg 2022-07-13 12:31:35.144494000 +0200
@@ -16,10 +16,17 @@
filterwarnings = always
[flake8]
+select =
+ E,
+ F,
+ W,
+ignore =
+ W503,
exclude =
- __init__.py,
- __pycache__
+ __pycache__,
max-line-length = 100
+per-file-ignores =
+ __init__.py:F401
[egg_info]
tag_build =
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/PyCondor-0.5.0/setup.py new/PyCondor-0.6.0/setup.py
--- old/PyCondor-0.5.0/setup.py 2018-09-11 01:19:23.000000000 +0200
+++ new/PyCondor-0.6.0/setup.py 2022-07-13 12:29:50.000000000 +0200
@@ -11,23 +11,26 @@
DESCRIPTION = 'Python utility for HTCondor'
MAINTAINER = 'James Bourbeau'
MAINTAINER_EMAIL = '[email protected]'
-URL = 'https://github.com/jrbourbeau/pycondor'
+URL = 'https://github.com/pycondor/pycondor'
LICENSE = 'MIT'
here = os.path.abspath(os.path.dirname(__file__))
+
def read(path, encoding='utf-8'):
with io.open(path, encoding=encoding) as f:
content = f.read()
return content
+
def get_install_requirements(path):
content = read(path)
requirements = [req for req in content.split("\n")
if req != '' and not req.startswith('#')]
return requirements
-LONG_DESCRIPTION = read(os.path.join(here,'README.md'))
+
+LONG_DESCRIPTION = read(os.path.join(here, 'README.md'))
# Want to read in package version number from __version__.py
about = {}
@@ -102,6 +105,10 @@
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
+ 'Programming Language :: Python :: 3.8',
+ 'Programming Language :: Python :: 3.9',
+ 'Programming Language :: Python :: 3.10',
],
keywords='python condor htcondor high-throughput computing utility tool',
packages=find_packages(),