Hi, can anyone tell me please, why there are two packages? I'm not sure which one should I choose, both of them look up-to-date and even worse, the author of orisai is also the original author of the contributte one.
Maybe you could bring some light into it @MarekBartoš please? 🙂 Thank you..
Last edited by dakur (2022-05-27 10:53)
Well, since I left Contributte, I started building packages on my own, according to my standards.
Orisai is on the downside bit more complicated and does not have a logger
manager (which I have no use for).
On the upside it solves some configuration edge cases, works with multiple logger channels, has on/off switch for handlers, supports Monologs “bubble” feature, handler minimal level is configurable for debug/production independently, has a Tracy bar panel and Logtail integration. It also has a LogFlusher which allows all loggers with memory buffer to save their logs at once – this most importantly automatically protects from some loggers which do save logs in __destruct() which in case of failure dumps error into page (because it is destructed after Tracy error handler)
So someone may say Orisai is way more feature complete. Also crazy good tested.
Oh btw, I may have been the one who wrote the code, but according to same folks it does not make me an author.
Alternatives for other packages exist too. Like nette-console with no-config lazy-loading, including command list laziness and debug command. And other features like flexible http requests simulating and DI parameters command. The little nice things.
More coming soon :)
Last edited by Marek Bartoš (2022-05-27 17:30)
Thanks for your explanation, I'll decide which fits better to my needs. At least the documentation of orisai/monolog is excellent as I don't know monolog itself yet, just need to upgrade logging integration in our app and the basic principles of monolog are explained already in your bridge – great! 👍
But it's pity about the contributte vs orisai. I don't know what was your reasons or where the truth is, but from my perspective, one needs stable community-driven packages, not many boosted one-man-show libraries which die with their author leaving his job and hard to maintain for anyone else. I'm just migrating our registration system from Kdyby and it's a hell, I've spent already a week on it, so it discourages me a bit from using orisai libs even if it has ten thousand cool features.. Just sayin'.
- Nette Core | 1180
It's pity that Marek left Contributte. But that's the life. He wants to do it his way. :-)
Some highlights from my point view:
- Contributte is partially funded by companies contract's and OSS sponsors. It gives me time to work on it. Not just free time.
- I am part of the Nette core team (https://nette.org/en/contributors). Thus I know where Nette is going and have inside view.
- I attend PoSobota(s), NetteCampt and other conferences about PHP and Nette. Spreading the knowledge about Contributte.
- I help other companies to build his apps on Contributte.
- Me & Chemix are doing workshops at Akademie42 (https://akademie42.cz) about it.
- I truly understand the need of proper funding and doing my best in that. Without resources, it's much more harder, as you said.
Choose is up to you @dakur. I will be glad if you take contributte, we can improve it together, but totally understand if you pick Marek's package.
- Member | 110
Unfortunately, until there is a larger company that will support the development of these extensions, it will always be like this. Smaller companies / individuals will create their own packages, as they will not want to use third-party packages because either they are missing something and the company then has to hack them, or as you write, after some time the package will die due to the author.
Contributte is an attempt to unify all packages, but since they are not protected by the company but by the individual, it lags far behind. Internal communication takes months, no one answers questions even if you target them to a specific person, and eventually you learn that you are supposed to be the one who doesn't answer, and instead of people talking to you, someone intervenes at work and does it differently, than was originally planned.
This also includes the fact that usually the right hand doesn't know what the left is doing and that's just a problem. There is a need for some company to take on package development and dedicate a few programmers, testers and copywriters to do this as FullTime. Until then, we can only dream of a unity that will be worth dreaming of.
Maybe Contributte is sponsored by some companies, but still there are lots of people, which are responsible for individual packages and not team of developers, which does their best.
Personally, I also don't use contributte packages and I prefer to write my own. Waiting for months for answers, big package complexity, still having some problems etc., it's not worth it.
On the other hand, I use a few packages from Orsai. For example, the great package is codding-standard-php. It's clear, intuitive and you know right away where what is being set up and how. No crazy complexity like the contributte packages.
@Bulldog Thanks for that! I am just finishing what I consider an initial setup. After that an official announcement will come with what is planned and how I want to solve the problems you brough up here.
@dakur We definitely need long-term solutions. Having more than one folk who knows what is happening and is able to take over from current leader when something bad happened is struggle for all oss orgs which are not fully funded. I know what has to be done and will solve that in future.
Currently I am focused on delivery of feature-complete libraries – with excelent documentation and tests and no BC-breaking features planned. It is imho need, to not start with something mediocre.
The Kdyby problem… I was thinking I may port Nette integrations to Nette 2.4 to provide more migrations paths, with Orisai being the immutable point. I am currently maintaining one system with Nette 2.4 and Kdyby and live the same hell as you… it's a pain.
Thank you both for your replies! Finally, I've found a way to postpone the migration of kdyby/monolog in a follow-up, so I'll come back to it later. 🙂
Marek, thanks for your suggestion. I've already migrated to Nette 3.0, so the only thing I have to do is to migrate configuration from kdyby/monolog to up-to-date monolog integration.
Last edited by dakur (2022-05-31 11:19)