DaanDeMeyer / reproc

A cross-platform (C99/C++11) process library
MIT License
552 stars 65 forks source link

not compiling anymore #25

Closed Milerius closed 4 years ago

Milerius commented 4 years ago

hello the line auto ec = registry_.at(coin).background.start(args, tools_path_.string().c_str());

is not compiling for me anymore:

/Users/romanszterg/CLionProjects/antara-gaming-sdk/modules/blockchain/antara/gaming/blockchain/nspv.system.cpp:60:61: fatal error: reference to type 'const reproc::options' could not bind to an rvalue of type 'const std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::value_type *' (aka 'const char *')
        auto ec = registry_.at(coin).background.start(args, tools_path_.string().c_str());
                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/romanszterg/CLionProjects/antara-gaming-sdk/cmake-build-debug-sfml/_deps/reproc-src/reproc++/include/reproc++/reproc.hpp:91:56: note: passing argument to parameter 'options' here
                                        const options &options = {}) noexcept;
Milerius commented 4 years ago

There is not working directory anymore ?

Milerius commented 4 years ago

I will assume that

auto ec = registry_.at(coin).background.start(args, reproc::options{nullptr,tools_path_.string().c_str()});

Is what I want

Milerius commented 4 years ago

But I'm surprise you seem's to use SemVer (https://semver.org/#summary)

May be it's not semver or I miss something ?

This change is a breaking one but the SemVer Major version is not updated, that's why I'm surprised.

In case you are following semver you can use a trick in the GitHub Actions if you use https://www.conventionalcommits.org/en/v1.0.0/

you can according to your commit message automatically bump a new version that upgrade Major version in case of API break based on the commit message

DaanDeMeyer commented 4 years ago

I don't update the major version for each separate breaking change. When I decide to do a release and I've done breaking changes since the last release, I release a new major version. Of course, if you're following the master branch, each commit can possibly break backwards compatibility. The set of breaking changes you're experiencing now will be part of reproc 10.0.0

The solution you posted is indeed how a custom working directory should be specified now.

Milerius commented 4 years ago

Ok thanks !