I Use This!
Very High Activity

News

Analyzed 1 day ago. based on code collected 1 day ago.
Posted about 6 years ago by Alexandre Prokoudine
During WilberWeek 2017 in Barcelona, the GEGL/GIMP team discussed further development plans. What’s Blocking The 2.10 Release¶ Deprecation of libgimp API. Some functions in libgimp need to be deprecated, and capable replacements need to be ... [More] introduced. We started this shortly before WilberWeek, a lot more work needs to be done. Introduction of the linear workflow. Currently GIMP has a few loose ends with regards to linear pixel data workflow introduced by Michael Natterer and Øyvind Kolås. The Linear switch in the histogram dialog is more of a prototype and needs a better implementation. Both the Curve and the Levels tools have to be adjusted to work on linear data and need a simple way to switch between linear/gamma-corrected modes. And there’s more work to be done here. Rework of the layer modes. Michael and Øyvind introduced significant changes to how layer modes are stored in XCF. We now have legacy modes (from GIMP 2.8 and earlier), gamma-corrected modes and linear modes. We have a prototype UI to switch between these sets, but we need a more solid implementation that we’d be happy to ship in 2.10. And there’s more internal work to do. Icon and UI themes. With dark themes, insensitive menu items are brighter than sensitive menu items. The problem may lie with the GTK+ pixbuf engine. We need to investigate that further. The new symbolic icon theme has design issues and is incomplete. Our current stance is that we may likely revert to color icons and a light theme as a default one (though we will still release symbolic icons and dark themes as alternatives settable in Preferences), unless dedicated designers step up to complete themes and icons. Color management. While most of GIMP is now color-managed, the big missing bit is complete implementation of color management for GEGL-based filters. Currently it’s slow and clutters the UI. We need to fix that. Warp Transform tool. The tool works well enough for small images, but lags on larger ones. We need to make it faster. The usual bugfix routine. Currently, we have ca. 60 bug reports with the 2.10 milestone. Some of them are not essential and can be safely reassigned to the next milestone, but some definitey need our attention. GTK+3 Port May Prove to Be A Bigger Change Than Expected¶ We have barely touched the ‘gtk3-port’ branch since 2012, while most of GIMP’s source code is actually related to UI. The GTK+3 port compiles and appears to work at least for some users. However we need to sit down and do a complete code audit to figure out, how much work needs to be done to finish the port. We can’t provide any completion estimations at this time. Depending on how much time this takes, we may end up switching to GTK+4 (we do like some aspects of the GTK+ Scene Graph Kit). This will be decided upon in due time. Relaxing The No-New-Features Policy¶ We pride ourselves at releasing software that is very stable, although not state-of-the-art fast. This is because for stable releases, we have a policy of not introducing new features to keep the releases as bug-free as possible. Yet this policy proved a blocker for 2.10 since we have too many incomplete features, started by contributors, promising, yet not in release-shape. We decided that these features should be disabled in 2.10, but can be added later in the stable branch, if they reach the stable state. This way, we don’t block exciting new features arrival for years, while still being able to ship regular releases. This would make our blocker list much smaller, and we could work in smaller steps. Therefore if the GTK+3 port proves to be too long of a journey, we will start adding new features to 2.10 or launch a 2.11.x/2.12 series. This is too early to talk about it, but we think we need to be transparent about it. How You Can Contribute¶ One of the reasons development of GIMP isn’t moving as fast as we’d like to is that we are stuck with completing v2.10, and we have a mostly featureless v3.0 ahead of us. We realize that it doesn’t motivate new developers to join and work on new features, but there is no easy solution. 2.10 has to be released, and the GTK+3 port has to be done. However we see some ways to help contributors making GIMP better without waiting for the opening of the 3.1/3.2 series. One of the most common questions we hear is how to find bugs that are easy to fix to get started with hacking on GIMP. To amend that, we are tagging such bug reports as ‘newcomers‘, following recommendations of the GNOME Newcomers Initiative. You are welcome to come on IRC to discuss patches directly with the GIMP team. Jehan is also available for questions as the mentor for newcomers, if you feel lost. If you do not write code, we shall soon be releasing Flatpak builds of GIMP, so you can help testing and providing feedback. This is currently in works by Jehan Pagès. We shall post a complete report on WilberWeek 2017 once the event is over. [Less]
Posted about 6 years ago by Jehan
GIMP is Free Software, but even before this, it is people: the ones who create it, the ones who create with it… We don’t have accurate statistics and we take pride on not gathering your data. Yet we know (through other websites that have logged ... [More] partial statistics over the years) that this is a widely used piece of software, by millions of people around the world. So wouldn’t it be neat to meet some of the individuals who make this project come alive? Some people think there’s a huge company behind GIMP. This is not the case. GIMP has always been developed by a handful of random people scattered around the world. Most of them are volunteers and none of them work on it full-time. As an insider myself, I’ve wanted to launch a series of interviews with the many awesome people I’ve met since I started contributing. So who better to start with than our own benevolent dictator, GIMP maintainer, and the biggest code contributor: Michael Natterer, aka “mitch”. This interview was held on Friday, February 3, 2017 at around 3AM in front of a fireplace and after a day of hacking at Wilber Week. With us were several team members, including Michael Schumacher (schumaml (S)) and Øyvind Kolås (pippin (P)), who also asked questions. Mitch. The man. The myth. The legend. The reason your commit probably got reverted. Jehan: Hello Mitch! In a few words, what’s the close future of GIMP? Mitch: In 2.10, there is the GEGL port. Then the GTK+3 port immediately after, which will go as fast as possible. We don’t plan many features during the GTK+3 port. J: What are your preferred features of 2.10? M: High bit depth, on-canvas filter previews… I don’t actually remember the features of 2.8 [to compare] because I never use it. J: You use 2.10 instead? M: Yes. J: Do you use GIMP often? M: Mostly for testing what I implement, and also for making postcards I sell in my family business. That’s the only thing I use it for. A maintainer¶ J: How did you start hacking GIMP? M: There was this code that saved the user-assigned keyboard shortcuts for menu actions. The code had an escaping bug where you couldn’t have a hyphen as an accelerator. So I wrote code for escaping the string. That was my first GIMP patch in 1997 or 1998. J: How did you become the maintainer? M: I killed the previous maintainer. He is now in my cave in boxes. Schumaml: Have you ever met the original authors (Spencer Kimball and Peter Mattis)? M: No. Has anyone? S: Have they ever contacted you? M: Yes, they sent me a few plugins which I pushed. Neon, photocopy and cartoon. It was around 10 years after they left the project, one of them comes to me and says “Hey Mitch, I coded 3 plugins, here they are”. Everything looked perfect so I just pushed them as-is, and they still exist. These days, they’ve been reimplemented in GEGL, but the new versions give different results, so the old plugins are still in the menu. J: Why do you continue working on GIMP? M: That’s a good question. (laughs) I don’t know. You guys, perhaps? It can be really annoying sometimes. Why do you guys continue? J: Me? It’s fun. M: It’s fun yes but sometimes it’s not fun and you do it anyway. GIMPers at Montserrat. J: Where do you see GIMP 20 years from now? M: It will probably end up in a pile of bits rotting in some corner. I may have been thinking the same thing twenty years ago, though, so you never know. A hacker¶ J: What do you think of Free Software? M: It’s the way to go, but you need to use the software which is available for a task, so for some tasks you have no choice but to use something that’s not exactly free. For example: [pointing to nomis trying to make a label printer work on a GNU/Linux distribution] if you were using the closed-source driver for that, it would work. *: (laughs) J: What’s your operating system, distribution, desktop…? M: Debian Unstable, GNOME 3. J: You often complain about all these though. M: Because it’s all shit. Just because you have the least shitty [software] doesn’t mean it’s not all shit. Like autotools. They are shit, but it’s the best shit we have. There is no software that isn’t shit, except perhaps the most simple of software which does one task. J: What’s your development environment or text editor of choice? M: Terminal & emacs. J: How do you like to hack? M: It depends. Sometimes I need silence and sometimes a crowded room. J: You are your own boss in a shop. But we see commits from you all the time. Are you hacking in your bookstore when you get free time and don’t have to take care of your employees or customers? M: Sometimes, but very rarely. I’m mostly hacking in the evenings, or I commit something during the daytime that I worked on the night before until 2AM. If I think “I better go to sleep before I push this”, then I’ll wait until the next day when I’m awake to check it once more before I do. But I don’t have time to do 5-hour long patches during working hours. J: You don’t sleep? M: I don’t really sleep, no. S: What channels do you use to communicate on behalf or in the project? M: IRC, and IRC. pippin: What was the first computer you programmed? M: It was a Schneider CPC, a variation of the Amstrad. At 15 or 16? S: How did you write your first hello world? M: In BASIC of course. My programming languages were BASIC, Assembly, Pascal, Modula-2, C, in that weird order. :) Plus some others at university nobody cares about. :) J: Do you code under the influence? M: Always! That’s the only way to code. Obligatory XKCD, by Randall Munroe (Creative Commons By-NC 2.5). GIMP: present¶ J: So all software is shit, but in the list of shitty software, is GIMP not so bad? M: I hope so, but of course it’s shitty. We’re just a handful of volunteers doing what companies with hundreds of (paid) people do. J: But sometimes we do things not so bad, right? M: Yes, but there is nobody to make sure of it. It’s not often that someone spends the time and effort to make a plugin perfect. Sometimes it happens, but usually it gets dumped on us and that’s it. Ten years later, we look at the code again and say “oh my god, this is complete garbage”. Very rarely do people maintain their code long term and we cannot seriously expect that to happen with everyone being a volunteer here. S: Is there something you’d like to do much more in the project, apart from coding? M: In the project? No, coding is fun. I’m happy that I don’t have to do that much administrative work. S: When will 2.10 be released? M: Oh go away! The answer is “go away!”. Read my lips: “go away”. When it’s ready. S: Do you expect it to be this year? M: Yes of course. J: So we have a promise! *: (laughs) GIMP: future¶ S: There was this thing that the UI should use Python and the core should use C. M: Python for the user interface. Horrible! Why? S: This is something we had discussed. M: Yes but in the past people wanted to use JavaScript. The year before they wanted to use Java, the year before they wanted to use this, and the year after they want to use that. Now they’re all gone. Everyone who ever said “I want to use this or that”, and “It’s all shit, let’s use JavaScript”, none of them are still in the project, so… S: So you don’t see any big changes regarding GIMP in the near future? M: In the near future definitely not because we need to get some releases out. Unless, of course, there is a well-done patch that doesn’t need weeks of discussion and back-and-forth negotiations on how things should be done. About using other languages: why not? There is Rust. There is maybe simpler stuff for doing user interfaces, but making such decisions for a codebase the size of GIMP is not something we can decide based on “the latest hot stuff”. I mean, look at this javascript mess. Is that really better? Just because it’s easier? Easier just means that more clueless people can write code, and they are clueless enough already. So making it easier doesn’t make it better. Arrogant but true. S: Anything else you want to change? M: Yes a lot of stuff as long as I don’t have to do all the changes, because I really have enough things to do already (laughs). You can be the maintainer of whatever subpart, please. Please. Take away the work from me. All contributors need to realize that if they do something really well, they will be in charge of that part. J: That’s a very good point. M: If you do it right, then you’ll be in charge of the part you are doing right. It always works like that. S: They don’t need a blessing from you, right? M: I don’t do blessings. (laughs) J: GTK+ comes from GIMP. What do you think of GTK+ now? M: They lost their minds, but they are also doing really good work. I don’t really understand some of their decisions. On the other hand, look at the mails we get. People say exactly the same about GIMP: “Have the GIMP devs lost their minds?!?”. I was involved with GTK+ for a long time and people thought that I had lost my mind, which was (and is) probably true. Bottom line is that all is fine between GTK+ and GIMP, I just reserve the right to complain for myself. S: So we will release GIMP 3 with GTK+3 or 4? M: They just branched for GTK+ 4.x, so that’s not going to happen overnight. P: It won’t hurt to suddenly have GIMP 4 instead of 3. M: No it wouldn’t. If they are done in a few weeks, we’d go for GIMP 4 right away. So why not. That would be cool. (laughs) Or GIMP 5! J: GIMP 10? M: GIMP X! Various rants¶ S: If you happen to be in a conversation with people talking about GIMP, but they don’t know that you are involved, do you come out as the GIMP principal developer? M: Only if they start talking utter bullshit, or if things simply need clarification. It has happened, of course. A guy wanted to convert me to GIMP once and I had to tell him: yeah you don’t need to. It was in a non-hacker situation. J: Who is Wilber? M: Nobody knows. Wilber is a GIMP. S: What special device would you like to see GIMP on? M: This cool Microsoft thing (Surface Studio PC) where they have this hyped video online, and it looks super slick with touch and everything. It’s an ad like Apple used to do in the past and now Microsoft does it, which is a bit weird. The official Microsoft YouTube video makes you want to have one of these things. S: What advice you would like to give to someone who would want to contribute? What to do and what not to do? M: Listen to advice and be persistent. Don’t give up because somebody says “this patch isn’t quite right”, most of the time it won’t be. My first commit to GIMP was reverted immediately. S: I think you also reverted my first. M: Yes, that’s kind of a tradition. Everybody fucks up on their first commit and it gets reverted. That’s a good standard. S: So do not be afraid of errors? M: Yes exactly. Unless they jeopardize the fate of humanity or something. That’s unlikely. *: Thanks for the interview. M: You are welcome! Images in this post are courtesy of antenne and used by permission (cba). [Less]
Posted about 6 years ago by Jehan
This is the second of a series of interviews of various people surrounding GIMP development and community. See also the interview of Mitch, GIMP maintainer GIMP is made not only by hard-core developers but also through the hard work of many less ... [More] technically-inclined contributors. Michael Schumacher, aka Schumaml, is a great example of an important core contributor who has been with the project for over 10 years. Mostly known as the project administrator, nowadays he takes care of everything but programming: administrative tasks, management, PR, support… Schumaml was recently named the maintainer of the 2.8 branch, the stable version of GIMP which only receives bugfixes, showing that it does not require a developer to manage important roles successfully. This interview was held on Saturday, February 4, 2017, at about 12:27 AM in front of a fireplace and after a day of hacking at Wilber Week. With us were several team members, including Debarshi Ray (Rishi (R)), Øyvind Kolås (pippin (P)) and Simon Budig who also asked questions. Schumaml, GIMP administrator (photo by antenne used by permission (cba)) Jehan: Hello Michael. You are the GIMP administrator, at least that’s what everybody says. Schumaml: That’s what everybody says, yes. J: How would you describe your contribution to the GIMP project? S: I don’t do much coding. It’s just that so many people — from my perspective — do coding on GIMP already and have a better grasp of the source code and how it is made up. So I don’t think I can contribute much in that regard. I try to do administrative stuff like handling the monetary aspect of the project such as telling GNOME that we need money for events like Wilber Week or for LGM reimbursements… I also care about the bug reports we have. I try to have them categorized, have a proper status, make sure that they get replies, and that we don’t leave a bug report unattended for a long time. Also, I have administrative privileges on the GIMP web server, on mailing lists, and… what else. Do I forget anything? That’s about it, yeah. I’ve been called the tie-wearing GIMP office manager and I even got a t-shirt with a printed tie and a “TWOM” label, because I’ve actually been wearing a proper shirt (made to measure) at one GIMP meeting during the Libre Graphics Meeting 2012 in Vienna. Schumaml, the tie-wearing GIMP office manager (photo by houz (cba)). J: How long have you been contributing? S: I think I started somewhere between 2001 and 2004. The first contributions were probably getting GIMP buildable on MSYS, the minimal GNU build system on the Windows platform. Because I was annoyed that there were only GIMP builds for releases and not for every commit in between. J: Was it like nightly builds? S: No it was not like nightly builds. I just wanted to be able to have a current build for the MS Windows platform and also made on the MS Windows platform, so that I could build on my Windows system I was using at the time. Just to be able to follow GIMP development more closely than using a build someone made for a development release. J: So you mostly use GIMP on Windows? S: Back more than 10 years ago, I did use Windows exclusively. So basically, back then I had done the porting of GIMP to the Windows platform. J: Do you use GIMP? S: I use GIMP. Not as much as many other people but I use it to test many things of GIMP itself. I use it to edit photos I make. I don’t publish many of the images because when I’m editing them, I print them or I use them for some documentation work, so it goes to a customer. I even still use it on MS Windows, but now my main platform is Linux. J: What kind of job do you do? S: I’m working for a company that used to be a part of Siemens, which had been carved out by now. We are selling communication systems - in the past, you would have called these telephony systems. Nowadays this stuff is called “Communication Enabled Business Processes”, like everything which has to do with communication: calling someone or texting someone or exchanging chats or whatever. We are providing the software, the service, and the consulting. J: Why do you contribute to GIMP? S: It started due to pure selfishness: being able to have the most current GIMP available to me. Since then, a lot has changed: I believe in Free Software. I believe software should be available for everyone for every purpose. GIMP is a Free Software project. Around the time I got hooked up with GIMP, I also got hooked up with Wikipedia, which follows the same approach towards knowledge. I feel like — yeah well — I’m contributing to something that helps a lot of people all over the world. I think that’s a good thing. GIMP happens to be the the first major project I contributed to, and I like it. It’s also in-line with the topics I specialized in at university: image synthesis, image manipulation. It kind of seemed like a logical extension. Not the Formula One driver. (Photo by Pat David (cba)) Rishi: What do you think of Michael Schumacher? S: (laughs) The formula one driver? R: Yeah. S: First thing, you know about his current condition, like probably still in the coma. I hope that he will get better. He probably won’t make it to his former self but at least to a state allowing him to live in a somewhat decent way. He got famous when I was in the so-called German “Gymnasium” (part of secondary education). It was a bit of an annoyance then - I got the same nickname - “Schumi” - as he had. I didn’t follow his career too closely, but knew about every race he won because I would be congratulated at school. pippin: Have you ever made use of sharing the name? S: No I haven’t. It got me an interview opportunity with a locale radio station because they were calling all people who had the name “Michael Schumacher” and they were asking them “How hard does this affect your personal life? Has it ever affected you?“. Once, I almost had an appointment canceled because someone thought I was mocking them, but that was the only incident ever. I’ve never used it. I’ve never abused it. Nowadays, after the end of his professional racing career, it basically didn’t matter anymore. P: Any controversial theme you wish to be asked? S: Like the fact that I would like to kill spammers? (Maintain several mailing lists, one forum, be a recipient for “can we haz ads on gimp.org, plz?“, and you’ll know what I mean) Simon: Not very controversial. J: What do you want to see in GIMP? S: Feature-wise, I’m quite OK with what GIMP is right now. I have to admit that some of the current stuff in the GIMP development version is still above my head - for example, I have no real concept yet of the difference between compositing and blending. Learning that it was 2 different things was quite useful. I hope that we can get the documentation of GIMP up-to-speed in time. I’m more concerned about the project management. As in: how do we decide what new features go into GIMP, how they get into GIMP, and what GIMP development will look like. Particularly post-2.10. You can see it yourself: Right now, our release cycles are much too long. Even the fact that we have actual release cycles is probably bad. If you have a look at services like Twitter or similar, they are constantly releasing. They just push new features out to the people and there is a constant review “this is working, this is not working“. With our long release cycles, users get surprised by “Oh this does not work as it used to. Why have they changed it?“. The project is still a bit old-fashioned in regard to releases. We are trailing current development models. “Development models” is the term I use because I’m not sure how to refer to this. I’m intrigued by the idea of having stable branches with continuously added new features, but I’m not quite sure if I want 2.10 to be constantly evolving. I would prefer to have 2.12. That’s details. J: How do you see GIMP in 20 years? S: First thing: in 20 years, I’ll be 60 (laughs). So I’m not even sure how I see myself at that point. I very much would like to still be part of the project in 20 years. I would still like to be able to see it as an image manipulation program. One of the major Free Software ones. I have no idea at all what it will look like (laughs) because there is so much that can change. Especially in the user interaction. How people interact with software might be the defining factor for how applications will look in 20 years. J: What’s the feature you are really waiting for? S: The feature I’m really waiting for… It’s not a feature of painting or image manipulation. It’s about organization. This thing we want to do, Plug-in or Resource Registry 2.0. Properly built and really managed. The thing we talked so much about, have so many great ideas, but always seem to lack the time to do. This is the feature I would like to see. J: Do you contribute under influence? S: Yeah, have a look at the 2.8.20 NEWS file. At the typos, which I totally didn’t notice. So now I prefer to not contribute under influence. J: Indeed you are now the maintainer of the 2.8 branch, or at least the releaser. If not mistaken, you took care of 2.8.18 and 2.8.20 releases. What can you say about this? S: I guess I should start at why I am doing more 2.8 releases. As I explained before, I’m not interested in coding that much but more engaged in user support and maintenance. Approximately one month before the release of 2.8.18, we had received a report about a security issue in the XCF loading code. It was fixed quickly, for both the development and 2.8 branches, but there was no plan to do a 2.8 release. We have instructions for this, and mitch replied “Just do it!” when I asked about it. It still felt like flying blind. Had I done the version changes - to 2.8.18, and afterwards advancing to 2.8.19 - correctly? Was the tarball made correctly? Would it build on any other system than mine? It did, but I had still missed two action: the release tag is supposed to be signed (i.e. git tag -s) and the GNOME translations teams should be notified about planned releases with a string freeze be put in place until the release to make it easy for them to complete translations. 2.8.20 was much better prepared and even had an extra long string freeze. I had planned to do it in October 2016, but had to delay it to February 2017, during Wilber Week. Releasing is definitely something you want to do right, and this means taking a moment of uninterrupted time to do it. My approach towards bug handling has changed a bit, too. I pay much more attention to bugs with attached patches, and try to apply and test those (we really neglected to do this) in order to get them into a stable release. J: This was a good interview. S: Thank you for doing it. [Less]
Posted about 6 years ago by Alexandre Prokoudine
After more than a year of hard work we are excited to release GIMP 2.9.6 featuring many improvements, some new features, translation updates for 23 languages, and 204 bug fixes. As usual, for a complete list of changes please see NEWS. Here we’d like ... [More] to focus on the most important changes. Performance¶ GIMP now has support for experimental multi-threading in GEGL and will try to use as many cores as are available on your computer. We know GIMP can explode when using more than one core, but we keep it that way so that we get as many bug reports as possible for this officially unstable development version. This is because we really, really want to ship GIMP 2.10 with usable parallel processing. On the other hand, you can always set the amount of cores to 1 if you couldn’t be bothered to report bugs. For that, please tweak the amount of threads on the System Resources page of the Preferences dialog. GUI, Usability, and Configurability¶ Benoit Touchette improved mask creation workflow for users who use a ton of masks in their projects. Now GIMP remembers the last type of mask initialization, and you can use key modifiers + mouse click on layer previews to create, apply, or remove masks. There’s a new button in the Layers dockable dialog for that as well. To make that feature possible, Michael Natterer introduced saving of last dialogs’ settings across sessions and made these defaults configurable via the new Interface / Dialog Defaults page in the Preferences dialog. Additionally, the Preferences dialog got a vertical scrollbar where applicable to keep its height more sensible, and settings on individual pages of the dialog can be reset separately now. The Quit dialog got a few updates: automatically exiting when all the images in the list have been saved, and a Save As button for every opened image (clicking an image in the list will raise it easy checks). Yet another new feature is an option (on the screenshot above) to choose fill color or pattern for empty spaces after resizing the canvas. Better Hi-DPI Support¶ While most changes for better Hi-DPI displays support are planned for v3.0, when GIMP is expected to be based on either GTK+3 or GTK+4, we were able to remove at least some of the friction by introducing icon sizes at different resolutions and a switch for icon sizes on the Icon Theme page of the Preferences dialog. On-canvas Interaction Changes¶ Michael Natterer did a huge under-the-hood work that is likely to affect user interaction with GIMP bigly. Simply put, he moved a lot of on-canvas code from tools like Rectangle Select, Measure and Path into reusable code. The effect of that is multifold: New tools can reuse on-canvas elements of other tools (adding shape drawing tools should be easier now, although we are not planning that for 2.10, unless someone sends a clean patch). GEGL-based filters can be interacted with directly on the canvas (Spiral and Supernova so far as test case). So far one still needs to write C code to make a GEGL-based filter use on-canvas interaction. We expect to spend some time figuring out a way to simplify this, possibly using the GUM language (see below). Layers, Linear and Perceptual Workflows¶ Since we want to make workflows in linear color spaces more prominent in GIMP, it was time to update the blend modes code. You can now switch between two sets of layer modes: legacy (perceptual) and default (linear). The user interface for switching was a quick design, we’d like to come up with something better, so we are interested in your input. Moreover, we made both compositing of layers and blending color space configurable, should you have the need to use that for advanced image manipulation. We also added a new Colors -> Linear Invert command to provide radiometrically correct color inversion. And the histogram dialog now features a toggle between gamma and linear modes—again, it’s a design we’d like to improve. Thanks to Øyvind Kolås and his Patreon supporters, GIMP now also has a simple ‘blendfun’ framework that greatly simplifies implementing new color modes. Ell made use of that by adding Linear Burn, Vivid Light, Linear Light, Pin Light, Hard Mix, Exclusion, Merge, Split, and Luminance (RGB) blending modes (most of them now also supported in the PSD plug-in). Another prominent change is the introduction of the Pass Through mode for layer groups. When this mode is used instead of any other one, GIMP mixes layers inside that group directly to the layers below, skipping creation of the group projection. The feature was implemented by Ell. The screenshot below features a user-submitted PSD file that has TEXTURES layer group in the Pass Through mode, as opened in GIMP 2.9.4 (left) and GIMP 2.9.6 (right). Newly added color tags simplify managing large projects with a lot of layers and layer groups. The screenshot below is a real-life PSD file opened in GIMP 2.9.6. To make more use of that feature, we need someone to step up and implement multiple layers selection. For an initial research, see this wiki page. For full access to all the new features, we updated the Layer Attributes dialog to provide the single UI for setting layer’s name, blending mode, opacity, and offset, toggling visibility, link status, various locks, color tags. CIE LCH and CIE LAB¶ Under the influence of Elle Stone (and with her code contributions), CIE LCH and CIE LAB color spaces are finding more use in GIMP now. Color dialogs now have an LCH color selector that, in due time, will most likely replace outdated HSV selector for reasons outlined by Elle in this article. The LCH selector also supports gamut checking. A new Hue-Chroma filter in the Colors menu works much like Hue-Saturation, but operates in CIE LCH color space. Moreover, the Fuzzy Select and the Bucket Fill tool now can select colors by CIE L, C, and H. Finally, both the Color Picker and the Sample Points dialog now display pixel values in CIE LAB and CIE LCH. Tools¶ New Handle Transform tool contributed by Johannes Matschke in 2015 has been finally cleaned up by Michael Natterer and available by default. It’s a little tricky to get used to, but we hear reports that once you get the hang of it, you love it. Thanks to Ell, the Warp Transform tool is now a lot faster, partially thanks to a switch that toggles high-quality preview that isn’t always necessary. All transformation tools don’t display grid by default anymore, and during an interactive transformation the original layer gets hidden now. The latter greatly simplifies transforming upper layer in relation to a lower layer. Before that, the original layer used to block the view. Free Select tool now waits for Enter being pressed to confirm selection, which enables you to tweak positions of polygonal selection. Painting¶ An important new feature that is somewhat easy to overlook is being able to paint on transparent layers with modes other than normal. Thanks to shark0r, the Smudge tool now has a Flow control that allows mixing in both constant and gradient color while smudging. There’s another new option to never decrease alpha of existing pixels while smudging in the tools options now as well. For more on this, please read this forum thread. Canvas rotation has been improved: it got snappier in certain cases, and rulers, scrollbars, as well as the Navigation dialog follow the rotation now. Alexia introduced some improvements to the brush engine. For bitmap brushes, GIMP now caches hardness and disables dynamic change of hardness to improve painting performance. Bitmap brushes also don’t get clipped anymore, when hardness is less than 100. Plus there’s a specialized convolution algorithm for the hardness blur to make it faster now. Processing Raw Images¶ Since 2.9.4, GIMP is capable of opening raw (digital camera) images via darktable, and the plan was to open it up to more plug-in developers, because nothing sparks a thoughtful, civil conversation like a raw processor of choice. This is now possible: 2.9.6 ships with a RawTherapee plug-in (v5.2 or newer should be installed) and a new file-raw-placeholder plug-in that registers itself for loading all raw formats, but does nothing except returning an error message pointing to darktable and RawTherapee, if neither is installed. Moreover, you can now choose preferred raw plug-in, when multiple options are available on your computer. For this, open the Preferences dialog and go to the Image Import page, then click on the plug-in you prefer and click OK to confirm your choice. You will need to restart GIMP. Better PSD Support¶ The PSD plug-in now supports a wider range of blending modes for layers, at both importing and exporting: Linear Burn, Linear Light, Vivid Light, Pin Light, and Hard Mix blending modes. It also finally supports exporting layer groups and reads/writes the Pass Through mode in those. Additionally, GIMP now imports and exports color tags from/to PSD files. WebP support¶ We already shipped GIMP 2.9.2 with initial support for opening and exporting WebP files, however the plug-in was missing a number of essential features. Last year, we replaced it with a pre-existing plug-in initially written by Nathan Osman back in 2011 and maintained through the years. We now ship it by default as part of GIMP. The new plug-in received additional contributions from Benoit Touchette and Pascal Massimino and supports both ICC profiles, metadata loading/exporting, and animation. Metadata Viewing and Editing¶ Thanks to Benoit Touchette, GIMP now ships a new metadata viewer that uses Exiv2 to display Exif, XMP, IPTC, and DICOM metadata (the latter is displayed on the XMP tab). Moreover, Benoit implemented a much anticipated metadata editor that supports adding/editing writing XMP, IPTC, DICOM, and GPS/Exif metadata, as well as loading/exporting metadata from/to XMP files. Filters¶ Thanks to contributions from Thomas Manni and Ell, GIMP now has 9 more GEGL-based filters, including much anticipated Wavelet Decompose, as well as an Extract Component plug-in that simplifies fetching e.g. CMYK’s K channel or LAB’s L* channel from an image. Another new feature that we expect to develop further is GUM—a simple metadata language that helps automatically building more sensible UI for GEGL filters. Here’s a quick video: Resources and Presets¶ To make GIMP more useful by default, we now ship it with some basic presets for the Crop tool: 2×3, 3×4, 16:10, 16:9, and Square. Documents templates have been updated and now feature popular, contemporary presets for both print and digital media. What’s Next¶ We still have a bunch of bugs to fix before we can release 2.10 and we appreciate all the huge and tiny useful patches contributors send us to that effect. GIMP 2.9.8 is expected to ship with more bug fixes and an updated Blend (Gradient Fill) tool that works completely on canvas, including adding and removing color stops and assigning colors. [Less]
Posted about 6 years ago by Pat David
This year is starting off great with not one, but two libre graphics oriented events (one in Europe and the other in North America - for even better coverage)! Now you can double your opportunities to visit like-minded Free Software graphic artists ... [More] , photographers, and developers. Libre Graphics Meeting 2018 in Seville¶ Come and join us for the 13th annual Libre Graphics Meeting (LGM) being held April 26–30 in Seville, Spain! LGM is a wonderful opportunity for artists, developers, and contributors to meet face-to-face and share/learn from each other. Several GIMP developers will be holding an annual team meeting there (as usual), so come and say hello! The main programme this year is focusing on: Technical presentations and workshops for developers. Showcases of excellent work made using libre graphics tools. New tools and workflows for graphics and code. Reflections on the activities of existing Free/Libre and Open Source communities. Reflections and practical sessions on promoting the philosophy and use of Libre Graphics tools. Libre Graphics at Southern California Linux Expo¶ For the first time this year there will be a dedicated Libre Graphics track at the Southern California Linux Expo (SCaLE) 16x! SCaLE 16x will be held March 8–11 in Pasadena, California (USA) at the Pasadena Convention Center, and the Libre Graphics track in particular will be on Friday, March 9th. Pat David will be presenting on the state of GIMP (looking forward) and including GIMP as part of a photography workflow. There is a Call for Participation out for those that would be interested in talking more about their art or involvement in the Free Software graphics world. If you’d like to participate submit a proposal to [email protected]! [Less]
Posted about 6 years ago by Jehan Pagès
It’s barely been a month since we released GIMP 2.10.0, and the first bugfix version 2.10.2 is already there! Its main purpose is fixing the various bugs and issues which were to be expected after the 2.10.0 release. Therefore, 44 bugs have been ... [More] fixed in less than a month! We have also been relaxing the policy for new features and this is the first time we will be applying this policy with features in a stable micro release! How cool is that? For a complete list of changes please see NEWS. New features¶ Added support for HEIF image format¶ This release brings HEIF image support, both for loading and export! Thanks to Dirk Farin for the HEIF plug-in. New filters¶ Two new filters have been added, based off GEGL operations: Spherize filter to wrap an image around a spherical cap, based on the gegl:spherize operation. Spherize filter in GIMP 2.10.2. Original image CC-BY-SA by Aryeom Han. Recursive Transform filter to create a Droste effect, based on the gegl:recursive-transform operation. Recursive transform filter in GIMP 2.10.2, with a custom on-canvas interface. Original image CC-BY by Philipp Haegi. Noteworthy improvements¶ Better single-window screenshots on Windows¶ While the screenshot plug-in was already better in GIMP 2.10.0, we had a few issues with single-window screenshots on Windows when the target window was hidden behind other windows, partly off-screen, or when display scaling was activated. All these issues have been fixed by our new contributor Gil Eliyahu. Histogram computation improved¶ GIMP now calculates histograms in separate threads which eliminates some UI freezes. This has been implemented with some new internal APIs which may be reused later for other cases. Working with third-parties¶ Packagers: set your bug tracker address¶ As you know, we now have a debug dialog which may pop-up when crashes occur with debug information. This dialog opens our bug tracker in a browser. We realized that we get a lot of bugs from third-party builds, and a significant part of the bugs are package-specific. In order to relieve that burden a bit (because we are a very small team), we would appreciate if packagers could make a first triaging of bugs, reporting to us what looks like actual GIMP bugs, and taking care of their own packaging issues themselves. This is why our configure script now has the --with-bug-report-url option, allowing you to set your own bug tracker web URL. This way, when people click the “Open Bug Tracker” button it will open the package bug tracker instead. XCF-reader developers: format is documented¶ Since 2006, our work format, XCF, is documented thanks to the initial contribution of Henning Makholm. We have recently updated this document to integrate all the changes to the format since the GIMP 2.10.0 release. Any third-party applications wishing to read XCF files can refer to this updated documentation. The git log view may actually be more interesting since you can more easily spot the changes and new features which have been documented recently. Keep in mind that XCF is not meant to be an interchange format (unlike for instance OpenRaster) and this document is not a “specification”. The XCF reference document is the code itself. Nevertheless we are happy to help third-party applications, and if you spot any error or issues within this document feel free to open a bug report so we can fix it. GIMP 3 is already on its way…¶ While GIMP 2.10.0 was still hot and barely released, our developers started working on GIMP 3. One of the main tasks is cleaning the code from the many deprecated pieces of code or data as well as from code made useless by the switch to GTK+ 3.x. The deletion is really going full-speed with more than 200 commits made in less than a month on the gtk3-port git branch and with 5 times more lines deleted than inserted in the last few weeks. Delete delete delete… exterminate! Michael Natterer and Jehan portrayed by Aryeom. It’s actually misses Simon Budig, a long time contributor who made a big comeback on the GTK+3 port with dozens of commits! [Less]
Posted over 6 years ago by Wilber
We haven’t had any updates for a few months but the wait is hopefully worth it! We’ve got many nice new features, optimizations, and stability fixes in this release! Version 2.10.10 highlights include: Line art detection in the Bucket Fill tool for ... [More] comic artists Various usability improvements in transformation tools Sample Merged option added to the Heal tool and fixed in the Clone tool Parametric brushes now have 32-bit per channel precision Easier brush and pattern creation workflow On-canvas layer selection Faster saving/exporting and layer groups rendering Initial DDS support Many improvements in GEGL, the image processing engine Notable improvements¶ Improved tools¶ Bucket Fill tool¶ The Bucket Fill tool got a bit of a revamp making it much easier to use. It also got a new “Fill by line art detection” mode (a.k.a. “Smart Colorization”)! “Colors are hard”, by Aryeom, CC BY-SA 4.0 Quick Color picking¶ Similarly to painting tools, it is now possible to pick surrounding colors on canvas with the Ctrl modifier, without having to switch to Color Picker tool. Click and drag to fill¶ In “Fill similar colors” and “Fill by line art detection” modes, you can now keep the mouse button down to continue filling more areas. Fill by line art detection¶ Finally, the highlight change on the Bucket Fill tool is a new algorithm for painters, allowing to fill areas surrounded by “line arts”, while trying to leave no unfilled pixels near the lines, and closing potential zones. This feature, originated from the G’MIC plug-in as a research paper, was contributed by Jehan as work for the IMAGE team of the GREYC laboratory (French Research Lab, affiliated to the CNRS, the University of Caen, and the engineering school ENSICAEN), with important interface input from Aryeom from ZeMarmot project. Smart colorization in GIMP See also this technical blog post. Transformation tools¶ Ell improved various shortcomings on several transformation tools: The Scale tool now scales from the center, even when using numeric input. The Unified Transform tool defaults to preserving the aspect ratio when scaling up or down. New “Constrain handles” and “Around center” options to the Perspective Transform tool’s GUI, which are similar to the corresponding options of the Unified Transform tool. New “Readjust” button in several transformation tools to readjust transform handles based on the current zoom level. Forward and backward transform directions can be linked, which allows moving the handles without affecting the transformation, letting you manually readjust their position. Heal and Clone tool¶ Michael Natterer improved the Heal tool by adding the “Sample merged” option which allows painting changes on a separate layer to keep the original data intact. The Clone tool already had the “Sample merged” option. It has been updated to also work similarly. These changes are important for manipulating images without modifying original pixels in a non-destructive fashion. Better brushes¶ 32-bit parametric brushes¶ Michael Natterer and Ell worked a lot on a better brush support in GIMP. A major improvement for painters was making parametric brushes finally 32-bit float, following the high-bit depth move for color processing. The main advantage will be to avoid posterization on large brushes, especially with darker colors. It is to be noted that raster brushes are still 8-bit. Promoting them to 32-bit float is also a planned future work. Moreover, plug-ins only have access to 8-bit versions of high-precision brushes and patterns. A new API, not available yet, will be required to handle high-precision data. Easy brush and pattern creation from clipboard¶ It was already possible to create new brushes and patterns on-the-fly from the clipboard (i.e. image copied, typically with a Ctrl-c shortcut). This was extremely practical, yet only allowed temporary brushes and patterns. These temporary brushes and patterns can now be duplicated as any other data, therefore allowing to promote them to stored data for further reuse. Though simple looking, this change is the result of an important code migration into the core of GIMP (instead of being plug-in code), performed by Michael Natterer, which may have further happy consequences in a near future! Open as Image¶ The “Brushes” dock now provides an “Open brush as image” button to quickly open a brush file, allowing easier brush edits. On-canvas layer selection¶ Anyone working with a lot of layers has sometimes experienced the frustration of not finding a layer in the list, even though you see its pixels in front of your eyes. Jehan implemented a new generic canvas modifier Alt + middle click allowing layers to be picked by clicking on pixels. The available layers will be looped through (starting from the upper one) while the Alt key is held and the picked layer name will be temporarily displayed in the status bar. The interaction choices heavily benefited from input by Aryeom, from the ZeMarmot project. Layer picking on canvas with Alt + middle click Faster and safer GIMP¶ As usual, many bugs were fixed and a lot of optimizations were made to existing part of the code. Of them these 2 improvements are particularly noteworthy: Saving and exporting safer¶ Various parts of the file-writing code were made more robust by not overwriting the file when an error occured. In particular XCF saving and exporting to various image formats should be safer now. Layer groups rendered faster¶ Layer groups are now rendered in bigger chunks rather than tile-by-tile (this used to pretty much eliminate multithreading for groups), which improves the rendering speed. Improved macOS builds¶ HiDPI/Retina support was improved in the macOS/OSX build, fixing issues with blurry icons. Moreover the macOS package is finally signed, thus making the installation process on this platform much less painful now! And more!¶ In total, since GIMP 2.10.8, 775 commits were contributed (average of 5 commits a day) to the GIMP 2.10 branch (and more to other development branches). This means a lot of bugs were fixed (41 bug reports were closed during this development span), performance were improved, and your work is made safer… And as we should also count babl (66 commits for babl 0.1.62) and GEGL (404 commits for GEGL 0.4.14), you can bet that this release is again as awesome as ever! Moreover 21 translations were updated. So we also want to thank all the awesome translators who allow GIMP to be available in so many languages around the world. Plug-ins¶ DDS support¶ The third-party DDS plug-in, originally developed by Shawn Kirst and Arne Reuter, is now part of the GIMP core plug-ins, allowing GIMP to load or export DDS files out of the box. It is to be noted though that we are still looking for an active maintainer for this plug-in if you want to see it improved since we only fixed the minimum to get it up-to-date. If you want to step up, we welcome patches! Rewritten Spyrogimp plug-in¶ Elad Shahar, original author of the Spyrogimp plug-in rewrote it from scratch completely, with more options and an automatic preview (by drawing directly on a temporary layer, not as a GEGL preview). New Spyrogimp plug-in in GIMP The old plug-in is still available, as its API may be used by existing scripts, but is not available in the menus anymore as it is replaced by the new version. Filters¶ Circular, Linear, and Zoom Motion blurs got new on-canvas interactions (simple lines) allowing easier visual tweaking of the blur settings. Around GIMP¶ GEGL and babl¶ This release of GIMP is accompanied by a hefty GEGL 0.4.14 release, featuring a handful of under-the-hood improvements, as well as new user-facing additions. Most excitingly, the standalone gegl tool, which can be used to apply GEGL pipelines directly from the command-line, has seen a massive rework of its integrated GUI by Øyvind Kolås. The new UI doubles as an image viewer and a graph editor, allowing real-time non-destructive image manipulation. The gegl binary features a reworked graphical editor As well as acting as a non-destructive editor proof-of-concept, sporting such snazzy features as touch-oriented interaction and Lua-based per-operation UI, it also provides a testbed for new and existing GEGL features, such as mipmap rendering. The editor can be extended using Lua, allowing for per-operation UI Øyvind Kolås has also been working on more deeply-ingrained CMYK support in both babl, which saw its 0.1.62 release earlier this year, and GEGL. This includes support for CMYK ICC profiles in babl (at this point, through LCMS2), direct CMYK support as part of relevant GEGL functions and core operations, and support for reading/writing CMYK data in TIFF and JPEG files. While not done yet, this work goes towards adding first-class CMYK support to GIMP. Behind the scenes, this release saw various bug fixes and performance improvements, including: refactoring of the parallelization framework swap tile-compression removal of the deprecated iterator API new operations in the workshop improvements to existing operations See the GEGL relase notes for more information. Note for packagers: to build GEGL 0.4.14 on Win32, 2 commits will need cherry-picking: commits 141a7aa7 and b3ff0df0. What’s next¶ As often, we remind that you can donate to the project and personally fund several of the people mentionned in this news. This is a way to give back if you appreciate the work and wish to help GIMP improve more! Work on GIMP codebase is still going strong, not only for the stable GIMP 2.10.x branch, but also on the master branch with GTK+3 port. Hopefully we will soon have some nice things to announce on this less visible side of the development! In the meantime, if you want to meet members of the GIMP team, as every year, several members will be present during the Libre Graphics Meeting 2019 in Saarbruecken, Germany, from May 29 to June 2. We have a few talks planned. Other than this, we will likely hang around, so do not hesitate to catch one of us for a talk! [Less]
Posted over 6 years ago by Wilber
In this post, we are looking back at 2018 and then forward to outline future work on GIMP, GEGL, and babl. Version 2.10 release and point releases¶ In April, we released the much anticipated version 2.10, featuring updated user interface, high bit ... [More] depth support, multi-threading, linear color space workflow, revamped color management, new transformation tools, and many more changes, as outlined in the release notes. Given that the next big update, v3.0, is likely far ahead, we now also allow new features in the stable series (2.10.2, 2.10.4 etc.). Which means, you don’t have to wait years for new features anymore. Instead, we make a new release every 1-2 months, and it usually comes with many bugfixes as well as some new stuff. Nightscape, by Filip Bulovic, CC BY-SA 4.0 Among the new features in 2.10 updates this year: support for HEIF images simple horizon straightening vertical text new filters Development focus¶ So what have we been busy with after releasing 2.10? Refactoring. Most work is happening in the main development branch leading up to version 3.0. GIMP 3.0 will be relying on GTK3, a much newer version of the toolkit. And we want to arrive to working on non-destructive editing with a much leaner code base. This means a lot still needs to change. The majority of changes here was contributed by GIMP maintainer Michael Natterer. Usability. There have been numerous fixes to address various usability issues in GIMP. We eliminated duplicated file type selector in the exporting dialog, added an explanation for why a file might not be entirely readable in older versions of GIMP, and fixed quite a few other things. Compatibility warning Smart colorization. This major new feature greatly simplifies filling inked sketches with color, where areas are not completely closed. It was added by Jehan Pagès, with contributions from Ell, and will be available in GIMP 2.10.10. Smart colorization demo Extension management. ZeMarmot project has started implementing extension management within GIMP, which will allow to search, install, uninstall and update extensions directly within GIMP. An extension is meant to be any data already installable (manually currently) in GIMP, such as plug-ins, icons, brushes, and more. Extensions dialog Performance and async jobs. There are several attack vectors towards subpar performance of GIMP. Ell fixed some of the big issues by introducing async operations like lazy loading of fonts (which effectively fixed the long startup times for GIMP on Windows), and then moved all parallel processing in multiple threads over to GEGL. Both Ell and Øyvind Kolås contributed to improving performance of downscaling with bilinear and bicubic samplers and other aspects of GEGL and babl. Space invasion. GIMP used to have the sRGB color space hardcoded into all processing. This couldn’t work for everyone, and we introduced some changes to support any RGB color spaces in 2.10. Space invasion is the next step towards that goal. The ‘master’ git branch of GIMP now allows taking an image that’s originally in e.g. ProPhotoRGB, processing it in a different color space (e.g. CIE LAB), and the resulted image will be in ProPhotoRGB again, with all color data correctly mapped to the original space / ICC profile. This isn’t yet polished and thus not read for prime-time use. Most of the work was done by Øyvind Kolås and Michael Natterer. CMYK. Øyvind made CMYK a first-class citizen in GEGL, thus laying the foundation for respective changes in GIMP. GEGL now can e.g. open a CMYK JPEG file, composite an RGB PNG file with an alpha channel on top of it, then write a CMYK TIFF file to the output, tagged with a user-submitted CMYK ICC profile. This and other work can be sponsored by you via Patreon. Bugfixing. This is the boring part that is, however, absolutely crucial for making any software usable. Due to the switch to GNOME-hosted Gitlab instance, we cannot give the exact number, but there have been a few hundreds of bugfixes done by many contributors throughout the year. 2019 outlook¶ We expect to be shipping 2.10.x updates throughout 2019, starting with the version 2.10.10 currently expected in January/February. This version will feature faster layer groups rendering, smart colorization with the Bucket Fill tool, and various usability improvements. We are also planning the first unstable release of GIMP that will have version 2.99.2, eventually leading up to version 3.0. The prerequisite for releasing that version will be the completion of the space invasion (see above). ZeMarmot project (which can be supported on Patreon or Tipeee) is also planning to focus a bit more on better canvas interactions, as well as animation support improvements, starting from merging existing work. On the GEGL and babl front, we expect to continue working towards better CMYK support and performance. Where help is wanted¶ There are many ways you can contribute to making GIMP better. Usability. Historically, GIMP has been created by programmers rather than UI designers. Although we don’t have the manpower to implement every single proposal, we do appreciated structured proposals, explaining a problem and suggesting ways to fix it. We also welcome contributions improving the design of symbolic icons which have their usability issues. User manual. Currently, most of the original writing is done by a single person, so the user manual is not yet complete to cover all changes in the version 2.10. You don’t need to know DocBook/XML to contribute (it’s not hard to learn though), we welcome new text submitted in any file format. User interface translations. Out of 81 languages supported in the stable branch of GIMP, only 20 translations into other languages are currently more than 90% complete, and 15 translation are only 10% or less complete. If this is something you would like to work on, please join your local team and start contributing translation updates. Tutorials. There will never be enough tutorials explaining how to use GIMP to accomplish various tasks, especially if we are talking about high-quality results. If you don’t like watching and making video tutorials, you can write text with illustrations. And if you don’t have your own blog, we are open to submissions for the official tutorials section at gimp.org too. Programming. If you are interested in fun things, pretty much all of the Future section of the roadmap can be done for 3.0 and a lot — even for 2.10.x (do talk to us first just in case though). There are even more feature requests in the tracker. And one thing we are particularly interested in for 3.0 is fixing the broken Python support. On top of that, we still need to make public API for text layers, so that the PSD plug-in could be patched to read and write text as text. And our EXR and RGBE plug-ins are currently rather simplistic, so that’s another area of improvement. There are all sorts of other interesting ideas for plug-ins, like UV unwrapping from OBJ files for texturing. And we are still missing a developer with a game design bug to work on the DDS plug-in that currently lives in a dedicated git branch. Donations¶ In August 2018, we received a $100K donation from Handshake.org via GNOME Foundation. So far, we are using this money for long overdue hardware upgrades. Our core developers, Øyvind Kolås and Jehan Pagès, continue running their personal crowdfunding via Patreon, although in case of Jehan the money is actually split two-ways, because his campaign is targeted at funding a short anomation movie made with GIMP (development assists that project, like in Blender Institute’s open movies). Team acknowledgment¶ While we often mention GIMP, GEGL, and babl separately, all work on GEGL and babl directly affects the evolution of GIMP, both in terms of features and performance. Thus, all GEGL and babl contributors are GIMP contributors too. The vast majority of the work in GIMP’s git repository is currently done by Ell, Jehan Pagès, and Michael Natterer, who share a nearly equal percentage of commits and spend more or less the same amount of time hacking on the code. Additional contributions came from Simon Budig, Massimo Valentini, Ono Yoshio, and others. Øyvind Kolås, Ell, and Debarshi Ray are major developers of GEGL. Additional contributions came from Thomas Manni, Félix Piédallu, Simon Budig, and others. Most of the work on babl in 2018 was done by Øyvind Kolås, with contributions from Félix Piédallu and Debarshi Ray. We thank Julien Hardelin for his tireless work on the user manual and all the translators who contribute their updates. We also thank Elle Stone on her insight into all things color management and contributions to making GIMP play better with CIE color spaces. We thank Pat David and Michael Schumacher on both their work on the website and user support on various social channels. We also thank Jernej Simončič and Alex Samorukov for providing Windows and macOS builds and fixing platform-specific bugs. And we can’t thank enough all the translators who have been closely following development of GIMP to make the program perfectly available in their respective languages: Piotr Drąg, Nils Philippsen, Sveinn í Felli, Tim Sabsch, Marco Ciampa, Claude Paroz, Daniel Korostil, Alan Mortensen, Anders Jonsson, Dimitris Spingos, Snehalata B Shirude, Martin Srebotnjak, and others. Happy Holidays, from GIMP and ZeMarmot team, by Aryeom [Less]
Posted over 6 years ago by Wilber
Though the updated GIMP release policy allows cool new features in micro releases, we also take pride on the stability of our software (so that you can edit images feeling that your work is safe). In this spirit, GIMP 2.10.8 is mostly the result of ... [More] dozens of bug fixes and optimizations. Wilber and Co. strip, by Aryeom and Jehan, 2013 Notable improvements¶ In particular, chunk size of image projections are now determined dynamically depending on processing speed, allowing better responsiveness of GIMP on less powerful machines whereas processing would be faster on more powerful ones. Moreover various tools have been added to generate performance logs, which will allow us to optimize GIMP even more in the future. As with most recent optimizations of GIMP, these are the results of Ell’s awesomeness. Thanks Ell! In the meantime, various bugs have been fixed in wavelet-decompose, the new vertical text feature (including text along path), selection tools, and more. On Windows, we also improved RawTherapee detection (for RawTherapee 5.5 and over), working in sync with the developers of this very nice RAW processing software. And many, many more fixes, here and there… The Save dialog also got a bit of retouching as it now shows more prominently the features preventing backward compatibility (in case you wish to send images to someone using an older version of GIMP). Of course, we want to stress that we absolutely recommend to always use the latest version of GIMP. But life is what it is, so we know that sometimes you have no choice. Now it will be easier to make your XCF backward compatible (which means, of course, that some new features must not be used). Save dialog shows compatibility issues when applicable Thanks to Ell, the Gradient tool now supports multi-color hard-edge gradient fills. This feature is available as a new Step gradient-segment blending mode. This creates a hard-edge transition between the two adjacent color stops at the midpoint. Newly added Step blending in gradient fills On the usability end of things, all transform tools now apply changes when you save or export/overwrite an image without pressing Enter first to confirm changes. Ell also fixed the color of selected text which wasn’t very visible when e.g. renaming a layer. CIE xyY support¶ Thanks to Elle Stone, GIMP now features initial support for color readouts in the CIE xyY color space. You can see these values in the Info window of the Color Picker tool and in the Sample Points dock. Most of the related code went into the babl library. Much like CIE LAB, this color space is a derivative of CIE XYZ. The Y channel separates luminance information from chromaticity information in the x and y channels. You might be (unknowingly) familiar with this color space if you ever looked at a horseshoe diagram of an ICC profile. CIE xyY is useful to explore various color-related topics like the Abney effect. See this Pixls.us thread for an example of what people do with this kind of information. Improved GIMP experience on macOS¶ Our new macOS contributor, Alex Samorukov, has been very hard at work improving the macOS/OSX package, debugging and patching both GIMP, GEGL, and the gtk-osx project. Some of the macOS specific bugs he fixed are artifacts while zooming, the windows focus bug in plug-ins, and a non-functional support for some non-Wacom tablets. Jehan, Ell, and Øyvind actively participated in fixing these and other macOS issues. We also thank CircleCI for providing their infrastructure to us free of charge. This helps us automatically building GIMP for macOS. That said, please keep in mind that we have very few developers for macOS and Windows. If you want GIMP to be well supported on your operating system of choice, we do welcome new contributors! Also, see the NEWS file for more information on the new GIMP release, and the commit history for even more details. Around GIMP¶ GEGL and babl¶ The babl library got an important fix that directly affects GIMP users: the color of transparent pixels is now preserved during conversion to premultiplied alpha. This means all transform and deformation operations now maintain color for fully transparent pixels, making unerase and curves manipulation of alpha channel more reliable. On the GEGL side, a new buffer iterator API was added (GIMP code has been ported to this improved interface as well). Additionally, new GEGL_TILE_COPY command was added to backends to make buffer duplication/copies more efficient. Recently, Øyvind Kolås has been working again on multispectral/hyperspectral processing in GEGL, which happens to be the groundwork for CMYK processing. This is therefore the first steps for better CMYK support in GIMP! We hope that anyone who wants to see this happening will support Øyvind on Patreon! GIMP in Université de Cergy-Pontoise¶ Aryeom, well known around here for being the director of ZeMarmot movie, a skilled illustrator, and a contributor to GIMP has given a graphics course with GIMP as a guest teacher for nearly a week at the Université de Cergy-Pontoise in France, mid-October. She taught to two classes: a computer graphics class and a 3D heritage one, focusing on digital illustration for the former and retouching for the latter. Aryeom and her students in University of Cergy-Pontoise This is a good hint that GIMP is getting more recognition as it now gets taught in universities. Students were very happy overall, and we could conclude by quoting one of them at the end of a 3-day course: I didn’t know that GIMP was the Blender for 2D; now this is one more software in my toolbox! We remind that you can also support Aryeom’s work on Patreon, on Tipeee or by others means! Flatpak statistics¶ Although Flathub does not (yet) provide any public statistics for packages, an internal source told us that there have been over 214,000 downloads of GIMP since its existence (October 2017). This is more than 500 downloads a day, and by far the most downloaded application there! Flathub is a new kind of application repository for GNU/Linux, so of course these numbers are not representative of all downloads. In particular, we don’t have statistics for Windows and macOS. Even for Linux, every distribution out there makes its own package of GIMP. So this is a small share, and a nice one at that, of the full usage of GIMP around the globe! GIF is dead? Long live WebP!¶ The GIF format is the only animated image format which is visible in any web browser, making it the de-facto format for basic animation on the web, despite terrible quality (256 colors!), binary transparency (no partial transparency), and not so good compression. Well, this may change! A few days ago, WebP reached support in most major browsers (Mozilla Firefox, Google Chrome, Microsoft Edge, Opera), when a 2-year old feature request for Mozilla Firefox got closed as “FIXED”. This will be available for Firefox 65. Therefore, we surely hope web platforms will take this new format into consideration, and that everyone will stop creating GIF images now that there are actual alternatives in most browsers! And last but not least, we remind everyone that GIMP has already had WebP support since GIMP 2.10.0! A WebP animation (done in GIMP), by Aryeom, featuring ZeMarmot and a penguin. Disclaimer: the GIMP team is neutral towards formats. We are aware of other animated image formats, such as APNG or MNG, and wish them all the best as well! We would also be very happy to support them in GIMP, if contributors show up with working patches. What’s next¶ We’ve been running late with this release, so we haven’t included some of the improvements available in the main development branch of GIMP. And there are even more changes coming! Here is what you can expect in GIMP 2.10.10 when it’s out. ACES RRT display filter that can be used in scene-referred imaging workflows. Technically, it’s a luminance-only approximation of the ACES filmic HDR-to-SDR proofing mapping originally written in The Baking Lab project. Space invasion: essentially you can now take an image that’s originally in e.g. ProPhotoRGB, process it in the CIE LAB color space, and the resulted image will be in ProPhotoRGB again, with all color data correctly mapped to the original space / ICC profile. This is a complicated topic, we’ll talk more about it when it’s time to release 2.10.10. Another new feature we expect to merge to a public branch soon is smart colorization based on the original implementation in the ever-popular GMIC filter. Given quickly approaching winter holidays and all the busy time that comes with it, we can’t 100% guarantee another stable release this year, but we’ll do our best to keep ‘em coming regularly! Conclusion¶ We wish you a lot of fun with GIMP, as it becomes more stable every day! [Less]
Posted over 6 years ago by Wilber
Though the updated GIMP release policy allows cool new features in micro releases, we also take pride on the stability of our software (so that you can edit images feeling that your work is safe). In this spirit, GIMP 2.10.8 is mostly the result of ... [More] dozens of bug fixes and optimizations. Wilber and Co. strip, by Aryeom and Jehan, 2013 Notable improvements¶ In particular, chunk size of image projections are now determined dynamically depending on processing speed, allowing better responsiveness of GIMP on less powerful machines whereas processing would be faster on more powerful ones. Moreover various tools have been added to generate performance logs, which will allow us to optimize GIMP even more in the future. As with most recent optimizations of GIMP, these are the results of Ell’s awesomeness. Thanks Ell! In the meantime, various bugs have been fixed in wavelet-decompose, the new vertical text feature (including text along path), selection tools, and more. On Windows, we also improved RawTherapee detection (for RawTherapee 5.5 and over), working in sync with the developers of this very nice RAW processing software. And many, many more fixes, here and there… The Save dialog also got a bit of retouching as it now shows more prominently the features preventing backward compatibility (in case you wish to send images to someone using an older version of GIMP). Of course, we want to stress that we absolutely recommend to always use the latest version of GIMP. But life is what it is, so we know that sometimes you have no choice. Now it will be easier to make your XCF backward compatible (which means, of course, that some new features must not be used). Save dialog shows compatibility issues when applicable Thanks to Ell, the Gradient tool now supports multi-color hard-edge gradient fills. This feature is available as a new Step gradient-segment blending mode. This creates a hard-edge transition between the two adjacent color stops at the midpoint. Newly added Step blending in gradient fills On the usability end of things, all transform tools now apply changes when you save or export/overwrite an image without pressing Enter first to confirm changes. Ell also fixed the color of selected text which wasn’t very visible when e.g. renaming a layer. CIE xyY support¶ Thanks to Elle Stone, GIMP now features initial support for color readouts in the CIE xyY color space. You can see these values in the Info window of the Color Picker tool and in the Sample Points dock. Most of the related code went into the babl library. Much like CIE LAB, this color space is a derivative of CIE XYZ. The Y channel separates luminance information from chromaticity information in the x and y channels. You might be (unknowingly) familiar with this color space if you ever looked at a horsehoe diagram of an ICC profile. CIE xyY is useful to explore varios color-related topics like the Abney effect. See this Pixls.us thread for an example of what people do with this kind of information. Improved GIMP experience on macOS¶ Our new macOS contributor, Alex Samorukov, has been very hard at work improving the macOS/OSX package, debugging and patching both GIMP, GEGL, and the gtk-osx project. Some of the macOS specific bugs he fixed are artifacts while zooming, the windows focus bug in plug-ins, and a non-functional support for some non-Wacom tablets. Jehan, Ell, and Øyvind actively participated in fixing these and other macOS issues. We also thank CircleCI for providing their infrastructure to us free of charge. This helps us automatically building GIMP for macOS. That said, please keep in mind that we have very few developers for macOS and Windows. If you want GIMP to be well supported on your operating system of choice, we do welcome new contributors! Also, see the NEWS file for more information on the new GIMP release, and the commit history for even more details. Around GIMP¶ GEGL and babl¶ The babl library got an important fix that directly affects GIMP users: the color of transparent pixels is now preserved during conversion to premultiplied alpha. This means all transform and deformation operations now maintain color for fully transparent pixels, making unerase and curves manipulation of alpha channel more reliable. On the GEGL side, a new buffer iterator API was added (GIMP code has been ported to this improved interface as well). Additionally, new GEGL_TILE_COPY command was added to backends to make buffer duplication/copies more efficient. Recently, Øyvind Kolås has been working again on multispectral/hyperspectral processing in GEGL, which happens to be the groundwork for CMYK processing. This is therefore the first steps for better CMYK support in GIMP! We hope that anyone who wants to see this happening will support Øyvind on Patreon! GIMP in Université de Cergy-Pontoise¶ Aryeom, well known around here for being the director of ZeMarmot movie, a skilled illustrator, and a contributor to GIMP has given a graphics course with GIMP as a guest teacher for nearly a week at the Université de Cergy-Pontoise in France, mid-October. She taught to two classes: a computer graphics class and a 3D heritage one, focusing on digital illustration for the former and retouching for the latter. Aryeom and her students in University of Cergy-Pontoise This is a good hint that GIMP is getting more recognition as it now gets taught in universities. Students were very happy overall, and we could conclude by quoting one of them at the end of a 3-day course: I didn’t know that GIMP was the Blender for 2D; now this is one more software in my toolbox! We remind that you can also support Aryeom’s work on Patreon, on Tipeee or by others means! Flatpak statistics¶ Although Flathub does not (yet) provide any public statistics for packages, an internal source told us that there have been over 214,000 downloads of GIMP since its existence (October 2017). This is more than 500 downloads a day, and by far the most downloaded application there! Flathub is a new kind of application repository for GNU/Linux, so of course these numbers are not representative of all downloads. In particular, we don’t have statistics for Windows and macOS. Even for Linux, every distribution out there makes its own package of GIMP. So this is a small share, and a nice one at that, of the full usage of GIMP around the globe! GIF is dead? Long live WebP!¶ The GIF format is the only animated image format which is visible in any web browser, making it the de-facto format for basic animation on the web, despite terrible quality (256 colors!), binary transparency (no partial transparency), and not so good compression. Well, this may change! A few days ago, WebP reached support in most major browsers (Mozilla Firefox, Google Chrome, Microsoft Edge, Opera), when a 2-year old feature request for Mozilla Firefox got closed as “FIXED”. This will be available for Firefox 65. Therefore, we sure hope web platforms will take this new format into consideration, and that everyone will stop creating GIF images now that there are actual alternatives in most browsers! And last but not least, we remind everyone that GIMP has already had WebP support since GIMP 2.10.0! A WebP animation (done in GIMP), by Aryeom, featuring ZeMarmot and a penguin. Disclaimer: the GIMP team is neutral towards formats. We are aware of other animated image formats, such as APNG or MNG, and wish them all the best as well! We would also be very happy to support them in GIMP, if contributors show up with working patches. What’s next¶ We’ve been running late with this release, so we haven’t included some of the improvements available in the main development branch of GIMP. And there are even more changes coming! Here is what you can expect in GIMP 2.10.10 when it’s out. ACES RRT display filter that can be used in scene-referred imaging workflows. Technically, it’s a luminance-only approximation of the ACES filmic HDR-to-SDR proofing mapping originally written in The Baking Lab project. Space invasion: essentially you can now take an image that’s originally in e.g. ProPhotoRGB, process it in the CIE LAB color space, and the resulted image will be in ProPhotoRGB again, with all color data correctly mapped to the original space / ICC profile. This is a complicated topic, we’ll talk more about it when it’s time to release 2.10.10. Another new feature we expect to merge to a public branch soon is smart colorization based on the original implementation in the ever-popular GMIC filter. Given quickly approaching winter holidays and all the busy time that comes with it, we can’t 100% guarantee another stable release this year, but we’ll do our best to keep’em coming regularly! Conclusion¶ We wish you a lot of fun with GIMP, as it becomes more stable every day! [Less]