<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Taylor Jones on Medium]]></title>
        <description><![CDATA[Stories by Taylor Jones on Medium]]></description>
        <link>https://medium.com/@tay1orjones?source=rss-c7fcd2df606c------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*kUfjqTjEv7Rmvtd6pFdn0w.jpeg</url>
            <title>Stories by Taylor Jones on Medium</title>
            <link>https://medium.com/@tay1orjones?source=rss-c7fcd2df606c------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 01:13:19 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@tay1orjones/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Announcing the Carbon Design System Release Schedule]]></title>
            <link>https://medium.com/carbondesign/announcing-the-carbon-design-system-release-schedule-f33144e9141?source=rss-c7fcd2df606c------2</link>
            <guid isPermaLink="false">https://medium.com/p/f33144e9141</guid>
            <dc:creator><![CDATA[Taylor Jones]]></dc:creator>
            <pubDate>Fri, 12 May 2023 14:20:12 GMT</pubDate>
            <atom:updated>2023-05-12T14:20:12.689Z</atom:updated>
            <content:encoded><![CDATA[<p>Today we’re publishing a release schedule outlining the plan for previous, current, and future major versions of the Carbon Design System.</p><figure><img alt="An illustration of two overlapping staircases with a person standing on the floor looking leftwards towards a series of stacked rectangles vaguely representing user interface elements. Another person at the top of one set of stairs looks rightwards towards another series of stacked rectangles that vaguely represent user interface elements. A large clock sits in the top left corner." src="https://cdn-images-1.medium.com/max/1024/1*yp2BO4zJxJNsPx0KomJAnQ.jpeg" /></figure><h3>A long time coming</h3><p>Since the release of v11 in March of last year, there have been a lot of questions and feedback around the timeline for both v10 and v11. As the ecosystem around the Carbon Design System continues to mature and grow, we’d like to begin setting expectations for the timeframe around each major release we publish.</p><p>Over the past few months we have engaged with many teams within IBM on this topic. We consulted with both early v11 adopters and those still using v10 to help determine a realistic and reasonable time window for support of major versions. It was clear from very early on that due to the scale of IBMs teams and operations there is a strong need for our versions to have a plan of long term support.</p><h3>The plan</h3><p>We’ve landed on a release schedule we believe reflects the realities of enterprise product development while also balancing the finite resources of teams working to grow and maintain the Carbon Design System ecosystem.</p><figure><img alt="A chart showing the timeline for v9, v10, v11, and v12 carbon releases" src="https://cdn-images-1.medium.com/max/1024/1*nXViFLoiKN8TNZ_K1GEqAQ.png" /></figure><iframe src="" width="0" height="0" frameborder="0" scrolling="no"><a href="https://medium.com/media/26a396af80c3013067066fb6af13b01c/href">https://medium.com/media/26a396af80c3013067066fb6af13b01c/href</a></iframe><h3>Release phases</h3><p>In this plan, each major release has three phases; Prerelease, Active and Maintenance.</p><h4>Prerelease</h4><p>The prerelease phase is intended to be the opportunity for early adopters, library authors, and other strategic ecosystem partners to begin to evaluate and integrate new changes into their codebases. For v11, this phase was eight months long and spanned four prerelease/beta releases. We hope to extend this timeframe even further for our next major.</p><h4>Active</h4><p>A release in the Active phase receives biweekly minor releases containing new features and fixes. The work we deliver into main every day is considered unstable. Every two weeks we package up these changes into a new minor version that is published from main to the current Active major. Consuming projects should always aim to follow the Active release.</p><h4>Maintenance</h4><p>For a release in the Maintenance phase, patch releases are published containing security patches and critical bug fixes. When a version moves from Active to Maintenance, consuming projects should begin migrating to the new Active major version.</p><p>During Maintenance we also consider adding non-critical bug fixes on an ad hoc basis, by request only. This model has been working well for v10 so far and a number of fixes have already been back-ported from v11 to v10. If you’re using v10 and there is a v11 fix you’d like to see in v10, please <a href="https://github.com/carbon-design-system/carbon/issues/new?assignees=&amp;labels=type%3A+bug+%F0%9F%90%9B&amp;projects=&amp;template=BUG_REPORT.yaml&amp;title=%5BBug%5D%3A+">open an issue</a>.</p><h3>Major timelines</h3><h4>v9 and v10</h4><p>The release of v11 ushered in two changes — v9 no longer being supported, and the transition of v10 to the Maintenance phase. As shown in the plan, the v10 release will continue to be supported by our team through September of 2024.</p><p>This timeframe intentionally aligns with the fall planning period many teams have, and provides over 16 months to plan and accomplish a migration to v11. To help support this timeframe we are also actively working to <a href="https://github.com/carbon-design-system/carbon/issues/13696">reduce the time it takes to migrate to v11</a>.</p><h4>v11</h4><p>For the current major version, v11, it is in active development. All new features and fixes go here and are released biweekly in new minor versions. We anticipate moving v11 to Maintenance when v12 is released.</p><h4>The future and beyond</h4><p>Our next major version v12 is not quite in view yet, the timeline outlined in the chart is just an ideal proposal.</p><p>We’re currently ideating on ways that we could accelerate this release schedule without impacting teams. The next major version will be an opportunity to explore different approaches to change management and breaking changes to improve overall stability of our packages. There will be more on this to come, but ultimately we want our next major to be even more seamless from a migration standpoint.</p><h3>What does this plan cover?</h3><p>For now this plan covers the design and development assets under maintenance of the Carbon Design System core team. This includes the @carbon/react and @carbon/styles packages, as well as all other packages within the <a href="https://github.com/carbon-design-system/carbon">carbon monorepo</a>. Soon we will provide more scoped information for @carbon/charts and @carbon/web-components. This plan also includes all design guidance and design kit assets (Figma, etc.) present on carbondesignsystem.com</p><p>The broader open-source Carbon Design System ecosystem is a complex array of assets spanning across multiple teams and library maintainers both inside and outside of IBM. This release plan may not map 1:1 for all these instances. We’ll work with library and framework variant authors to help establish how their release plans can ladder up into this plan. Ultimately we want the entire ecosystem to be in lockstep with one another and avoid fragmentation where possible. If you’d like to discuss plans for an asset or library you maintain, <a href="https://github.com/carbon-design-system/carbon/issues/new?assignees=&amp;labels=type%3A+question+%E2%9D%93&amp;projects=&amp;template=QUESTION.yaml&amp;title=%5BQuestion%5D%3A+">please reach out</a>!</p><h3>A living document, subject to change</h3><p>We know this plan is the result of feedback from only a snapshot in time and we anticipate that the needs for version support will change over time. Ultimately, the dates and phases outlined in the release schedule are subject to change.</p><p>The plan will live in the <a href="https://github.com/carbon-design-system/carbon/blob/main/docs/release-schedule.md">carbon GitHub repository</a> and future changes will be made there. If you have thoughts or concerns on any of this, we’d love to get your feedback and start a dialog in the <a href="https://github.com/carbon-design-system/carbon/discussions/13794">GitHub discussion</a> for this topic. This crucial feedback from the Carbon community will help guide future changes to this plan. Thank you again to the many teams that already helped to inform this work so far!</p><p><em>Taylor Jones is a Software Engineer based out of Austin, TX working on the Carbon Design System. The above article is personal and does not necessarily represent IBM’s positions, strategies, or opinions.</em></p><p><em>Questions or comments about Carbon? Reach out at </em><a href="/service/mailto:carbon@us.ibm.com"><em>carbon@us.ibm.com</em></a><em> or tweet us </em><a href="http://twitter.com/_carbondesign"><em>@_carbondesign</em></a><em>.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f33144e9141" width="1" height="1" alt=""><hr><p><a href="https://medium.com/carbondesign/announcing-the-carbon-design-system-release-schedule-f33144e9141">Announcing the Carbon Design System Release Schedule</a> was originally published in <a href="https://medium.com/carbondesign">_carbondesign</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[One quick way to get ready for Carbon v11]]></title>
            <link>https://medium.com/carbondesign/migrating-from-node-sass-to-sass-eba9db004a3a?source=rss-c7fcd2df606c------2</link>
            <guid isPermaLink="false">https://medium.com/p/eba9db004a3a</guid>
            <category><![CDATA[design-systems]]></category>
            <category><![CDATA[carbon]]></category>
            <category><![CDATA[sass]]></category>
            <category><![CDATA[node-sass]]></category>
            <dc:creator><![CDATA[Taylor Jones]]></dc:creator>
            <pubDate>Fri, 10 Sep 2021 16:17:45 GMT</pubDate>
            <atom:updated>2021-10-08T18:46:12.231Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hCL8nJByx-nX3AEvZgbkdQ.png" /></figure><p>Expanding on our <a href="https://medium.com/carbondesign/carbons-2021-release-april-update-9d23242b3dea">April announcement</a> that Carbon will be moving to Dart Sass from Node Sass, we wanted to take a closer look at how projects using carbon-components can prepare for this change today, before v11 is released.</p><h3><strong>Transition from </strong><strong>node-sass to </strong><strong>sass</strong></h3><p>For those unfamiliar with recent changes in the sass ecosystem, node-sass is a very popular wrapper around the LibSass implementation of sass that <a href="https://sass-lang.com/blog/libsass-is-deprecated">has been deprecated</a>. sass is now the recommended package and is built atop the dart-sass implementation.</p><p>Beginning in v11, Carbon will require the use of sass. To migrate, it typically will require just one step — swap the node-sass dependency for sass. In most projects it’s included as a devDependency.</p><pre>yarn remove node-sass<br>yarn add sass --dev</pre><pre>// or with npm:</pre><pre>npm uninstall node-sass<br>npm install sass --save-dev</pre><p>The Sass team has outlined further <a href="https://sass-lang.com/blog/libsass-is-deprecated#how-do-i-migrate">migration information</a> including <a href="https://github.com/sass/libsass/issues?q=is%3Aopen+is%3Aissue+label%3A%22Compatibility+-+P1+%E2%9A%A0%EF%B8%8F%22">a list of known compatibility issues</a> and the potential fixes available.</p><h4>Handling multiple instances of node-sass</h4><p>If your project is a collection of multiple packages, perhaps organized as a monorepo, you’ll want to replace all usages of node-sass with sass. It may be helpful to search your dependency tree for node-sass to gather a list of sub dependencies or packages you may need to update or reconfigure.</p><pre>yarn why node-sass</pre><pre>// or with npm:</pre><pre>npm ls node-sass</pre><p>The sass package exports the same API as node-sass and is intended to be an in-place update without any required changes. If you’re using webpack, sass-loader should default to using the sass implementation if you remove the implementation key from your options config. In some cases you may still need to explicitly require the correct implementation.</p><pre>{<br>  implementation: require(&#39;sass&#39;)<br>}</pre><h4>Confirm your project is using the correct implementation</h4><p>One way to confirm that your project is probably using the correct implementation is to run a small smoke test using <a href="https://sass-lang.com/documentation/at-rules/import#import-only-files">import-only files</a>. With this approach you can add a couple test files, tmp.import.scss and tmp.scss. If you import this in your central entrypoint file, node-sass will use tmp.scss while sass will use tmp.import.scss.</p><pre>// index.scss<br><em>@import</em> &#39;./tmp&#39;;</pre><pre>// _tmp.scss<br>@debug &#39;_tmp.scss was processed, likely using node-sass&#39;;</pre><pre>// _tmp.import.scss<br>@debug &#39;_tmp.import.scss was processed, likely via sass&#39;;</pre><p>After running a build, you should see output on your console indicating which file was processed.</p><h3>Resolve common problems with the Sass Migrator</h3><p>Depending on the sass language features your project is using, you may encounter deprecation warnings or other messages after swapping out node-sass for sass. These are only warnings and should not impact the success of your build.</p><p>One very common deprecation warning that was present in the Carbon codebase itself was the deprecation of using a slash / for division. Thankfully, the Sass team provides a sass-migrator CLI to assist with upgrading a codebase to new language features. We appreciated being able to run the <a href="https://sass-lang.com/documentation/cli/migrator#division">division migration</a> to update our files automatically with the new math.div function intended to replace slash for division.</p><pre>sass-migrator division path/to/styles/*.scss</pre><p>For full details, check out the <a href="https://sass-lang.com/documentation/cli/migrator">documentation</a> for sass-migrator.</p><h3><strong>Include node_modules as a load path</strong></h3><p>In v11, you will need to configure Sass to be able to find packages from your node_modules folder. To do this, use the includePaths option and set its value to an array of load paths where Sass should look to find node_modules folders.</p><p>For most projects, this configuration will look like this:</p><pre>{ <br>  &quot;includePaths&quot;: [&quot;node_modules&quot;] <br>}</pre><p>If you are using the Sass CLI directly, use the --load-path flag:</p><pre>$ sass --load-path=node_modules style.scss style.css</pre><p>In some projects, particularly those organized as a monorepo, the build path may not be colocated with node_modules. In this case, it may be helpful to use a javascript-based config file so that multiple node_modules paths can be resolved dynamically.</p><pre>const path = require(&#39;path&#39;);</pre><pre>module.exports = {<br> includePaths: [<br>  path.resolve(__dirname, &#39;../../node_modules&#39;),<br>  path.resolve(__dirname, &#39;../../../../node_modules&#39;),<br> ],<br>};</pre><p>Note that this config is an array value, and earlier load paths will take precedence over later ones. Read more about Sass load paths in <a href="https://sass-lang.com/documentation/at-rules/import#load-paths">the documentation</a>.</p><h3>A note on Sass Modules</h3><p>The most prominent feature available through the sass dependency is the new <a href="https://sass-lang.com/blog/the-module-system-is-launched">Sass module system</a>. Beginning in v11, Carbon will provide a new @carbon/styles package built using Sass Modules. This does not mean that your codebase needs to migrate right now to use Sass Modules. The Carbon styles will continue to work using @import for now with some tweaks if your styles are using Carbon tokens, functions, or mixins. We’ll provide more in-depth information on this as we near the v11 release through new migration documentation.</p><p>There are numerous benefits to using Sass Modules including smaller bundle size and increased build performance. If you’re interested to learn more and would like to get a jump start on it, there is a module <a href="https://sass-lang.com/documentation/cli/migrator#module">migration</a> available through the sass-migrator.</p><h3>Continuing the path towards v11</h3><p>These steps should begin to prep your project for the changes coming in the next major version of Carbon.</p><p>Overall these changes should be pretty uneventful, but if you encounter issues moving off of node-sass please contribute feedback in our <a href="https://github.com/carbon-design-system/carbon/discussions/9621">Github discussion</a>. So far we’ve seen that most issues are likely be related to config options and may not be easily reproducible outside of your project environment. It’s always helpful to narrow down your issue into a reproducible <a href="https://codesandbox.io/s/github/carbon-design-system/carbon/tree/main/packages/react/examples/codesandbox">codesandbox example</a> when reporting problems.</p><p>As portions of our v11 work stream are completed we’ll be publishing more migration documentation and posts like these to communicate what’s coming. Be on the lookout for our next beta release soon!</p><p><em>Taylor Jones is a Software Engineer based out of Austin, TX working on the Carbon Design System. The above article is personal and does not necessarily represent IBM’s positions, strategies, or opinions.</em></p><p><em>Questions or comments about Carbon? Reach out at </em><a href="/service/mailto:carbon@us.ibm.com"><em>carbon@us.ibm.com</em></a><em> or tweet us </em><a href="https://twitter.com/_carbondesign"><em>@_carbondesign</em></a><em>.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=eba9db004a3a" width="1" height="1" alt=""><hr><p><a href="https://medium.com/carbondesign/migrating-from-node-sass-to-sass-eba9db004a3a">One quick way to get ready for Carbon v11</a> was originally published in <a href="https://medium.com/carbondesign">_carbondesign</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>