Comments (18)
Version 2.2.0 has been unpublished. We'll do a major bump sometime tomorrow.
Thanks for bringing this to our attention @ajwhite 👍
from ansi-styles.
So you are aware, unpublishing breaks builds that have used shrinkwrap to pin to 2.2.0
.
from ansi-styles.
Post Mortem
2.2.0 was actually released on Feb 21. Some breaking changes that were finally merged (ref #13) were sitting in master until we wanted to do a major version bump. However these changes were inadvertently released in 2.2.0 when the next release should have been 3.0.0 (minor bump instead of a major bump).
Since chalk wasn't affected by the otherwise breaking changes (this was by-design), but other projects that use ansi-styles
might have been, the breaking release 2.2.0 went unnoticed until now.
This is also due to the fact the 'breaking' changes were not buggy code, but intentional changes meant for a major version bump, hence why tests still passed on Travis and thus why we were not notified of any breaking CI runs.
As Sindre mentioned, we went ahead and still did a 2.2.1 patch release despite the unpublishing of 2.2.0, for those users that had already bumped their package.json dependencies to ^2.2.0
.
We acknowledge that the unpublishing of the broken version was unnecessary and a patch release would have been the preferable solution.
The root issue has been addressed internally (unrelated: externally, too) and won't be happening again in the future.
Maintainers that are facing errors related to ansi-styles
after fixing broken code from the 2.2.0 release (i.e. users that upgraded to 2.2.0 and modified their code to use the new API) can do one of two things:
- wait for the 3.0.0 release (your code should work when this happens)
- temporarily change your dependency to
"dependencies": {"ansi-styles": "chalk/ansi-styles"}
All other users experiencing errors related to ansi-styles
should clear out their node_modules/
directory and re-run npm install
- the problem should resolve itself.
We also recommend updating your dependencies to specify ansi-styles@^2.2.1
, though this shouldn't be required.
If you use shrinkwrap, refer to #17.
For any other issues, you are definitely welcome to open a new ticket and I will personally see to it that it's handled in a timely manner.
Sorry again to anyone affected by this!
from ansi-styles.
PLEASE don't unpublish! This causes disasters downstream. NO, NO!
from ansi-styles.
unpublishing breaks a lot of things, though it was necessary in this case I believe
Why was it necessary? Why not publish the version you intended at 2.2.1, and let everybody move forward? If they're referencing a broken 2.2.0 then they can update. I'm not trying to be a PITA about it, just curious where the necessity of unpublishing comes in as opposed to just publishing 2.2.1.
from ansi-styles.
the dancer emoticon should be bigger so we can see her fabulous red dress
from ansi-styles.
@laurelnaiad you're correct. Sindre and I discussed it more after the fact and we agree that a patch would have been better. A lesson for the future 👍
from ansi-styles.
from ansi-styles.
... and remember to do the same with jspm if you're using it, where this was hitting our project
jspm cache-clear
from ansi-styles.
Yeah this should have been a major release....
Either use 2.1.0
(specific semver version) or wait until Sindre can deprecate this and re-publish as a major version bump.
// @jbnicolai
from ansi-styles.
Thanks for the quick recovery!
from ansi-styles.
@hulbert unpublishing breaks a lot of things, though it was necessary in this case I believe. Our next release will be 3.0.0 anyway.
Would you or @sindresorhus be willing to write some steps on how to fix the shrinkwrap issue if others are facing it? I've not used shrinkwrap personally.
Sorry if this inconvenienced anyone.
from ansi-styles.
@hulbert The 2.2.0 version was broken. So I don't really see how not unpublishing would have helped when it's pinned?
from ansi-styles.
Reopening for discovery.
I did a 2.2.1 patch release with the content of the old 2.1.0, just in case someone already upped it to ^2.2.0
.
from ansi-styles.
Ok, it's not a big deal, just wanted to understand. Thanks! :)
from ansi-styles.
Thanks for the feedback 💃
from ansi-styles.
Seriously, unpublishing should be reserved for exceptional cases. I'm not sure how you thought this was a good idea less than a week after the left-pad
incident. I don't even know which of my dependencies uses this package, but it was working just fine until you unpublished 2.2.0.
from ansi-styles.
@tlrobinson We didn't unpublish the module, just that particular version. Quite different. It also wasn't working just fine. Chalk was working, sure - but that was because the breaking changes were designed to be compatible with how chalk was already using it.
However, some packages that used ansi-styles
directly were broken.
We now know a patch version would have been the better alternative. However, we didn't know the extent of breaking that had been released until after the fire was contained. At the time, unpublish seemed like the correct course of action.
@bradvogel We're aware. 👍 Thank you!
If you're still facing issues after referring to the post-mortem, please open a new ticket.
I'll see to it personally that it is resolved quickly.
from ansi-styles.
Related Issues (20)
- blackBright is mentioned in README but is not implemented HOT 17
- NPM install error HOT 7
- Ambiguous error when keyword doesn't exist HOT 10
- Did the 2.2.0 release disappear? HOT 3
- Unable to install the package HOT 1
- missing module => 'color-convert' HOT 1
- Why the open/close API HOT 6
- No greenBright open and close HOT 1
- blackBright doesn't exist
- Uncaught SyntaxError: Use of const in strict mode. HOT 2
- Syntax error in IE11 due to arrow function currying HOT 4
- IE11 syntax error HOT 3
- Why is @types/color-name a production dependency? HOT 4
- Provide es5 lib output HOT 2
- Add support for overline HOT 6
- Can't import into TypeScript node project HOT 2
- Add support for superscript and subscript HOT 2
- Problem from version`5+` to Regex when using ReactNative Hermes engine HOT 1
- '[email protected]' is not in the npm registry. HOT 1
- Blinking text HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ansi-styles.