Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
8c813c5
Merge pull request #194 from I2PC/release-3.23.11
oierlauzi Nov 28, 2023
3e1c79d
Works on my machine
oierlauzi Mar 20, 2024
51f5b8b
Added TIFF dependency
oierlauzi Mar 20, 2024
585f5bc
Added more dependecines
oierlauzi Mar 20, 2024
243ad15
Added FFTW3 find function
oierlauzi Mar 20, 2024
3b1447e
Added Float FFTW
oierlauzi Mar 21, 2024
ee98219
Removed python dependency
oierlauzi Mar 21, 2024
e18b252
Renamed to Xmipp
oierlauzi Mar 31, 2024
b2cad4c
Added install
oierlauzi Mar 31, 2024
63ec888
Linking to FFTW without threads
oierlauzi Apr 1, 2024
f86d3ba
Removed SOVERSION property
oierlauzi Apr 4, 2024
1396bfd
Enhanced CMake version compatiblity
oierlauzi Apr 4, 2024
b0016bf
Requesting CXX component for HDF5
oierlauzi Apr 4, 2024
2cde840
Writing dependency versions
oierlauzi Apr 8, 2024
dc4b23f
Improved action
martin-s-a Apr 18, 2024
7720112
Removed SCons
martin-s-a Apr 21, 2024
2efc468
Parse release number & name from changelog
martin-s-a Apr 21, 2024
9ce792f
Keep format
martin-s-a Apr 21, 2024
143f9a9
Auto tag & release
martin-s-a Apr 21, 2024
a1abd2c
Added pycache to gitignore
martin-s-a Apr 21, 2024
153e65a
Deprecate SCons
martin-s-a Apr 21, 2024
4e9725b
Executed version script with python so it has appropiate permissions
martin-s-a Apr 27, 2024
010e428
Merge pull request #201 from I2PC/co_ice
oierlauzi Apr 30, 2024
ea3aad1
Writing versions on streaming
oierlauzi May 8, 2024
8a82e87
Fix APPEND instead of WRITE
oierlauzi May 8, 2024
e3e56a4
Merge branch 'devel' into ms_olz_cmake
oierlauzi May 8, 2024
52cbe3c
Invoking CMake compilation
oierlauzi May 8, 2024
eb51efa
Removed xmipp dependency
oierlauzi May 8, 2024
2a1f767
adding flags
Vilax May 21, 2024
f8dd2ea
Merge branch 'devel' into vi_updateTomo
albertmena May 21, 2024
294795a
Merge pull request #203 from I2PC/vi_updateTomo
oierlauzi May 22, 2024
86bf9ca
Merge pull request #204 from I2PC/release-3.24.06
albertmena Jun 12, 2024
d0ec065
Added MADV_HUGEPAGE support check
oierlauzi Jul 15, 2024
1d596d5
Merge pull request #205 from I2PC/olz_fix_huge_pages
oierlauzi Jul 15, 2024
e149ae6
Merge branch 'devel' into ms_olz_cmake
oierlauzi Jul 16, 2024
69d22e1
Updated version
oierlauzi Aug 9, 2024
ddfcab2
Merge pull request #202 from I2PC/ms_olz_cmake
oierlauzi Aug 9, 2024
07dec49
Added checks to only write version file when requested
oierlauzi Aug 28, 2024
096bf8d
Merge pull request #207 from I2PC/olz_standalone
oierlauzi Aug 28, 2024
ed7e379
Testing batched reads
oierlauzi Sep 18, 2024
3ffbc12
Update rwEER.cpp
oierlauzi Sep 18, 2024
35939ce
Bugfix
oierlauzi Sep 18, 2024
9bc5796
Fixed segfaults
Sep 18, 2024
d4340f8
Re-added deleted modification
Sep 18, 2024
e23dff2
Merge pull request #208 from I2PC/olz_eer_batch
oierlauzi Sep 24, 2024
7056a80
add label for background subtraction estimation
fede-pe Nov 5, 2024
de01197
Merge pull request #210 from I2PC/fi_addLabelSubtraction
oierlauzi Nov 13, 2024
a0c8666
Update CHANGELOG.md
albertmena Nov 20, 2024
62f8a51
Update CHANGELOG.md
albertmena Nov 20, 2024
7bf82fa
Update CHANGELOG.md
albertmena Nov 20, 2024
75ff6f7
fix
Vilax Nov 22, 2024
00003cd
Merge branch 'devel' into typeFix
albertmena Nov 25, 2024
a3507c7
Merge pull request #212 from I2PC/typeFix
cossorzano Nov 25, 2024
388d348
fixed!
albertmena Nov 26, 2024
e1ae48a
Merge branch 'devel' into olz_agm_libstdc++
albertmena Nov 26, 2024
0f7b94a
Merge pull request #213 from I2PC/olz_agm_libstdc++
albertmena Nov 26, 2024
2c40025
Handling .gain files
Nov 28, 2024
e4be215
Missing case
Nov 28, 2024
48d7dc9
Merge pull request #214 from I2PC/olz_fix_gain_files
albertmena Nov 29, 2024
dd09573
Update CHANGELOG.md
albertmena Dec 9, 2024
2de72ba
Update CHANGELOG.md
albertmena Dec 9, 2024
d587ce9
Merge branch 'master' into release-3.24.12
albertmena Dec 17, 2024
64be08a
Merge pull request #216 from I2PC/release-3.24.12
oierlauzi Dec 17, 2024
5c3a24f
Merge pull request #217 from I2PC/release-3.24.12
albertmena Dec 17, 2024
10ce42b
Update CHANGELOG.md
albertmena Dec 23, 2024
cb086b6
Update CHANGELOG.md
albertmena Dec 23, 2024
462832e
Update CHANGELOG.md
albertmena Dec 23, 2024
c5ac5b9
Merge branch 'master' into release-3.24.12
albertmena Dec 23, 2024
67b1637
Merge pull request #218 from I2PC/release-3.24.12
albertmena Dec 23, 2024
dd32219
Merge pull request #219 from I2PC/master
albertmena Jan 9, 2025
14e0d8d
Working
Jan 16, 2025
83a0d6e
Merge pull request #220 from I2PC/fi_olz_fix_md_split
albertmena Jan 20, 2025
8d45fa8
Update CMakeLists.txt
albertmena Jan 29, 2025
b9c1941
Merge pull request #221 from I2PC/agm_revertingLibstd
oierlauzi Jan 30, 2025
4c6fd6f
Fix CI badge
martin-s-a Feb 17, 2025
cd98116
Merge pull request #222 from I2PC/ms_ci_badge
albertmena Feb 17, 2025
a95fd34
Add dynamically updated major version tag
martin-s-a Mar 12, 2025
3dba33d
Merge pull request #223 from I2PC/ms_dynamic_tag
albertmena Mar 24, 2025
d6eddbe
Update CHANGELOG.md
albertmena Jun 26, 2025
27805e3
Update CHANGELOG.md
albertmena Jun 26, 2025
e0fc7e5
Fixed
Jun 26, 2025
3554002
Merge pull request #226 from I2PC/ed_olz_metadata_inf
albertmena Jul 7, 2025
c000f6d
Fix formatting of release section in CHANGELOG
albertmena Nov 6, 2025
b7233e3
Update CHANGELOG for release 26.00.0
albertmena Nov 7, 2025
cdccb0d
Update release version from 26.00.0 to 4.00.0
albertmena Nov 7, 2025
84acdef
Fix version number format in CHANGELOG.md
albertmena Nov 7, 2025
1b215be
Change branch name from 'master' to 'main'
albertmena Nov 7, 2025
83cad9f
Merge pull request #227 from I2PC/agm_releaseVersion
albertmena Nov 7, 2025
7a52cd6
Update release workflow to remove branch restriction
albertmena Nov 7, 2025
bfd0ee7
Update release.yml
albertmena Nov 7, 2025
70ffc88
Add manual trigger to build action & remove branch restriction
martin-s-a Nov 7, 2025
2f0614d
Merge branch 'devel' into agm_manualLaunch
martin-s-a Nov 7, 2025
3f65aff
Merge pull request #228 from I2PC/agm_manualLaunch
albertmena Nov 7, 2025
8742d28
Add environment for release approval in workflow
albertmena Nov 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 7 additions & 36 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,61 +4,32 @@ name: Build XmippCore
# Specify when the Action should be triggered: when a pull request is opened against the 'devel' or 'master' branch
on:
pull_request:
branches: [ devel, master ]
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-22.04

# Steps represent a sequence of tasks that will be executed as part of the job
# Disabling shallow clone is recommended for improving relevancy of reporting
steps:
# - name: Extract branch name
# shell: bash
# run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
# id: extract_branch


- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y scons libfftw3-dev libopenmpi-dev openmpi-bin libhdf5-dev python3-numpy python3-dev libtiff5-dev unzip libopencv-dev
sudo apt-get install -y libfftw3-dev libopenmpi-dev openmpi-bin libhdf5-dev python3-numpy python3-dev libtiff5-dev unzip

- name: Export CI variables
run: echo "BUILD_DIR=CIBuild" >> $GITHUB_ENV

# Using CCache to speed C/C++ compilation
- uses: hendrikmuhs/ccache-action@v1.2

# Installing CUDA
# - uses: Jimver/cuda-toolkit@v0.2.11
# id: cuda-toolkit
# with:
# cuda: '11.8.0'
# method: network
# sub-packages: '["nvcc", "toolkit"]'
- uses: hendrikmuhs/ccache-action@main

# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- uses: actions/checkout@main
with:
fetch-depth: 0

- name: Fetching Xmipp
run: ./scripts/ci_build

- name: Getting xmipp.conf
run: ./xmipp config #all br=${{ steps.extract_branch.outputs.branch }} noAsk
working-directory: ${{ env.BUILD_DIR }}
env:
CIBuild: 1
BUILD_TESTS: True

# If we got here, Xmipp can be build with this xmippCore
# Build only the core to be able to run the static code analysis
- name: Compile XmippCore
run: |
cp ${BUILD_DIR}/xmipp.conf ./
python3 $(which scons) . -j4
cmake -S . -B build/ -DXMIPP_VERSIONS_FILE=build/versions.txt
cmake --build build/ -j 4

44 changes: 44 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Release new version
on:
workflow_dispatch:

jobs:
generate-new-release:
environment:
name: release-approval

runs-on: ubuntu-latest
steps:

- name: Checkout repository
uses: actions/checkout@main

- name: Retrieve tag name, release name & changelog
run: |
echo "TAG_NAME=$(python ./scripts/version.py)" >> $GITHUB_OUTPUT
awk '/## Release/{if (p) exit; p=1} p' CHANGELOG.md | tail -n +2 > latest_changelog.md
echo "RELEASE_NAME=$(python ./scripts/version.py --keep-format)" >> $GITHUB_OUTPUT
id: variables

- name: Generate tag
id: tag_version
uses: mathieudutour/github-tag-action@v6.2
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
custom_tag: ${{ steps.variables.outputs.TAG_NAME }}

- name: Update major version tag
run: |
VERSION=${{ steps.variables.outputs.TAG_NAME }}
MAJOR=${VERSION%%.*}
git config --global user.name 'GitHub Actions'
git config --global user.email 'action@github.com'
git tag -fa "${MAJOR}" -m 'Update major version tag with $VERSION'
git push origin "${MAJOR}" --force

- name: Create a GitHub release
uses: ncipollo/release-action@main
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: ${{ steps.variables.outputs.RELEASE_NAME }}
bodyFile: latest_changelog.md
8 changes: 4 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@

#### Python
*.pyc
__pycache__

#### Eclipse and so on
.project
Expand All @@ -34,9 +35,6 @@
.classpath
.idea

# Scons auxiliary files
.sconsign.dblite

# Other
gmon.out
*~
Expand All @@ -55,4 +53,6 @@ gmon.out
/Debug/

# VS Code
.vscode
.vscode

build/
18 changes: 11 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
## devel
## Release 4.0.0
- Details about the changes on [Xmipp repository](https://github.com/I2PC/xmipp/blob/devel/CHANGELOG.md)

## ms_fix_pixelsize
11/August/2023: Fixed pixel size not being properly stored
## Release 3.25.06.0 - Rhea
- Details about the changes on [Xmipp repository](https://github.com/I2PC/xmipp/blob/devel/CHANGELOG.md)

## Release 3.24.12.0 - Poseidon
- Details about the changes on [Xmipp repository](https://github.com/I2PC/xmipp/blob/devel/CHANGELOG.md)

## ms_transpose_MRC
11/August/2023: MRC files with axis order other than default is now supported
## Release 3.24.06 - Oceanus
- Details about the changes on [Xmipp repository](https://github.com/I2PC/xmipp/blob/devel/CHANGELOG.md)

## co_MRCFileFormat
22/July/2021: .ali, .preali, .rec added to the set of MRC file
## Release 3.23.11 - Nereus
- Details about the changes on [Xmipp repository](https://github.com/I2PC/xmipp/blob/devel/CHANGELOG.md)
105 changes: 105 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
#***************************************************************************
# Authors: Oier Lauzirika Zarrabeitia (oierlauzi@bizkaia.eu)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
# 02111-1307 USA
#
# All comments concerning this program package may be sent to the
# e-mail address 'xmipp@cnb.csic.es'
# ***************************************************************************

cmake_minimum_required(VERSION 3.16)

# Define the project
project(
XmippCore
VERSION 3.24.06
LANGUAGES C CXX
)

include(GNUInstallDirs)

list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)

# Find dependencies
find_package(HDF5 1.8 COMPONENTS C CXX REQUIRED)
if(XMIPP_VERSIONS_FILE)
file(APPEND ${XMIPP_VERSIONS_FILE} "HDF5=${HDF5_VERSION}\n")
endif()

find_package(TIFF REQUIRED)

find_package(JPEG REQUIRED)
if(XMIPP_VERSIONS_FILE)
file(APPEND ${XMIPP_VERSIONS_FILE} "JPEG=${JPEG_VERSION}\n")
endif()

find_package(SQLite3 REQUIRED)
if(XMIPP_VERSIONS_FILE)
file(APPEND ${XMIPP_VERSIONS_FILE} "SQLite3=${SQLite3_VERSION}\n")
endif()

find_package(Threads REQUIRED)

find_package(FFTW REQUIRED)

# Register all source and header files
file(GLOB_RECURSE
SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/core/*.cpp
${CMAKE_CURRENT_SOURCE_DIR}/core/*.cc
${CMAKE_CURRENT_SOURCE_DIR}/core/*.c
)
file(GLOB_RECURSE
HEADERS
${PROJECT_SOURCE_DIR}/include/*.h
${PROJECT_SOURCE_DIR}/include/*.hpp
)

# Create the shared library
add_library(${PROJECT_NAME} SHARED ${SOURCES})
set_target_properties(
${PROJECT_NAME} PROPERTIES
CXX_STANDARD 17
)
target_include_directories(
${PROJECT_NAME}
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
${HDF5_INCLUDE_DIRS}
)
target_precompile_headers(
${PROJECT_NAME}
PUBLIC ${HEADERS}
)
target_link_libraries(
${PROJECT_NAME}
PUBLIC
TIFF::TIFF
SQLite::SQLite3
JPEG::JPEG
Threads::Threads
FFTW::Double
FFTW::Float
FFTW::DoubleThreads
FFTW::FloatThreads
${HDF5_LIBRARIES}
)

# Install library's binary files and headers
install(
TARGETS ${PROJECT_NAME}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# xmippCore

[![CI](https://github.com/I2PC/xmippCore/actions/workflows/main.yml/badge.svg)](https://github.com/I2PC/xmippCore/actions/workflows/main.yml)
[![CI](https://github.com/I2PC/xmippCore/actions/workflows/build.yml/badge.svg)](https://github.com/I2PC/xmippCore/actions/workflows/build.yml)


**>>> To install Xmipp, please visit [this](https://github.com/I2PC/xmipp#xmipp) <<<**
Expand Down
Loading