Skip to content
Commits on Source (4)
......@@ -35,7 +35,7 @@ ELSE(NO_DEP_CHECK)
# library implements.
# In other words, the library implements all the interface numbers in the
# range from number current - age to current.
SET(${PROJECT_NAME}_VERSION_CURRENT "2")
SET(${PROJECT_NAME}_VERSION_CURRENT "3")
SET(${PROJECT_NAME}_VERSION_REVISION "0")
SET(${PROJECT_NAME}_VERSION_AGE "0")
......@@ -53,7 +53,7 @@ if (CMAKE_INSTALL_PREFIX)
endif (CMAKE_INSTALL_PREFIX)
include (GNUInstallDirs)
find_package (bpp-seq 11.0.0 REQUIRED)
find_package (bpp-seq 12.0.0 REQUIRED)
# CMake package
set (cmake-package-location ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
......@@ -95,10 +95,10 @@ ENDIF(NO_DEP_CHECK)
# Packager
SET(CPACK_PACKAGE_NAME "libbpp-seq-omics")
SET(CPACK_PACKAGE_VENDOR "Bio++ Development Team")
SET(CPACK_PACKAGE_VERSION "2.3.1")
SET(CPACK_PACKAGE_VERSION "2.4.0")
SET(CPACK_PACKAGE_VERSION_MAJOR "2")
SET(CPACK_PACKAGE_VERSION_MINOR "3")
SET(CPACK_PACKAGE_VERSION_PATCH "1")
SET(CPACK_PACKAGE_VERSION_MINOR "4")
SET(CPACK_PACKAGE_VERSION_PATCH "0")
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "The Bio++ Sequence-Omics library")
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING.txt")
SET(CPACK_RESOURCE_FILE_AUTHORS "${CMAKE_SOURCE_DIR}/AUTHORS.txt")
......@@ -107,6 +107,8 @@ SET(CPACK_SOURCE_GENERATOR "TGZ")
# /!\ This assumes that an external build is used
SET(CPACK_SOURCE_IGNORE_FILES
"/build/"
"/html/"
"/BppSeqOmics.tag"
"/\\\\.git/"
"/\\\\.gitignore"
${CPACK_SOURCE_IGNORE_FILES}
......
02/03/18 -*- Version 2.4.0 -*-
02/03/18 Julien Dutheil
* Removed all dynamic exception specifications
* Increased interface number to 3
21/01/18 Julien Dutheil
* Added OrderFilterMafIterator class.
03/01/18 Julien Dutheil
* Fixed bug in AlnFilter when relative proportions are set. Proportion was relative to block and not to window, which was incorrect.
22/12/17 Julien Dutheil
* Improved GTF parser, bug fixed when empty token in last column.
10/12/17 -*- Version 2.3.2 -*-
10/05/17 -*- Version 2.3.0 -*-
......
......@@ -38,7 +38,7 @@ PROJECT_NAME = bpp-seq-omics
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = 2.3.0
PROJECT_NUMBER = 2.4.0
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
......
%define _basename bpp-seq-omics
%define _version 2.3.1
%define _release 1
%define _prefix /usr
URL: http://biopp.univ-montp2.fr/
URL: https://github.com/BioPP/bpp-seq-omics
Name: %{_basename}
Version: %{_version}
Release: %{_release}
Name: bpp-seq-omics
Version: 2.4.0
Release: 1%{?dist}
License: CECILL-2.0
Vendor: The Bio++ Project
Source: http://biopp.univ-montp2.fr/repos/sources/%{_basename}-%{_version}.tar.gz
Source: %{name}-%{version}.tar.gz
Summary: Bio++ Sequence library: genomics components
Group: Development/Libraries/C and C++
Requires: bpp-core = %{_version}
Requires: bpp-seq = %{_version}
Requires: bpp-core = %{version}
Requires: bpp-seq = %{version}
BuildRoot: %{_builddir}/%{_basename}-root
BuildRoot: %{_builddir}/%{name}-root
BuildRequires: cmake >= 2.8.11
BuildRequires: gcc-c++ >= 4.7.0
BuildRequires: libbpp-core3 = %{_version}
BuildRequires: libbpp-core-devel = %{_version}
BuildRequires: libbpp-seq11 = %{_version}
BuildRequires: libbpp-seq-devel = %{_version}
BuildRequires: libbpp-core4 = %{version}
BuildRequires: libbpp-core-devel = %{version}
BuildRequires: libbpp-seq12 = %{version}
BuildRequires: libbpp-seq-devel = %{version}
AutoReq: yes
AutoProv: yes
......@@ -31,26 +28,26 @@ AutoProv: yes
This library contains the genomics components of the Bio++ sequence library.
It is part of the Bio++ project.
%package -n libbpp-seq-omics2
%package -n libbpp-seq-omics3
Summary: Bio++ Sequence library: genomics components
Group: Development/Libraries/C and C++
%description -n libbpp-seq-omics2
%description -n libbpp-seq-omics3
This library contains the genomics components of the Bio++ sequence library.
It is part of the Bio++ project.
%package -n libbpp-seq-omics-devel
Summary: Bio++ Sequence library: genomics components
Group: Development/Libraries/C and C++
Requires: libbpp-seq-omics2 = %{_version}
Requires: libbpp-seq11 = %{_version}
Requires: libbpp-seq-devel = %{_version}
Requires: libbpp-core3 = %{_version}
Requires: libbpp-core-devel = %{_version}
Requires: libbpp-seq-omics3 = %{version}
Requires: libbpp-seq12 = %{version}
Requires: libbpp-seq-devel = %{version}
Requires: libbpp-core4 = %{version}
Requires: libbpp-core-devel = %{version}
%description -n libbpp-seq-omics-devel
The libbpp-seq-omics-devel package contains the header files and static libraries for
building applications which use %{_basename}.
building applications which use %{name}.
%prep
%setup -q
......@@ -67,11 +64,11 @@ make DESTDIR=$RPM_BUILD_ROOT install
%clean
rm -rf $RPM_BUILD_ROOT
%post -n libbpp-seq-omics2 -p /sbin/ldconfig
%post -n libbpp-seq-omics3 -p /sbin/ldconfig
%postun -n libbpp-seq-omics2 -p /sbin/ldconfig
%postun -n libbpp-seq-omics3 -p /sbin/ldconfig
%files -n libbpp-seq-omics2
%files -n libbpp-seq-omics3
%defattr(-,root,root)
%doc AUTHORS.txt COPYING.txt INSTALL.txt ChangeLog
%{_prefix}/%{_lib}/lib*.so.*
......@@ -87,6 +84,9 @@ rm -rf $RPM_BUILD_ROOT
%{_prefix}/include/*
%changelog
* Fri Mar 03 2018 Julien Dutheil <julien.dutheil@univ-montp2.fr> 2.4.0-1
- Increased interface number
- Removed dynamic exceptions declarations.
* Tue Jun 06 2017 Julien Dutheil <julien.dutheil@univ-montp2.fr> 2.3.1-1
- Increased interface number
* Wed May 10 2017 Julien Dutheil <julien.dutheil@univ-montp2.fr> 2.3.0-1
......
libbpp-seq-omics (2.4.0-1) UNRELEASED; urgency=medium
* New upstream version.
-- Julien Dutheil <julien.dutheil@univ-montp2.fr> Wed, 28 Mar 2018 10:00:23 +0200
libbpp-seq-omics (2.3.2-1) unstable; urgency=medium
[ Julien Dutheil ]
......
......@@ -7,7 +7,7 @@ Priority: optional
Build-Depends: debhelper (>= 11~),
cmake,
d-shlibs (>= 0.80),
libbpp-seq-dev (>= 2.3.2)
libbpp-seq-dev (>= 2.4.0)
Standards-Version: 4.1.3
Vcs-Browser: https://anonscm.debian.org/cgit/debian-med/libbpp-seq-omics.git
Vcs-Git: https://anonscm.debian.org/git/debian-med/libbpp-seq-omics.git
......@@ -16,9 +16,9 @@ Homepage: http://biopp.univ-montp2.fr/wiki/index.php/Main_Page
Package: libbpp-seq-omics-dev
Architecture: any
Section: libdevel
Depends: libbpp-seq-omics2 (= ${binary:Version}),
Depends: libbpp-seq-omics3 (= ${binary:Version}),
${misc:Depends},
libbpp-seq-dev (>= 2.3.2)
libbpp-seq-dev (>= 2.4.0)
Description: Bio++ Sequence library: genomics components (development files)
Bio++ is a set of C++ libraries for Bioinformatics, including sequence
analysis, phylogenetics, molecular evolution and population genetics.
......@@ -29,7 +29,7 @@ Description: Bio++ Sequence library: genomics components (development files)
This package contains the static library and the header files of the
Bio++ classes dedicated to genomic sequencing.
Package: libbpp-seq-omics2
Package: libbpp-seq-omics3
Architecture: any
Multi-Arch: same
Section: libs
......
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: B++-Seq-Omics
Upstream-Name: Bpp-Seq-Omics
Upstream-Contact: Julien Yann Dutheil <julien.dutheil@univ-montp2.fr>
Source: http://biopp.univ-montp2.fr/Repositories/sources/
Source: https://github.com/BioPP/bpp-seq-omics/
Files: *
Copyright: 2010-2016 Julien Yann Dutheil <julien.dutheil@univ-montp2.fr>
......
This diff is collapsed.
Author: Julien Y. Dutheil <dutheil@evolbio.mpg.de>
Last-Update: Mon Jul 17 22:57:56 2017 +0200
Description: Fixed unit tests for more portability.
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -16,9 +16,11 @@ foreach (test_cpp_file ${test_cpp_files}
get_filename_component (test_name ${test_cpp_file} NAME_WE)
add_executable (${test_name} ${test_cpp_file})
target_link_libraries (${test_name} ${PROJECT_NAME}-shared)
+ set_target_properties (${test_name} PROPERTIES POSITION_INDEPENDENT_CODE TRUE)
add_test (
NAME ${test_name}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMAND ${test_name}
)
+ set_tests_properties (${test_name} PROPERTIES TIMEOUT 60000)
endforeach (test_cpp_file)
unforce-cxxflags.patch
fix_test_cmakelist.patch
......@@ -11,7 +11,7 @@ Comment: Upstream version 2.3.0 now has additional -std=c++11 which might
# Compile options
-set (CMAKE_CXX_FLAGS "-std=c++11 -Wall -Weffc++ -Wshadow -Wconversion")
+set (CMAKE_CXX_FLAGS "-std=c++11 -Wno-deprecated -g")
+#set (CMAKE_CXX_FLAGS "-std=c++11 -g")
IF(NOT CMAKE_BUILD_TYPE)
SET(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
......@@ -66,7 +66,7 @@ void BedGraphFeatureReader::getNextLine_() {
}
}
const BasicSequenceFeature BedGraphFeatureReader::nextFeature() throw (Exception)
const BasicSequenceFeature BedGraphFeatureReader::nextFeature()
{
if (!hasMoreFeature())
throw Exception("BedGraphFeatureReader::nextFeature(). No more feature in file.");
......
......@@ -92,7 +92,7 @@ class BedGraphFeatureReader:
public:
bool hasMoreFeature() const { return nextLine_ != ""; }
const BasicSequenceFeature nextFeature() throw (Exception);
const BasicSequenceFeature nextFeature();
void getAllFeatures(SequenceFeatureSet& features) {
while (hasMoreFeature()) {
......
......@@ -64,7 +64,7 @@ class FeatureReader
public:
virtual bool hasMoreFeature() const = 0;
virtual const BasicSequenceFeature nextFeature() throw (Exception) = 0;
virtual const BasicSequenceFeature nextFeature() = 0;
virtual void getAllFeatures(SequenceFeatureSet& features) = 0;
virtual void getFeaturesOfType(const std::string& type, SequenceFeatureSet& features) = 0;
virtual void getFeaturesOfSequence(const std::string& seqId, SequenceFeatureSet& features) = 0;
......
......@@ -76,7 +76,7 @@ void GffFeatureReader::getNextLine_() {
}
}
const BasicSequenceFeature GffFeatureReader::nextFeature() throw (Exception)
const BasicSequenceFeature GffFeatureReader::nextFeature()
{
if (!hasMoreFeature())
throw Exception("GffFeatureReader::nextFeature(). No more feature in file.");
......
......@@ -93,7 +93,7 @@ class GffFeatureReader:
public:
bool hasMoreFeature() const { return nextLine_ != ""; }
const BasicSequenceFeature nextFeature() throw (Exception);
const BasicSequenceFeature nextFeature();
void getAllFeatures(SequenceFeatureSet& features) {
while (hasMoreFeature()) {
......
......@@ -51,9 +51,9 @@ knowledge of the CeCILL license and that you accept its terms.
using namespace bpp;
using namespace std;
const std::string GtfFeatureReader::GTF_PHASE = "GTF_PHASE";
const std::string GtfFeatureReader::GTF_GENE_ID = "gene_id";
const std::string GtfFeatureReader::GTF_TRANSCRIPT_ID = "transcript_id";
const string GtfFeatureReader::GTF_PHASE = "GTF_PHASE";
const string GtfFeatureReader::GTF_GENE_ID = "gene_id";
const string GtfFeatureReader::GTF_TRANSCRIPT_ID = "transcript_id";
void GtfFeatureReader::getNextLine_() {
nextLine_ = "";
......@@ -70,7 +70,7 @@ void GtfFeatureReader::getNextLine_() {
}
}
const BasicSequenceFeature GtfFeatureReader::nextFeature() throw (Exception)
const BasicSequenceFeature GtfFeatureReader::nextFeature()
{
if (!hasMoreFeature())
throw Exception("GtfFeatureReader::nextFeature(). No more feature in file.");
......@@ -81,28 +81,30 @@ const BasicSequenceFeature GtfFeatureReader::nextFeature() throw (Exception)
throw Exception("GtfFeatureReader::nextFeature(). Wrong GTF file format: should have 9 tab delimited columns.");
//if ok, we can parse each column:
std::string seqId = st.nextToken();
std::string source = st.nextToken();
std::string type = st.nextToken();
string seqId = st.nextToken();
string source = st.nextToken();
string type = st.nextToken();
unsigned int start = TextTools::to<unsigned int>(st.nextToken()) - 1;
unsigned int end = TextTools::to<unsigned int>(st.nextToken());
double score = TextTools::to<double>(st.nextToken());
std::string strand = st.nextToken();
std::string phase = st.nextToken();
std::string attrDesc = st.nextToken();
std::map<string, string> attributes;
bpp::StringTokenizer st1(attrDesc, ";");
string strand = st.nextToken();
string phase = st.nextToken();
string attrDesc = st.nextToken();
map<string, string> attributes;
StringTokenizer st1(attrDesc, ";");
while (st1.hasMoreToken()) {
std::string item(bpp::TextTools::removeSurroundingWhiteSpaces(st1.nextToken()));
std::string::size_type idx = item.find_first_of(' ');
std::string key(item.substr(0, idx));
std::string value(item.substr(idx));
string item(st1.nextToken());
if (TextTools::isEmpty(item)) continue;
item = TextTools::removeSurroundingWhiteSpaces(item);
string::size_type idx = item.find_first_of(' ');
string key(item.substr(0, idx));
string value(item.substr(idx));
// remove first "
while (
value.size() > 0
&& (
value[0] == '"'
|| bpp::TextTools::isWhiteSpaceCharacter(value[0])
|| TextTools::isWhiteSpaceCharacter(value[0])
)
) {
value.erase(value.begin());
......@@ -112,7 +114,7 @@ const BasicSequenceFeature GtfFeatureReader::nextFeature() throw (Exception)
value.size() > 0
&& (
value[value.size() - 1] == '"'
|| bpp::TextTools::isWhiteSpaceCharacter(value[value.size() - 1])
|| TextTools::isWhiteSpaceCharacter(value[value.size() - 1])
)
) {
value.erase(value.end() - 1);
......@@ -122,15 +124,15 @@ const BasicSequenceFeature GtfFeatureReader::nextFeature() throw (Exception)
}
//KeyvalTools::multipleKeyvals(attrDesc, attributes, ";", false);
//std::string id = attributes["ID"];
std::string id = "";
string id = "";
BasicSequenceFeature feature(id, seqId, source, type, start, end, strand[0], score);
//Set phase attributes:
phase = bpp::TextTools::removeSurroundingWhiteSpaces(phase);
phase = TextTools::removeSurroundingWhiteSpaces(phase);
if (phase != ".") feature.setAttribute(GTF_PHASE, phase);
//now check additional attributes:
for (std::map<std::string, std::string>::iterator it = attributes.begin(); it != attributes.end(); ++it) {
for (map<std::string, std::string>::iterator it = attributes.begin(); it != attributes.end(); ++it) {
feature.setAttribute(it->first, it->second); //We accept all attributes, even if they are not standard.
//std::cout << "[" << it->first << "] = [" << it->second << "]" << std::endl;
//std::cout << "phase: " << phase << std::endl;
......
......@@ -84,7 +84,7 @@ class GtfFeatureReader:
public:
bool hasMoreFeature() const { return nextLine_ != ""; }
const BasicSequenceFeature nextFeature() throw (Exception);
const BasicSequenceFeature nextFeature();
void getAllFeatures(SequenceFeatureSet& features) {
while (hasMoreFeature()) {
......
......@@ -44,7 +44,7 @@ knowledge of the CeCILL license and that you accept its terms.
using namespace bpp;
bool Fastq::nextSequence(std::istream& input, Sequence& seq) const throw (Exception) {
bool Fastq::nextSequence(std::istream& input, Sequence& seq) const {
if (input && ! input.eof()) {
//SequenceWithQuality& sq;
std::string buffer;
......@@ -85,7 +85,7 @@ bool Fastq::nextSequence(std::istream& input, Sequence& seq) const throw (Except
/******************************************************************************/
void Fastq::writeSequence(std::ostream& output, const Sequence& seq) const throw (Exception)
void Fastq::writeSequence(std::ostream& output, const Sequence& seq) const
{
std::string qual(seq.size(), static_cast<char>(33));
try {
......
......@@ -118,7 +118,7 @@ namespace bpp
* in.close();
* @endcode
*/
bool nextSequence(std::istream& input, Sequence& seq) const throw (Exception);
bool nextSequence(std::istream& input, Sequence& seq) const;
/** @} */
/**
......@@ -130,7 +130,7 @@ namespace bpp
* @copydoc OSequenceStream::writeSequence()
* @author Sylvain Gaillard
*/
void writeSequence(std::ostream& output, const Sequence& seq) const throw (Exception);
void writeSequence(std::ostream& output, const Sequence& seq) const;
/** @} */
};
}
......