Skip to content

Conversation

@simogasp
Copy link
Member

@simogasp simogasp commented Apr 1, 2020

  • add v1.0.0 label
  • update changelog

closes #15

@simogasp simogasp added this to the v1.0.0 milestone Apr 1, 2020
@simogasp simogasp self-assigned this Apr 1, 2020
simogasp and others added 30 commits August 29, 2025 15:38
…cation

This commit significantly refactors the GitHub Actions CI workflow to
improve
efficiency and maintainability while preserving granular step
visibility.

Key changes:

• **Reduced matrix complexity**: Eliminated build_type matrix dimension
  - Before: 7 total jobs (3 Linux + 4 Windows with matrix combinations)
  - After: 4 total jobs (2 Linux + 2 Windows containers/CUDA versions)
- Each job now builds both Release and Debug configurations
sequentially

• **Created reusable composite action**
(.github/actions/build-config/action.yml)
  - Single parameterized action handles both Linux and Windows builds
  - Platform-specific logic controlled by conditional steps
  - Accepts build-type, platform, and platform-specific parameters

• **Extracted build logic into modular scripts**:
  - .github/scripts/build-linux.sh: Bash functions for Linux builds
- .github/scripts/build-windows.ps1: PowerShell functions for Windows
builds
- Functions: setup_directories, configure_cmake, build_and_install,
build_as_third_party

• **Preserved step granularity**: Each configuration still shows 4 clear
steps
- Setup directories → Configure CMake → Build & Install → Test as 3rd
party
  - Failure points remain easily identifiable for debugging

• **Maintained conditional logic**: Debug builds still skipped for
cuda11.8.0 due to segfault

[ci] Add workflow_dispatch trigger for manual workflow execution

[ci] Add missing composite action file for build-config

The composite action was created but not committed in the previous
refactoring commit, causing the workflow to fail with 'action.yml not found'.

[ci] Remove unused build-all scripts

These scripts were replaced by the composite action approach that
calls individual functions to preserve step granularity in CI.
In vcpkg manifest mode, dependencies are installed locally in
vcpkg_installed/
Since src/application doesn't have vcpkg.json, we need to point to the
main project's
vcpkg_installed directory so the third-party build can find the
dependencies
mainProjectVcpkgInstalled = "$WorkspaceDir/vcpkg_installed"
[CI] Add GitHub Actions CI for Windows and refactoring
* update changelog for v0.10

* project version 0.10.0 in CMakeLists.txt

* [doc] update changelog

* [doc] markdown fixes

* added markdownlint rules
Add scheduled workflow to run every Monday at 8 UTC
…ilding

* [debug] adding 3 tiny test images

* [debug] write pyramid images after horizontal sweeps

---------

Co-authored-by: Carsten Griwodz <[email protected]>
* make planes const in logging
* write functions use const planes
* add const to memcpyFromDevice and memcpyToHost
* missing const method in implementation

---------

Co-authored-by: Carsten Griwodz <[email protected]>
Co-authored-by: Simone Gasparini <[email protected]>
…ry octave (#178)

* [sift] Remove option to create all octaves directly from the input
* [sift] reduce size of GaussTable dd to 1: The other levels of this table existed only for direct downscaling.
* update CHANGES
* [sift] remove some code that is now dead

---------

Co-authored-by: Carsten Griwodz <[email protected]>
Extrema are searched from 3x3x3 blocks of pixels in the DoG pyramid.
The dead code could search in interpolated pixels, which never made sense.
The code was always #undef'ed.
OpenCV used quite narrow Gaussian filters when PopSift was first written.
This computation was adopted for compatibility reasons. The other modes are more accurate.
* Soft failing if someone uses the old parameter --gauss-mode=opencv

---------

Co-authored-by: Carsten Griwodz <[email protected]>
* [sift] Remove unreachable code

This piece of now unreachable code was a replicating buggy OpenCV behaviour that existed in 2016.
Its case was no reachable callable with any valid command line or library parameter.

---------

Co-authored-by: Carsten Griwodz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

release a version 1.0.0