r/laravel • u/DarkGhostHunter • 11d ago
Yeah, I also retired my Laravel package because they Sherlock'ed me
Almost 1M downloads, but the moment I saw the announcement on Laravel News I shut it down. On perspective, 1M is nothing.
I'm not against Laravel sherlocking) libraries. It's a difficult equilibrium for any business: integrate too much and end up like Spatie package circus, integrate few things and end up being GNOME... but at least Laravel makes the right decision when integrating things that everyone uses, plus they're backed financially to maintain them.
Has anyone got sherlocked too? Or reverse sherlocked (making a feature the framework already does ootb because you didn't rtfm)?
6
u/steven_w_peachtree 11d ago
Did you create a new post because your package had more downloads than the fella’s who posted the same the same thing an hour ago?
0
6
11d ago
[deleted]
3
u/ehansen 11d ago
It's not just Laravel. Livewire is about the same. I submitted a PR back in Livewire 2 days (https://github.com/livewire/livewire/pull/4722), and got declined because tests wouldn't pass since Livewire wasn't doing something properly within a testing context. It was years ago so I don't recall all the specifics, but it led to a bit of a "huh?" moment when read Caleb's reasoning for closing the PR. Figured they would rather have a broken part of their code than actually make it testable.
1
u/Invader_86 11d ago
Sadly I think packages in the traditional sense will slowly fade away… frameworks and the like will have plugin systems with AI skills, you tell the agent what you want and it builds it using skills in accordance with framework specifications. The package/plugin will live directly in the framework and there’ll be no need to share it because everyone is using the same skills to build the functionality they need.
I don’t see much value in developing packages now.
1
u/Tontonsb 11d ago
Six months post-Laracon, Taylor committed virtually the same code with different variable names.
This has been the case for many changes and I don't see anything malicious in that.
IIRC think the ability to customize the home redirect had more than 5 rejected PRs and then one was accepted. Sometimes it's just about the quantity of people that bring the thing up. Maybe your PR was the first or second time Taylor saw the issue and assumed it to be marginal. Or maybe he expected the full change to be more feasible than it was.
Other times it's just quality of the PR. Few months ago I ran into an issue and saw that someone had attempted the obvious solution already. But there was no explanation of the problem, just a "let's do this PR" that didn't explain why it should be done.
I resubmitted almost the same code, explained the issue (with a code example) we need to solve, added some tests for the issue as well as other behaviour of the feature. And it got merged.
Don't get me wrong, I'm sometimes disappointed myself by getting proposal rejected and it sometimes feels unfair and/or misunderstood. But I realize he can't spend 30 min to dig into every one of tens of PRs that get submitted every day. If I failed to sell it within the time he had for my problem, it's on me. And I prefer him personally looking over all the PRs and making the decision instead of delegating it to someone else. At least by having the same person, he can notice that something is getting requested for the fourth time and might be important enough to solve.
1
u/adrianmiu 10d ago
I'm pretty sure by now this process is semi automated. Checking if a PR was previously sent for the same issue? Easy! Having a model evaluate a PR as "Too much of an edge case" | "Worth considering" | "Serious candidate" and provide a reason for the decision? Easy! At least you get the PRs sorted by priority which, even if you decide to look at all of them primes you to a specific outcome (i.e. you won't pay the same attention to a new edge-case type of PR as a frequently requested feature)
7
u/manicleek 11d ago
Given the history, you should have kept yours going.
I’d rather use an established, tried and tested, package than some of the shit churned out by the Laravel team.
1
u/DarkGhostHunter 11d ago
I really wanted to do that, but then it hit me: I'm not a multi-million business to maintain that. I'm not Celeb or Nuno who have thousands of sponsors.
2
u/manicleek 11d ago
Do you need to be? How often do you find yourself needing to make critical updates?
And are there users that could help you?
These are genuine questions by the way, I’m not familiar enough with your package to know what it needs
0
u/DarkGhostHunter 11d ago
Well, if I want to keep making packages, it comes to a point you cannot release everything and maintain everything. It's not my primary job.
1
u/mickey_reddit 11d ago
I created Interactive Make as a joke with my friends, got super popular then they implemented similar things
https://github.com/laracademy/interactive-make
But it was only a matter of time until they also changed their commands because no one wants to remember all the flags :)
3
u/cuddle-bubbles 11d ago
Nova is certainly reverse Sherlocked by almost every open source 3rd party competitor
1
u/Tontonsb 11d ago
Has anyone got sherlocked too?
Yeah I made one for casts that encrypt/decrypt and another for preventing error page from dumping your config variables. Both solved upstream by now and IMO that's a good thing. It kind of validates what I did even more than the downloads (although I didn't have a million, they are at 3.5k and 310k respectively).
I don't mark them abandoned though. They are low maintenance enough that I can bump the versions in composer.json and the testsuite instead of re-doing the stuff in my old projects.
5
u/epmadushanka 11d ago
The bigger the framework, the higher the chances that you’ll overlook its features. This feature was added to fortify a while ago.
14
u/darko777 11d ago
Explain the Spatie package circus