Elektrine
Log in Register
Paige Chat Timeline Gallery Friends Email Drive DNS Private DNS Domains VPN Kairo Nerve
Remote

Wes Ger

@waterkip@defcon.social
mastodon 4.7.3
  • Open on defcon.social

Freelance software developer and slacker

Currently hacking with Laravel/Livewire, htmx, Mojo, some HTML, css and Javascript.
Co-maintainer of the perl Net::SAML2 distribution.

7 Followers
16 Following
32 Posts
Joined October 06, 2025
blog:
https://wesley.schwengle.net
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@petersuber Haha, the only downside to the story is that they actually closed it upon discovering. Should've kept it open.
5
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Two weeks ago I ranted a bit about PHP composer. So I wrote about it and vented. Read how my evening went: https://wesley.schwengle.net/article/i-just-wanted-php-8-2-composer-had-other-ideas-12e3/ Never thought docker was gonna be a used to scaffold a project, but why not? #php #laravel #livewire #perl #scaffolding #rant #vent
I just wanted PHP 8.2 (Composer had other ideas)
wesley.schwengle.net

I just wanted PHP 8.2 (Composer had other ideas)

A horror story of setting a minimum supported php version

3
61
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago

I've tried. batcat as a replacement for cat. It just doesn't work. cat $foo > $bar -- I need to remember to disable colors. I filed a bugreport at Debian for it, because it should detect this (via some shape way or form) and it currently doesn't. It keeps breaking my usage for cat. Perhaps I should alias it to less. But batcat != cat replacement.

#batcat #less #cat #debian #lessismoreoriscatdefeatsbat

defcon.social
1
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@tvbeek@phpc.social Je mag ook Nederlands met me praten als dat makkelijker is.
1
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@ology@fosstodon.org yeah you not wrong :)
0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 6mo ago
Replying to

@linuxteck@mastodon.social

batcat was the only interesting one tbh. Everything else, with the automatic gitignore units are null and void. And git grep is faster than rg iirc inside a git repo.

0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@mbabker@mastodon.social no its not. The vender check it adds goes against the version declaration in composer.json. You can't have two sources of truth. Pick one, or the other. In regards to --no-install, iirc, the version check still gets added by composer, so it's not installing everything else besides itself. I think I've explored every avenue except porting Laravel to Perl.
0
10
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@mbabker@mastodon.social no. The problem is the platform check of composer itself. Not the versions of the deps. The last thing is also a problem, but one that I can argue as "that's a you-problem" from composer' side. However.. I do think it would be awesome to tell composer: don't use runtime, use the minimal configured php version for all checks going forward. Eg composer --minimal-php 8.2 update would act is if its running 8.2 while running on 8.whatever.
0
1
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@mbabker@mastodon.social i think you've done two things different from my thing: --no-install --no-plugins --no-scripts I didnt have no-plugins and dont recall no-scripts, but I think i did. And the last thing, i didnt want laravel/framework to go over 12.57 or 58, because it has a dep on something that was 8.4 and up. But that is my composer --use-minimal-php flag that currently isnt. So one thing. Dunno if that really matters. I think vendor is like local::lib in Perl and I should treat it as such. Need to inspect my .dockerignores for that...
0
1
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@mbabker@mastodon.social I dunno. I sorta got blind sided by the fact that last minute I had to support 8.2 so I shipped an 8.2 version and tried to keep my local dev envs on the lowest minimal version possible. And am now trying to scaffold project to do just that. Which at the time was easier than now. I see 12.57 and .58 in just two weeks time and FSM knows what else has changed. I don't like to pin packages at versions, it seems that version pinning is the cause for so many issues while trying to support multiple versions. I have similar issues in the JS ecosystem. Just give me a minimal supported version and ensure your code works with that and up.
0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@mbabker@mastodon.social i don't need or want mysql things. But I think I still have it installed (one project needs it, but I'm migrating that to postgres). So... ask me again next month about mysql-less environments. I'll give it a go, maybe your renewed insights and my frustrationless clarity come up with a new solution.
0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Konafets@norden.social yes
0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Konafets@norden.social because that is what Debian bookworm ships. See https://packages.debian.org/bookworm/php-fpm
packages.debian.org

Debian -- Details of package php-fpm in bookworm

server-side, HTML-embedded scripting language (FPM-CGI binary) (default)

0
6
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Konafets@norden.social you clearly haven't ever ran Debian. I think its funny you want me to move away from a supported PHP version: https://www.php.net/supported-versions.php In addition, Debian supports PHP 8.2 so I can target PHP 8.2. The problem isnt the version, 8.5 cannot scaffold any supported version other than 8.5. That is a real annoying bug. Just upgrade isnt a solution. Unless you are always greenfielding apps. And even in that case a greenfield app om bookworm which is supported on Debian till Forky hits stable (a good 2 yrs) is a viable option.
PHP: Supported Versions
php.net

PHP: Supported Versions

PHP is a popular general-purpose scripting language that powers everything from your blog to the most popular websites in the world.

0
4
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Konafets@norden.social yes it does. Debian supports it. Thus I don't need to upgrade. But you are moving goalposts. You went from very old to install the latest and greatest. To ohhh well, only till the end of this year. In the mean time, you can't scaffold a project on 8.5 for 8.2, 8.3 or 8.4. EOL dates vary. My solution therefore as well.
0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to

@Konafets@norden.social you can. That is why it is called a minimal version requirement. And you don't use syntax of 8.4 in 8.2. I can write php that works on the very first version of php and on the very last version:

print "hello world";

You can write code that uses syntax supported by various versions of php just by using the most commom denominator. Which effectively means, you wait with implementation of language features introduced by the newest versiom so you can still use the oldest targetted version. You should try it sometime, it really works.

0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Konafets@norden.social @Crell@phpc.social Sail doesn't scaffold projects afaik. And my Docker stack works, the problem is scaffolding: Laravel Sail is automatically installed with all new Laravel applications so you may start using it immediately The chicken and egg have returned. But! I shouldn't be needing docker in the first place to do this.
0
3
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to

@Konafets@norden.social @Crell@phpc.social

Dude, stop. You are clearly not familiar with Debian, so I'm not even going to talk about running a supported version of PHP just because you think I should upgrade. Welcome to the world of stability and not having to upgrade every month.

0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Crell@phpc.social Scaffolding a project *should* not require a docker or podman infra. I find the whole PHP response quite.. telling to say the least. Laravel isn't doing jack shit btw, it is composer that adds `vendor/composer/platform_check.php`, it says so on the tin: vendor composer. composer wants php 8.x of whatever the 8.x you are running. Meaning, you cannot scaffold a project at the correct version. So you want to tell me I need to scaffold a project, then, update some files, then run composer update again? Lemme try it. Right. Do this: $ composer laravel/laravel:^12.0 $ cat > Dockerfile <= 8.4.0". You are running 8.2.30. in /var/www/vendor/composer/platform_check.php:22 Stack trace: #0 /var/www/vendor/composer/autoload_real.php(25): require() #1 /var/www/vendor/autoload.php(22): ComposerAutoloaderInit53b5d56b3b7e3cbac1713e68c8850f6c::getLoader() #2 /var/www/artisan(10): require('/var/www/vendor...') #3 {main} thrown in /var/www/vendor/composer/platform_check.php on line 22 You *MUST* scaffold a project in the minimum version of the scaffold otherwise composer adds checks that fail on the minimum versioned which composer *itself* has added to the composer.json.
0
9
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Crell@phpc.social so if you never ran into it, it didn't happen?
0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@Crell@phpc.social I'm sorry, but the responses to this have mostly been: you doing it wrong while composer is throwing a fit. You saying "so I'm not sure what the deal is" rubbed me the wrong way - in rereading, you are telling me you don't know what the deal is with how composer is doing things. That is something I cannot tell you either. Anyways, I already have my solution, it is scaffold in Docker. Because your solution still requires me to fire-up docker to do composer update, which acts different on 8.4.x than it does on 8.2.x. Most notable because of Laravel framework deps that require 8.4.x at a particular point. The problem is: if (!(PHP_VERSION_ID >= 80400)) { $issues[] = 'Your Composer dependencies require a PHP version ">= 8.4.0" . You are running ' . PHP_VERSION . '.'; } And you can't tell composer, use a different version.
0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@alessandrolai@phpc.social @klabauterjan@phpc.social i dont follow what you are saying. Can you reword?
0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@alessandrolai@phpc.social maybe read the blogpost?
0
3
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@alessandrolai@phpc.social That works.. Needs an update on every invocation, but allows for a baseline of 8.2. Which is not a bad thing in my scenario. But brings another issue: composer config --global overrides a local version of composer.json: composer config --global platform.php 8.2 echo "{}" > composer.json composer config platform.php 8.3 composer create-project laravel/laravel foo Yields: Creating a "laravel/laravel" project at "./foo" Cannot use laravel/laravel's latest version v13.3.0 as it requires php ^8.3 which is not satisfied by your platform. So now it is using the global version and not the local one. yet: $ composer config platform.php 8.3 shows, we did set 8.3
0
1
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@klabauterjan@phpc.social As said in the blog post, that isn't really an option. Lemme show you: https://asciinema.org/a/sT7XYy7eY4mtSRqS See, you cannot start a project with that particular config.
asciinema.org
0
13
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@klabauterjan@phpc.social @alessandrolai@phpc.social A downgrade will only work if the whole system respects the the 8.2, which it doesn't. That is mostly because it looks at runtime and not at the platform requirement. Which is a problem most languages. So... I'm willing to look past it. You can potentially solve that by telling composer --no-install (or similar), but you still end up with a vendor/composer/platform_check.php that is simply checking against your runtime php.
0
1
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@tvbeek@phpc.social i dont follow. I understand version constraints. I understand minimal supported versions. I dont understand that you cannot start a project with a version lower than you may have.
0
2
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@tvbeek@phpc.social i want a minimal supported version of php. So, you on 8.4 and scaffold a project to be on 8.3. Tell me how to do just that. And for the heck of it. Do laravel 12 or 13.
0
5
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@tvbeek@phpc.social de blogpost gebruikt docker om te scaffolden. Ik denk dat het docker gedeelte wel snor zit. Echter. Waarom? Php 8.2 is gewoon supported.
0
0
0
0
Open post
Wes Ger @waterkip@defcon.social
· 5mo ago
Replying to
@martinheise@social.tchncs.de That will break because dependencies need to be downgraded as well. I tried. It didnt work. As mentioned it will pull in deps that arent playing nice. Show me a sequence how you can make it happen. Including running it on php 8.2. Make it blog post if you want too.
0
0
0
0
Back
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

I2P eepsite

j6b6cyk6gjmepjih7jjadxgxvvf3lzzujljuu2v4biemzpg3naya.b32.i2p

Platform

  • Email
  • Chat
  • Timeline
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ
  • Lite (no JS)

Legal

  • Terms of Service
  • Privacy Policy
  • Transparency Report
  • Report Abuse
  • Warrant Canary
  • VPN Policy

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 06:54:40 UTC