<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Deprecation on Brian Faust</title><link>https://vacua.dev/tags/deprecation/</link><description>Recent content in Deprecation on Brian Faust</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate><atom:link href="https://vacua.dev/tags/deprecation/rss.xml" rel="self" type="application/rss+xml"/><item><title>Deprecation Is a Migration, Not a Warning</title><link>https://vacua.dev/thoughts/deprecation-is-a-migration-not-a-warning/</link><pubDate>Tue, 01 Oct 2019 00:00:00 +0000</pubDate><guid>https://vacua.dev/thoughts/deprecation-is-a-migration-not-a-warning/</guid><description>&lt;p&gt;A billing rewrite introduced durable export records before removing several
legacy queue jobs. Each new worker carried a record identifier. The export
type, payload snapshot, attempts, failure details, and retry state lived in the
database. A registry selected the current handler.&lt;/p&gt;
&lt;p&gt;That order matters. A queued object is not merely code waiting to run. Its
serialized class name and properties are data. Delete the class while an old
payload remains, and PHP can deserialize it as an incomplete object which no
longer has the method the worker expects.&lt;/p&gt;</description></item></channel></rss>