[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

report on first qiime tutorial with Debian packages



Hello,

TL;DR: Qiime tutorial is directly usable with the packages in salsa for 2020.11.1, no need for anything redundant from Debian. We need to work on JavaScript to get q2-diversity into main.

I followed https://docs.qiime2.org/2021.4/tutorials/moving-pictures/ and must admit that I am impressed. This is some nice work. The command lines can be copy'n'pasted directly from that page.

What surprised me a bit was that I needed about all the modules we have currently functional - it is not that there is a core functionality in the qiime package and the additional modules are just making it somewhat nicer or so - no. You have phylogeny analyses or you don't. You have diversity anlalyses or you don't.

The first trouble I could spot with this very first attempt is with the q2-diversity package. This needs JavaScript, which I (not reading the README) had missed in my first package. This however is huge:

npm install --no-save && \
npm run build && \
cp licenses/* dist/
npm WARN deprecated babel-preset-es2015@6.24.1: 🙌  Thanks for using Babel: we recommend using babel-preset-env now: please read https://babeljs.io/env to update!
npm WARN deprecated eslint-loader@1.9.0: This loader has been deprecated. Please use eslint-webpack-plugin
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated chokidar@1.7.0: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor.
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated core-js@2.6.12: core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.

added 640 packages, and audited 641 packages in 38s

Yes. 640 packages. We likely have quite a few of them in Debian already and can somehow help npm to find them, but - ouch. No idea how you feel about this, but I somehow sense that we should not be doing this without upstream. And preferably, we sync this with JavaScript packaging for conda - otherwise, we would always have versions out of sync. So, what I have now come up with is the invocation via the Makefile that is provided that downloads what is missing.

The other concern is that the tutorial provided a classifier in a file format of what was from scikit-learn IIRC that was from a newer version of what we have in the archive. They want to have their users classify that themselves in a future version, so that was not too much of my immediate concern.

Best,
Steffen


Reply to: