zfec VS fossa-action

Compare zfec vs fossa-action and see what are their differences.

zfec

zfec -- an efficient, portable erasure coding tool (by tahoe-lafs)

fossa-action

The action sets up and caches the latest release of fossa-cli, infer the correct configuration from the current system state, analyze the project for a list of its dependencies, and upload the results to FOSSA. (by fossa-contrib)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
zfec fossa-action
2 2
373 17
0.3% -
7.7 9.4
6 months ago 5 days ago
Python TypeScript
GNU General Public License v3.0 or later ISC License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

zfec

Posts with mentions or reviews of zfec. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-15.
  • The Haskell job market has been growing steaily since 2008
    4 projects | news.ycombinator.com | 15 Jul 2023
    We used reflex-frp, so our app was a webview that worked on localhost and Android. The docs say it also works on iOS but we don't have an iPhone.

    The process was learning Functional Reactive Programming, then learning reflex-frp, then getting a contract with obsidian (creators of reflex) for one hour a week where we could ask questions.

    ( https://github.com/reflex-frp/reflex-platform )

    We had a grant requirement to create a phone client for Tahoe-LAFS, a Python application with a bunch of dependencies, including ZFEC, a forward error correction library.

    ( https://tahoe-lafs.readthedocs.io/ )

    ( https://github.com/tahoe-lafs/zfec/ )

    We needed bug for bug compatibility with the Python codebase, so I ran Tahoe on localhost and tested the Haskell client against the Python server. We used servant to build the API, since it builds both client and server side from the same description.

    ( https://hackage.haskell.org/package/servant )

  • Xz format considered inadequate for long-term archiving
    8 projects | news.ycombinator.com | 23 Jul 2022
    I disagree with the premise of the article. Archive formats are all inadequate for long-term resilience and making them adequate would be a violation of the “do one thing and do it right” principle.

    To support resilience, you don’t need an alternative to xz, you need hashes and forward error correction. Specifically, compress your file using xz for high compression ratio, optionally encrypt it, then take a SHA-256 hash to be used for detecting errors, then generate parity files using PAR[1] or zfec[2] to correct errors.

    [1] https://wiki.archlinux.org/title/Parchive

    [2] https://github.com/tahoe-lafs/zfec

fossa-action

Posts with mentions or reviews of fossa-action. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-15.
  • The Haskell job market has been growing steaily since 2008
    4 projects | news.ycombinator.com | 15 Jul 2023
    For us, there were a couple advantages. For context, I work at FOSSA (https://fossa.com/). Our core product solves software supply chain needs in enterprises (around licensing and security), and our core technology is around compiler, build, and source code analysis.

    Off the top of my head, 3 advantages stood out:

    1. First, if you're not going that far off the beaten low-level path, Haskell has incredible productivity benefits. Effect tracking has enormous benefits for testability and understandability. If you've ever been down a debugging rabbit hole shaped like "there's no way this logging call is sending that API request", then you might be pleasantly surprised to discover that you can statically guarantee that this doesn't occur in Haskell programs! Pattern matching, algebraic data types (sum types!), and typeclass derivation make it much easier to make it impossible to construct invalid representations of data. Other languages are finally picking this up, but their versions of pattern matching often have caveats for backwards-idiom-compatibility. And monads are a very powerful abstraction. It's like being able to write your own semantics for async-await (I've talked more about this before at https://lobste.rs/s/7cllte/monads_part_six_really_what_is_mo...).

    2. Haskell was a good domain fit for us. One thing we build is the FOSSA CLI (https://github.com/fossas/fossa-cli/), which runs in customer CI pipelines to analyze their builds. It's a very compiler-shaped problem: shell out to some tools, do a lot of parsing, think very hard, and then spit out a JSON blob to send back to the API. Our first version of this was written in Go. At the time of development, writing correct, testable parsers in Go was like pulling teeth. We have a relatively small headcount-to-product-surface-area ratio, and our team was running up against the overhead of rewriting traverse in Go over and over again (that's a Haskell-flavored joke, but if you've ever been annoyed at writing yet another for-loop in Go, you get it). We decided to hack out a prototype in Haskell, and it turned out to be a good fit.

    3. Lastly, the kind of people who wind up working at FOSSA and are interested in the code analysis bits tend to be the same kind of nerds who love Haskell. We had lots of people on our team who were chomping at the bit to try it, so we decided to try it out. I really can't understate how big of a productivity difference it makes when people are working with tools that they actually enjoy rather than are merely forcing themselves to use. It is night and day.

    If you want to learn more, we also did an interview with Serokell on this topic (https://serokell.io/blog/haskell-in-production-fossa), and discussed it on an episode of our engineering podcast (https://fossa.com/blog/fossa-podcast-adopting-haskell/).

  • Do you use dependency analysis and vulnerability detection tools?
    3 projects | /r/learnprogramming | 16 Jan 2023
    FOSSA scan - it is different from OWASP DependencyCheck and from Trivy scan. It is checking code for supply chain attacks on dependencies and for for license violations. For example, let's say, your project is using DependaBot tool for automatically upgrading dependencies. And you are using, I don't know, Gradle v7.6 (currently the latest version). A malicious person takes the source code of Gradle v7.6, adds some malicious stuff in it and publishes it in Maven Repository with version 7.7 . Don't know about DependaBot but some tools for sure will try to upgrade your 7.6 to 7.7 then. And often these upgrades are automated. If all the tests pass, end-to-end functionality tests pass, deployment passes, then the upgrade goes through. AND a vulnerability can be introduced to your system. FOSSA scan is for checking if the dependency supply chain is legitimate or fake. A downside is that a full scan will take many hours. So one of our teams is just testing it out, right now. It is not feasible to put a 4 hour blocker in our build pipelines. But with fast releases a vulnerability can be introduced already into the system.

What are some alternatives?

When comparing zfec and fossa-action you can also consider the following projects:

pixz - Parallel, indexed xz compressor

haskell-jobs-statistics

zpaqlpy - Compiles a zpaqlpy source file (a Python-subset) to a ZPAQ configuration file for usage with zpaqd

DependencyCheck - OWASP dependency-check is a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.

reflex-platform - A curated package set and set of tools that let you build Haskell packages so they can run on a variety of platforms. reflex-platform is built on top of the nix package manager.