# orderedItems[].object.content
@NuclearSquid Pas grave, mais hésite pas à faire passer le mot

# orderedItems[].object.contentMap.fr
@NuclearSquid Pas grave, mais hésite pas à faire passer le mot

# orderedItems[].object.content
Qui est-ce qui viens au prochain tupperrust demain soir?

https://www. meetup.com/tupperlibre/events/303687040/

Le repouet fait briller les carapaces de crabes !

#rust #rustlang #grenoble #tupperrust

@TheyCallMeHacked @NuclearSquid @fabi1cazenave @PacoVelobs

# orderedItems[].object.contentMap.fr
Qui est-ce qui viens au prochain tupperrust demain soir?

https://www. meetup.com/tupperlibre/events/303687040/

Le repouet fait briller les carapaces de crabes !

#rust #rustlang #grenoble #tupperrust

@TheyCallMeHacked @NuclearSquid @fabi1cazenave @PacoVelobs

# orderedItems[].object.content
@chfkch @Mayobrot Wouldn't git worktree help in your case?

# orderedItems[].object.contentMap.en
@chfkch @Mayobrot Wouldn't git worktree help in your case?

# orderedItems[].object.content
@hicksy2 You may also be interested by #sharegoodnewstoo

# orderedItems[].object.contentMap.en
@hicksy2 You may also be interested by #sharegoodnewstoo

# orderedItems[].object.content
@Emi Sur téléphone en open source, organic map est bien

# orderedItems[].object.contentMap.fr
@Emi Sur téléphone en open source, organic map est bien

# orderedItems[].object.content
@bagder That's just so awesome!

# orderedItems[].object.contentMap.en
@bagder That's just so awesome!

# orderedItems[].object.content
@franz If it's only for you, you most certainely don't need CI/CD, and in that case a simple access to a computer that has git + a repo anywhere is already enough.

Did you know that `mkdir repo dev && cd repo && git init --bare && cd ../dev && git clone ../repo` is enough? The next step is just to put `repo` on a raspberry pi behind ssh. When git cloning, you can use an url (github.com/...), a local path (../repo), an ssh address (192.168.1.10:/home/me/my/git/repo), ...

# orderedItems[].object.contentMap.en
@franz If it's only for you, you most certainely don't need CI/CD, and in that case a simple access to a computer that has git + a repo anywhere is already enough.

Did you know that `mkdir repo dev && cd repo && git init --bare && cd ../dev && git clone ../repo` is enough? The next step is just to put `repo` on a raspberry pi behind ssh. When git cloning, you can use an url (github.com/...), a local path (../repo), an ssh address (192.168.1.10:/home/me/my/git/repo), ...

# orderedItems[].object.content
@rmanos Do you really think that adding a call to rand instead of something deterministic that makes the code easy to read and review + a backtrace as described before would change anything to what I send you?

You said “it’s not possible”, I showed you that it is in Rust, others have showed you in other languages.

Your challenge was fun, but you must understand that our time is not infinite either. You can complain about valid points, not lipstick.

# orderedItems[].object.contentMap.en
@rmanos Do you really think that adding a call to rand instead of something deterministic that makes the code easy to read and review + a backtrace as described before would change anything to what I send you?

You said “it’s not possible”, I showed you that it is in Rust, others have showed you in other languages.

Your challenge was fun, but you must understand that our time is not infinite either. You can complain about valid points, not lipstick.

# orderedItems[].object.content
@rmanos Btw, I did not included the stacktrace, but thiserror (the lib I already uses) does support them, so adding them would be relatively trivial.

https://stackoverflow.com/questions/61 744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror

# orderedItems[].object.contentMap.en
@rmanos Btw, I did not included the stacktrace, but thiserror (the lib I already uses) does support them, so adding them would be relatively trivial.

https://stackoverflow.com/questions/61 744018/how-do-i-print-a-backtrace-without-panicking-using-thiserror

# orderedItems[].object.content
@rmanos Does this Rust version suits your expectation better?

https://play.rust-lang.org/?version=st able&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6

# orderedItems[].object.contentMap.en
@rmanos Does this Rust version suits your expectation better?

https://play.rust-lang.org/?version=st able&mode=debug&edition=2021&gist=8bd49e7e5ea4041dc6b6abcca369dbc6

# orderedItems[].object.content
@rmanos No problem :)

# orderedItems[].object.contentMap.en
@rmanos No problem :)

# orderedItems[].object.content
@rmanos Except it does. If ErrBankAccountEmpty is created by f3, you don’t get the same error message, and vice versa with ErrInvestmentLost. Both in C++ and Rust

# orderedItems[].object.contentMap.en
@rmanos Except it does. If ErrBankAccountEmpty is created by f3, you don’t get the same error message, and vice versa with ErrInvestmentLost. Both in C++ and Rust

# orderedItems[].object.content
@rmanos Anyway, I don’t think you will like it for the same reason (I wrote it before reading your answer), but here is a C++ version that uses the same architecture.

https://godbolt.org/z/9PeWaKeWW

# orderedItems[].object.contentMap.en
@rmanos Anyway, I don’t think you will like it for the same reason (I wrote it before reading your answer), but here is a C++ version that uses the same architecture.

https://godbolt.org/z/9PeWaKeWW

# orderedItems[].object.content
@rmanos The randomness was removed just to make it easy to show that it works. It’s not an exercice about knowing how to call rand() in your language.

Being able to print the stack trace has nothing to do with the challenge. Or that’s no longer error handling that we are talking about but error logging. Two close but unrealated topics.

# orderedItems[].object.contentMap.en
@rmanos The randomness was removed just to make it easy to show that it works. It’s not an exercice about knowing how to call rand() in your language.

Being able to print the stack trace has nothing to do with the challenge. Or that’s no longer error handling that we are talking about but error logging. Two close but unrealated topics.

# orderedItems[].object.content
@rmanos It was not explicit that the main methode create has to create the message of the errors. I would argue that this is actually an anti pattern, but it’s relatively trivial to create the error message in main rather than in error themselves. Furthermore, creating the error message in main will remove the need for the ErrInternal.

# orderedItems[].object.contentMap.en
@rmanos It was not explicit that the main methode create has to create the message of the errors. I would argue that this is actually an anti pattern, but it’s relatively trivial to create the error message in main rather than in error themselves. Furthermore, creating the error message in main will remove the need for the ErrInternal.

# orderedItems[].object.content
@rmanos Please learn to communicate with other. As I said before the rules of the challenges were anything but clear, that’s why I reformulated them above. If my understanding was wrong, please correct it **before** looking at the solution I gave you.

# orderedItems[].object.contentMap.en
@rmanos Please learn to communicate with other. As I said before the rules of the challenges were anything but clear, that’s why I reformulated them above. If my understanding was wrong, please correct it **before** looking at the solution I gave you.

# orderedItems[].object.content
@rmanos And here is a Rust version

https://play.rust-lang.org/?version=st able&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942

There is 90% of boilerplate, but the idea is indeed just to create the implicit conversion between the errors

# orderedItems[].object.contentMap.en
@rmanos And here is a Rust version

https://play.rust-lang.org/?version=st able&mode=debug&edition=2021&gist=620d8af2a989065a625ea6c696319942

There is 90% of boilerplate, but the idea is indeed just to create the implicit conversion between the errors

# orderedItems[].object.content
@rmanos I did not initially understood what you really the challenge was about. Is this an accurate summary?

- f1() returns either error A or B
- f2() and f3() calls f1()
- f4() calls f2() or f3()

- if error A was emitted thought f2, it should print a given error message
- if error B was emitted thought f3, it should print another error message
- in all other casses a common error message must be printed

And the challenge it do it without having any of the logic being in any of f1, f2 or f3

# orderedItems[].object.contentMap.en
@rmanos I did not initially understood what you really the challenge was about. Is this an accurate summary?

- f1() returns either error A or B
- f2() and f3() calls f1()
- f4() calls f2() or f3()

- if error A was emitted thought f2, it should print a given error message
- if error B was emitted thought f3, it should print another error message
- in all other casses a common error message must be printed

And the challenge it do it without having any of the logic being in any of f1, f2 or f3