Skip to content

Fermitools Roadmap

Don Horner edited this page Jan 30, 2019 · 20 revisions

This is a draft of what we are planning for the future of the Fermitools. It is currently just a rough draft of ideas.

Releases

I imagine that the releases in the list below would happen somewhat quarterly. There would likely be patch releases for bug fixes between the major items.

  • 2018 Q3 Fermitools release 1.0.0
    • Initial release
    • Switch to Conda for distribution.
  • 2019 Q1 Patch release
    • Fixed problem with gtsrcmaps not working Likelihood #10
    • Other likelihood fixes by Eric.
  • 2019 Q2 Feature Release
    • Improve handling of energy dispersion LK-141
    • Added gtdrm to write energy dispersion matrix LK-143
    • other enhancements or bug fixes for this release?
    • Lower cftisio version number to remove warning that confuses users?
  • 2019 Q3 Conda 5 changeover
    • Change to use Conda 5.
    • What will be required?
  • 2019 Q4 Python 3 transition
    • Many packages used by the Tools are dropping support for Python 2 before 2020, e.g., Numpy will not be adding new features to Python 2 version starting on January 1, 2019 but will provide bug fixes for Python 2 until December 31, 2019.
    • Maybe iterate major version number to 2.0.0.

Long term changes

  • Increase build modularity
    • What is our justification for this? What are the goals?
    • How are we going to do this?
  • Unit test improvement
    • Separate flyweight and integration tests. Improve reporting.
    • Turn threads into python notebooks. Add to Jenkins pipeline. Will provide additional layer of testing and automatically generate products that can be put on web version.
  • Alternate distribution mechanisms
    • pip, brew, apt-get, etc.
  • Better fermipy integration.
    • What is required for this?
  • Turn analysis threads into Jupyter notebooks. Add to Jenkins pipeline as tests.

Other tasks

  • Get Jenkins pipeline working on Macs.
  • Deal with unresolved JIRA issues. Group them into logical blocks and assigns to releases.
  • gtorbsim improvements