diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 539a46e..3f009e6 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -15,13 +15,20 @@ jobs:
     runs-on: ${{ matrix.os }}
     strategy:
       matrix:
-        os: [ubuntu-22.04, macos-12, macos-13]
-        compiler: [gfortran-10, gfortran-11, gfortran-12, gfortran-13]
-        exclude:
-          - os: macos-12
-            compiler: gfortran-10
-          - os: macos-13
+        os: [ubuntu-22.04, ubuntu-24.04, macos-13, macos-14]
+        compiler: [gfortran-11, gfortran-12, gfortran-13]
+        # gfortran-10 is only on ubuntu-22.04
+        # gfortran-14 is available on ubuntu-24.04
+        include:
+          - os: ubuntu-22.04
             compiler: gfortran-10
+          - os: ubuntu-24.04
+            compiler: gfortran-14
+        exclude:
+          - os: ubuntu-24.04
+            compiler: gfortran-11
+          - os: ubuntu-22.04
+            compiler: gfortran-13
 
       # fail-fast if set to 'true' here is good for production, but when
       # debugging, set to 'false'. fail-fast means if *any* ci test in the matrix fails
@@ -65,12 +72,12 @@ jobs:
           mkdir -p build
           cd build
           cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
-          make -j$(nproc)
+          make -j4
 
       - name: Build Tests
         run: |
           cd build
-          make -j$(nproc) tests
+          make -j4 tests
 
       - name: Run Tests
         run: |
@@ -141,12 +148,12 @@ jobs:
           mkdir -p build
           cd build
           cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
-          make -j$(nproc)
+          make -j4
 
       - name: Build Tests
         run: |
           cd build
-          make -j$(nproc) tests
+          make -j4 tests
 
       - name: Run Tests
         run: |
@@ -197,12 +204,12 @@ jobs:
           mkdir -p build
           cd build
           cmake .. -DCMAKE_Fortran_COMPILER=${FC} -DCMAKE_INSTALL_PREFIX=${HOME}/Software/gFTL -DCMAKE_PREFIX_PATH=${HOME}/Software/GFE
-          make -j$(nproc)
+          make -j4
 
       - name: Build Tests
         run: |
           cd build
-          make -j$(nproc) tests
+          make -j4 tests
 
       - name: Run Tests
         run: |
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8f0c4c1..ce64bd0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -4,7 +4,7 @@ if (COMMAND cmake_policy)
 endif (COMMAND cmake_policy)
 
 project (GFTL
-  VERSION 1.12.0
+  VERSION 1.13.0
   LANGUAGES NONE)
 
 if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
diff --git a/ChangeLog.MD b/ChangeLog.MD
index 24b2ea2..98c6763 100644
--- a/ChangeLog.MD
+++ b/ChangeLog.MD
@@ -3,6 +3,20 @@
 ## Unreleased
 
 
+### Fixed
+
+- Change use of `spread` in `include/v2/parameters/define_derived_macros.m4` to `reshape` to avoid NVHPC issue
+
+### Added
+
+- Enabled feature that allows pointers into container objects to remain valid when container grows/shrinks.  This ability is already baked into the polymorphic case where `MOVE_ALLOC()` is used.  Now if one uses `#define T_deferred` gFTL will also use a wrapper type with an allocatable component and `MOVE_ALLOC()` under the hood.
+
+### Changed
+
+- Update CI to remove `macos-12`, add `macos-14` and `ubuntu-24.04`
+
+## [1.13.0] - 2024-03-20
+
 ### Fixed
 
 - Implemented workarounds for ifx compiler and v1 interfaces. v2 tests were fine.
diff --git a/README.md b/README.md
index e8a2d4b..701a5c4 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,3 @@
-[![Build Status](https://travis-ci.com/Goddard-Fortran-Ecosystem/gFTL.svg?branch=master)](https://travis-ci.com/Goddard-Fortran-Ecosystem/gFTL)
 [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
 
 This package generates containers (Vector, Set, Map, ...) with Fortran interfaces.   It is essentially a brute force analog of C++ STL.
diff --git a/include/v2/parameters/cpp_copy.m4 b/include/v2/parameters/cpp_copy.m4
index 3da984d..e405e70 100644
--- a/include/v2/parameters/cpp_copy.m4
+++ b/include/v2/parameters/cpp_copy.m4
@@ -37,6 +37,7 @@ cpp_copy(default)
 cpp_copy(rank)
 cpp_copy(shape)
 cpp_copy(polymorphic)
+cpp_copy(deferred)
 
 cpp_copy(FREE,x)
 cpp_copy(COPY,lhs,rhs)
diff --git a/include/v2/parameters/cpp_undef.m4 b/include/v2/parameters/cpp_undef.m4
index df5ba45..c3a6ed3 100644
--- a/include/v2/parameters/cpp_undef.m4
+++ b/include/v2/parameters/cpp_undef.m4
@@ -34,6 +34,7 @@ cpp_undef(rank)
 cpp_undef(shape)
 cpp_undef(extents)
 cpp_undef(polymorphic)
+cpp_undef(deferred)
 
 cpp_undef(FREE)
 cpp_undef(COPY)
diff --git a/include/v2/parameters/define_derived_macros.m4 b/include/v2/parameters/define_derived_macros.m4
index 04191dd..a761280 100644
--- a/include/v2/parameters/define_derived_macros.m4
+++ b/include/v2/parameters/define_derived_macros.m4
@@ -302,7 +302,7 @@ define(__T,`__`'_T()')
 #        define __T()_dimension_component__ __T()_dimension_result__
 #        define __T()_dimension_string__ __T()_shape_string__
 #        ifndef __T()_default__
-#            define __T()_default__ reshape([__T()_type__ :: ],spread(0,1,__T()_rank))
+#            define __T()_default__ reshape([__T()_type__ :: ],reshape([0],shape=[__T()_rank],pad=[0]))
 #        endif
 #    endif
 #    define __T()_dimension_dummy__ __T()_dimension_component__
diff --git a/tools/ci-install-cmake.sh b/tools/ci-install-cmake.sh
index 086ac65..59e01ca 100644
--- a/tools/ci-install-cmake.sh
+++ b/tools/ci-install-cmake.sh
@@ -10,7 +10,7 @@ if [ ! -d "${HOME}/local/cmake/bin" ] ; then
    cd cmake-${cmake_ver}
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=${HOME}/local/cmake
-   make -j$(nproc)
+   make -j4
    make install/strip
    cd ../.. && rm -r cmake-${cmake_ver}
 fi
diff --git a/tools/ci-install-gfe.bash b/tools/ci-install-gfe.bash
index 2c15ad7..b2aba65 100755
--- a/tools/ci-install-gfe.bash
+++ b/tools/ci-install-gfe.bash
@@ -17,6 +17,6 @@ do
    cd ${GFE_DIR}/${repo}
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=${GFE_INSTALL_DIR} -DCMAKE_PREFIX_PATH=${GFE_INSTALL_DIR}
-   make -j$(nproc) install
+   make -j4 install
 done