{"push_id":1214604685,"size":36,"distinct_size":36,"ref":"refs/heads/master","head":"ca43a3d5e560a0582599d7e8cc706b0a43dceb94","before":"5d91eb66f0c5ae141e925f4587c082ee9d569333","commits":[{"sha":"18428b146ed05866a95d57896ac1ef9bcf20142a","author":{"name":"Paho Lurie-Gregg","email":"79a20f7cb70749f96f60efdc5e97ff870061fd2c@paholg.com"},"message":"Derive Clone for Take and MaybeSlice","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/18428b146ed05866a95d57896ac1ef9bcf20142a"},{"sha":"db86c5c503357b172734ed803b6cd06174948078","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #29 - paholg:clone_take, r=Ogeon\n\nDerive Clone for Take and MaybeSlice\n\nThis allows `cycle()` to be called on `Take`.","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/db86c5c503357b172734ed803b6cd06174948078"},{"sha":"5bb0d3f1f584211938154dcf5762392b44bf4c6c","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"Add Cie Yxy color","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/5bb0d3f1f584211938154dcf5762392b44bf4c6c"},{"sha":"16f007120c18b9a10333fa9553bca2ba3d20f8fd","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #30 - sidred:yxy_space, r=Ogeon\n\nAdd Cie Yxy (xyY) Color Space\n\n# Add Cie Yxy color space\n\n### Breaking Change\nBreaking change in the Luma Color to XYZ color conversion.  The previous conversion\ndid not scale the X and Y values by the  luma amount as per the formula\n\nPrevious formula:\nx = X_N\ny = luma\nz = Z_N\n\nCorrected formula:\nx = X_N * luma\ny = luma\nz = Z_N * luma\n\n### Cie Yxy color space\nAdd support for the Cie Yxy color space and conversions to the\nother color spaces.\n\nColor Space is named Yxy and not Xyy. I have seen Yxy used in a few\nplaces and it fits the rust style naming better. Easier to distinguish\nYxy and Xyz than Xyy and Xyz.\n\nThe brightness/ luminance component Y is named luma and the x and y\nchromacity coordinates are named x and y.\n\nThe clamping for this color space defined to be between 0-1. In reality,\nY is bounded to 0-1 and x and y have no bounds. I have seen some rgb color\nspaces have their blue points negative, but for most cases 0-1 is a good\nrule of thumb to use.\n\nThe default value is (0.312727, 0.329023, 0.0) and not (0,0,0). The default for x and y\nare the white point D65 x and y values which is the default white point. Since Y (luma) is 0.0, this\nmakes the default color black just like for other colors. The reason for not using 0 for\nx and y is that this outside the usual color gamut and might cause scaling issues.\n\nThe Luma to Yxy conversion also uses the x and y values from the D65 white point,\nfor the same reasons mentioned above.\n\ncloses  #28","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/16f007120c18b9a10333fa9553bca2ba3d20f8fd"},{"sha":"eb7b0272665f33457bf24625daf1f5d885e797a8","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"changed T::from().unwrap() to use flt() function","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/eb7b0272665f33457bf24625daf1f5d885e797a8"},{"sha":"eb44ab1d3a682a7bb51d574e89bafd99ee86588f","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #35 - sidred:use_float_fn, r=Ogeon\n\nuse flt() function\n\nUse function flt() to convert constants to trait Float type. Changed all T::from().unwrap() to use this flt() function defined in lib.rs. Makes the code easier to read, especially the formula's.\n\ncloses #33","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/eb44ab1d3a682a7bb51d574e89bafd99ee86588f"},{"sha":"a88a6bd02612b85f305aaf87fd80500aa0a97c6b","author":{"name":"Erik Hedvall","email":"b976d50774702ee5536b961d91a53802b1985d23@gmail.com"},"message":"Add SVG/CSS3 color constants","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/a88a6bd02612b85f305aaf87fd80500aa0a97c6b"},{"sha":"57460f85f6b411ddaaac2cf6717e94468f0d1b2e","author":{"name":"Erik Hedvall","email":"b976d50774702ee5536b961d91a53802b1985d23@gmail.com"},"message":"Add named::from_str which maps name strings to colors","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/57460f85f6b411ddaaac2cf6717e94468f0d1b2e"},{"sha":"a401917f9e545d83f95a0c2dc67452bca08a2bd3","author":{"name":"Erik Hedvall","email":"b976d50774702ee5536b961d91a53802b1985d23@gmail.com"},"message":"Make the named module and named::from_str optional","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/a401917f9e545d83f95a0c2dc67452bca08a2bd3"},{"sha":"f58094ff6a3f4c1405f078f7b0cb451996352ab4","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #34 - Ogeon:named, r=Ogeon\n\nAdd color constants\n\nThis adds the SVG1.1/CSS3 keyword colors as constants, and a function which maps name strings to them. They are accessible through the `named` module and the documentation shows colored preview rectangles as descriptions. There are even more named colors out there (https://en.wikipedia.org/wiki/List_of_colors:_A%E2%80%93F, for example), but this is a good start.\n\nThe whole `named` module can be toggled with the `\"named\"` feature, and the `named::from_str` function can be toggled with `\"named_from_str\"`.\n\nThis closes #5.","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/f58094ff6a3f4c1405f078f7b0cb451996352ab4"},{"sha":"50997dc1618c988ef3d66fbfb1cfba6c5cf1a87a","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"Add FromColor and IntoColor traits.\n\nupdated comments","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/50997dc1618c988ef3d66fbfb1cfba6c5cf1a87a"},{"sha":"2f447330c7f26f40058e0036cac806c4f254adb4","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #43 - sidred:conversion_trait, r=Ogeon\n\nAdd conversion trait\n\nThis commit adds a FromColor and IntoColor conversion trait. These traits require from_xyz and into_xyz respectively to be implemented and auto derive the conversions for other colors.\n\nTo implement FromColor and IntoColor for a type, a few things must by kept in mind.\n- Derived colors like Hsl must override the default from_rgb  and use this for from_xyz for efficiency.\n\n- The FromColor for the same color must override the default. For example, from_rgb for Rgb will convert via Xyz which needs to be overridden with self to avoid the unnecessary conversion.\n\n- If a direct transform exists between the colors, then it should be overridden in both the colors. For example, Luma has direct conversion to Rgb. So from_rgb for Luma and from_luma for Rgb override the defaults.","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/2f447330c7f26f40058e0036cac806c4f254adb4"},{"sha":"d5abcc75ee98a9792458aa76f7bef0656270b452","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"change normalize to use floor and ceil formula instead of while loop","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/d5abcc75ee98a9792458aa76f7bef0656270b452"},{"sha":"dae9ecf095521ffc4da624994726b3201baf3492","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #47 - sidred:norm_fn, r=Ogeon\n\nChange normalize to use floor and ceil formula\n\nChange normalize function to use floor and ceil based formula without loops. This is faster than using modulo operator and as fast as the existing while loop based solution. No slowdown for large numbers unlike while loop based solution.\n\nCloses #46","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/dae9ecf095521ffc4da624994726b3201baf3492"},{"sha":"b3ed47038fedb0c0b51eddf6fecfe9c7592ba483","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"added test for conversions","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/b3ed47038fedb0c0b51eddf6fecfe9c7592ba483"},{"sha":"8b06a8ab8b5f37a5569921b17b21fe6c582b3cc7","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #48 - sidred:conversion_tests, r=Ogeon\n\nAdd tests for conversions\n\nAdd conversion tests. Test data is from Cie Illuminants data (for Xyz <-> Yxy conversion tests) and colormine.org (more comprehensive conversions).\n\nCloses #44.\n\n### Changes\n- Xyz -> Yxy conversion changed to use x:0 and y:0 as default when Y = 0 from the earlier D65 white point values. Avoids large changes in Yxy for changes in Xyz y value from 0 to 0.0001\n- There are a few different formula's for Xyz <-> Lab conversions, each slightly different. Formulas updated to use the standards.\n- Hsl and Hsv conversions updated to avoid divide by zero issues.\n\n### Notes\n- Conversion tested for an accuracy of 0.05. This is to validate that the values are close enough.\n- ColorMine Linearizes the Rgb values before conversions, so rgb, hsl and hsv conversions are separately tested from xyz, yxy, lab and lch.\n- ColorMine formula for Lch hue seems incorrect. Ex Gray (128,128,128) gives a Lch Hue of 296 when the value is expected to be 0. Also the Lch hue converions are failing only for yxy converions. So ignored the Lch hue comparisons.","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/8b06a8ab8b5f37a5569921b17b21fe6c582b3cc7"},{"sha":"3b952b3e2088ac76b3eec12e4b3152501a0adbcc","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"Implement ApproxEq trait from approx crate, for color equality checks","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/3b952b3e2088ac76b3eec12e4b3152501a0adbcc"},{"sha":"209402e907522dd12d37143e4b0300bfe1237bd3","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #51 - sidred:eq_trait, r=Ogeon\n\nImplement approx eq trait\n\n- Implements approx eq trait for all the colors from the approx crate.\n- Removed the assert_approx_equal macro and replaced all comparisons with the assert_relative_eq macro from the approx crate\n- The equality macros in the integration tests were also replaced with the assert_relative_eq macro\n\nFor hue comparison, the recommendation is use 180 * epsilon as the epsilon and do not compare by ulps. This will cause a loss of precision for numbers close to zero, but for angle differences it is still reasonably small.\n\nCheck https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/ for more information.","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/209402e907522dd12d37143e4b0300bfe1237bd3"},{"sha":"5cee7abbc912b8e9a00a16ef5c08ed76ab31606b","author":{"name":"sid","email":"6b6a52d11aa92bfa23627e9bdb06137acb203bd6@gmail.com"},"message":"Add support for hwb color space","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/5cee7abbc912b8e9a00a16ef5c08ed76ab31606b"},{"sha":"2ee6064303d14575fff7cc727d4ab12c83b0536e","author":{"name":"Homu","email":"d19a5ab8a9949b703fb53ed7faafd416a5b1e0ba@barosl.com"},"message":"Auto merge of #53 - sidred:hwb, r=Ogeon\n\nAdd hwb color\n\nAdded support for HWB color model.\n\nAdded tests, implemented Alpha, ApproxEq, FromColor and IntoColor traits and added to color enum.\n\ncloses #32","distinct":true,"url":"https://api.github.com/repos/paholg/palette/commits/2ee6064303d14575fff7cc727d4ab12c83b0536e"}]}
{"actor":{"display_login":"paholg"}}