Coder Social home page Coder Social logo

Comments (7)

epage avatar epage commented on August 12, 2024

Looks like we don't have a state MSRV policy. My default choice is N-2 but I suspect that env_logger's wider use might make that unappealing.

@matthiasbeyer any thoughts?

from env_logger.

matthiasbeyer avatar matthiasbeyer commented on August 12, 2024

Yeah so I would actually keep this crate as backwards compatible as possible within reason. If we currently compile on N-10 or even older, I don't see why we should change that if we do not have some really good reasons.

Rationale is that this is, IMO, the go-to crate for "I want logging". It's the lowest-hanging fruit for getting logging to work in a Rust project, at least in my perception.

I would like to see this issue resolved, but I think backwards compatibility is more important.

I'm open to discussion though.

from env_logger.

LunNova avatar LunNova commented on August 12, 2024

Might be possible to use cfg(not(version("1.70"))) to use that dep only on old versions and avoid bumping MSRV. Haven't tried, not sure if you can do that in Cargo.toml. definitely not possible, cfg(version) isn't stable

from env_logger.

epage avatar epage commented on August 12, 2024

Another change I'm looking to make, switching from termcolor to anstream, would require an MSRV bump and would lead to a breaking change (removal of the env_logger styling API).

While I'm not a fan of treating MSRV as a breaking change, if its done in conjunction with breakings changes (with a commitment to support old versions if needed), I wonder if that would be sufficient to allow us to move forward with this.

from env_logger.

kayabaNerve avatar kayabaNerve commented on August 12, 2024

You can write a build script such that it sets a feature for either is-terminal or std-io-isterminal based on the version in use. That wouldn't be breaking.

from env_logger.

emilk avatar emilk commented on August 12, 2024

I'd love to see this too. Getting rid of the is-terminal dependency tree would be lovely:

is-terminal v0.4.7
├── io-lifetimes v1.0.10
│   └── libc v0.2.150
└── rustix v0.37.19
    ├── bitflags v1.3.2
    ├── errno v0.3.1
    │   └── libc v0.2.150
    ├── io-lifetimes v1.0.10 (*)
    └── libc v0.2.150

from env_logger.

epage avatar epage commented on August 12, 2024

I've gone ahead with my idea of bundling the MSRV bump with a pre-planned breaking change of switching from termcolor to anstream. Longer term, I'm hoping rust-lang/rfcs#3537 will help reduce the conflict between the users who want the latest and those who need an earlier version.

See #298

from env_logger.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.