Skip to content

Commit

Permalink
pypi-nibabel: Autospec creation for update from version 1 to version …
Browse files Browse the repository at this point in the history
…3.2.1

Alexandre Gramfort (13):
      ENH : adding support for some FreeSurfer files
      STY: missing ending line
      ENH : adding freesurfer to setup.py
      ENH : adding nibabel.freesurfer.tests to setup.py
      ENH: using nose.assert_true
      ENH : removing freesurfer.io.read_scalar_data now that MGH format is properly handled
      FIX : fix the read_annot when parcellation has missing values and orig_ids=False.
      FIX : handle versions of fsaverage
      FIX : dtype pb with annot on numpy 1.5.1
      add test + misc
      address comments
      address comments
      don't count warnings

Anibal Sólon (11):
      make sure cov is installed
      pytest port
      drop the nose
      finish porting gifti module tests to pytest
      make sure cov is installed
      test script condition
      reintroduce nosetests into matrix
      remove unnecessary dependency
      pytest is already tested
      nose test inclusions
      windows breaklines..?

Ariel Rokem (27):
      BF: Use newer call to frombytes, replacing fromstring.
      PEP8
      Add pillow to dependencies, add old pillow to test with old pydicom.
      Test with PIL on old Python.
      Compatibility with older versions of PIL that don't have frombytes.
      Revert back to older pillow, since PIL is a pill.
      TST: If a file doesn't exist, we want an informative error.
      RF: Add testing for file existence up front.
      TST: Use IOError for Python 2 support.
      Use FileNotFoundError. Implement in py3k for Python 2 compatibility.
      PEP8
      TST: Add testing on Python 3.5 on Appveyor.
      Explicitly create a conda environment for the test, specify Python version.
      Separate things out a bit, set always-yes for conda.
      Test on Python 3.5 with 32 architecture, to see if that matters.
      TST: Make sure that img.__getitem__ exception throws the right error.
      RF: Usually indexing is done with an indexing item.
      TST: Add explanatory comment.
      RF: Make idx a positional argument.
      Fix in coordinate_systems tutorial
      RF: Circumvents a deprecation warning from `np.fromstring`
      RF: fromstring => frombuffer in externals.netcdf.
      RF: fromstring => frombuffer in gifti/cifti2
      RF: fromstring => frombuffer.
      BF: Use a writeable bytearray for the header data.
      NF: Implement a `readinto` method for Opener.
      Don't refcheck on this resize, to avoid errors

B. Nolan Nichols (7):
      updated image_orient_patient function
      few updates to naming conventions for edicom sequences - e.g., PixelMeasuresSequence
      instantiate superclass in MultiframeWrapper __init__
      added is_edicom flag
      fixed sop class comparison
      PL: updated docstring quotes and other recommended changes
      RF+TST: updated multiframe error handling and tests

Bago Amirbekian (4):
      BF - fix RGB read issue + test
      TEST - set imdtype with code+npt
      TEST - added test for set_qform and set_sform
      BF - only check dtype min-max is clip is needed

Basile Pinsard (5):
      fix decimal rescale values causing Decimal data frame
      adding comment about float casting
      fix endian value in gifti
      fix b64encoding for no newline in outputs
      fixes + backcompat test

Ben Cipollini (144):
      Add an 'axis' parameter to concat_images, plus two tests.
      Try again, this time with lists and more tests...
      Add greater coverage of different shapes.
      Make this work for all 3D and 4D combinations possible, across all axes possible.  Test extensively.
      Allow mixed files and objects.
      Improve efficiency: load img0 once, del reference, and don't check affine on first image.
      Add a final comment.
      Code reorganization, comment editing.
      Remove 3D/4D special-case code.
      Fix broadcasting bug (img1.shape == (1,2,3), img2.shape=(1,2,1), axis=None would broadcast rather than error)
      Similar bug in axis=int pathway, due to np.concatenate "smartness".
      Test 2D - 5D; remove some tests to increase speed.
      Convert exceptions to string.
      Remove default argument.
      Small code review tweaks.
      Fix for #324 - use consistent syntax for have_scipy.
      Change idioms for selecting the 2nd output arg.
      Simplify idioms, delete unnecessary 'global' definition.
      Linting nifti1.py
      Allow classes to register extensions with opener functions; use this for .mgz. Remove .mgz-specific logic from BinOpener, and deprecate.
      Use Opener (which contains .mgz) instead of BinOpener (which is no longer needed).
      Move decorator to ImageOpener, use ImageOpener.
      register_extension => register_ext_from_image
      Add simple tests for adding a new file association.
      Add test for BinOpener deprecation.
      Tweak docstrings / parameter name.
      New interface: suppress_warnings, clear_and_catch_warnings, and error_warnings.
      Unlike numpy, default to record=True (this is what we had before).
      Add deprecation tests
      Fixing test failures.
      Deprecate the use of class_map and ext_map.
      Migrating imageclasses, away from IMAGE_MAP
      Improve error handling, efficiency, and search more broadly over header extensions.
      Modify save, remove vestigates of class_map / ext_map
      Code cleanup after self code review, fix for Python 3 'filter' issue.
      Remove references to BinOpener
      Linting, cleaning up logic.
      Adding tests for loading each image type.
      Add back analyze header tests.
      sniff_size => sizeof_hdr
      Simplify is_image test.
      RF: getArraysFromIntent => get_arrays_from_intent
      RF: make meta, numDA, and labeltable into properties.
      TST: Add LabelTable test, test cleanup
      Add get_/set_ function deprecations and deprecation tests.
      get_metadata => metadata
      get_rgba => rgba
      TST: Add tests for darrays / numDA
      BF: can't use assert_raises as context (py2.6)
      Add tests for rgba, clean code.
      Check NumberofDataArrays, warn only if it's wrong.
      Add tests, change print error to ValueError, test it
      ValueError=>TypeError
      Tweak error message, add all TypeError tests, localize properly.
      Make sure xml is encoded as utf-8
      RF: convert xml code to use xml library.
      Move to XmlSerializable interface.
      RF: add thin layer around xml.etree.ElementTree and share XmlSerializable
      RF: remove data_tag
      deprecate gifti.data_tag
      deprecate (not delete) to_xml_start, to_xml_end
      RF: Create abstract FileBasedImage / FileBasedHeader classes.
      RF: combine BaseHeader/Image with FileBasedHeader/Image.
      RF: Header=>SpatialHeader
      get_header => header; deprecate get_header
      Fix filebasedimage docstring.
      basestring => six.string_types
      Remove any mention of affine or dataobj from FileBasedImage
      make from_image an abstract method
      Syncing up with code changes to spatialimages.py that occurred while I was doing this PR.
      Make Gifti extend FileBasedImage, implement from_file_obj, to_file_obj.
      Deprecate giftiio
      STY: Ignore output of coverage --html
      Make GIFTI call superclass __init__
      Code cleanup for @effigies code review.
      xmlutils.py => xmlbasedimages.py
      Base GiftiImage on XmlBasedImage
      Use gifti's to_file_map as XmlBasedImage's default implementation.
      Create a new XmlImageParser abstract class, which must be implemented and attached to each XmlBasedImage subclass.
      Implement GiftiImageParser, stamp on GiftiImage
      Fix: GiftiImage should use get_/set_filename
      Properly deprecate Outputter, parse_gifti_file
      BF: re-implement buffer size; makes parsing faster!
      TST: Add parse_gifti_fast deprecation tests (and fix old deprecation tests)
      Use verbose=1 instead of global DEBUG_PRINT flag
      STY: linting parse_gifti_fast
      STY, DOC: linting, documentation.
      Allow buffer_size=None, to avoid setting explicitly.
      FIX: xmlbasedimages
      Remove XmlBasedImage, xmlbasedimages.py=>xmlutils.py
      Deprecate (not delete) Outputter.initialize.
      Match previous interface for Outputter, add back minimal docstring.
      DOC: Add six copyright (#375)
      DOC: fix openhub.net badge (#378), prevent overflow of sidebar content.
      DOC: change URL to numpy docstring style guide (partial fix for #376)
      DOC: include all copyright information in greyed box.
      BF: Fix #362 using buffered gzip read.
      TST: add image tests in large image test.
      TST: Add a runif_extra_has decorator.
      DOC: updates for code review.
      BF: Only define code change in Py3.5.0; only use if needed.
      TST: Fix logic to check test values, use ones instead of zeros (zeros returned data read/copy fails).
      STY: code changes per code review.
      DOC: add documentation of advanced testing.
      STY: autopep8 on source code.
      STY: autopep8 on test code.
      STY: autoflake on source code.
      STY: autoflake on test files.
      update tox
      STY: flake8 manual fixes
      BF: fix bug in mriutils use of __all__
      STY: manual fixes to autopep8
      TST: add flake8 of core nibabel code to TravisCI
      TST: remove unnecesary checks, document necessary checks
      BF: files must be makeable (they're made!) for this test.
      save conversion logic is not as strong as needed (should really use maybe_is_image). Use some try...catch to safeguard.
      Localize Cifti to /cifti; use nib.load/save
      ENH: add xmlutils.XmlParser
      Use _to_xml_element, snake_case properties, remove numXXX props, never return empty when xml requested.
      Use assert_equal(a,b) instead of assert_true(a==b)
      fix: move intent_codes.
      fix: no xmlimage
      STY: pep8 updates
      Add a write_morph_data function.
      Add a write_morph_data function.
      cifti=>cifti2, Cifti=>Cifti2
      FIX: Take care of byte vs. string / BytesIO vs. StringIO encodings for Python 3.
      deprecation tests should actually test for warnings.
      data arrays created via constructor are malformed; create via from_array.
      Do not declare class variables as types; they mask failure to set instance-level variables.
      make num_dim a read-only property
      STY: fix up pep8 failures.
      TST: add gifti string and MetaData tests.
      Add a write_morph_data function.
      BF: files must be makeable (they're made!) for this test.
      save conversion logic is not as strong as needed (should really use maybe_is_image). Use some try...catch to safeguard.
      Localize Cifti to /cifti; use nib.load/save
      Use _to_xml_element, snake_case properties, remove numXXX props, never return empty when xml requested.
      Use assert_equal(a,b) instead of assert_true(a==b)
      fix: move intent_codes.
      fix: no xmlimage
      STY: pep8 updates
      cifti=>cifti2, Cifti=>Cifti2
      FIX: Take care of byte vs. string / BytesIO vs. StringIO encodings for Python 3.

Benjamin C Darwin (1):
      test_proxy_api: replace nonexistent `extend` method call on a tuple with `+=`

Bennet Fauber (2):
      set sform with set_sform not get_sform
      two withs become one

Bertrand Thirion (1):
      removed dependence on functools.reduce

Brendan Moloney (22):
      BF+TST - Allow 0 len items in CSA hdr if VM != 0
      BF: Only use the cross product (possibly negated) for the slice normal.
      DOC: Added some comments to clarify what is going on.
      TST: Make sure the slice normal is sufficiently orthogonal, even when CSA slice normal is not.
      TST: Additional tests for getting slice normal from DicomWrapper
      ENH: Added funtions to transform orientations.
      DOC: Fixed typo in axcodes2ornt docstring
      BF: ornt_transform was returning the inverse of the correct orientation.
      TST: Added test for decimal rescale issue.
      ENH: Handle 4D+ datasets.
      ENH: Improve get_data for 4D+ multiframe
      BF+TST: Fixed lookups for iop/ipp/pixspacing
      TST: Add test data for previous commit
      TST: Point multiframe test at correct file.
      TST: Add test that makes sure resulting data order doesn't change for 4D multiframe.
      CMP: Fix Python3 incompatability in last commit.
      DOC: Added info about how blocks of private elements are reserved
      DOC: Improve description of private block reservation.
      BF+TST: Skip over missing CSA header elem instead of raising.
      RF: Move dicom import into test function
      RF: Skip test for python < 2.6 and pydicom < 1.0
      ENH: Add parser for Siemens "ASCCONV" text format

Cameron Riddell (15):
      load save with pathlib.Path objects
      Add fn to coerce pathlike to string
      Insert _stringify_path to entry points
      Refactor _stringify_path to filename_parser.py
      resolve flake8
      testing for pathlib
      purge basestring
      move stringify guard to types_filenames
      update docstrings to accept str or os.PathLike
      update _stringify_path doc
      update docstrings to accept str or os.PathLike
      mghformat accept pathlib for filespec_to_file_map
      tests pathlib compatible
      update _stringify_path doc
      Fix flake 8 issues

Carl Gauthier (1):
      DOC: Fixed a typo

Christian Haselgrove (6):
      Import the data format tools
      dicomfs fixes regarding encoding and other bits.
      removed explicit tags (in favor of dicom object attributes)
      importing dft from nibabel
      dft tests and test data
      templating HTML output

Christopher J. Markiewicz (757):
      Add writing capabilities for freesurfer triangle files
      Use more modern tempfile methods, ensure tests run, improve writing
      Add default timestamp behavior to write_geometry
      NF: Write capabilities for freesurfer triangle files
      TEST: Use portable getpass.getuser(); use InTemporaryDirectory
      BF: Use portable getpass.getuser() in write_geometry
      STY: pep8 clean
      ENH Add read_scalars parameter to freesurfer.read_label() (used in PySurfer)
      BF Add parameter to freesurfer.read_label
      TEST Simple validation of freesurfer.read_label behavior
      BF Add correct parameters to test
      Use HTTPS for outside scripts/forms
      DOC http->https where both work and have same content
      DOC: Update URLs with non-trivial changes
      NF: Automatically reshape FreeSurfer ico7 niftis
      TEST: FreeSurfer ico7 surface NIfTI hack
      TEST: Update nitest-freesurfer submodule
      STY: Remove blank lines from test_freesurfer_ico7_hack
      BF: Use deprecate_with_doc as decorator
      BF: Fix benchmark range bounds
      PEP8/PyFlakes cleanup of nibabel/ (tests pass)
      PEP8/PyFlakes cleanup of nibabel/*/ excluding tests (tests pass)
      BF: FreeSurfer nifti surfaces can have >3 dimensions
      TST: Call current python executable
      TEST/BF: Test cases skipped; STY: PEP8
      TEST: Update out_tup to what is expected
      TEST: Clarify test_qform_sform test
      BF: Misplaced parenthesis
      TST: Verify pixdim check for non-negative values
      RF: Begin refactoring load into image classes
      Relegate slicing to is_header, remove _minctest
      TST: Remove Minc1Header exception
      STY: Unnecessary try block, comment lines too long
      TST: Test ValueErrors raised by is_header
      RF: Rename is_header to may_contain_header
      RF: Restore and deprecate loadsave helpers
      TST: Kill extra test; doc string to comment
      RF: Prefer alternate_exts over abusing files_types
      DOC: Deprecation warnings to stacklevel 2
      STY: Remove misleading 'sizeof_hdr' from Minc1/2
      RF: Tag sniffs with file name
      RF: Fail quietly on too-short header blocks
      TEST: path_maybe_image part of image API
      BF: Set strided_scalar as not writeable
      STY: PEP8 cleanup
      valid_exts is no longer used
      DOC: Add usage to ImageOpener docstring
      STY: PEP8 and import cleanup
      BF: Prepare for pydicom 1.0
      TST: Travis with pydicom > 0.9.9 git commit
      TST: Add sdist, wheel & requirements INSTALL_TYPEs
      TST: Add large nifti file test
      ENH: Support calling Sphinx with Python 3
      DOCTEST: Python 3 fixes
      DOCTEST: Use texext 0.3
      DOC: Update docs from 2.0.2 release
      DOC: Add maintainer, escape $ in RST
      DOC: Update website/mailing list
      TST: Run style tests separately
      RF: Switch to locally-defined underscore function
      BF: Update Cifti2Label._to_xml_element
      TST: Exercise Cifti2 classes more thoroughly
      BF: Add label_table to named_map structure
      DOC: Update write_morph_data docstring
      TST: Test morph_data round trip
      DOC: Update docstring
      RF: Enable writing morphometry data to file-like objects
      TST: Test dimension, size, and fnum constraints
      TST: Restrict accepted shapes to plausible vectors
      TST: Skip big array check on 32-bit systems
      DOC: Update docstrings
      TEST: Actually test oldest matplotlib
      DOC: Fieldtrip moved from Google Code to GitHub
      NF: Handle metadata in read/write_geometry
      BF: Coerce parsed GiftiDataArray.ext_offset to int
      TEST: Test default types for parsed Gifti files
      BF: Handle empty strings in ExternalFileOffset
      RF: Switch to locally-defined underscore function
      BF: Update Cifti2Label._to_xml_element
      TST: Exercise Cifti2 classes more thoroughly
      BF: Add label_table to named_map structure
      DOC: Update docstrings
      Address comments
      TEST: Move shape API tests into DataInterfaceMixin
      Update authors
      Add new release skeleton to Changelog
      Summarize changes since 2.1.0
      Update .mailmap
      Replace execfile with runpy (2.7 & 3.2+)
      PR 504 not merged yet
      Import BytesIO from io where possible
      Add ArrayProxy.reshape
      Typo
      Cifti2 arrayproxy tests should be negated or dropped...
      RF: Do not automatically load data CIFTI data
      Severely simplify _Cifti2AsNiftiImage
      Permit tuple ArrayProxy spec in place of header
      ArrayProxy.reshape generates headerless ArrayProxy
      RF: Deprecate ArrayProxy.header to be removed in 3.0
      TEST: Test tuple specs and reshaped APs
      Update Changelog
      DOC: Update ArrayProxy docstrings
      RF: Update ArrayProxy.reshape to take -1 entries
      FIX: Correct reshape method
      TEST: Catch warning, test -1 reshaping
      TEST: Check for illegal specs
      TEST: Check legal but incompatible shapes
      Update pre-release changelog
      Update authors, mailmap
      Update numpy minimum version
      RF: Derive affine in SpatialImage.transpose
      Update docs, function name
      DOC: Update changelog, authors
      DOC: Update Changelog to include pr/551
      DOCTEST: Use legacy float array printing for now
      STY: Hide testsetup from docs
      TEST: Create and import setup_test fixture into affected files
      ENH: Update min numpy version for legacy print
      TEST: Import test_setup into module __init__
      STY: Ignore unused import
      DOC: Update author list
      REL: Update version for final tests
      DOC: Credit doc fixes
      DOC: Update Changelog
      TEST: Use label file that exists across FS versions
      2.2.0 Changelog
      Start 2.2.x maintenance branch
      Bump dev version
      FIX: Set L/R labels in orthoview correctly
      TEST: Check only relevant warnings
      STY: Narrow exception check
      STY: No bare excepts
      Reset maintenance version
      MAINT: Update changelog, authors
      MAINT: Remove -dev from version
      MAINT: Bump dev version for 2.2.x
      FIX: Use SSH address to use key-based auth
      FIX/ENH: get/set_data_shape more robustly
      RF: Subclass MGHHeader from LabeledWrapStruct
      RF: Remove one-line private method
      FIX: goodRASFlag check, update
      RF: Remove unused _load_cache
      FIX: Label x/y/z_ras correctly
      RF: Make direction cosines explicit, not transposed
      RF: Pxyz_c to c_ras
      RF: Simplify to/from affine
      Rename goodRASFlag -> ras_good
      FIX/TEST: MGHImages must be 3D or 4D
      RF: delta -> voxelsize; simplify conversion code
      TEST: Update tests for refactor
      DOC: Annotate header fields
      RF: Improve footer handling
      ENH: Return TR as 4th zoom for 4D images
      RF: Reset zooms to 1 on reshape
      TEST: Footer; FIX: Simplify defaults
      FIX: Python 2 division
      TEST: Missing functionality tests
      ENH/DOC: Update and document get/set_zooms
      RF: Simplify affine conversion code
      ENH: Check for expected byte order
      ENH: Re-add _header_data with deprecation warning
      FIX: Return on get, not on set
      REVERT renamed/reshaped header fields
      RF/TEST: Check endianness rather than ignoring
      RF: Remove endianness, override copy, as_byteswapped, diagnose_binaryblock
      FIX: Do not double-set attributes
      TEST: TestWrapStruct features, set_zooms, deprecated fields
      TEST: Add and test version check
      TEST: Test MGHHeader._HeaderData fully
      STY: Typo
      DOC: Add reference to FreeSurfer wiki
      STY: Whitespace
      STY: Remove spaces after final newline
      TEST: Test angle_axis2mat(is_normalized=True)
      TEST: Check keep_file_open="auto"
      TEST: Test deprecation, ornt_transform error condition
      TEST: Test voxel size padding
      TEST: Check invalid caching argument for get_fdata
      FIX: hasattr uses getattr, not __hasattr__
      TEST: Test package info functions
      TEST: Test from_header(check=False)
      ENH: data shape check preempted by update_header
      FIX: Give Windows time to decide files are closed
      Revert "FIX: Give Windows time to decide files are closed"
      TEST: Delete arrayproxies, allowing Windows to close filehandles
      COV: Omit tests, drop obsolete omissions
      CI: Remove duplicate Travis entry [skip ci]
      DOC: Update Changelog
      REL: Update version
      DOC: Update copyright, contributors
      DOC: Update changelog pre-emptively
      DOC: Another pre-emptive changelog entry
      ENH: Add funcs.crop_image
      ENH: crop_image to bounds, adding margin
      STY: Do not capture exception in variable
      ENH: Permit cropping with negative indices, give more specific errors
      TEST: Initial crop_image test
      ENH: Enable SpatialImage.{slice,__getitem__}
      ENH: Enable minimally-fancy indexing
      RF: Move to img.slicer approach
      RF: Simplify affine transform
      REVERT fileslice modifications
      ENH: Add SpatialImage._spatial_dims slicer
      RF: Move slicer validation into image
      RF: Remove crop_image (for now)
      FIX: Type check, _check_slicing arguments
      ENH: Handle new axes in Minc
      TEST: Image slicing
      Translate ValueErrors to IndexErrors when used
      TEST: Handle MGHFormat (max: 4D) correctly
      TEST: Test single-element list indices
      RF: All SpatialImages are makeable
      TEST: Check step = 0 case
      ENH: Drop fancy indexing
      TEST: Test single-slice and fancy indexing raise errors
      DOC: Changelog entry
      TEST: Do not use deprecated _header_data
      DOC: Link to aliasing wiki article [skip ci]
      ENH: Improve exception message
      RF: Specify spatial dims in each class
      TEST: Check for _spatial_dims
      TEST: Minor fixes
      RF: Switch to spatial_axes_first
      RF/TEST: Purge _spatial_dims and related tests
      RF: Move slicing machinery to SpatialFirstSlicer class
      ENH: Raise IndexError on empty slices
      TEST: Update slice_affine test, check zero slices
      RF: Fuse only available on systems with getuid
      DOC: Some clarifying comments in SpatialFirstSlicer
      DOC: Update changelog to include gh-614
      DOC: Update changelog
      Bump dev version
      MAINT: 2.4.0-dev
      DOC: Update changelog with release date
      DOC: Update changelog with release date
      TEST: Ensure warning isn't suppressed
      CI: Test on Python 3.7 on Travis
      CI: Use dist xenial
      CI: Use matrix include for Python 3.7
      CI: Use Python 3.7-dev
      DOCTEST: FutureWarning repr changed in 3.7
      CI: Use 3.7 proper, move trusty+3.4 to matrix
      TEST: Catch warnings in clear_and_catch tests
      CI: Add Python 3.7 to AppVeyor matrix
      FIX: Annotation labels are RGB, no alpha
      TEST: Update tests to use RGB only
      DOC: Update ctab documentation, comments
      CI: Drop extraneous 2.7 build on Travis
      DOC: Update Changelog
      MNT: .mailmap
      MAINT: Drop -dev
      MNT: Update YOH, CC initials
      TST: Require hypothesis>=3.7
      STY: Break overly-long line
      ENH: Add ndim to ArrayProxy protocol
      TEST: Validate expected ndim behavior
      ENH: Pass ndim through to DataobjImage
      TEST: Validate DataobjImage.ndim
      Revert "TST: Require hypothesis>=3.7"
      DOC: Update changelog
      Update changelog
      REL: 2.3.1
      MNT: 2.3.2-dev
      Update changelog on master
      MNT: Remove deprecate numpy.asscalar
      STY: Flake8 3.6+ cleanup
      FIX: Immutable buffers should not be set writeable
      Revert "FIX: Immutable buffers should not be set writeable"
      MAINT: Add bz2file dependency for Python 2
      RF: Drop SAFE_STRINGERS, depend on bz2file to provide .readinto()
      CI: Upgrade setuptools
      MAINT: Move to setuptools exclusively
      FIX: Use bz2file for Python 2
      FIX: Rely on openers.BZ2File to provide correct class
      CI: Upgrade pip, setuptools, wheel on AppVeyor
      TEST: fobj string assumptions need only apply to bytearrays
      FIX: Load TckFile streamlines using bytearray
      TEST: Return mutable bytearray from trk_with_bytes
      FIX: Truncate buffer on EOF
      CI: Try alternative pip install
      MAINT: Bump -dev version
      FIX: Use io.BytesIO to test TckFile
      STY: Drop unused variable
      RF: Leave nisext alone, pop install_requires
      DOC: Add a comment explaining readinto/frombuffer idiom
      DOC: Update changelog
      DOC: Update authors, copyright year
      MAINT: Version 2.3.2
      Update nibabel/cifti2/cifti2.py
      Update nibabel/externals/oset.py
      MAINT: Add six dependency
      CI: Improve Travis test conditions
      MAINT: Bump maintenance version
      DOC: Update changelog
      REL: 2.3.2
      DOC: Changelog typos
      MAINT: Bump dev version
      RF: Reduce concatenations further, moderate cleanups
      FIX: Return to bytearray/frombuffer approach
      FIX: Check final delimiter is ONLY infs
      TEST: Simple load test for matlab_nan.tck
      STY: Reduce diff
      RF: Restore missing streamline delimiter error
      STY: Pacify flake8
      RF: Move setup_test to nibabel/__init__.py
      RF: Use pkgutil to avoid importing nose
      RF: Check for mock using pkgutil
      FIX: Import numpy in setup_test
      FIX: Ensure nose can be imported during mock test
      TEST: Extending ArraySequences corrupts sliced data
      CI: Run coverage on as many tests as possible
      RF: Use _safe_resize helper function
      CI: Ignore tests, benchmarks and externals for Codecov
      CI: Restore coverage config, remove codecov config
      CI: Run coverage on Windows
      MNT: Drop coveralls - redundant with codecov and poorly configured
      DOC: Add Zenodo badge to README
      MNT: Add .zenodo.json, tool to sort by commits
      MNT: Sort .mailmap
      TEST: Move test DICOMs into nicom/tests/data
      TEST: Restore dicom files used for DFT
      MNT: Last, First name
      MNT: Update zenodo metadata, re-sort
      RF: Remove unnecessary try guard
      DOC: Changelog skeleton
      MNT/DOC: Update mailmap, zenodo, author list
      MAINT: Version 2.4.0
      TEST: Check world direction of encoding remains consistent
      RF: Use list comprehension in reordering
      ENH: Add NIFTI_XFORM_TEMPLATE_OTHER xform code
      MNT: Update author list, mailmap, zenodo
      DOC: Update changelog
      Apply suggestions from code review
      MNT: Bump minimum numpy version to 1.8
      TEST: Add de-identified, compressed DICOM with empty string in SliceThickness field
      CI: Attempt to use virtualenv on Windows
      CI: Use pypiwin32 over pywin32
      Apply suggestions from code review
      CI: Maybe no update to pywin32 is needed?
      Update nibabel/cifti2/cifti2.py
      Apply suggestions from code review
      DOCTEST: Drop doctest SKIP directives
      FIX: Use other.volume_mask to index other.voxel
      DOC: Update docstrings with a few more links and array_like
      DOC: Update changelog, zenodo
      DOC: Add Matt Cieslak to author list
      MNT: Bump version to 2.4.1dev
      MNT: Bump version to 2.5.0dev
      DOC: Update Sphinx config to support recent Sphinx/numpydoc
      TEST: Verify writing to loaded data array fails
      RF: Decode B64* data to bytearrays for writable numpy arrays
      MAINT: Update Zenodo, Changelog with errors/missing info
      FIX: Replace invalid MINC1 file with fixed file
      TEST: Check for competing actions on warning filters
      FIX: Safer warning registry manipulation when checking for overflows
      RF: Use catch_warnings context managers to catch overflow
      TEST: Clarify comments
      MAINT: Pacify upstream Deprecation/FutureWarnings
      RF: De-duplicate - the vulnerable window stays small
      TEST: Use realistic data in test, loop to ensure interference
      MAINT: Deprecate keep_file_open == "auto" (scheduled for 2.4.0)
      TEST: Test mmap parameter acceptance
      RF: Move mmap/keep_file_open parameters to DataobjImage.from_file*
      FIX: Pass kwargs from Cifti2.from_file* to Nifti2.from_file*
      FIX: Accept mmap keep_file_open for Ecat and Minc, with no effect
      DOC: Update changelog, author list
      TEST: Verify we can write files with repeated labels
      FIX: Correctly write .annot files with duplicate labels
      TEST: Add round-trip test
      DOC: Update long description to include CIFTI-2, BRIK/HEAD
      DOC: Update changelog
      DOC: Update author list
      DEP: Deprecate nibabel.trackvis, effect old FutureWarning threats
      DEP: Transition checkwarns to deprecations and set target version
      DEP: Transition minc module to deprecated, announce 3.0 removal
      DEP: Promote catch_warn_reset FutureWarning to DeprecationWarning
      TEST: Use old-style assert_warns
      TEST: Create a test file for scheduling removals
      MAINT: Set name to nibabel in setup.py
      MNT: Bump version to 2.4.2dev
      TEST: Generalize, schedule nibabel.checkwarns removal
      TEST: Verify ImportError, add object removal schedule, schedul trackvis removal
      PY2: No importlib
      CI: Fix AppVeyor codecov paths
      FIX/TEST: Numpy casting rules have gotten more strict, raise different exception
      ENH: Add FileBasedImage.serialize()
      DOC: FileBasedImage.serialize.__doc__
      FIX: Import io
      ENH: Test serialize via an API test mixin
      RF: Rename serialize to to_bytes, add from_bytes
      RF: Factor SerializableImage
      TEST: Generate file when no examples available
      TEST: klass sometimes missing, equality sometimes undefined
      ENH: Add to/from_bytes interface to GiftiImage
      TEST: Delete images so mmapped files can be removed
      DOC: Improve docstring
      FIX: Nifti1Image is serializable, not Nifti1Pair
      ENH: Check for multi-file images, to ensure well-defined behavior
      TEST: Move special case header equality check into TestSerializableImageAPI
      STY/DOC: Note about multi-file images, newline
      MAINT: Full-speed setuptools
      MAINT: Restore reading version from info.py
      PY2: ConfigParser for Sphinx build
      WIN: Drop .bat suffix for scripts
      MAINT: externals/tests/data skipped in sdist
      MAINT: Add minimum setuptools version to setup.py
      CI: Test minimum setuptools
      MAINT: Add pyproject.toml to give setuptools hint
      MAINT: Add wheel requirement on-the-fly, improve comments
      TEST: Add multiframe ECAT file for testing
      FIX: Minor ECAT cleanups
      DOC: Update changelog for upcoming 2.5.0 release
      MAINT: Version 2.5.0
      FIX: Set TRK byte order to < before filling values
      PY3: Use next function on iterator while checking ECAT affines
      DOCTEST: Display system endianness-neutral representation of <i2
      TEST: Use package-wide setup and teardown to adjust numpy print options
      MAINT: Use a more general _test_state structure for setup/teardown
      Apply suggestions from code review
      ENH: Pass endianness as parameter to TrkFile._default_structarr
      DOC: Update changelog
      MAINT: Update mailmap, Zenodo
      REL: 2.5.0
      MAINT: 2.5.1-dev
      MAINT: 3.0.0-dev
      MAINT: Add community guidelines
      DOC: Update docstring standard
      DOC: Contributing guide, mostly linking to docs
      DOC: Drop covenant boilerplate
      DOC: Add Matthew Brett as point of contact
      CI: Add Azure Pipeline for Python 3.5
      CI: Remove AppVeyor
      AZURE: Environment reset at each step
      AZURE: Virtualenvs do not seem to work as expected
      AZURE: Fix step name
      AZURE: Expand matrix to Python 3.4-3.7, x86 and x64
      CI: Test installing from git archive
      CI: Drop 2.7, 3.4 tests from Travis
      MAINT: Update dependencies for Python >= 3.5
      MAINT: Add update_requirements.py; update requirements
      FIX: Update minimum six
      FIX: Need numpy 1.12 for fixed assert_warns
      MAINT: Purge __future__
      RF: Drop six.*metaclass
      RF: Drop six.*IO
      RF: Drop six.moves
      RF: Drop six.*_types
      MAINT: Drop nibabel.externals.six
      MAINT: Drop six dependency
      RF: Drop code explicitly tagged as PY2
      RF: Drop python < 3.5.1 hacks in openers
      TEST: Duplicate assertion
      DOC: Update docstrings without Py2/3 discussion
      RF: Remove Python < 3.5 hacks
      TEST: Drop BZ2 mio error checks (Python 3.3 only)
      RF: Use builtin FileNotFoundError
      STY: Unused import
      RF: Import from numpy.compat.py3k when needed
      TEST: Minimum numpy >= 1.12
      DOC: Minimum Python == 3.5.1
      MAINT: Set up versioneer
      MAINT: Drop COMMIT_INFO
      RF: Drop old __version__
      RF: Move all version play from info to pkg_info
      MAINT: Add fallback version to versioneer + git-archive
      TEST: Test fallback version
      VERSIONEER: Improve short version file handling
      MAINT: Ignore _version.py in coverage
      MNT: Deprecate DataobjImage.get_data, schedule for removal in 5.0
      CI: Drop separate indexed_gzip test
      STY: Configure pep8speaks
      DATA: Add nibabel-data/nitest-dicom submodule
      TEST: Update test DICOM file location
      MNT: Update extras
      CI: Refactor Travis to separate steps more cleanly, use extras to for dependencies
      MNT: setup_egg.py now unused
      Trigger CI
      CI: Add expected failing test
      CI: Temporarily drop all other tests
      ENH: Require h5py 2.10 for Windows + Python < 3.6
      TEST: Import have_h5py and similar from nibabel.minc2
      FIX: More robust floating point dtype check
      Revert "CI: Temporarily drop all other tests"
      CI: Require binaries for 3.4 as dependencies stop building wheels
      RF/TEST: Move h5py compatibility hacks into a private module
      DOC: Update docstrings to describe affine property
      CI: Add expected failing test to Azure
      ENH: Add general test data retriever
      DOCTEST: Retreive a surface file using test_data
      DATA: Add 10 time point time series GIFTI in fsaverage3 space
      TEST: Test new test_data function
      TEST: Check for failing GIFTI encodings
      FIX: Coerce data types on writing GIFTI DataArrays
      MAINT: Check nightly builds on 3.7
      MAINT: Check nightly builds on 3.7
      TEST: Reproduce gh-802
      ENH: Remove img.get_data() from internal use except for appropriate tests
      DOC: Update test_image_api docstring for clarity, consistency
      DOC: Update changelog for upcoming 2.5.1 release
      MAINT: Version 2.5.1
      MAINT: Update zenodo.json
      DOC: Add Henry Braun to contributor list
      MAINT: Update setup.cfg nose version to match installation instructions
      MAINT: 2.5.2-dev
      Re-import externals/netcdf.py from scipy
      DOCTEST: Avoid fixed ID in doctest
      DOCTEST: Delete reference to mmap data to avoid warning
      Re-import externals/netcdf.py from scipy
      DOCTEST: Avoid fixed ID in doctest
      DOCTEST: Delete reference to mmap data to avoid warning
      CI: Test builds on Python 3.8
      CI: Python 3.8 not yet available on Azure
      CI: Wait on upstream releases for full 3.8 tests
      MNT: Update supported language classifiers
      DOC: More comprehensive agg_data examples
      CI: Restore Python 3.8 Azure tests
      NF: Enable data scaling within the target dtype
      RF: Implement AFNIArrayProxy._get_scaled(), replacing other overrides
      ENH: Add get_scaled to Minc, Ecat
      RF: Rework PARRECArrayProxy
      TEST: Revise equality check to approximate
      CI: Enable most dependencies for Python 3.8
      CI: Test with matplotlib~=3.2.0rc1
      TEST: Validate get_scaled with several float types
      FIX: Better type promotion
      TEST: Use np.sctypes to detect available floats
      RF: Uniformize AFNI/PARREC scaling
      RF: Use consistent logic for ECAT, Minc1 and PARREC proxies
      TEST: Verify get_scaled works sensibly with ints
      MNT: Update nitest-dicom pin
      TEST: Basic tests for CT DICOM image
      RF: Avoid unneeded reference
      DOC: Update docstrings, comments, for clarity
      MNT: Update mailmap
      MNT: Update Zenodo
      DOC: Update changelog
      MNT: Improve version determination on branches with digits
      DOC: Update author list
      MNT: Version 3.0.0rc1
      MNT: Version 3.0.0rc1.post.dev
      MNT: Add gitpython and twine to "dev" extra
      MNT: Fix Dorota Jarecka ORCID
      MNT: Drop test data from MANIFEST.in
      DOC: Discuss slicer interface
      CI: Update release wheel repository
      CI: Re-add h5py to Py38 tests
      CI: Restore old wheel repository
      TEST: Check non-integral slopes, intercepts
      CI: Disable pytest for now
      TEST: Test supported dtypes for Analyze/NIfTI/MGH
      TEST: Refine parameter and assertion precision
      FIX: Cast scaling parameters only when safe
      TEST: Add comment to explain parameters
      FIX: Accept dtype parameter to ArrayProxy.__array__
      TEST: Validate dataobj.__array__(dtype)
      RF: Drop (mostly) redundant ArrayProxy.get_scaled() method
      DOC: Update changelog
      TEST: Filter complex warnings
      TEST: Improve test naming for tracking down failures
      FIX: ECAT data must be coerced after reading
      DOC: Update reviewers in changelog
      DOC: Update changelog with recent PRs
      MNT: Remove support for keep_file_open=="auto"
      MNT: Remove minc.py
      DOC: Use nifti1 to demonstrate ModuleProxy instead of the ephemeral minc
      MNT: Remove checkwarns
      TEST: Test invalid KEEP_FILE_OPEN_DEFAULT values
      STY: Remove unused import [skip ci]
      TEST: Move from mock to unittest.mock
      MNT/DOC: Add h5py to notes, installation extras
      DOC: Update changelog
      REL: 3.0.0rc2
      MNT: Version 3.0.0rc2.post.dev
      REL: 3.0
      MNT: Begin development on 3.1
      MNT: 3.0.x maintenance branch
      MNT: 3.0.x maintenance branch
      FIX: Validate ExpiredDeprecationErrors
      FIX: Interpret "ver+extra" as post-release, not pre-release
      TEST: Numpy changed longdouble str representations in 1.18
      FIX: Expand version comparison logic
      TEST: Numpy changed longdouble str representations in 1.18
      RF: Improve fallback version check, require PyPA packaging module
      MNT: All supported numpy have float16
      MNT: Update changelog, zenodo, in case of future 2.5.x release
      MNT: Add Ben Darwin to Zenodo
      DOC: Update changelog, copyright
      MNT: Update requirements
      DOC: Update author list
      DOC: Add missing entry from 3.0.0 changelog
      MNT: Update Ben Darwin name/affiliation
      MNT: 3.0.2-dev
      NEP29: Bump minimum numpy to 1.13
      MNT: Minimum packaging of 14.3
      MNT: Separate out pytest and nose jobs
      TEST: Fix tests broken in the rebase
      CI: Add CHECK_TYPE to Azure
      CI: Default to nose for Windows for now
      RF: Avoid running data script code on doctest
      TEST: Doctests not ready
      CI: Try alternative CHECK_TYPE test
      PIN: Avoid pytest 5.3.4 (pytest-dev/pytest#6517)
      TEST: Add BaseTestCase class to skip TestCases starting with ``_``
      TMP: Skip failing streamlines modules
      CI: Skip converted tests in nose
      TEST: Fix import/indentation errors
      ENH: Use generic unittest.SkipTest in missing optional_package
      TEST: Cleanup test_array_sequence
      CI: Skip more nose tests
      TEST: Un-skip tractogram tests, style cleanups
      TEST: Fix optpkg test
      TEST: Style updates to test_analyze
      CI: Give up trying to deselect streamlines
      TEST: Style cleanup
      TEST: Simplify data/environment fixtures
      TEST: Simplify, reformat test_data
      STY: Remove unused pkgutil import
      TEST: Refactor NetCDF tests to be more pytest friendly
      CI: Resolve Travis warnings, remove redundant job
      TEST: Use skipif mark instead of TestMinc2API.__init__
      TEST: Use standard syntax when possible
      TEST: Use relative imports in gifti tests
      TEST: Simplify giftiio deprecation tests
      TEST: Combine imports
      MNT: Mark incompatible with Python 3.9
      TEST: Skip giftiio tests in nose
      MNT: CI YAML formatting, extraneous .coveragerc
      TEST: Style and formatting
      CI: Restore import-only test
      CI: Enable doctests
      TEST: Use numpy 1.13 legacy print settings
      TEST: Convert nibabel.nicom to unittest/pytest
      TEST: Use vanilla unittest.skip* over pytest
      RF: Remove unused pieces of testing_pytest and switch to unittest skip
      CI: Only ignore files that use fixtures
      TEST: De-indent tests, cleanup style
      TEST/STY: Cleaner line breaks and alignment for test_fileslice
      TEST/STY: Alignment in fileutils, floating tests
      TEST/RF: Reduce redundancy in test_removalschedule, test failure case
      MNT/FIX: Bump minimum matplotlib to 1.5.2 to match available wheels
      MNT: Use version 1.5.3 to smooth transition to 3.6
      TEST: Remove last imports of nose
      MNT: Purge nose from requirements, CI
      RF: Remove nose test state code
      RF: Reimplement nibabel.test() and nibabel.bench()
      DOC: Replace nose with pytest in the docs
      DOC: Update benchmark docstrings
      TEST: Final few assert_raises
      CI: Add OSX test to Travis
      CI: Fix wheel build... weird pip behavior while in source directory
      FIX: Return pytest.main results from nibabel.test/bench
      TEST: Might as well test the testers. Found a bug.
      CI: Install test requirements through extra dependencies
      DOC: Specify current benchmark file
      TEST: Style and parameterization fixes for readability
      TEST: Bad test syntax
      TEST/RF: Mock compress_ext_map, instead of fixture
      TEST: Rename tests to ensure running
      TEST/RF: Reparametrize tests
      CI: Fail test if docs do not build
      PY3: Drop Python 2 guards, use runpy instead of exec
      DOC: Attempt to find versioneer version when building docs
      DOC: Skip py3k
      DOC: Fix "``s" pattern in changelog
      DOC: Address warnings and improve formatting
      MNT: Update changelog, author list and Zenodo
      MNT: Drop pyproject.toml for now
      DOC: Note pyproject.toml removal in changelog
      MNT: 3.0.3dev
      NEP29+1y: Drop Python 3.5
      CI: Drop 3.5 tests, set min to 3.6, pre-release to 3.8
      MNT: Drop deprecated ndarray.tostring for tobytes
      TEST: Fix warning filter to only check for nibabel-generated warnings
      MNT: Pin sphinx <3
      MNT: Mark incompatible with numpy 1.19, Sphinx 3
      MNT: Set maximum numpy to 1.16.x, update requirements.txt
      CI: Avoid installing too new of numpy/scipy
      REL: 2.5.2
      MNT: 2.5.3-dev
      NF: Add nibabel.affines.rescale_affine function
      RF: Update conformation to reorient, rescale and resample
      MNT: Update mailmap
      DOC: Update minimum Python
      DOC: Update author list
      DOC: Update changelog
      MNT: Update Zenodo snippet
      MNT: 3.1.1-dev
      MNT: 3.2.0-dev
      MNT: Add affiliation/ORCID for Roberto
      CI: Require pip <19.2 for Python 3.4 in Travis
      STY: Satisfy recent flake8
      CI: Fix Azure pipelines config
      CI: Add ARM64 build
      CI: Drop ARM64 build dependencies to numpy for speed
      CI: Use scipy-wheels-nightly index on anaconda.org
      FIX: Ensure nan is cast to currently tested dtype
      Update nibabel/orientations.py
      Update nibabel/tests/test_quaternions.py
      MAINT: Set minimum numpy to 1.14
      TEST: Drop numpy 1.13 doctest compatibility
      TEST: Update doctests to use new numpy print format
      REL: 3.1.1
      MNT: 3.1.2dev
      RF: Set NIfTI-2 header shape through API call
      DOC: Add the spec text to explain the dim discrepancy
      FIX: Save TR in seconds in parrec2nii
      TEST: Verify that header conversion preserves units
      ENH: Add bytestring serialization to CIFTI-2
      TEST: Add SerializeMixin to TestCifti2ImageAPI
      MNT: Officially deprecate onetime.setattr_on_read
      DOC: Update link to descriptor guide
      TEST: Suppress expected warnings
      FIX: Avoid/suppress expected warnings
      FIX: Bad deprecate_with_version calls
      PY36: Backport nullcontext
      DOCTEST: Suppress deprecation warnings in doctests of deprecated methods
      TEST: Suppress warnings in freesurfer
      MNT: Add pytest-doctestplus to ignore warnings in doctests
      TEST: Suppress and check warnings in streamlines
      TEST: Use get_fdata, check for expected warning
      RF: Drop calls to deprecated get_affine()
      FIX: Escape backslashes before parsing strings
      MNT: Reset deprecation clock
      FIX: Remove doubled-up fix for divide-by-zero warning
      TEST: Small cleanups
      FIX: Construct sliceobj from object array; addresses numpy deprecation warning
      TEST: Use skipIf rather than warn + return for test_multiload
      TEST: Check import-time warnings on modules via conftest
      TEST: Use matches or comments to make clear expected warnings
      TEST: Unused imports
      TEST: Simplify lazy_load conditional warning check
      Update nibabel/streamlines/tests/test_tck.py
      ENH: Add nib-roi command to crop (maybe flip) axes
      ENH: Cover edge cases like non-scaling images, bad slices
      TEST: Test nib-roi and helpers
      FIX: Syntax errors/warnings
      Update nibabel/cmdline/tests/test_roi.py
      TEST: Check MINC-2, Analyze, and main()
      TEST: Use MGHImage to avoid scipy dependency
      FIX: Improved test for scaling
      MNT: Update mailmap
      DOC: Note new minimum Numpy
      MNT: Update author list, zenodo ordering
      DOC: Changelog
      MNT: 3.2.1-dev
      Trigger builds on maint/ branches and PRs
      DOC: Update Julian Klug's Zenodo fragment
      CI: Test on Python 3.9 with numpy nightly wheels
      PY39: Changed mmap repr
      PY39: Changes in ast parsing of indices
      CI: Bump ARM64 tests with compatible packages
      CI: Drop defunct rackspace wheelhouse
      CI: More dependencies under 3.9
      DOCTEST: Fix np.float uses in the doctests
      DOC: 3.2.1 changelog
      MNT: List Python 3.9 in supported versions
      FIX: Drop keep_file_open=auto from benchmark

Christopher P. Cheng (95):
      TODO1 attempt 1: processed data type, data shape, and data offset of two different headers
      tweaked to remove AnalyzeHeader but currently still has problems
      added nib-diff to setup.py
      first attempt at nib-diff that doesnt work
      removed incorrectly committed changes
      first attempt at diff_dicts method and diff testing file
      tried something else with header fields
      latest attempt: restructured diff_dicts() method, troubleshooting ensuing errors
      corrected misplacement of cmdline files and latest attempt at diff_dicts method
      progress! tweaked bugs, corrected rookie mistakes like cmdline placement, implemented yarik suggestions
      got rid of proc file and function works at a basic level
      tweaked diff_dicts to be compatible with tests
      got rid of None, troubleshot tests
      introduced hypothesis to use for testing with pretty sexy results
      noted hypothesis need for tests, refactored diff_dicts name
      attempt at TODO#2: allowing specification of header fields
      now functional for several header files.
      tweak to make hypothesis work with a list, but problem above has not been addressed
      tweaked names and code as suggested!
      bug fix
      cosmetic tweaks
      cleaned up code
      promoted generic programming and got test to work again
      tried to clean code but couldnt get comprehension going
      comment and docstring
      added options for text, json, yaml but still have to implement
      work in progress with all outputs
      moved nib-ls to make generic use of its functions possible for a comparison function in progress
      fixed import from utils to ls
      started on a test_utils module. Not the final tests, just some random strings
      changes as recommended, thanks Matthew!
      added test for ap() and made changes re Travis CI
      fixed ap test problem but TypeError from nose popped up
      format is out of line but problem is fixed
      simplified code but now bizarrely doesnt run with two files
      apparently the variable l is a really big chafe
      beautified text output, next up json and yaml
      modified the tests for the new diff_values
      commenting out json and yaml, cosmetic mod to ls.py
      made changes as requested
      moving more cmdline things to the cmdline folder
      progress towards table formatting
      table now works and looks p good
      slight tweak to table formatting
      very inefficient but successfully removed dtype when its identical
      removed extra blank line lol
      boosting coverage
      refactoring
      added dicomfs file
      parrec2nii added
      data comparison function added
      reformatted per Travis CI
      implemented test-nib-diff
      added another test
      changed travis appveyor utils per test errors
      test files
      wasnt included in last commit by accident
      maybe this will work instead
      maybe this will work instead
      test fixed
      fixed to be more generic
      fixed file name issue in nib diff
      fixed changes as yarik requested
      fixed problems noted by Travis CI
      building in difflib to see whats going on
      latest attempt at compliance changes dict to list
      combined into one line
      new structure, names, tests
      hypothesis: all my problems were due to that one test
      whoops missed this
      i think im going to cry. code cleaned and made more pythonic
      added and fixed tests
      fixing up appveyor and travis problems
      fixed a fringe use case
      style tweak for travis
      removed duplication, made things more generic
      moved functionality outside to test and increase coverage
      boosting coverage by testing main
      main test corrected for max coverage
      imported StringIO from six instead of io
      added a test for cmdline function
      changes per Yariks comments!
      changed as commented out in the pull request
      RF: anticipated files of different shapes, fixed table display, corrected tests
      elaborated docstring, modified get_data_diff to allow direct array input, added tests for coverage
      added to diff documentation, undid executable change, took out debugging script in test_scripts
      undid permission snafu on test_scripts
      docstring and function name clarification, change get_data to get_fdata()
      corrected styles per Travis, limited fdata to float32
      prepared for future PR to allow modification of dtype used in diff comparison
      added cmdline functionality for modifying datatype used for file data comparisons
      added testing for dtype at cmdline, assuming cmdline functionality. changed value output in data_diff function to allow for validation of data type
      storing changes for main testing
      added tests to fix coverage problem
      cmdline test added for dtype access

Cindee Madison (27):
      NF - initial import of ecat functionality
      NF added correct frame mapping to mlist class
      update EcatImage to work with new nibabel changes
      NF clean up for Ecat class
      NF warning if affines do not match across frames
      NF further cleanup of code, references to mlist cleaned up
      NF fix warning in fileobj seek
      NF adding ecat tests, fix endian typo
      NF more tests fix issue in endian in tinypet.v
      NF more tests fix issue in endian in tinypet.v
      NF tests for EcatSubHeader
      NF tests for EcatImage
      NF: added full datatypes, filetypes descriptions , documentation
      NF: endian issue with tinypet.v
      NF: added access to mlist and subheader from img, and exceptions for saving
      NF: added simple examples
      BF - fixed doctests in ecat
      BF fix doctest for ecat
      RF - removed parametric tests from test_ecat
      BF - fix endian test fail on BE machines
      fix bug in identifying correct frame number order in a multi-frame ecat file using mlist
      addd test to find misorder in mlist
      added test for poorly formed mlist order
      fix typo in get_frame_affine
      clarified mlist.get_framenumbers based on comments from MB, added new mlist function get_series_framenumbers to give series frame numbers for data given in file
      added examples to new function get_series_framenumbers
      BF+TST catch mismatched hdr, mlist and added more tests

Demian Wassermann (58):
      BF: Fix file trackvis file read when there are scalars and the point mode is rasmm
      TST: test scalars work with rasmm trackvis option
      Fix Cifti2TransformationMatrixVoxelIndicesIJKtoXYZ to_xml method
      Changed the cifti2.py assertions for exceptions
      Changed the parse_cifti2_fast.py assertions for exceptions
      Fixed MetaData and its testing
      Exporting the CIFTIHeaderException to the cifti2 namespace
      Improved verification/compatibility of the label object with the standard. Increased testing coverage
      All elements below MatrixIndicesMap fixed and tested
      Newline homogeneization
      Fixed header information
      Cleaned the metaclass helpers
      Fixed docstring
      Fixed style and function of MetaData
      MetaData now behaves like a mapping
      Interface of LabelTable closer to that of Sequence
      Better agreement between the Label element and its specification
      Several docstring fixes as well as removed the squeeze
      Code cleaned
      Code cleanup
      Fixed docstring
      Removed comments
      Added submodule for CIFTI2 testing
      Added test data as submodule
      Added more I/O tests fixed load/save functions:
      CIFTI2: MetaData and LabelTable now behave like MutableMapping
      CIFTI2: MatrixIndicesMap has a MutableSequence behavior
      Simplified testing by assuming that the parsed header is correct
      CIFTI2 Improved MatrixIndecesMap interface
      CIFTI2 Cleanup
      CIFTI2 simplifications in implementation and testing due to the new interfaces
      Compatibility with new/future nifti interface
      Fix testing dependency on lxml
      VertexIndices and VoxelIndicesIJK now have a MutableSequence interface
      Improved testing coverage
      Better handling of volumes in the MatrixIndicesMap
      Deleted intent_code restriction
      Removed lxml dependency
      Increased testing coverage and removed residual methods
      Clarified code in _Cifti2AsNiftiImage __init__
      Changed Cifti2Vertices such that it behaves like a sequence. Added corresponding tests
      Icreased testing coverage. Cleaned up code
      Corrected problem in new nifti header checks
      Increased testing coverage and code cleanup
      Fixed python 2.7 incompatibility in tests
      Removed commented code
      Remove affine attribute from CIFTI2 image __init__
      CIFTI2 reading now is performed without loaading all file from disk
      MetaData can be built from a mapping
      Improved docstring of Cifti2BrainModel
      Improved docstring of Cifti2MatrixIndicesMap
      Code clean
      Code clean
      Renamed parse_cifti2_fast to parse_cifti2
      Renamed CIFTI2HeaderError to Cifti2HeaderError
      Unified the CIFTI2 spelling in the documentation
      Fixed documentation typo
      Added convenience functions

Dimitri Papadopoulos Orfanos (1):
      Better handle pathological filenames

Dorota Jarecka (104):
      moving test_affines to pytest
      adding pytest to ravis
      adding pytest to the windows env
      testing windows installations
      trying a different pytest command for windows
      yet another command for windows
      fixing path to the test
      revert some of the changes to the test (didnt notice numpy.testing was already used)
      adding testing_pytest that removed nose (it will be used temp. for tests converted to pytest)
      converting tests with tests/test_a*.py and test_wrapstruct (for some reason cant run the tests in one pytest command, so added an extra line to travis for now
      converting test_b* and test_c*
      updating travis
      adding converted test_d*
      converting more tests to pytest
      fixing interaction between fixtures
      moving test_helpers to testing/helpers.py (it contains no tests, but helping functions)
      adding new tests to travis
      adding more tests
      converting more tests
      converting more tests to pytest
      converting test to pytest, TODO: some tests are failing on osx
      adding pytestmark to test that has not been changed to pytest
      fixing test_wrapstruct: removing setUpClass and adding self.header_class check to all of the test methods: couldnt find better way for suppressing tests from abstract classes and allowing for testing from all child classes
      changing travis command after fixes in test_wrapstruct
      converting more tests from nibabel.tests
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      converting more tests nibabel.tests.test_t*
      converting test_volumeutils
      converting nibabel_data
      removing todos
      Apply suggestions from code review
      Apply suggestions from code review
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      ignoring tests with pytest.mark.parametrize
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      Apply suggestions from code review
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      applying suggestions from 865
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      converting nibabel_data
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      converting nibabel/tests/test_scripts.py
      adding todo
      converting more tests nibabel.tests.test_s*
      removing todos
      converting nibabel/tests/test_scripts.py
      adding todo
      removing todos
      small edits: suggestions from reviews
      ignoring tests that use needs_nibabel_data
      some cleaning after using nose2pytest
      small cleaning after review
      small edit
      Update nibabel/tests/test_image_api.py
      changing testing_pytest back to testing

Egor Panfilov (3):
      Fixed typo in coordinate_systems doc page
      Fixed typo in coordinate_systems doc page
      Fixed A-P to P-A in coord systems docs

Eleftherios Garyfallidis (3):
      NF: Tractogram is now more specific and supports multiple keys for scalars and properties which are now called data_per_steamlines and data_per_points respectively
      Updated TractogramFile
      minor cleanup

Eric Larson (64):
      ENH: Adding vox2ras_tkr
      FIX(?): Add zooms test
      FIX: Deal with borked test dataset
      FIX: Match MRIRead.m
      FIX?: Order
      FIX: Reverting to mri_info test compat
      FIX: Cleaner tests
      FIX: Minor fixes
      ENH: Add suppress_warnings
      FIX: Support XYTZ order and multiple echos in PAR/REC files
      ENH: Support for partial recordings, and overwrite checking
      WIP: Add bvals/bvecs
      FIX: Working for variable scale factors
      ENH: Add dwell time
      FIX: Verbose dwell output
      FIX: Fix dwell time
      FIX: Fix numpy
      FIX: Move most work to parrec
      FIX: Fix for truncated data
      FIX: Fix tests
      FIX: Fix openers
      FIX: Minor fixes to clean up tests in windows
      FIX: Py3k on Linux fixes
      STY: PEP8
      FIX: Remove trace by default
      ENH: Add appveyor and improve test
      ENH: Add an extra windows build
      FIX: Fix badge
      ENH: Add crosshairs, modify mode
      FIX: Minor fixes
      ENH: Add set_indices method
      ENH: Allow time dimension
      ENH: Better tests
      FIX: Update volume plot
      FIX: Remove monkey patching
      WIP
      WIP: Closer to correcting orientation
      WIP: Fixed ratio
      FIX: FIX time plot
      FIX: Fix orientations and interactions
      FIX: Minor fixes
      FIX: Fix test
      FIX: Better testing
      STY: Remove dicts in favor of lists
      FIX: Cleanup on close
      FIX: Better unlinking
      FIX: Minor fix
      FIX: Fix operators
      FIX: Clean up code
      FIX: Fix for NumPy deprecation
      STY: Clearer conditional
      FIX: Allow tr=0 in mghformat
      FIX: Better messages
      BUG: Fix deprecated imports
      FIX: Escapes and NumPy import
      BUG: larsoner
      BUG: Fix escape
      BUG: More escapes
      BUG: Fix escape
      BUG: More escapes
      BUG: Fix escape character
      FIX: r
      BUG: Use manager to set title
      FIX: NumPy builtin type deprecation

Eric M. Baker (7):
      BF: Remove assumption that StackID is always the first dimension of the frame indices for multiframe DICOM
      BF: Correct StackID DICOM tags
      TST: Update test for MultiframeWrapper.image_shape
      TST: Update dependent tests that were missed previously
      DOC: Add short explanation and references to image_shape function for the Multi-frame DICOM wrapper
      RF: Remove use of 'FunctionalGroupPointer' in determining 'StackID' axis
      DOC: Fix external link rendering

Erik Kastman (30):
      Add Nifti1DicomExtension + test
      Add @dicom_test decorator to Pass w/o pydicom
      Use BytesIO (py3k compatibility)
      Fix BytesIO import (again), py3.3 compat
      Fix writing typo, add writing tests
      Zeropad Extension to 16 bytes, test writing
      A little cleanup
      Read full datasets (with TransferSyntax)
      Use write_dataset for pydicom < 0.9.9 compat
      PEP8 Whitespace
      Test TransferSyntax, fix zipped reading.
      Revert "Read Full Datasets Using TransferSyntax"
      Revert "PEP8 Whitespace"
      Revert "Use write_dataset for pydicom < 0.9.9 compat"
      Revert "Read full datasets (with TransferSyntax)"
      PEP8 + consistency cleanup
      Create empty dataset or use one if provided
      Add Doc page on NIfTI header
      PEP8 and header warning (doc)
      Import and doc cleanup
      PEP8 Cleanup
      NiftiHeader determines dicom byte encoding in extension
      DOC Add docstring to DicomExtension __init__
      RF Type cleanup from MB’s suggestions
      BF Import pydicom…
  • Loading branch information
fenrus75 committed Jan 18, 2022
1 parent d8639cc commit db4cea3
Show file tree
Hide file tree
Showing 8 changed files with 29 additions and 26 deletions.
14 changes: 7 additions & 7 deletions ChangeLog
Expand Up @@ -122,7 +122,7 @@ New features

Bug fixes
---------
* Delay import of h5py until needed (pr/889) (YOH, reviewed by CM)
* Delay import of h5py until neded (pr/889) (YOH, reviewed by CM)

Maintenance
-----------
Expand Down Expand Up @@ -168,7 +168,7 @@ Maintenance
Bug fixes
---------
* Attempt to find versioneer version when building docs (pr/894) (CM)
* Delay import of h5py until needed (backport of pr/889) (YOH, reviewed by CM)
* Delay import of h5py until neded (backport of pr/889) (YOH, reviewed by CM)

Maintenance
-----------
Expand Down Expand Up @@ -252,7 +252,7 @@ API changes and deprecations
----------------------------
* Fully remove deprecated ``checkwarns`` and ``minc`` modules. (pr/852) (CM)
* The ``keep_file_open`` argument to file load operations and ``ArrayProxy``\s
no longer accepts the value ``"auto"``, raising a ``ValueError``. (pr/852)
no longer acccepts the value ``"auto"``, raising a ``ValueError``. (pr/852)
(CM)
* Deprecate ``ArraySequence.data`` in favor of ``ArraySequence.get_data()``,
which will return a copy. ``ArraySequence.data`` now returns a read-only
Expand Down Expand Up @@ -342,7 +342,7 @@ Bug fixes
reviewed by PM)
* Safer warning registry manipulation when checking for overflows (pr/753)
(CM, reviewed by MB)
* Correctly write .annot files with duplicate labels (pr/763) (Richard Nemec
* Correctly write .annot files with duplicate lables (pr/763) (Richard Nemec
with CM)

Maintenance
Expand Down Expand Up @@ -997,7 +997,7 @@ visiting the URL::
* Bugfix: Removed left-over print statement in extension code.
* Bugfix: Prevent saving of bogus 'None.nii' images when the filename
was previously assign, before calling NiftiImage.save() (Closes: #517920).
* Bugfix: Extension length was to short for all `edata` whose length matches
* Bugfix: Extension length was to short for all `edata` whos length matches
n*16-8, for all integer n.

0.20090205.1 (Thu, 5 Feb 2009)
Expand All @@ -1017,7 +1017,7 @@ visiting the URL::
automatically dumped into this extension.
Embedded meta data is not loaded automatically, since this has security
implications, because code from the file header is actually executed.
The documentation explicitly mentions this risk.
The documentation explicitely mentions this risk.
* Added :class:`~nifti.extensions.NiftiExtensions`. This is a container-like
handler to access and manipulate NIfTI1 header extensions.
* Exposed :class:`~nifti.image.MemMappedNiftiImage` in the root module.
Expand Down Expand Up @@ -1223,7 +1223,7 @@ visiting the URL::
* Does not depend on libfslio anymore.
* Up to seven-dimensional dataset are supported (as much as NIfTI can do).
* The complete NIfTI header dataset is modifiable.
* Most image properties are accessible via class attributes and accessor
* Most image properties are accessable via class attributes and accessor
methods.
* Improved documentation (but still a long way to go).

Expand Down
2 changes: 1 addition & 1 deletion Makefile
@@ -1,5 +1,5 @@
PKG_NAME := pypi-nibabel
URL = https://github.com/nipy/nibabel/archive/master.zip
URL = https://github.com/nipy/nibabel/archive/3.2.1/nibabel-3.2.1.tar.gz
ARCHIVES =

include ../common/Makefile.common
5 changes: 2 additions & 3 deletions buildreq_cache
@@ -1,4 +1,3 @@
1
3.2.1
pypi(numpy)
pypi(packaging)
pypi(setuptools)
pypi(packaging)
4 changes: 2 additions & 2 deletions options.conf
@@ -1,8 +1,8 @@
[package]
name = pypi-nibabel
url = https://github.com/nipy/nibabel/archive/master.zip
url = https://github.com/nipy/nibabel/archive/3.2.1/nibabel-3.2.1.tar.gz
archives =
giturl =
giturl = https://github.com/nipy/nibabel.git
domain =
alias =

Expand Down
26 changes: 14 additions & 12 deletions pypi-nibabel.spec
Expand Up @@ -3,10 +3,11 @@
# Generated by: autospec.py
#
Name : pypi-nibabel
Version : 1
Release : 1
URL : https://github.com/nipy/nibabel/archive/master.zip
Source0 : https://github.com/nipy/nibabel/archive/master.zip
Version : 3.2.1
Release : 2
URL : https://github.com/nipy/nibabel/archive/3.2.1/nibabel-3.2.1.tar.gz
Source0 : https://github.com/nipy/nibabel/archive/3.2.1/nibabel-3.2.1.tar.gz
Source1 : https://github.com/nipy/nibabel/archive/master.zip
Summary : Access a multitude of neuroimaging data formats
Group : Development/Tools
License : MIT
Expand All @@ -18,16 +19,15 @@ BuildRequires : buildreq-distutils3
BuildRequires : pypi(numpy)
BuildRequires : pypi(packaging)
BuildRequires : pypi(py)
BuildRequires : pypi(setuptools)
BuildRequires : pypi-pluggy
BuildRequires : pypi-pytest
BuildRequires : pypi-tox
BuildRequires : pypi-virtualenv

%description
These files implement NiBabel CI for GitHub actions.
The testing logic is implemented in tools/ci/*.sh, and these files adapt
the generic logic to the details of GH.
.. vim:syntax=rst
.. image:: https://codecov.io/gh/nipy/nibabel/branch/master/graph/badge.svg
:target: https://codecov.io/gh/nipy/nibabel

%package bin
Summary: bin components for the pypi-nibabel package.
Expand Down Expand Up @@ -62,22 +62,23 @@ Requires: python3-core
Provides: pypi(nibabel)
Requires: pypi(numpy)
Requires: pypi(packaging)
Requires: pypi(setuptools)

%description python3
python3 components for the pypi-nibabel package.


%prep
%setup -q -n nibabel-master
cd %{_builddir}/nibabel-master
%setup -q -n nibabel-3.2.1
cd %{_builddir}/nibabel-3.2.1
cd ..
%setup -q -T -n nibabel-master -b 1

%build
export http_proxy=http://127.0.0.1:9/
export https_proxy=http://127.0.0.1:9/
export no_proxy=localhost,127.0.0.1,0.0.0.0
export LANG=C.UTF-8
export SOURCE_DATE_EPOCH=1642460593
export SOURCE_DATE_EPOCH=1642522726
export GCC_IGNORE_WERROR=1
export AR=gcc-ar
export RANLIB=gcc-ranlib
Expand All @@ -93,6 +94,7 @@ python3 setup.py build
export MAKEFLAGS=%{?_smp_mflags}
rm -rf %{buildroot}
mkdir -p %{buildroot}/usr/share/package-licenses/pypi-nibabel
cp %{_builddir}/nibabel-3.2.1/COPYING %{buildroot}/usr/share/package-licenses/pypi-nibabel/9c0c415abfe603c9591ab70fa55f3c0f10cab417
cp %{_builddir}/nibabel-master/COPYING %{buildroot}/usr/share/package-licenses/pypi-nibabel/9c0c415abfe603c9591ab70fa55f3c0f10cab417
python3 -tt setup.py build install --root=%{buildroot}
echo ----[ mark ]----
Expand Down
2 changes: 1 addition & 1 deletion release
@@ -1 +1 @@
1
2
1 change: 1 addition & 0 deletions upstream
@@ -1 +1,2 @@
325432665d5765ef63e550e303886540bd09f779/nibabel-3.2.1.tar.gz
f397d7dd3b9c800005462f07e54e427fe0404d79/master.zip
1 change: 1 addition & 0 deletions versions
@@ -1 +1,2 @@
1 https://github.com/nipy/nibabel/archive/master.zip
3.2.1 https://github.com/nipy/nibabel/archive/3.2.1/nibabel-3.2.1.tar.gz

0 comments on commit db4cea3

Please sign in to comment.