Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge to staging #337

Open
wants to merge 1,163 commits into
base: staging
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1163 commits
Select commit Hold shift + click to select a range
7ede2f7
initial implementation of SaveFileModel() and IStreamSaveable
nam20485 Apr 20, 2024
8ab7fab
enable RECURSIVE for doxygen
nam20485 Apr 20, 2024
f941006
Merge branch 'nam20485' into write-out
nam20485 Apr 20, 2024
56d4b2e
Merge branch 'development' into dependabot/github_actions/github/code…
nam20485 Apr 20, 2024
29f89ca
Bump github/codeql-action from 3.24.6 to 3.25.1 (#275)
nam20485 Apr 20, 2024
fa02ec4
Bump dawidd6/action-download-artifact from 3.1.2 to 3.1.4
dependabot[bot] Apr 20, 2024
685038c
Bump dawidd6/action-download-artifact from 3.1.2 to 3.1.4 (#264)
nam20485 Apr 21, 2024
7b006a2
Bump docker/setup-buildx-action from 3.1.0 to 3.3.0
dependabot[bot] Apr 21, 2024
7d35cbd
Bump docker/setup-buildx-action from 3.1.0 to 3.3.0 (#269)
nam20485 Apr 21, 2024
9c7940f
Merge branch 'development' into nam20485
nam20485 Apr 21, 2024
eba6c4c
enable RECURSIVE for doxygen (#278)
nam20485 Apr 21, 2024
c8e9993
move CODE_OF_CONDUCT to docs/
nam20485 Apr 21, 2024
06d3bb8
Merge branch 'development' into dependabot/github_actions/actions/che…
nam20485 Apr 21, 2024
84f4bd1
Merge branch 'development' into dependabot/github_actions/docker/buil…
nam20485 Apr 21, 2024
310fd64
Bump actions/checkout from 4.1.1 to 4.1.2 (#262)
nam20485 Apr 21, 2024
1732a3c
Merge branch 'development' into dependabot/github_actions/docker/buil…
nam20485 Apr 21, 2024
808d06b
Bump docker/build-push-action from 5.2.0 to 5.3.0 (#259)
nam20485 Apr 21, 2024
9a2037f
update README to expand building and running instructions
nam20485 Apr 21, 2024
b651101
Merge branch 'development' into nam20485
nam20485 Apr 21, 2024
9eb27da
update README to expand building and running instructions (#281)
nam20485 Apr 21, 2024
a609638
add communication methods to README
nam20485 Apr 21, 2024
e63090e
Merge branch 'nam20485' of github.com:nam20485/OdbDesign into nam20485
nam20485 Apr 21, 2024
62c43b0
Merge branch 'development' into nam20485
nam20485 Apr 21, 2024
3e19e37
merge to development (#283)
nam20485 Apr 21, 2024
710badc
Bump actions/configure-pages from 4.0.0 to 5.0.0
dependabot[bot] Apr 22, 2024
8198000
use default un/pw if none supplied in environment
nam20485 Apr 22, 2024
a5883dd
use default un/pw if none supplied in environment (#290)
nam20485 Apr 22, 2024
c243796
fix FileArchive list response object name
nam20485 Apr 22, 2024
2548e28
Merge branch 'development' into dependabot/github_actions/actions/con…
nam20485 Apr 22, 2024
873451f
Merge branch 'development' into nam20485
nam20485 Apr 22, 2024
26f5784
Merge branch 'nam20485' into write-out
nam20485 Apr 22, 2024
c220801
Bump actions/configure-pages from 4.0.0 to 5.0.0 (#289)
nam20485 Apr 22, 2024
f240e5a
Bump actions/checkout from 4.1.2 to 4.1.3
dependabot[bot] Apr 22, 2024
f3e18b7
Bump actions/checkout from 4.1.2 to 4.1.3 (#285)
nam20485 Apr 22, 2024
cdd239e
Bump actions/deploy-pages from 4.0.4 to 4.0.5
dependabot[bot] Apr 22, 2024
008383a
Bump actions/deploy-pages from 4.0.4 to 4.0.5 (#287)
nam20485 Apr 23, 2024
1596bf9
Bump actions/dependency-review-action from 4.1.3 to 4.2.5
dependabot[bot] Apr 23, 2024
533d003
Bump actions/dependency-review-action from 4.1.3 to 4.2.5 (#288)
nam20485 Apr 23, 2024
622323b
Bump actions/upload-artifact from 4.3.1 to 4.3.3
dependabot[bot] Apr 23, 2024
56964f5
remove duplicated #include's
nam20485 Apr 23, 2024
494d750
add ISaveable interface
nam20485 Apr 23, 2024
d22717f
use static_cast instead of c-style cast
nam20485 Apr 23, 2024
4f05e6f
create ISaveable hierarchy for saving the FileArchive and its constit…
nam20485 Apr 23, 2024
de5af90
compression and moving of saved file archive working
nam20485 Apr 23, 2024
32698f6
rename to compress_dir() and use top-level directory name as the root…
nam20485 Apr 24, 2024
6758dac
hide compress_dir() in ArchiveExtractor class member
nam20485 Apr 24, 2024
13b8ae1
Bump actions/upload-artifact from 4.3.1 to 4.3.3 (#293)
nam20485 Apr 24, 2024
a5ff4d4
call archive_write_finish_entry after writing each entry
nam20485 Apr 24, 2024
244c647
rename file variable
nam20485 Apr 25, 2024
7bc4267
implement Save(ostream) for two classes
nam20485 Apr 25, 2024
6e4a0da
implement list of directories to skip deleting during tests
nam20485 Apr 25, 2024
1cdb12c
add FileReader class test cases
nam20485 Apr 25, 2024
e974448
add and use FileReader class to hide implementation details for readi…
nam20485 Apr 25, 2024
3867524
use binary mode and unbuffered for reading files during compression
nam20485 Apr 25, 2024
09fad7d
add archive test cases
nam20485 Apr 25, 2024
ace4b68
fix FileReader test cases and actually use buffered strategy for buff…
nam20485 Apr 25, 2024
0d20724
add methods for getting test data files dir
nam20485 Apr 25, 2024
b7d88ca
use enum instead of bool for BufferStrategy
nam20485 Apr 25, 2024
64a7618
rename constant
nam20485 Apr 25, 2024
69bccbb
use enum for buffer strategy
nam20485 Apr 25, 2024
e9ea965
cleanup
nam20485 Apr 25, 2024
6a4604e
fix error
nam20485 Apr 25, 2024
2548a47
add EnumMap class
nam20485 Apr 25, 2024
7ba31b9
add contains() methods to EnumMap
nam20485 Apr 26, 2024
296e009
minor refactor
nam20485 Apr 26, 2024
7b09ea7
add str_icmp()
nam20485 Apr 26, 2024
bc8df1c
export RgbColor type
nam20485 Apr 26, 2024
dd25a8a
matrix file Save() complete- handles enums
nam20485 Apr 26, 2024
dbf268c
remove case-insensitive compare kruft from EnumMap
nam20485 Apr 26, 2024
24247b4
add IsLinux() andf IsApple() functions
nam20485 Apr 26, 2024
a347c84
add empty CrossPlatform class
nam20485 Apr 26, 2024
deb1f74
put EnumMap class into Utils namespace
nam20485 Apr 26, 2024
3ab7c53
add failed attempt at find_str_icmp()
nam20485 Apr 26, 2024
893f412
add macro defines for IS_WINDOWS, etc.
nam20485 Apr 26, 2024
092e62a
implement localtime_safe
nam20485 Apr 26, 2024
58350cd
add transitive header include excplicitly
nam20485 Apr 26, 2024
0747542
return const& bc we don't need to make a copy of the string values we…
nam20485 Apr 27, 2024
a3cdf0b
minor refactor
nam20485 Apr 27, 2024
96cd0d2
add find_str_icmp() methods
nam20485 Apr 27, 2024
f924776
add #include header
nam20485 Apr 27, 2024
f4ca2c2
remove unused header include
nam20485 Apr 27, 2024
1478728
add vcpkg install directions to README
nam20485 Apr 27, 2024
bbcb687
Merge branch 'development' into nam20485
nam20485 Apr 27, 2024
daf86a7
Merge branch 'nam20485' into write-out
nam20485 Apr 27, 2024
f967dc5
fix build command
nam20485 Apr 27, 2024
0f6f791
fix some warnings/errors on linux
nam20485 Apr 27, 2024
ea1719e
add windows implementations of getenv_safe() and tmpname_safe()
nam20485 Apr 27, 2024
2e51ce3
remove commented code
nam20485 Apr 27, 2024
0e0b0b9
remove commented code
nam20485 Apr 27, 2024
feb74e3
Merge branch 'write-out' of github.com:nam20485/OdbDesign into write-out
nam20485 Apr 27, 2024
47a6736
rename fastcopy and copy to fastmove and move since they remove the f…
nam20485 Apr 27, 2024
48051f2
update README with vcpkg install directions (#294)
nam20485 Apr 28, 2024
7d75ff3
use crow::status enum values instead of "magic" number literals
nam20485 Apr 28, 2024
352ae4f
refactor fast_move() to use error_code's instead of relying on except…
nam20485 Apr 28, 2024
9219244
fix bug where struct stat instance was being used prior to being init…
nam20485 Apr 28, 2024
387b049
add #includes
nam20485 Apr 28, 2024
418f864
add 'pass-through' implementations for Linux and Apple platforms that…
nam20485 Apr 28, 2024
de9c466
add test cases for CrossPlatform methods
nam20485 Apr 28, 2024
60f79da
add test case for ArchiveExtractor::CompressDir method
nam20485 Apr 28, 2024
2bfa68a
refactor test data-specific functionality out of FileArchiveLoadFixtu…
nam20485 Apr 28, 2024
f99fb69
use actual buffered reads when reading files to compress
nam20485 Apr 28, 2024
90f2535
Bump github/codeql-action from 3.25.1 to 3.25.3
dependabot[bot] Apr 29, 2024
8a080d8
Bump debian from bookworm-20240408-slim to bookworm-20240423-slim
dependabot[bot] Apr 29, 2024
1989393
remove comments
nam20485 Apr 29, 2024
9fa360c
add #include headers
nam20485 Apr 29, 2024
ff08354
add stepname dircetory under steps dir
nam20485 Apr 30, 2024
96498af
implement Save() in NetlistFile
nam20485 Apr 30, 2024
1227317
Bump debian from bookworm-20240408-slim to bookworm-20240423-slim (#300)
nam20485 Apr 30, 2024
ef1b13c
Merge branch 'development' into dependabot/github_actions/github/code…
nam20485 Apr 30, 2024
e84c294
Bump github/codeql-action from 3.25.1 to 3.25.3 (#295)
nam20485 Apr 30, 2024
3834f21
Bump docker/login-action from 3.0.0 to 3.1.0
dependabot[bot] Apr 30, 2024
7dcbf25
Bump docker/login-action from 3.0.0 to 3.1.0 (#296)
nam20485 Apr 30, 2024
5e1f012
Bump sigstore/cosign-installer from 3.4.0 to 3.5.0
dependabot[bot] Apr 30, 2024
fe8bdf2
Bump sigstore/cosign-installer from 3.4.0 to 3.5.0 (#299)
nam20485 Apr 30, 2024
c24ccbf
Bump actions/checkout from 4.1.3 to 4.1.4
dependabot[bot] Apr 30, 2024
b5a10f0
Bump actions/checkout from 4.1.3 to 4.1.4 (#297)
nam20485 Apr 30, 2024
1fa5e51
Bump dorny/test-reporter from 1.8.0 to 1.9.0
dependabot[bot] Apr 30, 2024
85fe9da
Bump dorny/test-reporter from 1.8.0 to 1.9.0 (#298)
nam20485 Apr 30, 2024
53fc70f
add add newline at end of file
nam20485 May 1, 2024
a13a690
fix writing file out in multipartformupload endpoint to use binary mo…
nam20485 May 2, 2024
5c2837e
pull makeFileModelsLoadedResponse() up into RouteController base clas…
nam20485 May 2, 2024
be06051
replace all HTTP Content-Type headers and multipart protocol "magic" …
nam20485 May 2, 2024
51dd0cc
fix constant
nam20485 May 2, 2024
0539d5b
call WEXITSTATUS macro on return value of std::system() (must be used…
nam20485 May 3, 2024
6fd33da
install 7z in Dockerfile and call apt-get clean
nam20485 May 3, 2024
374cf20
formatting
nam20485 May 3, 2024
4137a89
fix #if defined OR expression
nam20485 May 3, 2024
5cc2b4c
rename default ingress to denote use for AWS EKS
nam20485 May 4, 2024
8dd5fa2
add letsencrypt issuer for certmanager support to ingress
nam20485 May 4, 2024
9ca30a8
add missing header #include's
nam20485 May 5, 2024
63ce373
formatting
nam20485 May 5, 2024
08f31dd
add header #include's
nam20485 May 5, 2024
fdde728
remove commented code
nam20485 May 5, 2024
4bc3110
disable certmanager and letsencrypt TLS in ingress
nam20485 May 5, 2024
44fc921
increase resource requests and limits
nam20485 May 5, 2024
e4d92b7
add ArchiveExtractorTests file (no test cases yet)
nam20485 May 5, 2024
c04b952
refactor ArchiveExtractor to allow more flexibility for ExtractLzmaIn…
nam20485 May 5, 2024
920c026
merge write-out into nam20485 and fix conflicts
nam20485 May 5, 2024
7de8a8c
add macros.h to cmake
nam20485 May 5, 2024
1df024c
add header #include
nam20485 May 5, 2024
a828e3a
make localtime_safe thread safe on non-windows platforms by introduci…
nam20485 May 5, 2024
e60b054
remove unsused header #include's
nam20485 May 5, 2024
d4ddeed
fix warnings
nam20485 May 5, 2024
80a7ea2
add missing header #includes
nam20485 May 5, 2024
9d6ba77
use correct L_tmpnam on non-windows
nam20485 May 5, 2024
845e803
include stdlib.h instead of malloc.h for free()
nam20485 May 5, 2024
0a5aaad
fix test case
nam20485 May 5, 2024
ca388d5
Bump actions/dependency-review-action from 4.2.5 to 4.3.2
dependabot[bot] May 6, 2024
600305b
Bump step-security/harden-runner from 2.7.0 to 2.7.1
dependabot[bot] May 6, 2024
b211e32
make member field private and use getTestDataDir() instead of member …
nam20485 May 6, 2024
38a4998
add test case
nam20485 May 6, 2024
0620edb
fix env var exists test case to not have to rely on path semantics
nam20485 May 6, 2024
1eee8a2
make m_testDataDir private
nam20485 May 6, 2024
f829b78
remove newline and carriage returns from expected file contents
nam20485 May 6, 2024
5bdff40
fix warning
nam20485 May 6, 2024
4b17924
remove weird newlines
nam20485 May 6, 2024
2bfb57c
remove namespaces from identifier usages
nam20485 May 6, 2024
d733423
remove use of full namespace when referring to identifiers
nam20485 May 7, 2024
64ae386
remove unused file
nam20485 May 7, 2024
40e28e9
add header #include
nam20485 May 7, 2024
ba2de98
use m_productName as default for archiveName in SaveFileModel()
nam20485 May 7, 2024
58a39c4
add /filemodes/<string>> POST endpoint definition
nam20485 May 8, 2024
7c1c305
add SaveFileArchive AND AddFileArchive to DesignCache
nam20485 May 8, 2024
35b0cb5
add endpoint for POSTing JSON FileArchive
nam20485 May 8, 2024
b432818
add default ctor() for FileArchive
nam20485 May 8, 2024
43c11e4
remove old commented functionality and provide full definition for lo…
nam20485 May 8, 2024
6c91abd
remove old commented functionality and provide full definition for lo…
nam20485 May 8, 2024
966e0f4
finish merge?
nam20485 May 8, 2024
18aa6df
use static Make() methods for creating empty FileArchives
nam20485 May 8, 2024
c89c454
remove Make() methods and make default ctor() public
nam20485 May 8, 2024
6a92ce7
move constant
nam20485 May 8, 2024
7bb14eb
add header #include
nam20485 May 8, 2024
90affd2
remove files
nam20485 May 8, 2024
8ea919a
add header #include
nam20485 May 8, 2024
18bca52
move test case
nam20485 May 8, 2024
56e69d8
remove files
nam20485 May 8, 2024
35cf9c5
use EXPECT_THAT mock matchers
nam20485 May 8, 2024
f7c6d01
add test case to test whether CrossPlatform::getenv_safe can find a k…
nam20485 May 8, 2024
b9cf5b6
add header #include
nam20485 May 9, 2024
c554bd4
add reference to variable used by test case
nam20485 May 9, 2024
f739663
fix environment variable
nam20485 May 9, 2024
023f764
fix test case
nam20485 May 9, 2024
7a0f0dc
move 7z utilities install into main layer so its available in the con…
nam20485 May 10, 2024
3b2596e
move 7z command test to main layer
nam20485 May 10, 2024
7fdf293
change description in Docker attributes
nam20485 May 10, 2024
791bd02
make hiding 7z command output a class member constant
nam20485 May 10, 2024
9c6dbe3
use macros for IS_WINDOWS
nam20485 May 10, 2024
483930d
print current directory on 7z command failure
nam20485 May 10, 2024
2bc951b
white space
nam20485 May 10, 2024
2ddf6c3
add header #include
nam20485 May 10, 2024
38894ff
add header #includes
nam20485 May 10, 2024
625da1c
Bump step-security/harden-runner from 2.7.0 to 2.7.1 (#303)
nam20485 May 11, 2024
1fe5e6e
Merge branch 'development' into dependabot/github_actions/actions/dep…
nam20485 May 11, 2024
66e8c37
Bump actions/dependency-review-action from 4.2.5 to 4.3.2 (#302)
nam20485 May 11, 2024
8bb3c35
default to not include FileArchive member in Design and add support f…
nam20485 May 11, 2024
4955c9e
use designName (filename) for names in DesignCache
nam20485 May 12, 2024
be60819
split designs and filarchives apart in makeLoadedDisgnsResponse()
nam20485 May 12, 2024
3fb5eb4
add DesignType enum and EnumMap and add to /filemodels response
nam20485 May 12, 2024
87b2b51
include headers to fix compile error
nam20485 May 12, 2024
0276281
disable PCH on CI build
nam20485 May 12, 2024
1572c46
remove DesignType enum and EnumMap
nam20485 May 12, 2024
e6ef07d
remove include
nam20485 May 12, 2024
d4c6700
Bump actions/checkout from 4.1.4 to 4.1.5
dependabot[bot] May 13, 2024
92c16ef
add DLL export specification to interfaces
nam20485 May 13, 2024
1fdff3d
remove unused using
nam20485 May 13, 2024
f372f49
add missing header #includes that were obfuscated from use of PCH
nam20485 May 13, 2024
a31948e
add transitive header #includes
nam20485 May 13, 2024
9bd1287
add transitive header #includes and use const& for std::string parame…
nam20485 May 13, 2024
016e130
add default ctor()
nam20485 May 13, 2024
497117e
add transitive header #include
nam20485 May 13, 2024
de55456
re-enable PCH and CCACHE in CI builds until I can fix protobuf export…
nam20485 May 13, 2024
8abd2e5
create objects correctly to fix exceptions in test cases
nam20485 May 13, 2024
6e58a74
create pointer correctly to fix exception in test case
nam20485 May 13, 2024
72cc644
pass shared_ptr by value
nam20485 May 13, 2024
c28f2d1
add header #includes
nam20485 May 13, 2024
4e4100e
pass shared_ptr value by ref since its only used
nam20485 May 13, 2024
b4acefe
Bump actions/checkout from 4.1.4 to 4.1.5 (#307)
nam20485 May 14, 2024
46fc55c
use EnumMap for Logger::LogLevels
nam20485 May 14, 2024
038f875
move enable_testing() directive to top-level CMakeLists.txt to fix te…
nam20485 May 14, 2024
f8bbf1c
Bump dorny/test-reporter from 1.9.0 to 1.9.1
dependabot[bot] May 14, 2024
4b9bd5c
Bump dorny/test-reporter from 1.9.0 to 1.9.1 (#306)
nam20485 May 14, 2024
f5f4f78
Bump ossf/scorecard-action from 2.3.1 to 2.3.3
dependabot[bot] May 14, 2024
5567bec
Bump ossf/scorecard-action from 2.3.1 to 2.3.3 (#304)
nam20485 May 14, 2024
fc44a44
Bump github/codeql-action from 3.25.3 to 3.25.5
dependabot[bot] May 14, 2024
2cf3ac8
Bump github/codeql-action from 3.25.3 to 3.25.5 (#308)
nam20485 May 15, 2024
5fe1e67
Bump debian from bookworm-20240423-slim to bookworm-20240722-slim
dependabot[bot] Jul 29, 2024
2da5fe3
add prometheus deployment files
nam20485 Sep 1, 2024
f56bbb4
add gRPC build dependency
nam20485 Sep 1, 2024
7473438
add grpc generation to protoc compiler script
nam20485 Sep 1, 2024
91ab375
install python3 package in Dockerfile to fix vcpkg error in upb build
nam20485 Sep 1, 2024
b3724b9
add OdbDesignApp executbale target back in
nam20485 Jan 15, 2025
e5de757
update macos image from macos-12 to macos-14 (latest) for cmake multi…
nam20485 Jan 15, 2025
bc1cea7
disable unit test
nam20485 Jan 15, 2025
e35a320
Merge branch 'development' into nam20485
nam20485 Jan 15, 2025
e6e2faf
merge to development (#333)
nam20485 Jan 16, 2025
d9722e1
update vcpkg baseline to cf035d99
nam20485 Jan 18, 2025
a5fb6a3
remove grpc (and codegen feature) vcpkg dependency
nam20485 Jan 18, 2025
eeaca71
add schema reference to vcpkg.json
nam20485 Jan 18, 2025
cdd030f
regenerate *.protoc's with newer protoc compiler
nam20485 Jan 18, 2025
c5476ec
remove Crow's SSL/HTTPS functionality
nam20485 Jan 18, 2025
36526a5
add headers
nam20485 Jan 18, 2025
9e6cb27
chnage StringPiece use to absl::string_view
nam20485 Jan 18, 2025
8a3df45
remove grpc-c++ package from CMake
nam20485 Jan 18, 2025
a87a2f8
merge to development (#336)
nam20485 Jan 18, 2025
5076d87
Merge branch 'development' into dependabot/docker/debian-bookworm-202…
nam20485 Jan 18, 2025
7e5538f
Bump debian from bookworm-20240423-slim to bookworm-20240722-slim (#329)
nam20485 Jan 19, 2025
f019937
Merge branch 'staging' into development
nam20485 Jan 19, 2025
1eaf2f3
test
nam20485 Jan 20, 2025
f72f94a
Update workflow branch filters to include 'staging' for pull requests
nam20485 Jan 20, 2025
df807d5
Update workflow branch filters to include 'staging' for pull requests…
nam20485 Jan 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 9 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,14 @@ out/
.git/
.gitignore
.gitattributes
Dockerfile
Dockerfile*
docker-compose.yml
*.code-workspace
vcpkg_installed/
ssl/
out/
cmake-build-*/
build/
.idea/
Testing/
*.code-workspace
6 changes: 6 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#
# CODEOWNERS
#

# Everything in this repo is owned by @nam20485
* @nam20485
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
20 changes: 20 additions & 0 deletions .github/codeql-config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: CodeQL Config

# paths-ignore only works for interpreted languages (i.e. not C/C++)

# paths:
# - /home/runner/work/OdbDesign/OdbDesign/OdbDesignServer
# - /home/runner/work/OdbDesign/OdbDesign/OdbDesignApp
# - /home/runner/work/OdbDesign/OdbDesign/OdbDesignTests
# - /home/runner/work/OdbDesign/OdbDesign/OdbDesignLib
# - /home/runner/work/OdbDesign/OdbDesign/Utils

#paths-ignore:
# - /home/runner/work/OdbDesign/OdbDesign/vcpkg/**/*
# - /home/runner/work/OdbDesign/OdbDesign/out/build/linux-release/vcpkg_installed/**/*

#queries:
# - uses: security
#- uses: security-and-quality
#- security-experimental
#- security-extended
10 changes: 0 additions & 10 deletions .github/codeql/codeql-config.yml

This file was deleted.

17 changes: 17 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: weekly

- package-ecosystem: pip
directory: /PyOdbDesignServer
schedule:
interval: weekly

- package-ecosystem: docker
directory: /
schedule:
interval: weekly
#target-branch: nam20485
144 changes: 55 additions & 89 deletions .github/workflows/cmake-multi-platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ name: CMake Build Multi-Platform

on:
push:
branches: [ "development", "main", "release" ]
branches: [ "nam20485" ]
pull_request:
branches: [ "development", "main", "release" ]
branches: [ "development", "main", "release", "nam20485" ]

permissions:
contents: write
contents: read

env:
VCPKG_ROOT: ${{ github.workspace }}/vcpkg
Expand All @@ -23,6 +23,9 @@ jobs:
build:
name: CMake-Multi-Platform-Build
runs-on: ${{ matrix.os }}
permissions:
contents: write
checks: write

strategy:
# Set fail-fast to false to ensure that feedback is delivered for all matrix combinations. Consider changing this to true when your workflow is stable.
Expand All @@ -37,7 +40,7 @@ jobs:
- os: ubuntu-22.04
preset: linux-release
# MacOS x64 Release
- os: macos-12
- os: macos-14
preset: macos-release
# Linux mingw x64 Release
# - os: ubuntu-22.04
Expand All @@ -47,15 +50,21 @@ jobs:
# preset: python-linux-release

steps:

- name: Harden Runner
uses: step-security/harden-runner@a4aa98b93cab29d9b1101a6143fb8bce00e2eac4 # v2.7.1
with:
egress-policy: audit

- uses: actions/checkout@v3
- name: Checkout Repository
uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5

# add problem matchers by compiler
- name: Add Problem Matchers
uses: ammaraskar/msvc-problem-matcher@master
uses: ammaraskar/msvc-problem-matcher@1ebcb382869bfdc2cc645e8a2a43b6d319ea1cc0 # master
if: matrix.os == 'windows-2022'
- name: Add Problem Matchers
uses: ammaraskar/gcc-problem-matcher@master
uses: ammaraskar/gcc-problem-matcher@0f9c86f9e693db67dacf53986e1674de5f2e5f28 # master
if: matrix.os != 'windows-2022'

- name: Install vcpkg Dependencies
Expand All @@ -75,12 +84,12 @@ jobs:
if: matrix.os != 'windows-2022'

- name: Install Ninja
uses: seanmiddleditch/gha-setup-ninja@master
uses: seanmiddleditch/gha-setup-ninja@8b297075da4cd2a5f1fd21fe011b499edf06e9d2 # master
if: matrix.os != 'windows-2022'

# Export vcpkg Cache Variables
- name : Export vcpkg Cache Variables
uses: actions/github-script@v6
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
Expand All @@ -99,7 +108,7 @@ jobs:
# os == windows-2022
#
- name: Setup VC Tools
uses: ilammy/msvc-dev-cmd@v1
uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
if: matrix.os == 'windows-2022'

- name: Patch vcpkg
Expand Down Expand Up @@ -136,10 +145,41 @@ jobs:
run: cmake --preset ${{matrix.preset}}

- name: CMake Build
run: cmake --build --preset ${{matrix.preset}}
run: cmake --build --preset ${{matrix.preset}}

- name: Checkout OdbDesign Test Data Repository
uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
with:
repository: 'nam20485/OdbDesignTestData'
path: 'OdbDesignTestData'
ref: 'main'
#token: ${{ secrets.ODBDESIGN_TESTDATA_ACCESS_TOKEN }}

- name : Export ODB_TEST_DATA_DIR
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
with:
script: core.exportVariable('ODB_TEST_DATA_DIR', "${{github.workspace}}/OdbDesignTestData/TEST_DATA" || '');

- name: CMake Test
run: ctest --preset ${{matrix.preset}} -V
id: cmake-test
env:
ODB_TEST_DATA_DIR: ${{github.workspace}}/OdbDesignTestData/TEST_DATA
ODB_TEST_ENVIRONMENT_VARIABLE: ${{vars.ODB_TEST_ENVIRONMENT_VARIABLE}}
run: ctest --test-dir ./out/build/${{matrix.preset}}/OdbDesignTests --output-log ${{github.workspace}}/testlog.txt --output-junit ${{github.workspace}}/testlog.xml --output-on-failure
# let the report step fail the job if it finds failed tests...
continue-on-error: true

# report test results
- name: Report Test Results
uses: dorny/test-reporter@31a54ee7ebcacc03a09ea97a7e5465a47b84aea5 # v1.9.1
if: steps.cmake-test.outcome == 'success' || steps.cmake-test.outcome == 'failure'
with:
name: ${{ matrix.os }}_test-results
path: ${{github.workspace}}/testlog.xml
reporter: java-junit
path-replace-backslashes: true
# fail job based on report results
fail-on-error: true

#
# Artifacts
Expand All @@ -155,7 +195,7 @@ jobs:
zip -r ./artifacts-${{matrix.os}}.zip ./*.so ./OdbDesignServer

- name: Compress Artifacts (MacOS)
if: matrix.os == 'macos-12'
if: matrix.os == 'macos-14'
run: |
mkdir ${{env.ARTIFACTS_DIR}}
cp ./out/build/${{matrix.preset}}/OdbDesignLib/*.dylib ${{env.ARTIFACTS_DIR}}
Expand All @@ -173,82 +213,8 @@ jobs:
Compress-Archive -Path "${{env.ARTIFACTS_DIR_WIN}}\*.dll","${{env.ARTIFACTS_DIR_WIN}}\*.exe" -DestinationPath "${{env.ARTIFACTS_DIR_WIN}}\artifacts-${{matrix.os}}.zip" -Verbose -Force

- name: Upload Artifacts
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: ${{ matrix.os }}-artifacts
path: ${{ env.ARTIFACTS_DIR }}/artifacts-${{matrix.os}}.zip
retention-days: 1

release:
# only on pushes to the release branch
name: Create Release
needs: build
if: ${{ (github.ref_name == 'release') && github.event_name == 'push' }}
runs-on: ubuntu-22.04
permissions:
contents: write

steps:

# download the artifacts
- name: "Download artifacts"
uses: "actions/download-artifact@v2"
with:
path: ${{ github.workspace }}/artifacts

- name: Create Release Variables
run: |
ls -al ${{ github.workspace }}/artifacts
export RELEASE_VERSION="${{vars.RELEASE_VERSION_PREFIX}}.${{github.run_number}}"
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV
export RELEASE_TAG="v${RELEASE_VERSION}"
echo "RELEASE_TAG=$RELEASE_TAG" >> $GITHUB_ENV
export RELEASE_NAME="OdbDesign ${RELEASE_TAG}"
echo "RELEASE_NAME=$RELEASE_NAME" >> $GITHUB_ENV

- name: Rename Artifacts
run: |
mv ${{ github.workspace }}/artifacts/ubuntu-22.04-artifacts/artifacts-ubuntu-22.04.zip ${{ github.workspace }}/artifacts/OdbDesign-Linux-x64.zip
mv ${{ github.workspace }}/artifacts/windows-2022-artifacts/artifacts-windows-2022.zip ${{ github.workspace }}/artifacts/OdbDesign-Windows-x64.zip
mv ${{ github.workspace }}/artifacts/macos-12-artifacts/artifacts-macos-12.zip ${{ github.workspace }}/artifacts/OdbDesign-MacOS-x64.zip

# create a release
- name: "Create GH Release"
uses: "actions/github-script@v6"
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
script: |
try {
const createResponse = await github.rest.repos.createRelease({
generate_release_notes: true,
name: process.env.RELEASE_NAME,
owner: context.repo.owner,
repo: context.repo.repo,
tag_name: process.env.RELEASE_TAG,
target_commitish: '${{ github.ref_name }}'
});

const filenames = [
'OdbDesign-Linux-x64.zip',
'OdbDesign-Windows-x64.zip',
'OdbDesign-MacOS-x64.zip'
];

for (const filename of filenames) {
const artifactsPath = 'artifacts';
const filePath = artifactsPath +'/' + filename;
const uploadResponse = await github.rest.repos.uploadReleaseAsset({
owner: context.repo.owner,
repo: context.repo.repo,
release_id: createResponse.data.id,
name: filename,
data: require('fs').readFileSync(filePath),
headers: {
'content-type': 'application/zip',
'content-length': require('fs').statSync(filePath).size
}
});
}
} catch (error) {
core.setFailed(error.message);
}
retention-days: 365 # 1 year
Loading
Loading