Merge branch 'master' into devel
Conflicts: CHANGES.txt docs/source/conf.py docs/source/roadmap.rst glymur/version.py
This commit is contained in:
commit
9ae8e8bd2f
7 changed files with 14 additions and 9 deletions
|
|
@ -1,6 +1,6 @@
|
||||||
Sep 25, 2014 - -v0.7.0 Added __getitem__, __setitem__ support.
|
Oct 01, 2014 - v0.7.0 Added array-style slicing.
|
||||||
|
|
||||||
Mar 06, 2014 - Added Cinema2K, Cinema4K write support.
|
August 03, 2014 - v0.6.0 Added Cinema2K, Cinema4K write support.
|
||||||
Changed constructor for ChannelDefinition box. Removed support
|
Changed constructor for ChannelDefinition box. Removed support
|
||||||
for Python 2.6. Added write support for JP2 UUID, DataEntryURL,
|
for Python 2.6. Added write support for JP2 UUID, DataEntryURL,
|
||||||
Palette and Component Mapping boxes, JPX Association, NumberList
|
Palette and Component Mapping boxes, JPX Association, NumberList
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ copyright = u'2013, John Evans'
|
||||||
# The short X.Y version.
|
# The short X.Y version.
|
||||||
version = '0.7'
|
version = '0.7'
|
||||||
# The full version, including alpha/beta/rc tags.
|
# The full version, including alpha/beta/rc tags.
|
||||||
release = '0.7.0rc1'
|
release = '0.7.0'
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||||
# for a list of supported languages.
|
# for a list of supported languages.
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,10 @@
|
||||||
Platforms Tested (0.7.0 release only)
|
Platforms Tested (0.7.0 release only)
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
* Linux Mint 17 / Python 3.4.0 and 2.7.6 / OpenJPEG 2.1.0 and 1.3.0
|
* Linux Mint 17 / Python 3.4.0 and 2.7.6 / OpenJPEG 2.1.0 and 1.3.0
|
||||||
* MacOS 10.6.8 / MacPorts / Python 3.4.1, 3.3.5,and 2.7.8
|
* MacOS 10.6.8 / MacPorts Python 3.4.1, 3.3.5,and 2.7.8 / OpenJPEG 2.1.0
|
||||||
* CentOS 6.5 / Anaconda Python 3.4.1 / OpenJPEG 1.3.0
|
* CentOS 6.5 / Anaconda Python 3.4.1 / OpenJPEG 1.3.0
|
||||||
|
* Fedora 20 i386 / Python 2.7.5 and 3.3.2 / OpenJPEG 1.5.1
|
||||||
|
* Windows 7 32bit / Anaconda Python 2.7.6 and 3.4.1 / OpenJPEG 2.1.0
|
||||||
|
|
||||||
------------
|
------------
|
||||||
Known Issues
|
Known Issues
|
||||||
|
|
|
||||||
|
|
@ -772,7 +772,7 @@ class Jp2k(Jp2kBox):
|
||||||
# Should have a slice object where start = stop = step = None
|
# Should have a slice object where start = stop = step = None
|
||||||
self.write(data)
|
self.write(data)
|
||||||
else:
|
else:
|
||||||
msg = "Images currently must be written entirely at once."
|
msg = "Partial write operations are currently not allowed."
|
||||||
raise TypeError(msg)
|
raise TypeError(msg)
|
||||||
|
|
||||||
def __getitem__(self, pargs):
|
def __getitem__(self, pargs):
|
||||||
|
|
@ -832,9 +832,11 @@ class Jp2k(Jp2kBox):
|
||||||
# one of them.
|
# one of them.
|
||||||
step = rows_step
|
step = rows_step
|
||||||
|
|
||||||
if np.log2(step) != np.floor(np.log2(step)):
|
# Check if the step size is a power of 2.
|
||||||
|
if np.abs(np.log2(step) - np.round(np.log2(step))) > 1e-6:
|
||||||
msg = "Row and column strides must be powers of 2."
|
msg = "Row and column strides must be powers of 2."
|
||||||
raise IndexError(msg)
|
raise IndexError(msg)
|
||||||
|
rlevel = np.int(np.round(np.log2(step)))
|
||||||
|
|
||||||
if rows.start is None:
|
if rows.start is None:
|
||||||
rows_start = 0
|
rows_start = 0
|
||||||
|
|
@ -857,7 +859,7 @@ class Jp2k(Jp2kBox):
|
||||||
cols_stop = cols.stop
|
cols_stop = cols.stop
|
||||||
|
|
||||||
area = (rows_start, cols_start, rows_stop, cols_stop)
|
area = (rows_start, cols_start, rows_stop, cols_stop)
|
||||||
data = self.read(area=area, rlevel=np.int(np.log2(step)))
|
data = self.read(area=area, rlevel=rlevel)
|
||||||
if len(pargs) == 2:
|
if len(pargs) == 2:
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -71,6 +71,7 @@ class TestSuite(unittest.TestCase):
|
||||||
Jp2k(self.jp2file)
|
Jp2k(self.jp2file)
|
||||||
|
|
||||||
@unittest.skipIf(WARNING_INFRASTRUCTURE_ISSUE, WARNING_INFRASTRUCTURE_MSG)
|
@unittest.skipIf(WARNING_INFRASTRUCTURE_ISSUE, WARNING_INFRASTRUCTURE_MSG)
|
||||||
|
@unittest.skipIf(os.name == "nt", 'named temporary file issue on windows')
|
||||||
def test_xdg_env_config_file_is_bad(self):
|
def test_xdg_env_config_file_is_bad(self):
|
||||||
"""A non-existant library location should be rejected."""
|
"""A non-existant library location should be rejected."""
|
||||||
with tempfile.TemporaryDirectory() as tdir:
|
with tempfile.TemporaryDirectory() as tdir:
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ from .lib import openjp2 as opj2
|
||||||
|
|
||||||
# Do not change the format of this next line! Doing so risks breaking
|
# Do not change the format of this next line! Doing so risks breaking
|
||||||
# setup.py
|
# setup.py
|
||||||
version = "0.7.0rc1"
|
version = "0.7.0"
|
||||||
_sv = LooseVersion(version)
|
_sv = LooseVersion(version)
|
||||||
version_tuple = _sv.version
|
version_tuple = _sv.version
|
||||||
|
|
||||||
|
|
|
||||||
2
setup.py
2
setup.py
|
|
@ -3,7 +3,7 @@ import os
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
kwargs = {'name': 'glymur',
|
kwargs = {'name': 'Glymur',
|
||||||
'description': 'Tools for accessing JPEG2000 files',
|
'description': 'Tools for accessing JPEG2000 files',
|
||||||
'long_description': open('README.md').read(),
|
'long_description': open('README.md').read(),
|
||||||
'author': 'John Evans',
|
'author': 'John Evans',
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue