_chrismay,
@_chrismay@fosstodon.org avatar

I recently heard that the vulnerability that enabled the Equifax breach was in a dependency… that was fixed two months before the breach.

So I'm wondering, friends, how and when do you check on and update your dependencies for your production projects? What is your process?

diji,
@diji@mastodon.social avatar

@_chrismay We use pipenv for dependency management. Our "build" pipeline runs pipenv check after the sync, which uses the safety underneath if I am not mistaken. Builds fail if this check fails.

From there, it is usually easy to pipenv update, run unit tests and , fix failures, and commit the changes.

_chrismay,
@_chrismay@fosstodon.org avatar

@diji Thank you!
How often does this pipeline run?

diji,
@diji@mastodon.social avatar

@_chrismay Whenever commits are merged... whether from a remote push or a PR.

Our Bitbucket repos are configured to require the build to pass in order to merge a PR.

Practically, how often does this translate? Usually multiple times per day.

_chrismay,
@_chrismay@fosstodon.org avatar

@diji Awesome! Thanks!

diji,
@diji@mastodon.social avatar

@_chrismay As a bonus, I have a module in our codebase that generates markdown documentation from code.

One of the classes in that framework is one that combs through the metadata of installed packages (and some data from the pipfile) to generate a human-readable "software inventory". For each package, it gives info like the version, license, description, authors. It also identifies whether this is a primary, dev, or secondary dependency.

_chrismay,
@_chrismay@fosstodon.org avatar

@diji Spiffy! Good idea!

orsinium,
@orsinium@fosstodon.org avatar

@_chrismay There are tools like safety, pip-audit, and snyk that you can run on CI to get notified about vulnerable dependencies. And there are bots like dependabot that can automatically update dependencies and open PRs.

_chrismay,
@_chrismay@fosstodon.org avatar

@orsinium Thanks for the tool recommendations. I forgot about some of these. Do you use them? What is your process?

orsinium,
@orsinium@fosstodon.org avatar

@_chrismay At work we use safety on CI and dependabot for automatic updates. I want to switch to pip-audit because it's free and the official PyPA tool, but my PR in pip-audit for poetry support wasn't accepted.

_chrismay,
@_chrismay@fosstodon.org avatar

@orsinium Thanks! How often does your CI check for security / updates?

orsinium,
@orsinium@fosstodon.org avatar

@_chrismay It runs on every merge request. With our commit intensity, I'd say every 10 minutes someone sees it.

_chrismay,
@_chrismay@fosstodon.org avatar

@orsinium Awesome! Thanks for filling in these details. Very helpful.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • python
  • ngwrru68w68
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • megavids
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • provamag3
  • JUstTest
  • All magazines