diff --git a/.github/workflows/cibuild.yml b/.github/workflows/cibuild.yml
index 620699b91..1d371fd2f 100644
--- a/.github/workflows/cibuild.yml
+++ b/.github/workflows/cibuild.yml
@@ -13,10 +13,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- - name: Set up Python 3.9
+ - name: Set up Python 3.10
uses: actions/setup-python@v2
with:
- python-version: 3.9
+ python-version: "3.10"
- name: Install tox
run: python -m pip install --upgrade tox
- name: egg-info vos
@@ -28,8 +28,7 @@ jobs:
strategy:
fail-fast: true
matrix:
- #TODO 2.7 fails on GH Actions but cannot be reproduced locally. Disabled for now.
- python-version: ["3.7", "3.8", "3.9", "3.10"]
+ python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"]
package: [vos]
steps:
- name: Checkout code
@@ -55,10 +54,10 @@ jobs:
needs: tests
steps:
- uses: actions/checkout@v2
- - name: Set up Python 3.9
+ - name: Set up Python 3.10
uses: actions/setup-python@v2
with:
- python-version: 3.9
+ python-version: "3.10"
- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@v1
- name: Install tox
diff --git a/vos/intTest/test_basic_cmds.py b/vos/intTest/test_basic_cmds.py
index a36d696ed..a3faf15ff 100644
--- a/vos/intTest/test_basic_cmds.py
+++ b/vos/intTest/test_basic_cmds.py
@@ -1,6 +1,6 @@
from vos.commands import vls, vcp, vmkdir, vrm, vrmdir, vchmod, vmv, vln, vsync
from vos.commands import vtag, vlock
-from six import StringIO
+from io import StringIO
from cadcutils import net
from mock import patch, Mock
import pytest
diff --git a/vos/setup.cfg b/vos/setup.cfg
index e2d0bd26b..7b461947e 100644
--- a/vos/setup.cfg
+++ b/vos/setup.cfg
@@ -50,19 +50,17 @@ edit_on_github = False
github_project = opencadc/vostools
install_requires =
html2text>=2016.5.29
- cadcutils>=1.4.3
- future
+ cadcutils>=1.5.1
aenum
# version should be PEP440 compatible (http://www.python.org/dev/peps/pep-0440)
-version = 3.3.7
+version = 3.4
[options.extras_require]
test =
pytest>=4.6
pytest-cov>=2.5.1
flake8>=3.4.1
- future>=0.16.0
mock>=2.0.0
diff --git a/vos/setup.py b/vos/setup.py
index 4e281df20..11928cf48 100755
--- a/vos/setup.py
+++ b/vos/setup.py
@@ -121,7 +121,6 @@ def run_tests(self):
long_description=readme(),
project_urls={
'Source': 'https://github.com/opencadc/vostools',
- 'Travis CI': 'https://travis-ci.org/opencadc/vostools',
'Issues': 'https://github.com/opencadc/vostools/issues',
'VOSpace Standard': 'http://www.ivoa.net/documents/VOSpace/'
},
diff --git a/vos/test/performance/vofsRandomAccessSeeks.py b/vos/test/performance/vofsRandomAccessSeeks.py
index c8668fe2d..467b1a264 100755
--- a/vos/test/performance/vofsRandomAccessSeeks.py
+++ b/vos/test/performance/vofsRandomAccessSeeks.py
@@ -1,4 +1,71 @@
-#!/usr/bin/env python2.7
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
import os
import optparse
@@ -21,7 +88,7 @@ def parseCmdLine():
help='File to read.' )
Main.opt, args = op.parse_args()
if ( Main.opt.fileName == '-' ):
- print "ERROR: Filename must be provided."
+ print("ERROR: Filename must be provided.")
op.print_help()
exit( -1 )
@@ -30,12 +97,12 @@ def parseCmdLine():
statinfo = os.stat(Main.opt.fileName)
maxValue = ( statinfo.st_size / 1024 ) - Main.opt.size
Main.opt.offsets = " ".join( str(w) for w in \
- random.sample( xrange(maxValue), Main.opt.random) )
- print Main.opt.offsets
+ random.sample( range(maxValue), Main.opt.random) )
+ print(Main.opt.offsets)
else:
for offset in Main.opt.offsets.split():
if ( not offset.isdigit() ):
- print "ERROR: Offsets must be integers"
+ print("ERROR: Offsets must be integers")
op.print_help()
exit( -1 )
@@ -66,7 +133,7 @@ def mainMethod():
timming.append( end - start )
for atime in timming:
- print "{0} ".format( int( atime * 1000000 ) ),
- print
+ print("{0} ".format( int( atime * 1000000 ) )),
+ print('')
Main.mainMethod()
diff --git a/vos/test/scripts/test_lockerrors_int.py b/vos/test/scripts/test_lockerrors_int.py
index 06aba5971..840d433f9 100755
--- a/vos/test/scripts/test_lockerrors_int.py
+++ b/vos/test/scripts/test_lockerrors_int.py
@@ -1,4 +1,70 @@
-#!/usr/bin/env python2.7
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
"""Integration test wrapped in unit test infrastructure.
Expects vospace_ws to be running on localhost, and
@@ -42,21 +108,21 @@ def run_cmd(self, args, print_output=False, use_debug=False, expected_errno=255,
cmd = '%s %s %s %s %s' %(self.time_execution, self.script_run, args, self.use_debug, self.test_cert_param)
if print_output:
- print 'Running [%s]' % cmd
+ print('Running [%s]' % cmd)
try:
p = Popen(cmd, shell=True, stdout=PIPE, stderr=STDOUT)
output = p.communicate()[0]
if print_output:
- print output
+ print(output)
self.assertEquals(p.returncode, expected_errno, 'got returncode %d, expected %d' % (p.returncode, expected_errno))
regex = re.search('NodeLocked', output)
self.assertTrue(regex != None, 'did not find "NodeLocked"' )
- except Exception, e:
- print 'Error running [%s]' % cmd
- print output
+ except Exception as e:
+ print('Error running [%s]' % cmd)
+ print(output)
self.fail(e)
diff --git a/vos/tox.ini b/vos/tox.ini
index 59c47b23f..fe47c45dd 100644
--- a/vos/tox.ini
+++ b/vos/tox.ini
@@ -5,7 +5,7 @@ name = vos
[tox]
envlist =
- py{27,34,35,36,37,38,39}
+ py{37,38,39,310,311}
requires =
pip >= 19.3.1
diff --git a/vos/vos/commands/interrupt_exception.py b/vos/vos/commands/interrupt_exception.py
index f3ddc272f..be248d452 100644
--- a/vos/vos/commands/interrupt_exception.py
+++ b/vos/vos/commands/interrupt_exception.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""A utilities for dealing with CL signal handeling."""
import signal
diff --git a/vos/vos/commands/tests/test_cli.py b/vos/vos/commands/tests/test_cli.py
index 9e2e6fdd7..4b1e34b51 100644
--- a/vos/vos/commands/tests/test_cli.py
+++ b/vos/vos/commands/tests/test_cli.py
@@ -1,10 +1,75 @@
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
import sys
import os
import unittest
-from six import StringIO
+from io import StringIO
from mock import Mock, patch
from vos import commands as cmds
diff --git a/vos/vos/commands/tests/test_vls.py b/vos/vos/commands/tests/test_vls.py
index da678b923..56865c79a 100644
--- a/vos/vos/commands/tests/test_vls.py
+++ b/vos/vos/commands/tests/test_vls.py
@@ -1,9 +1,8 @@
-# # -*- coding: utf-8 -*-
# ***********************************************************************
# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
#
-# (c) 2020. (c) 2020.
+# (c) 2022. (c) 2022.
# Government of Canada Gouvernement du Canada
# National Research Council Conseil national de recherches
# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
@@ -66,13 +65,11 @@
#
# ***********************************************************************
#
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
import sys
import unittest
-from six import StringIO
+from io import StringIO
from mock import Mock, patch, MagicMock, call
from vos import commands
diff --git a/vos/vos/commands/tests/test_vsync.py b/vos/vos/commands/tests/test_vsync.py
index f217ba60a..f4f480486 100644
--- a/vos/vos/commands/tests/test_vsync.py
+++ b/vos/vos/commands/tests/test_vsync.py
@@ -1,9 +1,8 @@
-# # -*- coding: utf-8 -*-
# ***********************************************************************
# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
#
-# (c) 2021. (c) 2021.
+# (c) 2022. (c) 2022.
# Government of Canada Gouvernement du Canada
# National Research Council Conseil national de recherches
# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
@@ -66,8 +65,6 @@
#
# ***********************************************************************
#
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
import tempfile
import os
diff --git a/vos/vos/commands/vcat.py b/vos/vos/commands/vcat.py
index 398430949..efd309683 100755
--- a/vos/vos/commands/vcat.py
+++ b/vos/vos/commands/vcat.py
@@ -1,6 +1,72 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""cat VOSpace DataNode to stdout"""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
import sys
import logging
from ..vos import Client
diff --git a/vos/vos/commands/vchmod.py b/vos/vos/commands/vchmod.py
index e08df3efc..c5e0ff699 100755
--- a/vos/vos/commands/vchmod.py
+++ b/vos/vos/commands/vchmod.py
@@ -1,9 +1,74 @@
-#!python
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""set read/write properties of a node.
"""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
from ..vos import Client
from ..vos import CADC_GMS_PREFIX
from ..commonparser import CommonParser, set_logging_level_from_args,\
diff --git a/vos/vos/commands/vcp.py b/vos/vos/commands/vcp.py
index 7d5b1cf8b..5fd982849 100755
--- a/vos/vos/commands/vcp.py
+++ b/vos/vos/commands/vcp.py
@@ -1,7 +1,72 @@
-#!python
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""copy files vospace to local or local to VOSpace"""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
from .. import md5_cache
from .. import vos
from ..commonparser import CommonParser, set_logging_level_from_args,\
diff --git a/vos/vos/commands/vln.py b/vos/vos/commands/vln.py
index 40217e160..0d405d46b 100755
--- a/vos/vos/commands/vln.py
+++ b/vos/vos/commands/vln.py
@@ -1,6 +1,72 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""link one VOSpace Node to another."""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
from ..commonparser import CommonParser, set_logging_level_from_args, \
exit_on_exception, URI_DESCRIPTION
from .. import vos
diff --git a/vos/vos/commands/vlock.py b/vos/vos/commands/vlock.py
index d18049905..c074f1157 100755
--- a/vos/vos/commands/vlock.py
+++ b/vos/vos/commands/vlock.py
@@ -1,9 +1,75 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""set the islocked property of a node.
A node is locked by setting the islocked property. When a node is
locked, it cannot be copied to, moved or deleted. """
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
import logging
import sys
diff --git a/vos/vos/commands/vls.py b/vos/vos/commands/vls.py
index d8fc3e944..9d430f37b 100755
--- a/vos/vos/commands/vls.py
+++ b/vos/vos/commands/vls.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""Lists information about a VOSpace DataNode or the contents of a
ContainerNode."""
from __future__ import (absolute_import, division, print_function,
diff --git a/vos/vos/commands/vmkdir.py b/vos/vos/commands/vmkdir.py
index 9bfb98ef8..78fe84d0f 100755
--- a/vos/vos/commands/vmkdir.py
+++ b/vos/vos/commands/vmkdir.py
@@ -1,4 +1,71 @@
-#!python
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""Create a directory (ContainerNode) in the VOSpace repository"""
import os
diff --git a/vos/vos/commands/vmv.py b/vos/vos/commands/vmv.py
index 44f3393f3..9a76ef0b7 100755
--- a/vos/vos/commands/vmv.py
+++ b/vos/vos/commands/vmv.py
@@ -1,11 +1,77 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""Move from a VOSpace Node to a new location or rename the Node"""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
from .. import vos
import logging
from ..commonparser import CommonParser, exit_on_exception, \
set_logging_level_from_args, URI_DESCRIPTION
-from six.moves.urllib.parse import urlparse
+from urllib.parse import urlparse
DESCRIPTION = """
move node to newNode, if newNode is a container then move node into newNode.
diff --git a/vos/vos/commands/vrm.py b/vos/vos/commands/vrm.py
index fb091f4b7..a04a1da7f 100755
--- a/vos/vos/commands/vrm.py
+++ b/vos/vos/commands/vrm.py
@@ -1,4 +1,71 @@
-#!python
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""remove a vospace data node, fails if container node or node is locked."""
import logging
from ..commonparser import set_logging_level_from_args, exit_on_exception, \
diff --git a/vos/vos/commands/vrmdir.py b/vos/vos/commands/vrmdir.py
index bacd03321..fec4700b7 100755
--- a/vos/vos/commands/vrmdir.py
+++ b/vos/vos/commands/vrmdir.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""Delete a VOSpace ContainerNode (aka directory)"""
from ..commonparser import CommonParser, set_logging_level_from_args, \
exit_on_exception, URI_DESCRIPTION
diff --git a/vos/vos/commands/vsync.py b/vos/vos/commands/vsync.py
index 3d9661db1..2f328c71c 100755
--- a/vos/vos/commands/vsync.py
+++ b/vos/vos/commands/vsync.py
@@ -1,5 +1,70 @@
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
import os
import sys
diff --git a/vos/vos/commands/vtag.py b/vos/vos/commands/vtag.py
index 7bed779c4..f46d48f13 100755
--- a/vos/vos/commands/vtag.py
+++ b/vos/vos/commands/vtag.py
@@ -1,10 +1,76 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""Tags are annotations on VOSpace Nodes. This module provides set/read/(list)
functions for property(ies) of a node.
The tag system is meant to allow tags, in addition to the standard node
properties. """
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
import pprint
from ..commonparser import CommonParser, set_logging_level_from_args, \
exit_on_exception, URI_DESCRIPTION
diff --git a/vos/vos/commonparser.py b/vos/vos/commonparser.py
index a1e8cc1fd..03f715b48 100644
--- a/vos/vos/commonparser.py
+++ b/vos/vos/commonparser.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""
A common commandline parser for the VOS command line tool set.
"""
diff --git a/vos/vos/logExceptions.py b/vos/vos/logExceptions.py
index 541133f13..b4d5e122d 100644
--- a/vos/vos/logExceptions.py
+++ b/vos/vos/logExceptions.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""
Many of the vos methods are decorated with this expection logger so that
exception messages are displayed.
diff --git a/vos/vos/md5_cache.py b/vos/vos/md5_cache.py
index fb6039945..9499ad26e 100644
--- a/vos/vos/md5_cache.py
+++ b/vos/vos/md5_cache.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""
A cache of MD5 meta data associated with VOSpace transfers.
diff --git a/vos/vos/node_cache.py b/vos/vos/node_cache.py
index bf0b66409..c036276c3 100644
--- a/vos/vos/node_cache.py
+++ b/vos/vos/node_cache.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
""" keep track of vospace nodes that have been already been accessed during
the current session."""
import threading
diff --git a/vos/vos/tests/test_commonparser.py b/vos/vos/tests/test_commonparser.py
index f53c3664e..870898283 100644
--- a/vos/vos/tests/test_commonparser.py
+++ b/vos/vos/tests/test_commonparser.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
import unittest
import sys
import logging
@@ -5,7 +73,7 @@
from vos.commonparser import set_logging_level_from_args, exit_on_exception
from vos.version import version
from mock import patch, Mock
-from six import StringIO
+from io import StringIO
class TestCommonParser(unittest.TestCase):
diff --git a/vos/vos/tests/test_config.py b/vos/vos/tests/test_config.py
index eafe6e4fe..1625c24c1 100644
--- a/vos/vos/tests/test_config.py
+++ b/vos/vos/tests/test_config.py
@@ -1,8 +1,76 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
# Test the vosconfig functionality
from mock import Mock, patch
import warnings
-from vos import vosconfig
+from vos import vosconfig, Connection
import pytest
import tempfile
import os
@@ -14,16 +82,6 @@
@patch('vos.vos.os.path.exists', Mock())
def test_update_config():
- # TODO - for some reason in Python 2.7 the warnings context is not working
- # although the warning is raised in the code.
- # test rename vospace resource
- # with warnings.catch_warnings(record=True) as w:
- # vos.Connection(resource_id='ivo://cadc.nrc.ca/vospace')
- # assert len(w) == 1
- # assert issubclass(w[-1].category, UserWarning)
- # assert 'Deprecated resource id ivo://cadc.nrc.ca/vospace. ' \
- # 'Use ivo://cadc.nrc.ca/vault instead' == str(w[-1].message)
-
# Cause all warnings to always be triggered.
warnings.simplefilter("always")
with patch('vos.vos.open') as open_mock:
diff --git a/vos/vos/tests/test_md5_cache.py b/vos/vos/tests/test_md5_cache.py
index 6a5a152c5..8ffda30e3 100644
--- a/vos/vos/tests/test_md5_cache.py
+++ b/vos/vos/tests/test_md5_cache.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
# Test the NodeCache class
import tempfile
import unittest
@@ -66,7 +134,7 @@ def test_compute_md5(self):
expect_md5.update(b)
cahce_file = tempfile.NamedTemporaryFile()
cache = MD5Cache(cahce_file.name)
- with patch('six.moves.builtins.open',
+ with patch('builtins.open',
mock_open(read_data=b''.join(buffer))):
self.assertEqual(expect_md5.hexdigest(),
cache.compute_md5('fakefile', 4))
diff --git a/vos/vos/tests/test_node_cache.py b/vos/vos/tests/test_node_cache.py
index 4bcde484e..d17af3728 100644
--- a/vos/vos/tests/test_node_cache.py
+++ b/vos/vos/tests/test_node_cache.py
@@ -1,5 +1,71 @@
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
import unittest
from vos.node_cache import NodeCache
diff --git a/vos/vos/tests/test_vofile.py b/vos/vos/tests/test_vofile.py
index 0ba6c9f9d..976f405ab 100644
--- a/vos/vos/tests/test_vofile.py
+++ b/vos/vos/tests/test_vofile.py
@@ -1,5 +1,73 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
# Test the vos module
-from six.moves import builtins
+import builtins
import requests
import unittest
from mock import Mock, MagicMock, patch
@@ -184,9 +252,9 @@ def test_multiple_urls(self):
with patch('vos.vos.net.ws.Session.send',
Mock(side_effect=self.responses)):
vofile.read()
- assert(vofile.url == transfer_urls[0])
- assert(vofile.urlIndex == 0)
- assert(len(vofile.URLs) == 3)
+ assert (vofile.url == transfer_urls[0])
+ assert (vofile.urlIndex == 0)
+ assert (len(vofile.URLs) == 3)
# test first url busy
self.responses = [mock_resp_503, mock_resp_200]
@@ -194,9 +262,9 @@ def test_multiple_urls(self):
with patch('vos.vos.net.ws.Session.send',
Mock(side_effect=self.responses)):
vofile.read()
- assert(vofile.url == transfer_urls[1])
- assert(vofile.urlIndex == 1)
- assert(len(vofile.URLs) == 3)
+ assert (vofile.url == transfer_urls[1])
+ assert (vofile.urlIndex == 1)
+ assert (len(vofile.URLs) == 3)
# test first url error - ignored internally, second url busy,
# third url works
@@ -207,9 +275,9 @@ def test_multiple_urls(self):
with patch('vos.vos.net.ws.requests.Session.send',
Mock(side_effect=self.responses)):
vofile.read()
- assert(vofile.url == transfer_urls[2])
- assert(vofile.urlIndex == 2)
- assert(len(vofile.URLs) == 3)
+ assert (vofile.url == transfer_urls[2])
+ assert (vofile.urlIndex == 2)
+ assert (len(vofile.URLs) == 3)
# all urls busy first time, first one successful second time
self.responses = [mock_resp_503, mock_resp_503,
@@ -218,9 +286,9 @@ def test_multiple_urls(self):
with patch('vos.vos.net.ws.requests.Session.send',
Mock(side_effect=self.responses)):
vofile.read()
- assert(vofile.url == transfer_urls[2])
- assert(vofile.urlIndex == 2)
- assert(len(vofile.URLs) == 3)
+ assert (vofile.url == transfer_urls[2])
+ assert (vofile.urlIndex == 2)
+ assert (len(vofile.URLs) == 3)
@unittest.skipIf(skipTests, "Individual tests")
@patch.object(Connection, 'get_connection')
diff --git a/vos/vos/tests/test_vos.py b/vos/vos/tests/test_vos.py
index 97938fa4c..b12a27266 100644
--- a/vos/vos/tests/test_vos.py
+++ b/vos/vos/tests/test_vos.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
# Test the vos Client class
import os
@@ -8,9 +76,8 @@
from mock import Mock, patch, MagicMock, call
from vos import Client, Connection, Node, VOFile, vosconfig
from vos import vos as vos
-from six.moves.urllib.parse import urlparse
-from six.moves import urllib
-from six import BytesIO
+from urllib.parse import urlparse, unquote
+from io import BytesIO
import hashlib
import tempfile
from cadcutils import exceptions
@@ -60,19 +127,19 @@ def test_get_node_url():
client._endpoints[resource_id].conn.ws_client._session = session_mock
equery = urlparse(client.get_node_url('vos://cadc.nrc.ca!vospace/auser',
sort=vos.SortNodeProperty.DATE)).query
- assert(urllib.parse.unquote(equery) ==
- 'sort={}'.format(vos.SortNodeProperty.DATE.value))
+ assert (unquote(equery) ==
+ 'sort={}'.format(vos.SortNodeProperty.DATE.value))
equery = urlparse(client.get_node_url('vos://cadc.nrc.ca!vospace/auser',
sort=vos.SortNodeProperty.LENGTH, order='asc')).query
- args = urllib.parse.unquote(equery).split('&')
- assert(2 == len(args))
- assert('order=asc' in args)
- assert('sort={}'.format(vos.SortNodeProperty.LENGTH.value) in args)
+ args = unquote(equery).split('&')
+ assert (2 == len(args))
+ assert ('order=asc' in args)
+ assert ('sort={}'.format(vos.SortNodeProperty.LENGTH.value) in args)
equery = urlparse(client.get_node_url('vos://cadc.nrc.ca!vospace/auser',
order='desc')).query
- assert('order=desc' == urllib.parse.unquote(equery))
+ assert ('order=desc' == unquote(equery))
# test header view
transfer_url = 'https://some.location/some/headers'
diff --git a/vos/vos/vos.py b/vos/vos/vos.py
index fd22e4d5b..845b78b37 100644
--- a/vos/vos/vos.py
+++ b/vos/vos/vos.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
# ***********************************************************************
# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
@@ -72,9 +71,7 @@
Connections to VOSpace are made using a SSL X509 certificat which is
stored in a .pem file.
"""
-from __future__ import (absolute_import, division, print_function,
- unicode_literals)
-from future.utils import bytes_to_native_str
+
import warnings
import copy
import errno
@@ -98,7 +95,6 @@
import sys
import time
import urllib
-import six
from xml.etree import ElementTree
from copy import deepcopy
from .node_cache import NodeCache
@@ -108,11 +104,10 @@
from .version import version
except ImportError:
version = "unknown"
-from cadcutils import net, exceptions
+from cadcutils import net, exceptions, util
from . import md5_cache
-urlparse = six.moves.urllib.parse.urlparse
-parse_qs = six.moves.urllib.parse.parse_qs
+from urllib.parse import urlparse, parse_qs
logger = logging.getLogger('vos')
logger.setLevel(logging.ERROR)
@@ -151,6 +146,9 @@
'token': 'vos://cadc.nrc.ca~vospace/CADC/std/Auth#token-1.0'
}
+SUPPORTED_SERVER_VERSIONS = {'vault': '1.1',
+ 'cavern': '0.4'}
+
# sorting-related uris
class SortNodeProperty(Enum):
@@ -222,10 +220,6 @@ def __init__(self, vospace_certfile=None, vospace_token=None,
attempt to find user/password combination in the .netrc file is made
before the connection is downgraded to 'anonymous'
"""
- if resource_id == 'ivo://cadc.nrc.ca/vospace':
- warnings.warn(
- 'Deprecated resource id {}. Use ivo://cadc.nrc.ca/vault '
- 'instead'.format(resource_id))
if http_debug is not False:
warnings.warn(
"Connection object no longer uses http_debug setting.",
@@ -269,7 +263,8 @@ def __init__(self, vospace_certfile=None, vospace_token=None,
host=os.getenv('VOSPACE_WEBSERVICE',
None),
session_headers=session_headers,
- insecure=insecure)
+ insecure=insecure,
+ server_versions=SUPPORTED_SERVER_VERSIONS)
EndPoints.subject = self.subject
@property
@@ -340,8 +335,9 @@ def __init__(self, node, node_type=None, properties=None, subnodes=None):
node_type = Node.DATA_NODE
if isinstance(node, bytes):
- node = bytes_to_native_str(node)
- if isinstance(node, six.text_type) or isinstance(node, str):
+ node = ElementTree.fromstring(node)
+
+ if isinstance(node, str):
node = self.create(node, node_type, properties, subnodes=subnodes)
if node is None:
@@ -1467,6 +1463,8 @@ def __init__(self, vospace_certfile=None,
:
"""
+ util.check_version(version=version)
+
if os.getenv('VOSPACE_WEBSERVICE', None):
msg = 'Using custom host: env.VOSPACE_WEBSERVICE={}'.\
format(os.getenv('VOSPACE_WEBSERVICE', None))
@@ -1562,8 +1560,7 @@ def glob1(self, dirname, pattern):
"""
if not dirname:
dirname = self.rootNode
- if isinstance(pattern, six.string_types) and\
- not isinstance(dirname, six.string_types):
+ if isinstance(pattern, str) and not isinstance(dirname, str):
dirname = str(dirname).encode(
sys.getfilesystemencoding() or sys.getdefaultencoding())
try:
diff --git a/vos/vos/vosconfig.py b/vos/vos/vosconfig.py
index e18c2af69..aa2295493 100644
--- a/vos/vos/vosconfig.py
+++ b/vos/vos/vosconfig.py
@@ -1,3 +1,71 @@
+# ***********************************************************************
+# ****************** CANADIAN ASTRONOMY DATA CENTRE *******************
+# ************* CENTRE CANADIEN DE DONNÉES ASTRONOMIQUES **************
+#
+# (c) 2022. (c) 2022.
+# Government of Canada Gouvernement du Canada
+# National Research Council Conseil national de recherches
+# Ottawa, Canada, K1A 0R6 Ottawa, Canada, K1A 0R6
+# All rights reserved Tous droits réservés
+#
+# NRC disclaims any warranties, Le CNRC dénie toute garantie
+# expressed, implied, or énoncée, implicite ou légale,
+# statutory, of any kind with de quelque nature que ce
+# respect to the software, soit, concernant le logiciel,
+# including without limitation y compris sans restriction
+# any warranty of merchantability toute garantie de valeur
+# or fitness for a particular marchande ou de pertinence
+# purpose. NRC shall not be pour un usage particulier.
+# liable in any event for any Le CNRC ne pourra en aucun cas
+# damages, whether direct or être tenu responsable de tout
+# indirect, special or general, dommage, direct ou indirect,
+# consequential or incidental, particulier ou général,
+# arising from the use of the accessoire ou fortuit, résultant
+# software. Neither the name de l'utilisation du logiciel. Ni
+# of the National Research le nom du Conseil National de
+# Council of Canada nor the Recherches du Canada ni les noms
+# names of its contributors may de ses participants ne peuvent
+# be used to endorse or promote être utilisés pour approuver ou
+# products derived from this promouvoir les produits dérivés
+# software without specific prior de ce logiciel sans autorisation
+# written permission. préalable et particulière
+# par écrit.
+#
+# This file is part of the Ce fichier fait partie du projet
+# OpenCADC project. OpenCADC.
+#
+# OpenCADC is free software: OpenCADC est un logiciel libre ;
+# you can redistribute it and/or vous pouvez le redistribuer ou le
+# modify it under the terms of modifier suivant les termes de
+# the GNU Affero General Public la “GNU Affero General Public
+# License as published by the License” telle que publiée
+# Free Software Foundation, par la Free Software Foundation
+# either version 3 of the : soit la version 3 de cette
+# License, or (at your option) licence, soit (à votre gré)
+# any later version. toute version ultérieure.
+#
+# OpenCADC is distributed in the OpenCADC est distribué
+# hope that it will be useful, dans l’espoir qu’il vous
+# but WITHOUT ANY WARRANTY; sera utile, mais SANS AUCUNE
+# without even the implied GARANTIE : sans même la garantie
+# warranty of MERCHANTABILITY implicite de COMMERCIALISABILITÉ
+# or FITNESS FOR A PARTICULAR ni d’ADÉQUATION À UN OBJECTIF
+# PURPOSE. See the GNU Affero PARTICULIER. Consultez la Licence
+# General Public License for Générale Publique GNU Affero
+# more details. pour plus de détails.
+#
+# You should have received Vous devriez avoir reçu une
+# a copy of the GNU Affero copie de la Licence Générale
+# General Public License along Publique GNU Affero avec
+# with OpenCADC. If not, see OpenCADC ; si ce n’est
+# . pas le cas, consultez :
+# .
+#
+# $Revision: 4 $
+#
+# ***********************************************************************
+#
+
"""
Custom config class that supports multiple resource IDs
"""