Skip to content

Commit

Permalink
release notes v1.7.0
Browse files Browse the repository at this point in the history
  • Loading branch information
yhoogstrate committed Jan 29, 2020
1 parent b34851c commit 3607e5c
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 34 deletions.
56 changes: 28 additions & 28 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -142,32 +142,32 @@ add_executable(mount.fastafs
)
set_target_properties(mount.fastafs PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${BUILD_DIR}")

#add_library(libfastafs SHARED
#src/fasta_to_twobit_fastafs.cpp
#src/ucsc2bit_to_fastafs.cpp
#src/flags.cpp
#src/fastafs.cpp
#src/ucsc2bit.cpp
#src/twobit_byte.cpp
#src/fourbit_byte.cpp
#src/database.cpp
#src/utils.cpp
#src/fuse.cpp
#src/lsfastafs.cpp
#)
#target_include_directories(libfastafs PUBLIC include)
#target_sources(libfastafs PUBLIC include/fastafs.hpp)

#set_target_properties(libfastafs PROPERTIES LIBRARY_OUTPUT_DIRECTORY "lib")
#set_target_properties(libfastafs PROPERTIES VERSION ${PROJECT_VERSION})
#set_target_properties(libfastafs PROPERTIES SOVERSION 1)
#set_target_properties(libfastafs PROPERTIES OUTPUT_NAME fastafs)

#set_target_properties(libfastafs PROPERTIES HEADER_OUTPUT_DIRECTORY "include")
# great, this doesn't go automagically with an entire dir
#set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER "include/config.hpp;include/database.hpp;include/fastafs.hpp;include/fasta_to_twobit_fastafs.hpp;include/fuse.hpp;include/meson.build;include/twobit_byte.hpp;include/ucsc2bit.hpp;include/ucsc2bit_to_fastafs.hpp;include/utils.hpp")
#set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER_DIRECTORY include)
#set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER_OUTPUT_DIRECTORY "include")
add_library(libfastafs SHARED
src/fasta_to_twobit_fastafs.cpp
src/ucsc2bit_to_fastafs.cpp
src/flags.cpp
src/fastafs.cpp
src/ucsc2bit.cpp
src/twobit_byte.cpp
src/fourbit_byte.cpp
src/database.cpp
src/utils.cpp
src/fuse.cpp
src/lsfastafs.cpp
)
target_include_directories(libfastafs PUBLIC include)
target_sources(libfastafs PUBLIC include/fastafs.hpp)

set_target_properties(libfastafs PROPERTIES LIBRARY_OUTPUT_DIRECTORY "lib")
set_target_properties(libfastafs PROPERTIES VERSION ${PROJECT_VERSION})
set_target_properties(libfastafs PROPERTIES SOVERSION 1)
set_target_properties(libfastafs PROPERTIES OUTPUT_NAME fastafs)

##set_target_properties(libfastafs PROPERTIES HEADER_OUTPUT_DIRECTORY "include")
## great, this doesn't go automagically with an entire dir
set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER "include/config.hpp;include/database.hpp;include/fastafs.hpp;include/fasta_to_fourbit_fastafs.hpp;include/fasta_to_twobit_fastafs.hpp;include/flags.hpp;include/fourbit_byte.hpp;include/fuse.hpp;include/lsfastafs.hpp;include/sequence_region.hpp;include/twobit_byte.hpp;include/ucsc2bit.hpp;include/ucsc2bit_to_fastafs.hpp;include/utils.hpp")
##set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER_DIRECTORY include)
##set_target_properties(libfastafs PROPERTIES PUBLIC_HEADER_OUTPUT_DIRECTORY "include")

# ----------------------------------------------------------------------
# ------------------------------ Testing -------------------------------
Expand All @@ -182,7 +182,7 @@ add_test(test_twobit_byte "${BUILD_TEST_DIR}/test_twobit_byte") # ACTG(N
add_test(test_fourbit_byte "${BUILD_TEST_DIR}/test_fourbit_byte") # ACGTURYKMSWBDHVN(-)
add_test(test_cache_twobit "${BUILD_TEST_DIR}/test_cache_twobit")
add_test(test_cache_fourbit "${BUILD_TEST_DIR}/test_cache_fourbit")
#add_test(test_view "${BUILD_TEST_DIR}/test_view")
add_test(test_view "${BUILD_TEST_DIR}/test_view")
add_test(test_flags "${BUILD_TEST_DIR}/test_flags")
add_test(test_fastafs "${BUILD_TEST_DIR}/test_fastafs")
add_test(test_check "${BUILD_TEST_DIR}/test_check") # file integrity checks
Expand All @@ -204,6 +204,6 @@ install(TARGETS fastafs DESTINATION "bin")
install(TARGETS mount.fastafs DESTINATION "bin")

# don't build during debug at least
#install(TARGETS libfastafs LIBRARY DESTINATION "lib" PUBLIC_HEADER DESTINATION "include/libfastafs")
install(TARGETS libfastafs LIBRARY DESTINATION "lib" PUBLIC_HEADER DESTINATION "include/libfastafs")

# ----------------------------------------------------------------------
17 changes: 14 additions & 3 deletions Changelog
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,21 @@

* v1.7.0
* `fastafs cache -o` for custom output files and bypassing the config
* Random access retrievement via file system: `<mount>/seq/chr1:100-200`
* CRC32 checksums for file integratity
* converting to meson because of insane build times using cmake+make and re-building files that have not changed
* Random access subsequence retrieval diretly via filesystem: `<mount>/seq/chr1:100-200`
* Implements CRC32 checksums for whole-file integritity
* Converting to meson because of insane build times using cmake+make and re-building files that have not changed
* `fastafs view|mount -m/--no-masking` virtualises fasta files without masking (uppercase)
* Minor support for building with meson and ninja
* cmake template allows building for guix (+guix file provided)
* Changed requirement from c++17 on c++14 to avoid large compatibility issues
* Implements bitflags with corresponding class
* Implements fourbit (and automatically switches over if non ACTGUN chars are found
* Implements functions `is_fasta_file`, and `is_ucsc2bit_file` using file MAGIC
* Creates by FASTAFS files that are first flagged as incomplete, that are unflagged after conversion has completed
* MD5sums working for fourbit compressed sequences
* Implements `fastafs cache -o` to export to desired output fastafs file
* Adds compression type to `fastafs list` output
* More and improved testing, including file integrity detection

2019-09-06 Youri Hoogstrate

Expand Down
2 changes: 1 addition & 1 deletion include/ucsc2bit_to_fastafs.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ struct ucsc2bit_seq_header {
std::vector<uint32_t> m_block_sizes;

ucsc2bit_seq_header():
name_size(0), name(nullptr) { }
name_size(0), name(nullptr), n_blocks(0) { }
};

struct ucsc2bit_seq_header_conversion_data {
Expand Down
4 changes: 2 additions & 2 deletions test/sequenceregion/test_sequenceregion.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -168,11 +168,11 @@ BOOST_AUTO_TEST_CASE(test_sequence_region3)
{

sequence_region *sr = nullptr;
if(sr == nullptr) {// compiler doesn't understand this otherwise
//if(sr == nullptr) {// compiler doesn't understand this otherwise
char arg[] = "/seq/chrRr1:1235-1234";

BOOST_CHECK_THROW(sr = new sequence_region(&(arg[5])), std::invalid_argument);
}
//}
}

}
Expand Down

0 comments on commit 3607e5c

Please sign in to comment.