Skip to content

Releases: macs3-project/MACS

v3.0.0 Alpha 5 release

09 Dec 15:46
cbb4557
Compare
Choose a tag to compare
Pre-release

The fifth alpha release fixed an issue to correctly set CFLAG for older gcc compiler. Also, now it will use simde-no-test instead of simde as sub-module. The setup.py script has been cleaned up.

v3.0.0 Alpha 4 release

08 Dec 01:01
11d0642
Compare
Choose a tag to compare
Pre-release

The alpha 4 release fixed an issue in 3.0.0a3 where the MANIFEST.in file doesn't include correct source code files, and fixed an issue so that --std=gnu99 cflag will be added to CFLAG while compiling fermi-lite codes.

v3.0.0 Alpha 3 release

07 Dec 23:43
d78344e
Compare
Choose a tag to compare
Pre-release

The alpha 3 release fixed an issue in 3.0.0a2 where simde was not correctly included while uploading the package to PyPI through github action.

v3.0.0 Alpha 2 release

07 Dec 16:15
c692b32
Compare
Choose a tag to compare
Pre-release

The second alpha release contains a newly added a callvar subcommand which can be used to call variants in given peak regions directly from ChIP-seq/ATAC-seq bam files with or without control. It also contains optimization in the MACS3.IO.Parser module to make reading gzipped BED files faster (20% less time).

v3.0.0 Alpha 1 release

04 Dec 16:58
Compare
Choose a tag to compare
Pre-release

v3.0.0 Alpha 1 release is to test the new reorganized codes and the new CI through GitHub Action which replaces TravisCI. The package should be uploaded to PyPI with twine.

MACS v2.2.7.1

12 Apr 00:06
Compare
Choose a tag to compare

hotfix

Add 'wheel' and 'pip' to pyproject.toml so that pip install can
work.

MACS v2.2.7 (broken pip pkg)

11 Apr 23:13
Compare
Choose a tag to compare

Bugs fixed

  1. MACS2 has been tested on multiple architectures to make sure it
    can successfully generate consistent results. Currently the
    supported architectures are: AMD64, ARM64, i386, PPC64LE, and
    S390X. Thanks to @mr-c, @junaruga, and @tillea! Related to issue
    #340, #349, #351, and #359; to PR #348, #350, #360, #361, #367,
    and #370. The lesson is that if the project is built on Cython and
    is aimed at memory efficiency, we should specifically define all
    int/float types in pyx files such as int8_t or uint32_t using
    either libc or numpy (c version) instead of relying on Cython
    types such as short, long, double.

  2. MACS2 setup script will check numpy and install numpy if
    necessary. PR #378, issue #364

  3. bdgbroadcall command will correctly add the score column (5th
    column). The score (5th) column contains 10 times of the average
    score in the broad region. PR #373, issue #362

  4. The missing test on bdgopt subcommand has been added. PR #363

  5. The obsolete option --ratio from callpeak subcommand has
    been removed. PR #369, issue #366

  6. Fixed the incorrect description in README on the 'maximum
    length of broad region is 4 times of d' to 'maximum gap for
    merging broad regions is 4 times of tag size by default'. PR #380,
    issue #365.

  • Other
  1. CODE OF CONDUCT document has been added to MACS2 github
    repository. PR #358

MACS v2.2.6

12 Dec 21:02
f72b84c
Compare
Choose a tag to compare

Speed up and other fixes

New Features

  1. Speed up MACS2 with some programming tricks and code cleanup.

    The filter_dup function replaces separate_dups. The later one was
    implemented for potentially putting back duplicate reads in certain
    downstream analysis. However such analysis hasn't been implemented.
    Optimize the speed of writing bedGraph files. Optimize BAM and BAMPE
    parsing with pointer casting instead of python unpack.

  2. The comment lines in the headers of BED or SAM files will be
    correctly skipped. However, MACS2 won't check comment lines in the
    middle of the file.

Bugs fixed

  1. Cutoff-analysis in callpeak command. #341

  2. Issues related to SAMParser and three ELAND Parsers are fixed. #347

Other

  1. cmdlinetest script in test/ folder has been updated to: 1. test
    cutoff-analysis with callpeak cmd; 2. output the two lines before
    and after the error or warning message during testing; 3. output only
    the first 10 lines if the difference between test result and standard
    result can be found; 4. prockreport script monitor CPU time and
    memory usage in 1 second interval, providing a bit more accuracy.

  2. Python3.5 support is removed. Now MACS2 requires Python>=3.6.

  3. In the next release, we will remove the support for ELAND and BOWTIE
    format file, since SAM/BAM and BED format are more standard and flexible.

MACS v2.2.5

31 Oct 15:37
7276a8d
Compare
Choose a tag to compare

Python3 speed up

Features added

  1. Github code only and Not included in MACS2 PyPI release New
    testing data for performance test. An subsampled ENCODE2 CTCF
    ChIP-seq dataset, including 5million ChIP reads and 5 million
    control reads, has been included in the test folder for testing
    CPU and memory usage (i.e. 5M test). Several related scripts ,
    including prockreport for output cpu memory usage, pyprofile
    and pyprofile_stat for debuging and profiling MACS2 codes, have
    been included.

  2. Speed up pvalue-qvalue checkup (pqtable checkup) #335 #338.
    The old hashtable.pyx implementation copied from Pandas (very old
    version) doesn't work well in Python3+Cython. It slows down the
    pqtable checkup using the identical Cython codes as in
    v2.1.4. While running 5M test, the __getitem__ function in the
    hashtable.pyx took 3.5s with 37,382,037 calls in MACS2 v2.1.4, but
    148.6s with the same number of calls in MACS2 v2.2.4. As a
    consequence, the standard python dictionary implementation has
    replaced hashtable.pyx for pqtable checkup. Now MACS2 runs a bit
    faster than py2 version, but uses a bit more memory. In general,
    v2.2.5 can finish 5M reads test in 20% less time than MACS2
    v2.1.4, but use 15% more memory.

Bug fixed

  1. More Python3 related fixes, e.g. the return value of keys from
    py3 dict. #333 #337

Note: The Github release package grows bigger since more testing
data have been included.

MACS v2.2.4

03 Oct 18:33
fff5f1d
Compare
Choose a tag to compare

The first release that is compatible with Python3

Features added

  1. First Python3 version MACS2 released.

  2. Version number 2.2.X will be used for MACS2 in Python3, in
    parallel to 2.1.X.

  3. More comprehensive test.sh script to check the consistency of
    results from Python2 version and Python3 version.

  4. Simplify setup.py script since the newest version transparently
    supports cython. And when cython is not installed by the user,
    setup.py can still compile using only C codes.

  5. Fix Signal.pyx to use np.array instead of np.mat.