Skip to content

Commit

Permalink
Merge branch 'main' into feature/version
Browse files Browse the repository at this point in the history
  • Loading branch information
Dan Smith committed Jun 5, 2023
2 parents a1cb2f0 + 5b9c456 commit 4e2b904
Show file tree
Hide file tree
Showing 1,281 changed files with 201,872 additions and 9,855 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ name: "CodeQL"

on:
push:
branches: [ "master" ]
branches: [ "main" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "master" ]
branches: [ "main" ]
schedule:
- cron: '19 23 * * 3'

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/frequent_check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: test
run: |
cd build
ctest -C Release
ctest -C Release --output-on-failure
build-linux:
Expand All @@ -48,9 +48,9 @@ jobs:
- name: make
run: |
cd build
cmake --build . -j 2
cmake --build . -j 8
cmake --build . --target install
- name: test
run: |
cd build
ctest
ctest --output-on-failure
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,10 @@ six/Makefile
six/modules/**/Makefile
*_config.h
*_config.hpp
# ignore build directories ...
build/
# ... but not coda-oss/build
!/externals/coda-oss/build/

# Drivers
six/projects/csm/external/csm-master/
Expand Down
2 changes: 1 addition & 1 deletion 0_build
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
rm -r -f out && mkdir out && cd out
cmake -DCMAKE_INSTALL_PREFIX=install-autobuild -DENABLE_PYTHON=false ..

cmake --build . -j 2
cmake --build . -j 6
exec cmake --build . --target install


Expand Down
18 changes: 6 additions & 12 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,25 +1,19 @@
cmake_minimum_required(VERSION 3.14)
project(six-library)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD 14)
set(CXX_STANDARD_REQUIRED true)

if (${CMAKE_PROJECT_NAME} STREQUAL six-library)
# we are the top-level project and are responsible for configuration

# set up warnings
# Always turn on "warnings as errors" to avoid lots of (meaningless?) build output;
# we'll dial-back warnings as necessary.
if (MSVC)
# set warning level to /W3
string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
string(REGEX REPLACE "/W[0-4]" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
add_compile_options(/W3 /wd4290 /wd4512)
add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS)
add_compile_options(/WX) # warnings as errors
add_compile_options(/MP) # multi-processor build
elseif (UNIX)
add_compile_options(
-Wno-deprecated
-Wno-unused-value
-Wno-unused-but-set-variable
)
add_compile_options(-Werror) # warnings as errors
endif()

if (EXISTS "${CMAKE_BINARY_DIR}/conan_paths.cmake")
Expand Down
153 changes: 84 additions & 69 deletions ReleaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,69 +1,84 @@
![alt tag](https://raw.github.com/ngageoint/six-library/master/docs/six_logo.png?raw=true)

# SIX [Release](https://github.com/ngageoint/six-library/releases) Notes

## [Version 3.1.15](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.15); March 13, 2023
* [coda-oss](https://github.com/mdaus/coda-oss) version [2023-03-10](https://github.com/mdaus/coda-oss/releases/tag/2023-03-10)
* [nitro](https://github.com/mdaus/nitro) version [2.10.13](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.13)
* CPHD 1.1.0 fixes.
* Fixed `slantToImagePartials()` not operating in slant plane.
* Final C++11 🤞🏻 release; future releases will be C++14 from [main](https://github.com/ngageoint/six-library/tree/main).

## [Version 3.1.14](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.14); August 30, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-08-30](https://github.com/mdaus/coda-oss/releases/tag/2022-08-30)
* [nitro](https://github.com/mdaus/nitro) version [2.10.12](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.12)
* Routines that "traffic" in XML strings (e.g., `parseDataFromString()` or `toXMLString()`) now use
`std::u8string` (actually `coda_oss::u8string`) instead of `std::string`.
* Fixed memory leak in `ComplexXMLParser`.
* Files in **six/projects/csm/external/csm-3.0.4** are unchanged (almost!) from [CSM 3.0.4](https://github.com/ngageoint/csm/releases/tag/v3.0.4).
* ~~Final C++11 release 🤞🏻; future releases will be C++14 from [main](https://github.com/ngageoint/six-library/tree/main).~~

## [Version 3.1.13](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.13); August 2, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-08-02](https://github.com/mdaus/coda-oss/releases/tag/2022-08-02)
* [nitro](https://github.com/mdaus/nitro) version [2.10.11](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.11)
* Better handling of optional error fields
* `vtsSetEnv` command

## [Version 3.1.12](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.12); June 29, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-06-29](https://github.com/mdaus/coda-oss/releases/tag/2022-06-29)
* [nitro](https://github.com/mdaus/nitro) version [2.10.10](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.10)
* Support `OTHER.*` polarization values in XML from SIDD 3.0/SICD 1.3
* Updated to [CSM 3.0.4](https://github.com/ngageoint/csm/releases/tag/v3.0.4).
* Implements the back-end C++ changes from #351.

* Support writing multiple CPHD channels to file from a single wideband buffer.
* Support 1-, 2-, and 4-byte datatypes within the `PVPBlock`. All user-defined PVP were hard-coded to 8-byte types before.
* Make `cphd::PVPBlock` used `std::map` to store added PVP parameters instead of `std::unordered_map`;
this was needed to support older versions of SWIG.
* Fix signal datatype in PVP to be 8-byte integer according to the CPHD v1.x spec. Was set to double previously.

* Fix `getARPVector()` and `getARPVelocityVector()` methods to return vectors filled with constant values;
these values are used when performing `imageToSceneAdjustment`.

## [Version 3.1.11](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.11); May 13, 2022
* Lastest [coda-oss](https://github.com/mdaus/coda-oss) and [nitro](https://github.com/mdaus/nitro) (updates from **master**, no new releases)
* Fix bug in XML serializaton where `double`s were given a class of `xs::double` (two `:`s) instead of `xs:double`.

## [Version 3.1.10](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.10); May 3, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-05-03](https://github.com/mdaus/coda-oss/releases/tag/2022-05-03)
* [nitro](https://github.com/mdaus/nitro) version [2.10.9](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.9)
* improve performance of *AMP8I_PHS8I* reading.

## [Version 3.1.9](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.9); February 22, 2022 (aka 2/22/22)
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-02-22](https://github.com/mdaus/coda-oss/releases/tag/2022-02-22)
* [nitro](https://github.com/mdaus/nitro) version [2.10.8](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.8)
* replace KDTree *`std::complex<float>` -> AMP8I_PHS8I conversion* with a
["math based" approach](https://github.com/ngageoint/six-library/pull/537#issuecomment-1026453353).
* restore SIDD 2.0 `AngleMagnitudeType`, SIDD 3.0 is `AngleZeroToExclusive360MagnitudeType`
* bugfix: "We found a bug/mistake/error in **six.sicd/source/RadarCollection.cpp**, specifically the function to rotate the Area\Plane\SegmentList block."

## [Version 3.1.8](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.8); December 13, 2021
* [coda-oss](https://github.com/mdaus/coda-oss) version [2021-12-13](https://github.com/mdaus/coda-oss/releases/tag/2021-12-13)
* [nitro](https://github.com/mdaus/nitro) version [2.10.7](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.7)
* write [8AMPI_PHSI](https://github.com/ngageoint/six-library/tree/feature/8AMPI_PHSI) files
* update schema for [SIDD 3.0](https://github.com/ngageoint/six-library/tree/feature/SIDD-3.0)

-----

## Contact
February 2022, Dan <dot> Smith <at> Maxar <dot> <see><oh><em>
![alt tag](https://raw.github.com/ngageoint/six-library/master/docs/six_logo.png?raw=true)

# SIX [Release](https://github.com/ngageoint/six-library/releases) Notes

## [Version 3.2.?](https://github.com/ngageoint/six-library/releases/tag/SIX-3.2.?); ??? ??, 2023
* [coda-oss](https://github.com/mdaus/coda-oss) version [2023-??-??](https://github.com/mdaus/coda-oss/releases/tag/2023-??-??)
* [nitro](https://github.com/mdaus/nitro) version [2.11.?](https://github.com/mdaus/nitro/releases/tag/NITRO-2.11.?)
* Integrated [ISM v201609](https://www.dni.gov/index.php/who-we-are/organizations/ic-cio/ic-cio-related-menus/ic-cio-related-links/ic-technical-specifications/information-security-marking-metadata) into SIDD 3.0.

## [Version 3.2.2](https://github.com/ngageoint/six-library/releases/tag/SIX-3.2.2); December 14, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-12-14](https://github.com/mdaus/coda-oss/releases/tag/2022-12-14)
* [nitro](https://github.com/mdaus/nitro) version [2.11.2](https://github.com/mdaus/nitro/releases/tag/NITRO-2.11.2)
* [Fixed slantToImagePartials not operating in slant plane](https://github.com/ngageoint/six-library/pull/613)
* Continued effort at getting unittests to run in other projects.

## [Version 3.2.1](https://github.com/ngageoint/six-library/releases/tag/SIX-3.2.1); November 4, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-11-04](https://github.com/mdaus/coda-oss/releases/tag/2022-11-04)
* [nitro](https://github.com/mdaus/nitro) version [2.11.1](https://github.com/mdaus/nitro/releases/tag/NITRO-2.11.1)
* cphd::PhaseSGN accepts both `1` and `+1`, toString() is now `"1"` instead of `"+1"`.
* CPHD XML parser handles URI's for versions 1.0.0, 1.0.1, and 1.1.0; unit test updated to test metadata parsing extensions

## [Version 3.2.0](https://github.com/ngageoint/six-library/releases/tag/SIX-3.2.0); August 30, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-08-30_cpp14](https://github.com/mdaus/coda-oss/releases/tag/2022-08-30_cpp14)
* [nitro](https://github.com/mdaus/nitro) version [2.11.0](https://github.com/mdaus/nitro/releases/tag/NITRO-2.11.0)
* This version is identical to [Version 3.1.14](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.14) except that C++14 is now required.

## [Version 3.1.14](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.14); August 30, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-08-30](https://github.com/mdaus/coda-oss/releases/tag/2022-08-30)
* [nitro](https://github.com/mdaus/nitro) version [2.10.12](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.12)
* Routines that "traffic" in XML strings (e.g., `parseDataFromString()` or `toXMLString()`) now use
`std::u8string` (actually `coda_oss::u8string`) instead of `std::string`.
* Fixed memory leak in `ComplexXMLParser`.
* Files in **six/projects/csm/external/csm-3.0.4** are unchanged (almost!) from [CSM 3.0.4](https://github.com/ngageoint/csm/releases/tag/v3.0.4).
* Final C++11 release 🤞🏻; future releases will be C++14 from [main](https://github.com/ngageoint/six-library/tree/main).

## [Version 3.1.13](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.13); August 2, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-08-02](https://github.com/mdaus/coda-oss/releases/tag/2022-08-02)
* [nitro](https://github.com/mdaus/nitro) version [2.10.11](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.11)
* Better handling of optional error fields
* `vtsSetEnv` command

## [Version 3.1.12](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.12); June 29, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-06-29](https://github.com/mdaus/coda-oss/releases/tag/2022-06-29)
* [nitro](https://github.com/mdaus/nitro) version [2.10.10](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.10)
* Support `OTHER.*` polarization values in XML from SIDD 3.0/SICD 1.3
* Updated to [CSM 3.0.4](https://github.com/ngageoint/csm/releases/tag/v3.0.4).
* Implements the back-end C++ changes from #351.

* Support writing multiple CPHD channels to file from a single wideband buffer.
* Support 1-, 2-, and 4-byte datatypes within the `PVPBlock`. All user-defined PVP were hard-coded to 8-byte types before.
* Make `cphd::PVPBlock` used `std::map` to store added PVP parameters instead of `std::unordered_map`;
this was needed to support older versions of SWIG.
* Fix signal datatype in PVP to be 8-byte integer according to the CPHD v1.x spec. Was set to double previously.

* Fix `getARPVector()` and `getARPVelocityVector()` methods to return vectors filled with constant values;
these values are used when performing `imageToSceneAdjustment`.

## [Version 3.1.11](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.11); May 13, 2022
* Lastest [coda-oss](https://github.com/mdaus/coda-oss) and [nitro](https://github.com/mdaus/nitro) (updates from **master**, no new releases)
* Fix bug in XML serializaton where `double`s were given a class of `xs::double` (two `:`s) instead of `xs:double`.

## [Version 3.1.10](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.10); May 3, 2022
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-05-03](https://github.com/mdaus/coda-oss/releases/tag/2022-05-03)
* [nitro](https://github.com/mdaus/nitro) version [2.10.9](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.9)
* improve performance of *AMP8I_PHS8I* reading.

## [Version 3.1.9](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.9); February 22, 2022 (aka 2/22/22)
* [coda-oss](https://github.com/mdaus/coda-oss) version [2022-02-22](https://github.com/mdaus/coda-oss/releases/tag/2022-02-22)
* [nitro](https://github.com/mdaus/nitro) version [2.10.8](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.8)
* replace KDTree *`std::complex<float>` -> AMP8I_PHS8I conversion* with a
["math based" approach](https://github.com/ngageoint/six-library/pull/537#issuecomment-1026453353).
* restore SIDD 2.0 `AngleMagnitudeType`, SIDD 3.0 is `AngleZeroToExclusive360MagnitudeType`
* bugfix: "We found a bug/mistake/error in **six.sicd/source/RadarCollection.cpp**, specifically the function to rotate the Area\Plane\SegmentList block."

## [Version 3.1.8](https://github.com/ngageoint/six-library/releases/tag/SIX-3.1.8); December 13, 2021
* [coda-oss](https://github.com/mdaus/coda-oss) version [2021-12-13](https://github.com/mdaus/coda-oss/releases/tag/2021-12-13)
* [nitro](https://github.com/mdaus/nitro) version [2.10.7](https://github.com/mdaus/nitro/releases/tag/NITRO-2.10.7)
* write [8AMPI_PHSI](https://github.com/ngageoint/six-library/tree/feature/8AMPI_PHSI) files
* update schema for [SIDD 3.0](https://github.com/ngageoint/six-library/tree/feature/SIDD-3.0)

-----

## Contact
February 2022, Dan <dot> Smith <at> Maxar <dot> <see><oh><em>
2 changes: 1 addition & 1 deletion UnitTest/TestCase.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ inline void assert_almost_eq(const std::string& testName, long double X1, long d

#undef TEST_EXCEPTION
#undef TEST_THROWS
#define TEST_EXCEPTION(X) (void)testName; try{ (X); TEST_FAIL("Should have thrown exception"); } catch (const except::Throwable&){} catch (const except::Throwable11&){}
#define TEST_EXCEPTION(X) (void)testName; try{ (X); TEST_FAIL("Should have thrown exception"); } catch (const except::Throwable&){}
#define TEST_THROWS(X) (void)testName; try{ (X); TEST_FAIL("Should have thrown exception"); } catch (...){}


Expand Down
6 changes: 6 additions & 0 deletions UnitTest/UnitTest.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
<LanguageStandard_C>stdc11</LanguageStandard_C>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
Expand All @@ -82,6 +83,7 @@
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<EnableEnhancedInstructionSet>AdvancedVectorExtensions2</EnableEnhancedInstructionSet>
<LanguageStandard_C>stdc11</LanguageStandard_C>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
Expand Down Expand Up @@ -298,6 +300,10 @@
<Project>{62aad4dd-35ba-41a0-8263-1f4dfd755689}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Xml Include="..\six\modules\c++\six.sidd\tests\sample_xml\sidd200.xml" />
<Xml Include="..\six\modules\c++\six.sidd\tests\sample_xml\sidd300.xml" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
Expand Down
8 changes: 8 additions & 0 deletions UnitTest/UnitTest.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -183,4 +183,12 @@
<UniqueIdentifier>{8d8a73fb-96b1-4bdf-a055-2b34d7f94e14}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<Xml Include="..\six\modules\c++\six.sidd\tests\sample_xml\sidd200.xml">
<Filter>sidd</Filter>
</Xml>
<Xml Include="..\six\modules\c++\six.sidd\tests\sample_xml\sidd300.xml">
<Filter>sidd</Filter>
</Xml>
</ItemGroup>
</Project>
4 changes: 2 additions & 2 deletions UnitTest/pch.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@

#include <import/scene.h>
#include <import/six.h>
#include <import./six/sicd.h>
#include <import./six/sidd.h>
#include <import/six/sicd.h>
#include <import/six/sidd.h>
#include <import/cphd.h>
#include <import/cphd03.h>

Expand Down
4 changes: 2 additions & 2 deletions copy_externals.csh
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#!/bin/csh -f

rm -r -f tmp && mkdir tmp && cd tmp
git clone --depth 1 -b master [email protected]:mdaus/coda-oss.git
git clone --depth 1 -b main [email protected]:mdaus/coda-oss.git
rm -r -f coda-oss/.git

git clone --depth 1 -b master [email protected]:mdaus/nitro.git
git clone --depth 1 -b main [email protected]:mdaus/nitro.git
rm -r -f nitro/.git
rm -r -f nitro/externals

Expand Down
23 changes: 12 additions & 11 deletions externals/coda-oss/.github/workflows/build_unittest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ jobs:
build-cmake-windows:
strategy:
matrix:
os: [windows-2019]
os: [windows-latest]
python-version: ['3.7']
name: ${{ matrix.os }}-${{ matrix.python-version }}-CMake
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install python dependencies
Expand Down Expand Up @@ -46,10 +46,10 @@ jobs:
- name: test
run: |
cd target-Release
ctest -C Release
ctest -C Release --output-on-failure
cd ..
cd target-Debug
ctest -C Debug
ctest -C Debug --output-on-failure
build-linux-cmake:
strategy:
Expand All @@ -59,9 +59,9 @@ jobs:
name: ${{ matrix.os }}-${{ matrix.python-version }}-CMake
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install python dependencies
Expand All @@ -77,15 +77,16 @@ jobs:
- name: build
run: |
cd target
cmake --build . -j
# "-j" spawns too many processes causing GCC to crash
cmake --build . -j 12
- name: install
run: |
cd target
cmake --build . --target install
- name: test
run: |
cd target
ctest
ctest --output-on-failure
build-waf:
strategy:
Expand All @@ -96,9 +97,9 @@ jobs:
name: ${{ matrix.os }}-${{ matrix.python-version }}-waf
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: configure_with_swig
Expand Down
Loading

0 comments on commit 4e2b904

Please sign in to comment.