Bug 235805

Summary: graphics/mypaint: update to v2.0.0
Product: Ports & Packages Reporter: Greg V <greg>
Component: Individual Port(s)Assignee: Rodrigo Osorio <rodrigo>
Status: Closed FIXED    
Severity: Affects Only Me CC: gnome, kwm, rene, rodrigo, saper
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
Description Flags
mypaint2.patch - beta
mypaint2.patch - release none

Description Greg V 2019-02-17 13:59:41 UTC
Created attachment 202094 [details]

Now using Python 3 and installing with setuptools instead of scons.

Old libmypaint and mypaint-brushes (used by graphics/gimp-app) are now with the '1' suffix.
Comment 1 Rodrigo Osorio freebsd_committer 2019-06-05 14:51:27 UTC
@greg: wanna take maintenership for this port ?
Comment 2 Greg V 2019-06-05 15:03:32 UTC
(In reply to Rodrigo Osorio from comment #1)
yes, sure
Comment 3 Rodrigo Osorio freebsd_committer 2019-06-05 15:16:18 UTC
The patch submitted is not correct :

- the same patch impact multiple ports with multiple maintainers:
  * graphics/gimp-app
  * graphics/libmypaint
  * graphics/mypaint
  * graphics/mypaint-brushes
  This will increase de delay of adoption since we need approval for
  each port maintainer. At least you should better create one patch
  per port or a bug report per port and indicate the dependencies.
- Some ports in your patch doesn't exists in ports tree:
  * graphics/libmypaint1
  * graphics/mypaint-brushes1
  If this is garbage, remove it from the final patch you submit.
Comment 4 Greg V 2019-06-05 15:19:37 UTC
(In reply to Rodrigo Osorio from comment #3)

They're added by the patch

> Old libmypaint and mypaint-brushes (used by graphics/gimp-app) are now with the '1' suffix.


It doesn't really make sense to split it up, renaming the old version and introducing the new version should go in together
Comment 5 Rodrigo Osorio freebsd_committer 2019-06-11 20:21:58 UTC
> They're added by the patch
> > Old libmypaint and mypaint-brushes 
> > (used by graphics/gimp-app) are now with the '1' suffix.

My bad I didn't read your comments carefully enough. Nevertheless, you can't go that way so easily.

1st because 20+ packages has a direct dependency on mypaint-brushes,
so you must provide a patch for all the ports who depends on, or request an
exp-run to ensure moving to the new version doesn't break anything

2nd, libmypaint and mypaint-brushes maintainer has to approve the changes you suggest and validate the naming for the new port .

I will recommend to start first with those two ports then see what the next step is.
Comment 6 Rodrigo Osorio freebsd_committer 2019-08-22 12:14:36 UTC
Hi Greg,

As said before, the submitted patch touch too many ports (graphics/gimp-app, graphics/libmypaint, graphics/libmypaint1, graphics/mypaint-brushes graphics/mypaint) and multiple maintainers. Furthermore, mypaint-brushes
is a dependency for 20+ ports.

I suggest you to create one PR per port to update, and use the 'depends on' fiels to link them. This way the ports maintainers can provide feedback on your patch.
Comment 7 Marcin Cieślak 2020-01-13 01:37:35 UTC
Why don't we install new libmypaint as libmypaint20 until gimp and other ports catch up? Let's keep mypaint at 1.x for now.
Comment 8 Greg V 2020-01-14 21:26:04 UTC
(In reply to Marcin Cieślak from comment #7)
We usually have the old versions numbered, not the new ones. But that's fine of course, I've been thinking about this too. Just haven't had time to update the patch.
Comment 9 Greg V 2020-02-09 12:54:37 UTC
Created attachment 211506 [details]
mypaint2.patch - beta

Updated to beta and independent v2 ports.

BTW, upstream is planning to have a 1.x release that would work for both gimp and mypaint 2.x: https://github.com/mypaint/libmypaint/releases/tag/v1.5.0-beta.0 Maybe worth waiting for that.
Comment 10 Greg V 2020-02-23 19:38:53 UTC
Created attachment 211866 [details]
mypaint2.patch - release

2.0 release. Uses 2.x brushes but 1.x (>=1.5) libmypaint.

Depends on libmypaint 1.5 (bug 243305)
Comment 11 Koop Mast freebsd_committer 2020-02-25 21:36:31 UTC
I just committed libmypaint 1.5.1 to ports, so you should be able to go forward with this update.

About libmypaint vs libmypaint1. I don't see the point until libmypaint upstream releases a 2.0 stable version.
Comment 12 Greg V 2020-02-26 22:16:12 UTC
(In reply to Koop Mast from comment #11)

> About libmypaint vs libmypaint1. I don't see the point until libmypaint upstream releases a 2.0 stable version.

Yeah, all the posts about that are from before MyPaint 2.0 that supports libmypaint 1.x was released. The latest patch here uses libmypaint 1.x.
Comment 13 Rene Ladan freebsd_committer 2020-03-20 02:05:12 UTC
Any news, or should we just remove this expired port?
Comment 14 Rodrigo Osorio freebsd_committer 2020-03-21 16:58:35 UTC
(In reply to Rene Ladan from comment #13)
Hi Rene,

Please, give me a couple of days to look at the current situation.

-- rodrigo
Comment 15 Rodrigo Osorio freebsd_committer 2020-03-23 21:39:31 UTC
Ok, I think we can move on with this update.

Now we have the correst version of libmypaint, and a new port has to be created to host graphics/mypaint-brushes2, because Gimp conflicts.

I start doing the test on my poudrieres and see how it goes.
Comment 16 Rodrigo Osorio freebsd_committer 2020-03-24 09:03:13 UTC
@Greg V: Since graphics/mypaint2 is a new port, I can just assign it to the gnome team without their approval, in the meantime I suggest you can take the maintenership.

In the meantime, I sent an email to @gnome team.

For me, this is the only blocking item to solve before commit.
Comment 17 Rodrigo Osorio freebsd_committer 2020-03-24 09:04:09 UTC
(In reply to Rodrigo Osorio from comment #16)

s/I can just/I can't just/
Comment 18 Greg V 2020-03-26 23:19:03 UTC
(In reply to Rodrigo Osorio from comment #16)

> graphics/mypaint2 is a new port

wait, no, in my last patch, only brushes2 is new, while mypaint is an update.

I can be the maintainer for both, but I don't think a separate mypaint2 port makes sense – mypaint 1 is going to expire due to python2, right?
Comment 19 Rodrigo Osorio freebsd_committer 2020-03-27 08:20:18 UTC
(In reply to Greg V from comment #18)

Sorry, I mean graphics/mypaint-brushes2. Of course graphics/mypaint is deprecated and has to be updated.

To sum up, we have the following

graphics/mypaint          => upgrade to 2.0.0
graphics/mypaint-brushes2 => new port, maintainer: Greg V

Sorry for my typo, for the record I just apply the patches you submit.
I'll try to close this ticket before the end of the day.

-- rodrigo
Comment 20 commit-hook freebsd_committer 2020-03-28 11:33:04 UTC
A commit references this bug:

Author: rodrigo
Date: Sat Mar 28 11:32:05 UTC 2020
New revision: 529328
URL: https://svnweb.freebsd.org/changeset/ports/529328

  graphics/mypaint-brushes2: Add new port for mypaint-brushes v2

  Add this new port as a dependency of graphics/mypaint.

  mypaint-brushes V2 is mostly identical to 1.3 brushes with a few tweaks
  for some new inputs available in mypaint 2.x, such as viewzoom and viewrotation
  Existing mypaint-brushes V1 branch still maintained, and is required by
  many GTK tools such as Gimp.

  Major changes since v2.0.0
   - Include Dieterle brushes
   - reductions to the file sizes of the preview icons.

  PR:		235805
  Submitted by:	Greg V <greg@unrelenting.technology>

Comment 21 commit-hook freebsd_committer 2020-03-28 12:12:07 UTC
A commit references this bug:

Author: rodrigo
Date: Sat Mar 28 12:11:30 UTC 2020
New revision: 529329
URL: https://svnweb.freebsd.org/changeset/ports/529329

  graphics/mypaint: Update to 2.0.0

  Port update port and take maintenership by Greg

  Major changes:
   - Linear compositing and spectral blending (pigment).
   - Layer views.
   - Brush strokes dependent on view rotation and view zoom.
   - Additional symmetry modes: vertical, vertical+horizontal, rotational, snowflake.
   - Expanded flood fill functionality: offset, feather, gap detection and more.
   - New brush settings: offsets, gridmap, additional smudge settings, posterize, pigment.
   - New brush inputs: barrel rotation, base radius, zoom level, gridmap x/y, direction 360, attack angle.

  See full changelog for more details: https://github.com/mypaint/mypaint/blob/master/Changelog.md

  PR:		235805
  Submitted by:	Greg V <greg@unrelenting.technology>

Comment 22 Rodrigo Osorio freebsd_committer 2020-03-28 12:12:52 UTC
Committed with minor changes, thanks for your work and patience.