question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Documenting the New CI fixes

See original GitHub issue

I have made changes in Github Actions, which provides four separate packages in deepchem for the different environments -

  1. Deepchem
  2. Deepchem[tensorflow]
  3. Deepchem[torch]
  4. DeepChem[jax]

Changes have been made in this https://github.com/deepchem/deepchem/pull/2573 . Its a long PR, and it has become difficult to manage it with new errors showing upon new PR’s being merged into Master branch and hence I was asked by @rbharath @ncfrey to document all the errors showing so that we could manage them more easily.

Main Feature of PR

  1. Separate test suites for different environments using Pytest Markers - tensorflow, torch, jax. Along with that, had to make import changes accordingly
  2. Made changes in Github Actions accordingly and have added scripts for installing these packages separately.
  3. There four environments in CI - common(all those which are only numpy or scikit-learn dependent) , tensorflow, torch, jax.
  4. Had to fix bugs accordingly, based on each individual environment.

Unfixed Errors from the PR -

1. DeepChem Common -

Most of these errors are interconnected, fixing one might solve the whole bucket

  • Errors in FastaLoader -
  • TestFASTALoader.test_fasta_one_hot
  • TestFASTALoader.test_fasta_one_hot_big
  • TestFASTALoader.test_legacy_fasta_one_hot
  • Errors of the form
TypeError: join() argument must be str or bytes, not 'float64'
  • deepchem/data/tests/test_data_loader - error log
  • deepchem/data/tests/test_datasets.py - error log
  • deepchem/trans/tests/test_flattening.py error log
  • deepchem/trans/tests/test_normalization.py error log
  • Errors in Gaussian HyperParameter - I was not able to reproduce the errors in my local environment or google collab notebook
  • deepchem/hyper/tests/test_gaussian_hyperparam_opt - error log

2. DeepChem Tensorflow -

Our test suite has also included slow tests (which were previously checked only before release cycles),

  • Flaky errors, which are inconsistent in Python 3.6, 3.7
  • AtomicConvFeaturiser in deepchem/feat/tests/test_graph_features.py - error log
  • WeaveModel in deepchem/models/tests/test_weave_models.py - error log

2. DeepChem Torch -

Our test suite has also included slow tests (which were previously checked only before release cycles),

3. DeepChem Torch -

Same as tensorflow, we are running slow tests in torch environment as well and here is the one main flaky failing test-

  • MultiTaskClassification on qm7 dataset. error log

4. Few More errors in DeepChem Common

Error occurring only in Python 3.8 and 3.9 . These errors seem related to OpenVino and the Docking engine

  • TestBindingPocket.test_convex_find_pockets error log
  • TestBindingPocket.test_extract_active_site error log
  • TestBindingPocket.test_get_face_boxes_for_protein error log

And quite a few more which can be found in the same logs related to the Docking.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Reactions:2
  • Comments:11 (11 by maintainers)

github_iconTop GitHub Comments

2reactions
peastmancommented, Jul 16, 2021

A lot of these errors were fixed by #2605. I checked them off above.

1reaction
peastmancommented, Aug 4, 2021

@ncfrey the error in AtomicConvFeaturizer was introduced by #2406. It added a new required positional argument n_tasks to AtomicConvModel. This broke AtomicConvFeaturizer, which constructs an AtomicConvModel. Could you take a look and see what you think the appropriate fix is? At the point where it creates the model, I don’t think we know yet how many tasks there are going to be. Perhaps we need to wait until later to create the model?

Read more comments on GitHub >

github_iconTop Results From Across the Web

CI/CD development documentation - GitLab Docs
Development guides that are specific to CI/CD are listed here: If you are creating new CI/CD templates, please read the development guide for...
Read more >
Continuous Documentation in a CI/CD World - The New Stack
Why documentation should be an important part of the continuous integration/delvery process.
Read more >
CI/CD pipelines explained: Everything you need to know
Planning to implement CI/CD? This comprehensive guide explores the stages of a CI/CD pipeline, its pros and cons, best practices and more.
Read more >
Fix CI/CD errors - Doctools - latest - ConsenSys
Documentation sites that use the old system use CircleCI to verify links, Markdown syntax, writing style, and more on all documentation changes.
Read more >
CI/CD Pipeline: A Gentle Introduction - Semaphore
A CI/CD pipeline automates your software delivery process. The pipeline builds code, runs tests (CI), and safely deploys a new version of ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found