Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions news/remove_six.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
**Added:**

* <news item>

**Changed:**

* <news item>

**Deprecated:**

* <news item>

**Removed:**

* Six dependency and py2 support

**Fixed:**

* <news item>

**Security:**

* <news item>
1 change: 0 additions & 1 deletion requirements/conda.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
diffpy.structure
six
1 change: 0 additions & 1 deletion requirements/pip.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
diffpy.structure
six
36 changes: 17 additions & 19 deletions src/diffpy/pdffit2/pdffit.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,6 @@
import itertools
import numbers

import six

# Load pdffit2 and output modules to the current namespace.
# Note that "import diffpy.pdffit2.output as output" would
# crash with AttributeError when executed during imports of
Expand Down Expand Up @@ -213,7 +211,7 @@ def read_data(self, data, stype, qmax, qdamp):

Raises: IOError when the file cannot be read from disk
"""
pdffit2.read_data(self._handle, data, six.b(stype), qmax, qdamp)
pdffit2.read_data(self._handle, data, stype.encode(), qmax, qdamp)
self.data_files.append(data)
return

Expand All @@ -228,7 +226,7 @@ def read_data_string(self, data, stype, qmax, qdamp, name=""):
qdamp -- instrumental Q-resolution factor
name -- tag with which to label data
"""
pdffit2.read_data_string(self._handle, data, six.b(stype), qmax, qdamp, name)
pdffit2.read_data_string(self._handle, data, stype.encode(), qmax, qdamp, name)
name = data
self.data_files.append(name)
return
Expand All @@ -249,7 +247,7 @@ def read_data_lists(self, stype, qmax, qdamp, r_data, Gr_data, dGr_data=None, na

Raises: ValueError when the data lists are of different length
"""
pdffit2.read_data_arrays(self._handle, six.b(stype), qmax, qdamp, r_data, Gr_data, dGr_data, name)
pdffit2.read_data_arrays(self._handle, stype.encode(), qmax, qdamp, r_data, Gr_data, dGr_data, name)
self.data_files.append(name)
return

Expand Down Expand Up @@ -290,7 +288,7 @@ def alloc(self, stype, qmax, qdamp, rmin, rmax, bin):
ValueError for bad input values
pdffit.unassignedError when no structure has been loaded
"""
pdffit2.alloc(self._handle, six.b(stype), qmax, qdamp, rmin, rmax, bin)
pdffit2.alloc(self._handle, stype.encode(), qmax, qdamp, rmin, rmax, bin)
return

def calc(self):
Expand Down Expand Up @@ -495,7 +493,7 @@ def constrain(self, var, par, fcon=None):
if fcon:
fc = self.FCON[fcon]
pdffit2.constrain_int(self._handle, var_ref, varnc, par, fc)
elif isinstance(par, six.string_types):
elif isinstance(par, str):
pdffit2.constrain_str(self._handle, var_ref, varnc, par)
else:
pdffit2.constrain_int(self._handle, var_ref, varnc, par)
Expand Down Expand Up @@ -674,7 +672,7 @@ def fixpar(self, par):

Raises: pdffit.unassignedError when parameter has not been assigned
"""
if isinstance(par, six.string_types) and par.upper() in self.selalias:
if isinstance(par, str) and par.upper() in self.selalias:
par = self.selalias[par.upper()]
pdffit2.fixpar(self._handle, par)
return
Expand All @@ -687,7 +685,7 @@ def freepar(self, par):

Raises: pdffit.unassignedError when parameter has not been assigned
"""
if isinstance(par, six.string_types) and par.upper() in self.selalias:
if isinstance(par, str) and par.upper() in self.selalias:
par = self.selalias[par.upper()]
pdffit2.freepar(self._handle, par)
return
Expand Down Expand Up @@ -722,7 +720,7 @@ def psel(self, ip):

Raises: pdffit2.unassignedError if selected phase does not exist
"""
if isinstance(ip, six.string_types) and ip.upper() in self.selalias:
if isinstance(ip, str) and ip.upper() in self.selalias:
ip = self.selalias[ip.upper()]
pdffit2.psel(self._handle, ip)
return
Expand All @@ -734,7 +732,7 @@ def pdesel(self, ip):

Raises: pdffit2.unassignedError if selected phase does not exist
"""
if isinstance(ip, six.string_types) and ip.upper() in self.selalias:
if isinstance(ip, str) and ip.upper() in self.selalias:
ip = self.selalias[ip.upper()]
pdffit2.pdesel(self._handle, ip)
return
Expand All @@ -753,7 +751,7 @@ def selectAtomType(self, ip, ijchar, symbol, flag):
pdffit2.unassignedError if selected phase does not exist
ValueError for invalid value of ijchar
"""
pdffit2.selectAtomType(self._handle, ip, six.b(ijchar), symbol, flag)
pdffit2.selectAtomType(self._handle, ip, ijchar.encode(), symbol, flag)
return

def selectAtomIndex(self, ip, ijchar, aidx, flag):
Expand All @@ -770,7 +768,7 @@ def selectAtomIndex(self, ip, ijchar, aidx, flag):
pdffit2.unassignedError if selected phase does not exist
ValueError if atom index or ijchar are invalid
"""
pdffit2.selectAtomIndex(self._handle, ip, six.b(ijchar), aidx, flag)
pdffit2.selectAtomIndex(self._handle, ip, ijchar.encode(), aidx, flag)
return

def selectAll(self, ip, ijchar):
Expand All @@ -784,7 +782,7 @@ def selectAll(self, ip, ijchar):
pdffit2.unassignedError if selected phase does not exist
ValueError if ijchar is invalid
"""
pdffit2.selectAll(self._handle, ip, six.b(ijchar))
pdffit2.selectAll(self._handle, ip, ijchar.encode())
return

def selectNone(self, ip, ijchar):
Expand All @@ -798,7 +796,7 @@ def selectNone(self, ip, ijchar):
pdffit2.unassignedError if selected phase does not exist
ValueError if ijchar is invalid
"""
pdffit2.selectNone(self._handle, ip, six.b(ijchar))
pdffit2.selectNone(self._handle, ip, ijchar.encode())
return

def bang(self, i, j, k):
Expand Down Expand Up @@ -963,7 +961,7 @@ def get_scat_string(self, stype):

Returns: string with all scattering factors.
"""
return pdffit2.get_scat_string(self._handle, six.b(stype))
return pdffit2.get_scat_string(self._handle, stype.encode())

def get_scat(self, stype, element):
"""get_scat(stype, element) --> Get active scattering factor for
Expand All @@ -979,7 +977,7 @@ def get_scat(self, stype, element):
Raises:
ValueError if element is not known.
"""
rv = pdffit2.get_scat(self._handle, six.b(stype), element)
rv = pdffit2.get_scat(self._handle, stype.encode(), element)
return rv

def set_scat(self, stype, element, value):
Expand All @@ -999,7 +997,7 @@ def set_scat(self, stype, element, value):

See also reset_scat, get_scat.
"""
pdffit2.set_scat(self._handle, six.b(stype), element, value)
pdffit2.set_scat(self._handle, stype.encode(), element, value)
return

def reset_scat(self, element):
Expand Down Expand Up @@ -1074,7 +1072,7 @@ def lat(n):
6 <==> 'gamma'
"""
LatParams = {"a": 1, "b": 2, "c": 3, "alpha": 4, "beta": 5, "gamma": 6}
if isinstance(n, six.string_types):
if isinstance(n, str):
n = LatParams[n]
return "lat(%i)" % n

Expand Down
4 changes: 2 additions & 2 deletions tests/conftest.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import io
import json
from pathlib import Path

import pytest
import six

import diffpy.pdffit2
import diffpy.pdffit2.output # assuming this is the correct import path
Expand Down Expand Up @@ -39,7 +39,7 @@ def capture_output():

def _capture(f, *args, **kwargs):
savestdout = diffpy.pdffit2.output.stdout
fp = six.StringIO()
fp = io.StringIO()
diffpy.pdffit2.redirect_stdout(fp)
try:
f(*args, **kwargs)
Expand Down
Loading