mirror of
https://github.com/rmontanana/mdlp.git
synced 2025-08-17 16:35:57 +00:00
Compare commits
3 Commits
v2.1.0
...
8a1b68376d
Author | SHA1 | Date | |
---|---|---|---|
8a1b68376d
|
|||
|
563a84659f | ||
1b9d924ebe
|
@@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file.
|
|||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [2.1.1] - 2025-07-17
|
||||||
|
|
||||||
|
### Internal Changes
|
||||||
|
|
||||||
|
- Updated Libtorch to version 2.7.1
|
||||||
|
- Updated ArffFiles library to version 1.2.1
|
||||||
|
- Enhance CMake configuration for better compatibility
|
||||||
|
|
||||||
## [2.1.0] - 2025-06-28
|
## [2.1.0] - 2025-06-28
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
@@ -4,7 +4,7 @@ project(fimdlp
|
|||||||
LANGUAGES CXX
|
LANGUAGES CXX
|
||||||
DESCRIPTION "Discretization algorithm based on the paper by Fayyad & Irani Multi-Interval Discretization of Continuous-Valued Attributes for Classification Learning."
|
DESCRIPTION "Discretization algorithm based on the paper by Fayyad & Irani Multi-Interval Discretization of Continuous-Valued Attributes for Classification Learning."
|
||||||
HOMEPAGE_URL "https://github.com/rmontanana/mdlp"
|
HOMEPAGE_URL "https://github.com/rmontanana/mdlp"
|
||||||
VERSION 2.1.0
|
VERSION 2.1.1
|
||||||
)
|
)
|
||||||
set(CMAKE_CXX_STANDARD 17)
|
set(CMAKE_CXX_STANDARD 17)
|
||||||
cmake_policy(SET CMP0135 NEW)
|
cmake_policy(SET CMP0135 NEW)
|
||||||
|
31
Makefile
31
Makefile
@@ -1,5 +1,5 @@
|
|||||||
SHELL := /bin/bash
|
SHELL := /bin/bash
|
||||||
.DEFAULT_GOAL := release
|
.DEFAULT_GOAL := help
|
||||||
.PHONY: debug release install test conan-create viewcoverage
|
.PHONY: debug release install test conan-create viewcoverage
|
||||||
lcov := lcov
|
lcov := lcov
|
||||||
|
|
||||||
@@ -11,18 +11,18 @@ docscdir = docs
|
|||||||
define build_target
|
define build_target
|
||||||
@echo ">>> Building the project for $(1)..."
|
@echo ">>> Building the project for $(1)..."
|
||||||
@if [ -d $(2) ]; then rm -fr $(2); fi
|
@if [ -d $(2) ]; then rm -fr $(2); fi
|
||||||
@conan install . --build=missing -of $(2) -s build_type=$(1)
|
@conan install . --build=missing -of $(2) -s build_type=$(1) $(4)
|
||||||
@cmake -S . -B $(2) -DCMAKE_TOOLCHAIN_FILE=$(2)/build/$(1)/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=$(1) -D$(3)
|
@cmake -S . -B $(2) -DCMAKE_TOOLCHAIN_FILE=$(2)/build/$(1)/generators/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=$(1) -D$(3)
|
||||||
@cmake --build $(2) --config $(1) -j 8
|
@cmake --build $(2) --config $(1) -j 8
|
||||||
endef
|
endef
|
||||||
|
|
||||||
debug: ## Build Debug version of the library
|
debug: ## Build Debug version of the library
|
||||||
@$(call build_target,"Debug","$(f_debug)", "ENABLE_TESTING=ON")
|
@$(call build_target,"Debug","$(f_debug)", "ENABLE_TESTING=ON", "-o enable_testing=True")
|
||||||
|
|
||||||
release: ## Build Release version of the library
|
release: ## Build Release version of the library
|
||||||
@$(call build_target,"Release","$(f_release)", "ENABLE_TESTING=OFF")
|
@$(call build_target,"Release","$(f_release)", "ENABLE_TESTING=OFF", "")
|
||||||
|
|
||||||
install: ## Install the project
|
install: ## Install the library
|
||||||
@echo ">>> Installing the project..."
|
@echo ">>> Installing the project..."
|
||||||
@cmake --build $(f_release) --target install -j 8
|
@cmake --build $(f_release) --target install -j 8
|
||||||
|
|
||||||
@@ -31,7 +31,8 @@ test: ## Build Debug version and run tests
|
|||||||
@$(MAKE) debug;
|
@$(MAKE) debug;
|
||||||
@cp -r tests/datasets $(f_debug)/tests/datasets
|
@cp -r tests/datasets $(f_debug)/tests/datasets
|
||||||
@cd $(f_debug)/tests && ctest --output-on-failure -j 8
|
@cd $(f_debug)/tests && ctest --output-on-failure -j 8
|
||||||
@cd $(f_debug)/tests && $(lcov) --capture --directory ../ --demangle-cpp --ignore-errors source,source --ignore-errors mismatch --output-file coverage.info >/dev/null 2>&1; \
|
@echo ">>> Generating coverage report..."
|
||||||
|
@cd $(f_debug)/tests && $(lcov) --capture --directory ../ --demangle-cpp --ignore-errors source,source --ignore-errors mismatch --ignore-errors inconsistent --output-file coverage.info >/dev/null 2>&1; \
|
||||||
$(lcov) --remove coverage.info '/usr/*' --output-file coverage.info >/dev/null 2>&1; \
|
$(lcov) --remove coverage.info '/usr/*' --output-file coverage.info >/dev/null 2>&1; \
|
||||||
$(lcov) --remove coverage.info 'lib/*' --output-file coverage.info >/dev/null 2>&1; \
|
$(lcov) --remove coverage.info 'lib/*' --output-file coverage.info >/dev/null 2>&1; \
|
||||||
$(lcov) --remove coverage.info 'libtorch/*' --output-file coverage.info >/dev/null 2>&1; \
|
$(lcov) --remove coverage.info 'libtorch/*' --output-file coverage.info >/dev/null 2>&1; \
|
||||||
@@ -66,5 +67,19 @@ conan-create: ## Create the conan package
|
|||||||
conan create . --build=missing -tf "" -s:a build_type=Debug -o "&:enable_testing=False"
|
conan create . --build=missing -tf "" -s:a build_type=Debug -o "&:enable_testing=False"
|
||||||
@echo ">>> Done"
|
@echo ">>> Done"
|
||||||
|
|
||||||
|
help: ## Show help message
|
||||||
|
@IFS=$$'\n' ; \
|
||||||
|
help_lines=(`fgrep -h "##" $(MAKEFILE_LIST) | fgrep -v fgrep | sed -e 's/\\$$//' | sed -e 's/##/:/'`); \
|
||||||
|
printf "%s\n\n" "Usage: make [task]"; \
|
||||||
|
printf "%-20s %s\n" "task" "help" ; \
|
||||||
|
printf "%-20s %s\n" "------" "----" ; \
|
||||||
|
for help_line in $${help_lines[@]}; do \
|
||||||
|
IFS=$$':' ; \
|
||||||
|
help_split=($$help_line) ; \
|
||||||
|
help_command=`echo $${help_split[0]} | sed -e 's/^ *//' -e 's/ *$$//'` ; \
|
||||||
|
help_info=`echo $${help_split[2]} | sed -e 's/^ *//' -e 's/ *$$//'` ; \
|
||||||
|
printf '\033[36m'; \
|
||||||
|
printf "%-20s %s" $$help_command ; \
|
||||||
|
printf '\033[0m'; \
|
||||||
|
printf "%s\n" $$help_info; \
|
||||||
|
done
|
@@ -54,7 +54,7 @@ class FimdlpConan(ConanFile):
|
|||||||
self.requires("libtorch/2.7.1")
|
self.requires("libtorch/2.7.1")
|
||||||
|
|
||||||
def build_requirements(self):
|
def build_requirements(self):
|
||||||
self.requires("arff-files/1.2.0") # for tests and sample
|
self.requires("arff-files/1.2.1") # for tests and sample
|
||||||
if self.options.enable_testing:
|
if self.options.enable_testing:
|
||||||
self.test_requires("gtest/1.16.0")
|
self.test_requires("gtest/1.16.0")
|
||||||
|
|
||||||
|
@@ -41,7 +41,7 @@ namespace mdlp {
|
|||||||
Discretizer* disc = new BinDisc(4, strategy_t::UNIFORM);
|
Discretizer* disc = new BinDisc(4, strategy_t::UNIFORM);
|
||||||
auto version = disc->version();
|
auto version = disc->version();
|
||||||
delete disc;
|
delete disc;
|
||||||
EXPECT_EQ("2.1.0", version);
|
EXPECT_EQ("2.1.1", version);
|
||||||
}
|
}
|
||||||
TEST(Discretizer, BinIrisUniform)
|
TEST(Discretizer, BinIrisUniform)
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user