Skip to content

Commit

Permalink
latest from CODA-OSS and NITRO
Browse files Browse the repository at this point in the history
  • Loading branch information
Dan Smith committed Aug 21, 2023
1 parent cbc81a3 commit 10eded0
Show file tree
Hide file tree
Showing 25 changed files with 1,439 additions and 1,615 deletions.
630 changes: 315 additions & 315 deletions UnitTest/UnitTest.vcxproj

Large diffs are not rendered by default.

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: 0 additions & 1 deletion externals/coda-oss/modules/c++/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
set(TARGET_LANGUAGE c++)

# turn on maximum warnings
if (MSVC)
# By default, there is a /W3 on the command-line from somewhere (?); adding
# /Wn results in a compiler warning.
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 @@ -18,15 +18,12 @@
* License along with this program; If not, http://www.gnu.org/licenses/.
*
*/
#pragma once
#ifndef CODA_OSS_coda_oss_type_traits_h_INCLUDED_
#define CODA_OSS_coda_oss_type_traits_h_INCLUDED_
#pragma once

#include <type_traits>

#include "CPlusPlus.h"

#include "coda_oss/namespace_.h"
namespace coda_oss
{
using std::is_trivially_copyable;
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
14 changes: 3 additions & 11 deletions externals/coda-oss/modules/c++/io/include/io/FileInputStreamIOS.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,17 +28,14 @@
#include <ios>
#include <iostream>
#include <fstream>

#include "except/Exception.h"
#include "sys/filesystem.h"
#include "io/InputStream.h"
#include "io/SeekableStreams.h"
#include "sys/filesystem.h"

#include "sys/CPlusPlus.h"
#if CODA_OSS_cpp17
#include <std/filesystem>
#endif

/*!
/*!
* \file FileInputStreamIOS.h
* \brief The InputStream representation of a file
* \todo Redefine the readln function to use getline()
Expand Down Expand Up @@ -72,11 +69,6 @@ class FileInputStreamIOS : public SeekableInputStream
*/
FileInputStreamIOS(const coda_oss::filesystem::path& inputFile,
std::ios::openmode mode = std::ios::in);
#if CODA_OSS_cpp17
FileInputStreamIOS(const std::filesystem::path& inputFile,
std::ios::openmode mode = std::ios::in);
#endif


/*!
* Alternate Constructor. Takes an input file and a mode
Expand Down
14 changes: 3 additions & 11 deletions externals/coda-oss/modules/c++/io/include/io/FileOutputStreamOS.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,8 @@
#if !defined(USE_IO_STREAMS)

#include "io/SeekableStreams.h"
#include "sys/filesystem.h"
#include "sys/File.h"

#include "sys/CPlusPlus.h"
#if CODA_OSS_cpp17
#include <std/filesystem>
#endif
#include "sys/filesystem.h"

/*!
* \file FileOutputStream.h
Expand All @@ -64,16 +59,13 @@ class CODA_OSS_API FileOutputStreamOS : public SeekableOutputStream
public:
FileOutputStreamOS() = default;

using path = coda_oss::filesystem::path; // still used in SWIG bindings

/*!
* Alternate Constructor. Takes an output file and a mode
* \param outputFile The file name
* \param creationFlags see sys::File
*/
#if CODA_OSS_cpp17
using path = std::filesystem::path;
#else
using path = coda_oss::filesystem::path;
#endif
FileOutputStreamOS(const path& outputFile,
int creationFlags = sys::File::CREATE | sys::File::TRUNCATE);

Expand Down
13 changes: 2 additions & 11 deletions externals/coda-oss/modules/c++/logging/include/logging/Setup.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,13 @@
#include <memory>
#include <string>

#include "sys/filesystem.h"
#include "mem/SharedPtr.h"
#include "logging/Logger.h"

#include "sys/CPlusPlus.h"
#if CODA_OSS_cpp17
#include <std/filesystem>
#endif
#include "sys/filesystem.h"

namespace logging
{
using path = coda_oss::filesystem::path; // still used in SWIG bindings

/*!
* \fn setupLogger
Expand All @@ -52,11 +48,6 @@ namespace logging
* \param logCount - number of rotating logs to keep (default: 0 no rotation)
* \param logBytes - number of bytes per rotating log (default: 0 no rotation)
*/
#if CODA_OSS_cpp17
using path = std::filesystem::path;
#else
using path = coda_oss::filesystem::path;
#endif
std::unique_ptr<logging::Logger> setupLogger(
const path& program,
const std::string& logLevel = "warning",
Expand Down
2 changes: 1 addition & 1 deletion externals/coda-oss/modules/c++/mt/include/mt/ThreadGroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ struct CODA_OSS_API ThreadGroup

/*!
* Creates and starts a thread from a sys::Runnable.
* \param runnable auto_ptr to sys::Runnable
* \param runnable unique_ptr to sys::Runnable
*/
void createThread(std::unique_ptr<sys::Runnable>&& runnable);

Expand Down
130 changes: 0 additions & 130 deletions externals/coda-oss/modules/c++/numpyutils/include/numpyutils/AutoPtr.h

This file was deleted.

21 changes: 1 addition & 20 deletions externals/coda-oss/modules/c++/std/include/std/type_traits
Original file line number Diff line number Diff line change
Expand Up @@ -18,30 +18,11 @@
* License along with this program; If not, http://www.gnu.org/licenses/.
*
*/
#pragma once
#ifndef CODA_OSS_std_type_traits_INCLUDED_
#define CODA_OSS_std_type_traits_INCLUDED_
#pragma once

#include <type_traits>
#include "coda_oss/type_traits.h"

// Make it (too?) easy for clients to get our various std:: implementations
#ifndef CODA_OSS_NO_is_trivially_copyable
// https://stackoverflow.com/a/31798726/8877
// workaround missing "is_trivially_copyable" in g++ < 5.0
#if defined(__GNUC__) && (__GNUC__ < 5)
#define CODA_OSS_NO_is_trivially_copyable 0 // *need* our own
#else
#define CODA_OSS_NO_is_trivially_copyable 1 // *disabled*, unless explicitly enabled
#endif
#endif

#if !CODA_OSS_NO_is_trivially_copyable
namespace std // This is slightly uncouth: we're not supposed to augment "std".
{
using coda_oss::is_trivially_copyable;
}
#endif // CODA_OSS_NO_is_trivially_copyable

#endif // CODA_OSS_std_type_traits_INCLUDED_

Loading

0 comments on commit 10eded0

Please sign in to comment.