Skip to content

Commit

Permalink
Merge branch 'main' of github.com:mdaus/nitro
Browse files Browse the repository at this point in the history
  • Loading branch information
Dan Smith committed Aug 18, 2023
2 parents d08f1c0 + 10efa99 commit fe309c4
Show file tree
Hide file tree
Showing 9 changed files with 82 additions and 123 deletions.
38 changes: 19 additions & 19 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
2.7 Changes
===========
- 12 new TREs: CSCCGA, CSCRNA, CSEPHA, CSEXRA, CSPROA, CSSFAA, CSSHPA, GRDPSB, J2KLRA, PIXQLA, SENSRB, XML_DATA_CONTENT
- Variety of minor memory leaks, access errors, and other bug fixes
- Fixed IOInterface and BandSource C++ API so overriding methods works as expected
- Several complexity level bugs
- Fixed bug in Windows involving reading and writing files larger than 4 GB
- Build system upgrades: Among other thing, building Java bindings is now easier as it's done directly through waf automatically
Please see our wiki for detailed change information on previous versions:
2.5 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes25
2.0 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes20
1.5 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes15
Wiki Home: http://nitro-nitf.sourceforge.net/
2.7 Changes
===========
- 12 new TREs: CSCCGA, CSCRNA, CSEPHA, CSEXRA, CSPROA, CSSFAA, CSSHPA, GRDPSB, J2KLRA, PIXQLA, SENSRB, XML_DATA_CONTENT
- Variety of minor memory leaks, access errors, and other bug fixes
- Fixed IOInterface and BandSource C++ API so overriding methods works as expected
- Several complexity level bugs
- Fixed bug in Windows involving reading and writing files larger than 4 GB
- Build system upgrades: Among other thing, building Java bindings is now easier as it's done directly through waf automatically

Please see our wiki for detailed change information on previous versions:

2.5 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes25

2.0 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes20

1.5 Changes: http://nitro-nitf.sourceforge.net/wikka.php?wakka=ReleaseNotes15


Wiki Home: http://nitro-nitf.sourceforge.net/
18 changes: 5 additions & 13 deletions externals/coda-oss/ReleaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,6 @@
```
_________________________
| ____ _||_ ___ __ |
| /___ \/_||_\| __\/ \ |
| // \// || \|| \\ _ \ |
| || [===||===] ||(_)| |
| || _|| || ||| ||__ | |
| \\ _/ |\_||_/||__/|| || |
| \___/ \_||_/|___/|| || |
|__________||_____________|
```
# coda-oss Release Notes
# coda-oss Release Notes

## [Release 202?-??-??](https://github.com/mdaus/coda-oss/releases/tag/202?-??-??)
## [Release 2023-08-18](https://github.com/mdaus/coda-oss/releases/tag/2023-08-18)
* New `sys::OS::getSIMDInstructionSet()` utility routine; SSE2 is required (default with 64-bit builds).
* `types::ComplexInteger` to work-around `std::complex<short>` no longer being [valid C++](https://en.cppreference.com/w/cpp/numeric/complex).
* Another round of reducing various compiler warnings (of note: `NULL` -> `nullptr`).
Expand All @@ -20,6 +9,9 @@
* Update to [e2fsprogs 1.47.0](https://e2fsprogs.sourceforge.net/e2fsprogs-release.html#1.47.0).
* Update to [xerces-c 3.2.4](https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12350542&styleName=Text&projectId=10510).
* Update to [HDF5](https://www.hdfgroup.org/) [1.14.2](https://github.com/HDFGroup/hdf5/releases/tag/hdf5-1_14_2).
* `mem::ComplexView`s renamed to be more descriptive.
* **hdf5.lite** removed, use [HighFive](https://github.com/BlueBrain/HighFive/) (included).
* added **.gitattributes** and normalized line-endings (`\n` for most text files).

## [Release 2023-06-05](https://github.com/mdaus/coda-oss/releases/tag/2023-06-05)
* *zlib* updated to [1.2.13](https://github.com/madler/zlib/releases/tag/v1.2.13).
Expand Down
1 change: 1 addition & 0 deletions externals/coda-oss/UnitTest/mem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <mem/ScratchMemory.h>
#include <mem/SharedPtr.h>
#include <mem/ComplexView.h>
#include <mem/AutoPtr.h>

namespace mem
{
Expand Down
1 change: 1 addition & 0 deletions externals/coda-oss/modules/c++/coda-oss.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@
<ClInclude Include="math\include\math\Round.h" />
<ClInclude Include="math\include\math\Utilities.h" />
<ClInclude Include="mem\include\mem\Align.h" />
<ClInclude Include="mem\include\mem\AutoPtr.h" />
<ClInclude Include="mem\include\mem\BufferView.h" />
<ClInclude Include="mem\include\mem\ComplexView.h" />
<ClInclude Include="mem\include\mem\ScopedAlignedArray.h" />
Expand Down
3 changes: 3 additions & 0 deletions externals/coda-oss/modules/c++/coda-oss.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -951,6 +951,9 @@
<ClInclude Include="hdf5.lite\include\hdf5\lite\H5_.h">
<Filter>hdf5.lite</Filter>
</ClInclude>
<ClInclude Include="mem\include\mem\AutoPtr.h">
<Filter>mem</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="pch.cpp" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,13 @@ static_assert(CODA_OSS_MAKE_VERSION_MMPB(9999, 9999, 9999, 9999) <= UINT64_MAX,

// Do this ala C++ ... we don't currently have major/minor/patch
//#define CODA_OSS_VERSION_ 20210910L // c.f. __cplusplus
#define CODA_OSS_VERSION_ 2023 ## 0006 ## 0005 ## 0000 ## L
#define CODA_OSS_VERSION_ 2023 ## 0008 ## 0018 ## 0000 ## L

// Use the same macros other projects might want to use; overkill for us.
#define CODA_OSS_VERSION_MAJOR 2023
#define CODA_OSS_VERSION_MINOR 6
#define CODA_OSS_VERSION_PATCH 5
#define CODA_OSS_VERSION_BUILD 0
#define CODA_OSS_VERSION_MINOR 8
#define CODA_OSS_VERSION_PATCH 18 // a.k.a. "point," but too similar to "patch."
#define CODA_OSS_VERSION_BUILD 0 // a.k.a. "patch," but too similar to "point."
#define CODA_OSS_VERSION CODA_OSS_MAKE_VERSION_MMPB(CODA_OSS_VERSION_MAJOR, CODA_OSS_VERSION_MINOR, CODA_OSS_VERSION_PATCH, CODA_OSS_VERSION_BUILD)

namespace config
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
/* =========================================================================
* This file is part of numpyutils-c++
* This file is part of mem-c++
* =========================================================================
*
* (C) Copyright 2004 - 2018, MDA Information Systems LLC
* (C) Copyright 2022, Maxar Technologies, Inc.
*
* numpyutils-c++ is free software; you can redistribute it and/or modify
* mem-c++ is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
Expand All @@ -22,12 +22,12 @@
*/

#pragma once
#ifndef CODA_OSS_numpyutils_AutoPtr_h_INCLUDED_
#define CODA_OSS_numpyutils_AutoPtr_h_INCLUDED_
#ifndef CODA_OSS_mem_AutoPtr_h_INCLUDED_
#define CODA_OSS_mem_AutoPtr_h_INCLUDED_

#include <memory>

namespace numpyutils
namespace mem
{
// std::auto_ptr (deprecated in C++17) is copyable while
// std::unique_ptr (new in C++11) isn't. While unique_ptr
Expand Down Expand Up @@ -123,8 +123,9 @@ class AutoPtr final

operator std::unique_ptr<T>& () { return ptr_; }
operator const std::unique_ptr<T>& () const { return ptr_; }

};

} // namespace numpyutils
} // namespace mem

#endif // CODA_OSS_numpyutils_AutoPtr_h_INCLUDED_
#endif // CODA_OSS_mem_AutoPtr_h_INCLUDED_
42 changes: 41 additions & 1 deletion externals/coda-oss/modules/c++/mem/unittests/test_unique_ptr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@
*
*/

#include <std/memory>
#include <memory>

#include <mem/SharedPtr.h>
#include <mem/AutoPtr.h>

#include "TestCase.h"

Expand Down Expand Up @@ -87,8 +88,47 @@ TEST_CASE(test_make_unique)
}
}

static void f(const std::string& testName, mem::AutoPtr<Foo> p)
{
TEST_ASSERT_NOT_NULL(p.get());
TEST_ASSERT_EQ(123, p->mVal);
}
TEST_CASE(memAutoPtr)
{
{
mem::AutoPtr<Foo> fooCtor;
TEST_ASSERT_NULL(fooCtor.get());

fooCtor.reset(new Foo(123));
TEST_ASSERT_NOT_NULL(fooCtor.get());
TEST_ASSERT_EQ(123, fooCtor->mVal);
}
{
mem::AutoPtr<Foo> fooCtor(new Foo(123));
TEST_ASSERT_NOT_NULL(fooCtor.get());
TEST_ASSERT_EQ(123, fooCtor->mVal);
}
{
mem::AutoPtr<Foo> fooCtor(new Foo(123));
mem::AutoPtr<Foo> other(fooCtor);
TEST_ASSERT_NOT_NULL(other.get());
TEST_ASSERT_EQ(123, other->mVal);
}
{
mem::AutoPtr<Foo> fooCtor(new Foo(123));
f(testName, fooCtor);
TEST_ASSERT_NULL(fooCtor.get());
}
{
std::unique_ptr<Foo> fooCtor(new Foo(123));
f(testName, std::move(fooCtor));
TEST_ASSERT_NULL(fooCtor.get());
}
}


TEST_MAIN(
TEST_CHECK(testStdUniquePtr);
TEST_CHECK(test_make_unique);
TEST_CHECK(memAutoPtr);
)

This file was deleted.

0 comments on commit fe309c4

Please sign in to comment.