#composerphp
Composer 2.11 is out 🚀 cooldown dependency policies hold back freshly published package versions for an hour or a day, so compromised releases can be flagged before they reach your composer update. blog.packagist.com/composer-2-... #php #phpc #composerphp #supplychainsecurity
October 29, 2026 at 10:18 AM
Nice to see my PRs merged into SpamProtection (a small PHP library) even after some time! But what really touched my heart was the repo owner thanking me in the README. A first for me!

Anyway, here the link -> bit.ly/4yU2691

#SpamProtection #StopForumSpam #PHP #ComposerPHP #OpenSource
Release v2.0.0 · HelgeSverre/SpamProtection
SpamProtection 2.0.0 modernizes the StopForumSpam client for PHP 8.1 and later. Breaking changes Requires PHP 8.1+, ext-curl, and ext-json. Types is now a string-backed enum. Use check(Types::EMAI...
github.com
October 16, 2026 at 2:31 AM
Packagist turns 15, with more than 200 billion package installs 🎉

How Composer and Packagist started, 15 years of milestones, recent growth, and our plans for supply chain security and funding.

blog.packagist.com/15-years-of...

#php #phpc #composerphp
September 29, 2026 at 8:05 AM
We're super excited for #SymfonyCon 2026 in Warsaw Nov 26-27 and happy to sponsor again! A must-go for anyone working with PHP and #Symfony. Great content, fantastic people. Now more than ever: educate yourself and keep up with ecosystem & tech in general.

#php #phpc #composerphp
🎉We already have our next #SymfonyCon stop for you!✨

💜Get ready for: Warsaw, Poland 2026!
Where the very first SymfonyCon took place back in 2013 💙

🎟️Get your tickets: live.symfony.com
Don’t miss the chance to connect with the Symfony community again ! 🎊

#Symfony
September 24, 2026 at 3:50 PM
New in Private Packagist, August '26 update: Organization-wide supply chain security controls, MFA enforcement for CLI access, GitLab subgroup sync, artifact packages for suborgs via API, and more complete audit logging.

blog.packagist.com/whats-new-i...

#php #phpc #composerphp
August 28, 2026 at 11:51 AM
We launched our sponsorship program as a step toward more distributed funding of critical open source infrastructure. Long term we want to move from sponsorships to regular service subscriptions paid from engineering budgets. Two partners deserve a special mention:

#php #phpc #composerphp
Composer & Packagist now have a sponsorship program. Thank you to our launch sponsors 🤝 Aikido, AWS, Socket, Bunny, Upsun, Sonatype, Tideways, Datadog and Algolia help fund our shared infrastructure.

blog.packagist.com/announcing-...

#php #phpc #composerphp
July 31, 2026 at 1:21 PM
Busy times: Here are my slides on Composer & Packagist Supply Chain Security from #PHPVerse: naderman.de/slippy/slide...

Thanks @jetbrains.com for a great online event! Videos soon!
Follow blog.packagist.com for updates.

#php #phpc #composerphp #supplychainsecurity
naderman.de
June 16, 2026 at 11:39 AM
Open infrastructure isn't free. 🌱
Packagist/Composer signed a joint @openssf.org letter with PyPI, crates, Maven, CPAN, etc on real cost of running package registries.
#php #phpc #composerphp #softwaresupplychain #PreserveOpenSource #FreeSoftwareIsntFree #OpenSource #Sustainability
Open Infrastructure Is Not Free Part II

10 trillion open source package downloads in 2026. Still running on donations and volunteers.

AI is accelerating attacks. The Sustaining Package Registries WG is here to help.

openssf.org/blog/2026/05...

#PreserveOpenSource
May 6, 2026 at 12:39 PM
Loved the very engaged audience of a thousand people at #LaraconEU 2026 in Amsterdam today at my "Composer Deep Dive" talk! Proud to sponsor the event with Private Packagist /
@packagist.com - Find me and chat about package management or @thephpf.bsky.social! #laravel #laracon #php #composerphp
March 2, 2026 at 2:58 PM
Just arrived in Amsterdam for #LaraconEU - my talk "Composer Deep Dive" is tomorrow afternoon at 2:30pm! Hope to talk to as many of you about #composerphp @packagist.com and @thephpf.bsky.social ! #laravel #php
March 1, 2026 at 1:30 PM
Excited to speak at #symfony user group Berlin tonight! #sfugberlin #composerphp
February 25, 2026 at 6:24 PM
Back from our annual #SymfonyCon trip! Great experience celebrating 20 years of #Symfony with its community in Amsterdam. The @packagist.com booth was busy throughout the event, and my package manager security outlook talk sparked good conversations. See you in Warsaw 2026! #php #composerphp
December 1, 2025 at 2:57 PM
Had a great time presenting Composer Best Practices for 2025 at #APIPlatformCon in Lille this morning. Meet me at our booth, I'd love to hear all about how you work with #composerphp! #php #phpc #supplychainsecurity #symfony #apiplatform
September 18, 2025 at 1:32 PM
Meet @igorbenko.bsky.social and me at IPC in Berlin today & tomorrow at our @packagist.com booth. 👋 Would love to chat about Composer, supply chain security, dependencies, or show you our new tool Conductor! Don't forget to pick up a Composer sticker 😉

#php #phpc #composerphp #ipc #ipc2025
June 3, 2025 at 3:16 PM
Was a pleasure to speak at @symfony.com Live Berlin last week, here are the slides for my talks "Composer Guide to Supply Chain Security" naderman.de/slippy/slide... and the lightening talk "composer.lock demystified" naderman.de/slippy/slide... #php #phpc #symfony #composerphp
April 7, 2025 at 12:42 PM
Thanks for all the kind feedback on my supply chain security for #composerphp talk, was a great experience speaking at #phpuk - hope a lot of you sign up for Conductor and try it out when available!

#php #phpuk25
February 19, 2025 at 2:27 PM
Going to give a talk on #composerphp internals at the #LaraconEU in conference at 2:20pm after lunch! Come join me for a quick look into architecture, boolean algebra and computational complexity theory! 😁 #laracon #laravel
February 4, 2025 at 11:49 AM
My slides for "Composer Behind the Scenes" at #SymfonyCon Vienna are now available. Useful if you want to try and follow my SAT solver examples since I lacked a laser pointer during the talk 😉 Thanks for all the positive feedback! ❤️ naderman.de/slippy/slide... #composerphp #php #phpc #symfony
naderman.de
December 18, 2024 at 12:01 PM
Meet me at #DrupalCampBerlin today to chat about #composerphp, Private Packagist, supply chain security, funding open source and PHP dev workflows! Would love to learn more about how you keep your projects up to date! I got Composer stickers too!

#phpc #drupal #drupalcamp
November 8, 2024 at 12:06 PM
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL Image poakpong Wed, 2025-10-22 - 05:59 หลังจากสร้างเว็บเซิร์ฟเวอร์ในเครื่องคอมพิวเตอร์ และทดลองเปิด localhost ได้สำเร็จแล้ว คราวนี้มาลองติดตั้งเว็บไซต์ Drupal 11 ด้วยคำสั่ง Composer+Drush ว่าต้องดำเนินการอย่างไร อ่านเพิ่มเติม - วิธีติดตั้งเซิร์ฟเวอร์บน WSL ใน Windows 11 เริ่มต้น ติดตั้ง Composer รันคำสั่ง ดาวน์โหลด Composerphp -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('sha384', 'composer-setup.php') === 'ed0feb545ba87161262f2d45a633e34f591ebb3381f2e0063c345ebea4d228dd0043083717770234ec00c5a9f9593792') { echo 'Installer verified'.PHP_EOL; } else { echo 'Installer corrupt'.PHP_EOL; unlink('composer-setup.php'); exit(1); }" php composer-setup.php php -r "unlink('composer-setup.php');" เมื่อดำเนินการสำเร็จ จะได้ไฟล์ composer.phar ในตำแหน่งโฟลเดอร์ที่รันคำสั่ง ต้องย้ายไปในตำแหน่งที่จะใช้งานsudo mv composer.phar /usr/local/bin/composer แก้ไขสิทธิการทำงานsudo chmod +x /usr/local/bin/composer ทำสอบการเรียกใช้ composer (ตรวจสอบเวอร์ชั่น)composer -v ดาวน์โหลด และติดตั้ง Drupal 11 เลือกใช้ฐานข้อมูล SQLite3 เมื่อ Composer พร้อมใช้งานแล้ว ก็ทำการดาวน์โหลด Drupal 11 ด้วยคำสั่ง Composer ได้เลยcomposer create-project drupal/recommended-project drupal จากนั้นใช้คำสั่ง PHP ในการติดตั้ง Drupal โดยคำสั่งนี้จะสร้างไฟล์ฐานข้อมูลที่เป็น SQLite3 ให้แบบอัตโนมัติcd drupal && php -d memory_limit=256M web/core/scripts/drupal quick-start standard เมื่อติดตั้งเรียบร้อยแล้ว จะได้ Username (admin) และ Password (random) สำหรับใช้ล็อกอินเข้าเว็บไซต์ Drupal ที่สร้างขึ้น อ่านเพิ่มเติม - สร้างเว็บ Drupal ด้วย composer แค่พิมพ์ 2 บรรทัด เสร็จ! แก้ไข Apache2 config เปลี่ยนตำแหน่ง DocumentRoot หลังจากติดตั้ง Drupal เสร็จแล้ว หากกลับมาเปิดเบราว์เซอร์แล้วพิมพ์ localhost (ซึ่งจะแสดงตำแหน่งโฟลเดอร์ /var/www/html) จะพบว่า เปิดเว็บไซต์ไม่ได้ พบแค่โฟลเดอร์ drupal เท่านั้น กรณีนี้ ถือว่าเป็นเรื่องปกติ เพราะในการติดตั้งโปรเจค drupal จะมีการสร้างโฟลเดอร์ย่อย drupal/web เพิ่มเข้ามา ซึ่งจำเป็นต้องแก้ไขตำแหน่งโฟลเดอร์ที่ใช้เรียกข้อมูลเว็บมาแสดงผล กลับไปที่หน้าต่าง WSL/Ubuntu แล้วพิมพ์คำสั่ง VIM เพื่อเปิดไฟล์ข้อมูลของ Apache2 config สำหรับแก้ไข DocumentRootsudo vi /etc/apache2/sites-available/000-default.conf โดยโค้ดของเดิมคือDocumentRoot /var/www/html ให้เพิ่มเป็นดังนี้DocumentRoot /var/www/html/drupal/web แล้วเติมคำสั่งเพิ่มเข้าไป ต่อจากบรรทัด DocumentRoot เพื่อรองรับการทำงานของ Drupal (คำสั่งนี้ มีผลกับไฟล์ .htaccess เพื่อทำ clean URL)    AllowOverride All    Require all granted เมื่อแก้ไขเรียบร้อยแล้ว ให้ทำการบันทึก แล้ว restart Apache2sudo service apache2 restart แก้ไข Owner และ Permissions โฟลเดอร์ /sites/default/files ให้ Drupal เขียนไฟล์ได้ ในจุดนี้ หากไม่ได้ทำการแก้ไข Owner และ Permissions ที่ตำแหน่งโฟลเดอร์ /sites/default/files ของระบบ Drupal ในการเปิดเว็บไซต์ อาจจะพบ Error Message ให้กลับไปที่หน้าต่าง WSL/Ubuntu แก้ไขตามนี้sudo chown -R $USER:www-data /var/www/html/drupal/web/sites/default/files sudo chmod -R 775 /var/www/html/drupal/web/sites/default/files เว็บไซต์ก็จะสามารถเปิดได้ตามปกติ ให้ล็อกอินเข้าเว็บไซต์ Drupal ที่เพิ่งสร้าง ด้วย Username และ Password ที่ได้จากด้านบน ติดตั้ง Drush และการเรียกใช้งาน หลังจากทุกอย่างพร้อมใช้งานแล้ว ในขั้นตอนถัดไป คือการติดตั้งโมดูลส่วนเสริมต่างๆ ให้เว็บไซต์ทำงานได้มีประสิทธิภาพยิ่งขึ้น การติดตั้ง Drush ทำได้โดยพิมพ์คำสั่งcomposer require drush/drush เมื่อได้ Drush เรียบร้อย คราวนี้มาลองใช้งาน โดยการติดตั้งโมดูล Coffee เครื่องมือค้นหาเมนูคำสั่งต่างๆ ของ Admin เริ่มต้น ดาวน์โหลดโค้ดไฟล์ของโมดูล Coffeecomposer require drupal/coffee เมื่อดาวน์โหลดเสร็จแล้ว ให้ทำการเปิดใช้งาน รวมถึง ล้างแคช เพื่อพร้อมทำงานต่อไปvender/bin/drush en coffee -y vender/bin/drush cr * Tech * Web Server * Drupal * Drupal 11 * WSL * Windows Subsystem for Linux * Composer * Apache * Drush * Coffee
dlvr.it
November 3, 2025 at 1:21 PM
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL
สร้างเว็บไซต์ Drupal ด้วย Composer+Drush ใน WSL Image poakpong Wed, 2025-10-22 - 05:59 หลังจากสร้างเว็บเซิร์ฟเวอร์ในเครื่องคอมพิวเตอร์ และทดลองเปิด localhost ได้สำเร็จแล้ว คราวนี้มาลองติดตั้งเว็บไซต์ Drupal 11 ด้วยคำสั่ง Composer+Drush ว่าต้องดำเนินการอย่างไร อ่านเพิ่มเติม - วิธีติดตั้งเซิร์ฟเวอร์บน WSL ใน Windows 11 เริ่มต้น ติดตั้ง Composer รันคำสั่ง ดาวน์โหลด Composerphp -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('sha384', 'composer-setup.php') === 'ed0feb545ba87161262f2d45a633e34f591ebb3381f2e0063c345ebea4d228dd0043083717770234ec00c5a9f9593792') { echo 'Installer verified'.PHP_EOL; } else { echo 'Installer corrupt'.PHP_EOL; unlink('composer-setup.php'); exit(1); }" php composer-setup.php php -r "unlink('composer-setup.php');" เมื่อดำเนินการสำเร็จ จะได้ไฟล์ composer.phar ในตำแหน่งโฟลเดอร์ที่รันคำสั่ง ต้องย้ายไปในตำแหน่งที่จะใช้งานsudo mv composer.phar /usr/local/bin/composer แก้ไขสิทธิการทำงานsudo chmod +x /usr/local/bin/composer ทำสอบการเรียกใช้ composer (ตรวจสอบเวอร์ชั่น)composer -v ดาวน์โหลด และติดตั้ง Drupal 11 เลือกใช้ฐานข้อมูล SQLite3 หลังจากได้ Composer พร้อมใช้งานแล้ว ก็ทำการดาวน์โหลด Drupal 11 ด้วยคำสั่ง Composer ได้เลยcomposer create-project drupal/recommended-project drupal จากนั้นใช้คำสั่ง PHP ในการติดตั้ง Drupal โดยคำสั่งนี้จะสร้างไฟล์ฐานข้อมูลที่เป็น SQLite3 ให้แบบอัตโนมัติcd drupal && php -d memory_limit=256M web/core/scripts/drupal quick-start standard เมื่อติดตั้งเรียบร้อยแล้ว จะได้ Username (admin) และ Password (random) สำหรับใช้ล็อกอินเข้าเว็บไซต์ Drupal ที่สร้างขึ้น อ่านเพิ่มเติม - สร้างเว็บ Drupal ด้วย composer แค่พิมพ์ 2 บรรทัด เสร็จ! แก้ไข Apache2 config เปลี่ยนตำแหน่ง DocumentRoot หลังจากติดตั้ง Drupal เสร็จแล้ว หากกลับมาเปิดเบราว์เซอร์แล้วพิมพ์ localhost (ซึ่งจะแสดงตำแหน่งโฟลเดอร์ /var/www/html) จะพบว่า เปิดเว็บไซต์ไม่ได้ พบแค่โฟลเดอร์ drupal เท่านั้น กรณีนี้ ถือว่าเป็นเรื่องปกติ เพราะในการติดตั้งโปรเจค drupal จะมีการสร้างโฟลเดอร์ย่อย drupal/web เพิ่มเข้ามา ซึ่งจำเป็นต้องแก้ไขตำแหน่งโฟลเดอร์ที่ใช้เรียกข้อมูลเว็บมาแสดงผล กลับไปที่หน้าต่าง WSL/Ubuntu แล้วพิมพ์คำสั่ง VIM เพื่อเปิดไฟล์ข้อมูลของ Apache2 config สำหรับแก้ไข DocumentRootsudo vi /etc/apache2/sites-available/000-default.conf โดยโค้ดของเดิมคือDocumentRoot /var/www/html ให้เพิ่มเป็นดังนี้DocumentRoot /var/www/html/drupal/web แล้วเติมคำสั่งเพิ่มเข้าไป ต่อจากบรรทัด DocumentRoot เพื่อรองรับการทำงานของ Drupal (คำสั่งนี้ มีผลกับไฟล์ .htaccess เพื่อทำ clean URL)    AllowOverride All    Require all granted เมื่อแก้ไขเรียบร้อยแล้ว ให้ทำการบันทึก แล้ว restart Apache2sudo service apache2 restart แก้ไข Owner และ Permissions โฟลเดอร์ /sites/default/files ให้ Drupal เขียนไฟล์ได้ ในจุดนี้ หากไม่ได้ทำการแก้ไข Owner และ Permissions ที่ตำแหน่งโฟลเดอร์ /sites/default/files ของระบบ Drupal ในการเปิดเว็บไซต์ อาจจะพบ Error Message ให้กลับไปที่หน้าต่าง WSL/Ubuntu แก้ไขตามนี้sudo chown -R $USER:www-data /var/www/html/drupal/web/sites/default/files sudo chmod -R 775 /var/www/html/drupal/web/sites/default/files เว็บไซต์ก็จะสามารถเปิดได้ตามปกติ ให้ล็อกอินเข้าเว็บไซต์ Drupal ที่เพิ่งสร้าง ด้วย Username และ Password ที่ได้จากด้านบน ติดตั้ง Drush และการเรียกใช้งาน หลังจากทุกอย่างพร้อมใช้งานแล้ว ในขั้นตอนถัดไป คือการติดตั้งโมดูลส่วนเสริมต่างๆ ให้เว็บไซต์ทำงานได้มีประสิทธิภาพยิ่งขึ้น การติดตั้ง Drush ทำได้โดยพิมพ์คำสั่งcomposer require drush/drush เมื่อได้ Drush เรียบร้อย คราวนี้มาลองใช้งาน โดยการติดตั้งโมดูล Coffee เครื่องมือค้นหาเมนูคำสั่งต่างๆ ของ Admin เริ่มต้น ดาวน์โหลดโค้ดไฟล์ของโมดูล Coffeecomposer require drupal/coffee เมื่อดาวน์โหลดเสร็จแล้ว ให้ทำการเปิดใช้งาน รวมถึง ล้างแคช เพื่อพร้อมทำงานต่อไปvender/bin/drush en coffee -y vender/bin/drush cr * Tech * Web Server * Drupal * Drupal 11 * WSL * Windows Subsystem for Linux * Composer * Apache * Drush * Coffee
dlvr.it
October 22, 2025 at 12:24 AM
Composer & Packagist now have a sponsorship program. Thank you to our launch sponsors 🤝 Aikido, AWS, Socket, Bunny, Upsun, Sonatype, Tideways, Datadog and Algolia help fund our shared infrastructure.

blog.packagist.com/announcing-...

#php #phpc #composerphp
July 30, 2026 at 12:05 PM
We're excited to announce @upsun.com is now sponsoring #composerphp & Packagist maintenance, ops and development! They have a long history in the #PHP ecosystem. Their contribution helps us push forward with our work on improving supply chain security for the PHP ecosystem.
July 28, 2026 at 12:04 PM
CI/CD pipelines are a prime target for supply chain attacks. We hardened the GitHub Actions workflows for Composer, Packagist and Private Packagist with 🌈zizmor and wrote down how to do the same on yours.

blog.packagist.com/securing-ou...

#php #phpc #composerphp #github #githubactions #zizmor
Securing our GitHub Actions workflows with zizmor
This is the next post in our supply chain security series, following the supply chain security update, the Composer 2.10 release and immutable version metadata on Packagist.org. The earlier posts covered Composer behavior, changes to Packagist.org, and Private Packagist features. Today we’ll cover how we hardened
blog.packagist.com
July 23, 2026 at 1:45 PM
📌 Stable versions on Packagist are now immutable. Once published, the commit a version points to can no longer change. Retags are blocked, and deleted versions are tracked with a reason and recoverable.
blog.packagist.com/immutable-v...
#php #phpc #composerphp
July 7, 2026 at 1:57 PM