-
Notifications
You must be signed in to change notification settings - Fork 13
Everything in #34 and then color() -> color-mod() #35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Everything in #34 and then color() -> color-mod() #35
Conversation
@jonathantneal I think we should be cautious and slow to change the name to Are you involved in other convos where folks have a more clear picture of what is changing in the spec and when? |
Hey @tylergaw, I hope I can clear up this misunderstanding.
The reason people are told to ignore this entire specification is because 1. nobody knows if the syntax will change, and 2. nobody knows what the new function name will be. However, we do know that the name will probably not be All that being said, I hope you take in this new name, or at least make the name configurable, but I also respect that you don’t have to, and I understand how not changing the name reduces compatibility issues. I’m really only hoping to avoid the necessary fork I would have to make in order to keep the PostCSS plugin to spec. Because, even if the spec completely dies, like |
@jonathantneal we should wait for spec stabilization. @tabatkins told ignore |
Ah, thanks for the link to the Apple Cool, just to be clear, I'm with you on making sure this project and PostCSS stay in sync with specs. Even with my off the cuff comments in #29. I just want to make sure we don't get it too much of hurry. Let me throw out the scenario I see happening.
Now, that may be exactly what we need to do. We're working right on the edge of this stuff so we should expect churn. And any users of this lib should expect it too. I'm still just being cautious and making sure we all now what we're setting ourselves up for. |
@tylergaw, first, thank you for listening. I know the internet can make text cold, and I know I have very strong opinions here, so I hope I’m not coming across too rudely.
I think you may be drawing a line between now and the time you knew about this change. The name was changed in the spec once, 603 days ago, on Feb 17, 2016. This would not be a hasty change.
Yes, and if we do not follow these changes, or if we place a burden on the csswg to not make changes (within, say, a 603 day period), then we are actually sabotaging the future of CSS. I know what I’ve said sounds dire, but believe me, I’ve been on the other side, I’ve ignored the warnings, and I was thinking the whole time that I was doing it with the best interests of my fellow developers in mind. But don’t take my word for it:
|
@jonathantneal I really don’t think that we should change name if W3C member told us to ignore it ;) |
I meant ignore the feature entirely. It's not currently on a standards track at all, I just haven't taken the time to go comment it out of the draft. If the color-modification functionality is currently named color() in this library, that's going to be a problem, since there is a standards-track function already named |
Howdy @tabatkins, thanks. Since we have you here...
That's correct. Ian made this lib way back in the day–like 4 years+ ago–based on your early proposed spec of modifying colors with a function named OK, we know What do you think our safest, future facing change for this lib is? Some color modification feature in CSS sounds rad as hell. Think a lot of folks agree. I built this silly thing https://colorme.io some time back in anticipation of it, and using this lib. Should we:
Is it worth it for me to propose a similar question or other questions in the CSSWG mailing list or similar? |
There is no safe change for this right now, if your goal is to match the future CSS spec. Anything you do will be entirely speculative, with no guarantee whatsoever that it reflects a future CSS feature. At the moment, this is entirely and completely a novel library feature, not a polyfill or prollyfill. |
According to endorsed terminology, it would be a speculative polyfill, no?
|
Splitting hairs pretty finely at that point. |
If we want to support
Dropping @tabatkins did I understand correctly, that right now W3C doesn’t plan to change |
At the moment, the CSS spec isn't intending to support a color modification function at all. I just haven't removed it from the spec yet. |
@ai, |
@tabatkins why? |
@jonathantneal I understand that This is why it is very important to have migration plan and take care of users first. Look at React migration plans.They are perfect. And they are based on the idea that every major release doesn’t break your code, only show warnings. Next major release will remove that deprecated API with warnings. but since you see warnings for few months, you already migrated to new API. The same idea is used in PostCSS major releases. |
I'm aware that color modification functions are useful - I definitely agree, which is why I wrote one into the spec in the first place! The problem is that the design is bad and needs reworking, and I haven't had time to do that. |
Ok, thanks for diggin' in ya'll. And @tabatkins, thanks for clarifying things for us. Here's what I'm thinking. I think @ai 's proposal is spot on and we should do that. I think we should release a We'll also update documentation in this lib to inform folks that the future of css color modification functions is uncertain and there's a 100% chance things will change so, dragons. Does that sound good? |
@jonathantneal One process ask. I just went back to #34 and removed my changes to the version in package.json and the History.md. Can you have this PR only contain your changes for the function name instead of also including the work in #34? Then once we merge the work needed here and #34 I'll do another PR to bump the version and update the history. Want to keep the commits all tidy for posterity. |
@tylergaw sure thing. Let me know if that worked or if you need anything else. |
+1 to the decision you all came up with! For what it's worth, we shouldn't listen that closely to what the CSS spec authors say when they are talking about how "this isn't a polyfill" and thus shouldn't exist. It's not a polyfill for spec'd behavior, yes, that's true. But obviously they are super conservative. It is a polyfill for things that are up for consideration, and that can be useful, because otherwise the current base CSS functionality we have to work with is lacking. And we all know that waiting for things to be standardized properly in CSS land takes way too long to be useful. The way I think of this kind of library (and the others like it) is that it is like the (I also agree with @ai that the React migration system with deprecation warnings the release before is absolutely amazing, and a good goal to have whenever possible.) |
This is a bad reading of what I said. This sort of stuff should definitely exist. But it's not a polyfill, because it's not trying to forward-fill any spec proposals that are expected to succeed, but haven't yet reached full implementation and penetration. Words mean things. ^_^ |
Thanks @jonathantneal that's perfect. The remainder of work we need on this is to still allow Do you want to continue with that work or would you rather I took it on? |
@tylergaw PostCSS has better warning API http://api.postcss.org/Node.html#warn It shows origin plugin and displayed properly by PostCSS runner (for example, Atom plugin could display it inside GUI since console is hidden). |
@ai OK, cool. Are you suggesting we copy what ya'll are doing with that or that we should use PostCSS's warning instead of logging the warning here. Or am I misunderstanding? |
Yeap, this warning )mostly all warnings from a plugin) must be sent by |
Hrm, I'm not sure that'll work for us here. I think this lib should log the deprecation warning because there are uses of it outside of PostCSS. We don't have anything PostCSS in the lib as of right now. Am I missing something? |
Oops. Sorry, I forgot that it is not Maybe for |
Ah! haha, ok cool, no prob. So many projects! So many repos! |
Hey @jonathantneal just checking on this again. Let me know if you want to continue with the updates above or if you want help. Either way works. |
Sorry, I didn’t follow that you were waiting on me. How can I help? This is an open PR to switch to the available name. For the PostCSS plugin, we can deprecate the name however, in a major release, in a minor release. Either way, it will probably be fairly quickly subsequent releases, as to protect the |
Hey @jonathantneal sorry for the slow response. Yeah, I guess I'm wondering if you want to bake in the support for both
We'll need to update that function to look for both right? I'm trying to determine if it's more efficient to 1) Merge this PR then circle back to re-add deprecated support for I'm a little slow to merge this into What do you think? |
@tylergaw, tricky question. If this were late 2016, I would say support both and deprecate. However, the word If you still want to support both, you should add tests that ensure you do not transform valid uses of |
Thanks @jonathantneal. We do want to support both In Do you want to do the work in this PR to make this happen or do you want us to take it on? |
@tabatkins have you abandoned all of your proposals, then? You sound very pessimistic and CSS is starting to look like a piece of crap. |
@stevenvachon Tab gave us plenty of info to go on for this issue. We haven't made any changes yet due to other work obligations. We'll pick back up on this work in the near future. I'm sure any spec(s) around CSS color modification will also progress in time Also what you said:
I'm a maintainer of this project and we don't do that here. |
No description provided.