Thursday, August 31, 2023

Re: UPDATE: audio/picard-2.9.1

El 31/8/23 a las 10:58, Stefan Hagen escribió:
> Jose Maldonado wrote (2023-08-31 09:21 CEST):
>> El 31/8/23 a las 3:18, Stefan Hagen escribió:
>>> Hi Jose,
>>>
>>> Jose Maldonado wrote (2023-08-31 08:26 CEST):
>>>> Hi, this is my first contribution. Bump version for audio/picard to 2.9.1.
>>>> All tested in amd64, not problems.
>>>
>>> You did a good job. For some reason your patch contained line breaks in
>>> the PLIST that shouldn't be there. But no problem - I just regenerated
>>> it.
>>>
>>>> +MODPY_EGG_VERSION = 2.9.1
>>>> DISTNAME = picard-${MODPY_EGG_VERSION}
>>>> REVISION = 0
>>>
>>> When the port version is bumped up, the REVISION can be removed.
>>> Everything else looks fine to me.
>>>
>>> Diff below with the following changes:
>>> - REVISION removed
>>> - RUN_DEPENDS sorted
>>> - Comment that pthread is needed, so the next person updating it won't
>>> trip over it.
>>>
>>> A runtime test was successful.
>>>
>>> The test target runs to 38% and then get's stuck at
>>> test/test_util_pipe.py where it loops at 100% cpu forever.
>>>
>>> ktrace:
>>> 5861148 46436 python3.10 CALL open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
>>> 5861149 46436 python3.10 RET open -1 errno 2 No such file or directory
>>> 5861150 46436 python3.10 CALL futex(0x803b2dc4ec0,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
>>> 5861151 46436 python3.10 RET futex 0
>>> 5861152 46436 python3.10 CALL futex(0x803b2dc8210,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
>>> 5861153 46436 python3.10 RET futex 0
>>> 5861154 46436 python3.10 CALL open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
>>> 5861155 46436 python3.10 RET open -1 errno 2 No such file or directory
>>>
>>> It seems not to hurt picard though.
>>>
>>> Best Regards,
>>> Stefan
>>>
>>
>> Thanks for the comments, I will take them into account for the next diff.
>>
>> Right now, I'm taking a look at Picard Github, to see what I can find that
>> gives an explanation to the problem indicated in the list.
>
> I just opened picard 20 times in a row and clicked around without a
> crash. I turned HW acceleration off in xorg.conf (amdgpu):
> Option "Accel" "off"
>
> With this option "on", roughly every third picard start would kill X.
>
> Is this the issue others are facing too, or did I stumble at something
> new?
>
> Best regards,
> Stefan

I have been checking the problem, and I have seen the following:


1.- It usually only appears when you run picard on more than one
occasion using the same X11/Xenocara session. If you run it once and
reboot, no problem. If you run it more than once you are in bingo.

2.- You end up with two errors in the logs:

- By Picard:

I: 22:40:53,623 browser/browser.start:121: Starting the browser
integration (127.0.0.1:8000)
The X11 connection broke: I/O error (code 1) X connection to :0 broken
(explicit kill or server shutdown).

- By Xenocara


[22813.129] (EE) Received signal 6 sent by process 0, uid 0
[ 22813.130] (EE) Fatal server error:
[ 22813.130] (EE) Caught signal 6 (Abort trap). Server aborting
[ 22813.130] (EE)
Please consult the X.Org Foundation support
at http://wiki.x.org for help.
[22813.130] (EE) Please also check the log file at "/var/log/Xorg.0.log"
for additional information.

3.- If you start picard with the -M option (disabling the built-in media
player) then it stops crashing X11/Xenocara, no matter how many times
you start picard in the same session.

This problem maybe is related with this problem

https://forum.qt.io/topic/125074/x11-connection-broken-when-using-qt-5-14

Re: pf state-table-induced instability

On Thu, Aug 31, 2023 at 04:10:06PM +0200, Gabor LENCSE wrote:
> Dear David,
>
> Thank you very much for all the new information!
>
> I keep only those parts that I want to react.
>
> > > It is not a fundamental issue, but it seems to me that during my tests not
> > > only four but five CPU cores were used by IP packet forwarding:
> > the packet processing is done in kernel threads (task queues are built
> > on threads), and those threads could be scheduled on any cpu. the
> > pf purge processing runs in yet another thread.
> >
> > iirc, the schedule scans down the list of cpus looking for an idle
> > one when it needs to run stuff, except to avoid cpu0 if possible.
> > this is why you see most of the system time on cpus 1 to 5.
>
> Yes, I can confirm that any time I observed, CPU00 was not used by the
> system tasks.
>
> However, I remembered that PF was disabled during my stateless tests, so I
> think its purge could not be the one that used CPU05. Now I repeated the
> experiment, first disabling PF as follows:

disabling pf means it doesnt get run for packets in the network stack.
however, the once the state purge processing is started it just keeps
running. if you have zero states, there wont be much to process though.

there will be other things running in the system that could account for
the "extra" cpu utilisation.

> dut# pfctl -d
> pf disabled
>
> And I can still see FIVE CPU cores used by system tasks:

the network stack runs in these threads. pf is just one part of the
network stack.

>
> load averages:?? 0.69,?? 0.29,
> 0.13???????????????????????????????????????????????????????????? dut.cntrg
> 14:41:06
> 36 processes: 35 idle, 1 on processor up 0 days 00:03:46
> CPU00 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 8.1% intr,
> 91.7% idle
> CPU01 states:?? 0.0% user,?? 0.0% nice, 61.1% sys,?? 9.5% spin, 9.5% intr,
> 19.8% idle
> CPU02 states:?? 0.0% user,?? 0.0% nice, 62.8% sys, 10.9% spin, 8.5% intr,
> 17.8% idle
> CPU03 states:?? 0.0% user,?? 0.0% nice, 54.7% sys,?? 9.1% spin, 10.1% intr,
> 26.0% idle
> CPU04 states:?? 0.0% user,?? 0.0% nice, 62.7% sys, 10.2% spin, 9.8% intr,
> 17.4% idle
> CPU05 states:?? 0.0% user,?? 0.0% nice, 51.7% sys,?? 9.1% spin, 7.6% intr,
> 31.6% idle
> CPU06 states:?? 0.2% user,?? 0.0% nice,?? 2.8% sys,?? 0.8% spin, 10.0% intr,
> 86.1% idle
> CPU07 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 7.2% intr,
> 92.6% idle
> CPU08 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.0% spin, 8.4% intr,
> 91.6% idle
> CPU09 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.0% spin, 9.2% intr,
> 90.8% idle
> CPU10 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 10.8% intr,
> 89.0% idle
> CPU11 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 9.2% intr,
> 90.6% idle
> CPU12 states:?? 0.0% user,?? 0.0% nice,?? 0.2% sys,?? 0.8% spin, 9.2% intr,
> 89.8% idle
> CPU13 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 7.2% intr,
> 92.6% idle
> CPU14 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.8% spin, 9.8% intr,
> 89.4% idle
> CPU15 states:?? 0.0% user,?? 0.0% nice,?? 0.0% sys,?? 0.2% spin, 7.8% intr,
> 92.0% idle
> Memory: Real: 34M/1546M act/tot Free: 122G Cache: 807M Swap: 0K/256M
>
> I suspect that top shows an average (in a few seconds time window) and
> perhaps one of the cores from CPU01 to CPU04 are skipped (e.g. because it
> was used by the "top" command?), this is why I can see system load on CPU05.
> (There is even some low amount of system load on CPU06.)
>
>
> > > *Is there any way to completely delete its entire content?*
> > hrm.
> >
> > so i just read the code again. "pfctl -F states" goes through the whole
> > state table and unlinks the states from the red-black trees used for
> > packet processing, and then marks them as unlinked so the purge process
> > can immediately claim then as soon as they're scanned. this means that
> > in terms of packet processing the tree is empty. the memory (which is
> > what the state limit applies to) won't be reclaimed until the purge
> > processing takes them.
> >
> > if you just wait 10 or so seconds after "pfctl -F states" then both the
> > tree and state limits should be back to 0. you can watch pfctl -si,
> > "systat pf", or the pfstate row in "systat pool" to confirm.
> >
> > you can change the scan interval with "set timeout interval" in pf.conf
> > from 10s. no one fiddles with that though, so i'd put it back between
> > runs to be representative of real world performance.
>
> I usually wait 10s between the consecutive steps of the binary search of my
> measurements to give the system a chance to relax (trying to ensure that the
> steps are independent measurements). However, the timeout interval of PF was
> set to 1 hour (using "set timeout interval 3600"). You may ask, why?
>
> To have some well defined performance metrics, and to define repeatable and
> reproducible measurements, we use the following tests:
> - maximum connection establishment rate (during this test all test frames
> result in a new connection)
> - throughput with bidirectional traffic as required by RFC 2544 (during this
> test no test frames result in a new connection, neither connection time out
> happens -- a sufficiently high timeout could guarantee it)
> - connection tear down performance (first loading N number of connections
> and then deleting all connections in a single step and measuring the
> execution time of the deletion: connection tear down rate = N / deletion
> time of N connections)

the above sounds like you're trying to prevent connections being torn
down inside pf. however, "set timeout interval" only affects how
active the pf state purge processing is. it basically tunes how many
states will be scanned every second, but doesnt change how idle a state
has to be before it can become a candidate for purging.

> It is a good question, how well the above performance metrics can represent
> the "real word" performance of a stateful NAT64 implementation!
>
> If you are interested (and have time) I would be happy to work together with
> you in this area. We could publish a common paper, etc. Please let me know,
> if you are open for that.

i can have a look, just send me an email.

generally, openbsd aims to work out of the box and not require tuning.

> The focus of my current measurements is only to test and demonstrate if
> using multiple IP addresses in stateless (RFC 2544) and stateful
> benchmarking measurements makes a difference. And it definitely seems to be
> so. :-)

allowing nat to use addresses opens up a much larger "tuple space",
which makes it more likely that a search for a free entry in that space
can be found quickly. i havent looked at that code for a while, so i'm
almost guessing as to what the reason for the performance difference is
there.

> (Now, I try to carry out the missing measurements and finish my paper about
> the extension of siitperf with pseudorandom IP addresses ASAP.)
>
> Best regards,
>
> G??bor
>
>
>

[NEW PORT] UnrealIRCD 6.1.1.1 -- need PLIST/Install Assistance

Attached you will find the proposed new addition of the UnrealIRCD Port for
OpenBSD

I believe I have everything in order based upon the OpenBSD Porting Guide
documentation, but for the life of me, I cannot seem to get the make
install to actually install the files into their respective PREFIX
directories.

make fake properly stages everything into the proper staging directory, but
the port seems to be missing something that would allow the contents to be
packaged and properly installed into the real system.

Could someone please take a look and let me know what I am missing?
/usr/ports/infrastructure/bin/portcheck seems to be in order, plist appears
to be correct, I'm not sure what I am forgetting.

Attached in the tarball

WWW: https://www.unrealircd.org/

UnrealIRCd is an Open Source IRC Server, serving thousands of networks
since 1999. It runs on Linux, OS X and Windows and is currently the most
widely deployed IRCd with a market share of 38%. UnrealIRCd is a highly
advanced IRCd with a strong focus on modularity and security. It uses an
advanced and highly configurable configuration file. Other key features
include: full IRCv3 support, SSL/TLS, cloaking, advanced anti-flood and
anti-spam systems, GeoIP, remote includes, and lots of other features.

Re: Install port dependencies from packages?

Aug 31, 2023 23:29:12 Matthias Kilian <kili@outback.escape.de>:

> Hi,
>
> On Thu, Aug 31, 2023 at 11:16:06PM +0200, Johannes Thyssen Tishman wrote:
>> Is there is a way to install all {BUILD,LIB,RUN} dependencies before
>> trying to build a port by using packages (pkg_add)?
>
> See FETCH_PACKAGES in ports(7) and bsd.port.mk(5).

Also very quick! Thank you very much.

> Ciao,
>     Kili

Re: Install port dependencies from packages?

Aug 31, 2023 23:27:24 Morgan Aldridge <morgant@makkintosshu.com>:

> On Thu, Aug 31, 2023 at 17:17 Johannes Thyssen Tishman <lists@thyssentishman.com> wrote:
> Hi,
>
> Is there is a way to install all {BUILD,LIB,RUN} dependencies before
> trying to build a port by using packages (pkg_add)? What I've been
> doing is using the list provided by 'make {build,run,lib}-depends-list',
> parsing the output and installing them manually. With the -a flag
> from pkg_add I can later uninstall them easily, but I feel like
> there's probably a better way.
>
> What you want is FETCH_PACKAGES, see bsd.port.mk[http://bsd.port.mk](5):
>
> <https://man.openbsd.org/man5/bsd.port.mk.5#FETCH_PACKAGES>

That was quick! I don't know how I missed that, thank you very much.

sftp activity logging?

Hi All,

I am setting an openbsd 7.3 stable system to serve files via ssh's sftp
subsystem.

Does openssh have a native way to audit what files were
downloaded/uploaded with user/timestamp information?

If not, are there any recommendations?

Thanks in advance.

Re: Install port dependencies from packages?

Hi,

On Thu, Aug 31, 2023 at 11:16:06PM +0200, Johannes Thyssen Tishman wrote:
> Is there is a way to install all {BUILD,LIB,RUN} dependencies before
> trying to build a port by using packages (pkg_add)?

See FETCH_PACKAGES in ports(7) and bsd.port.mk(5).

Ciao,
Kili

Re: Install port dependencies from packages?

On Thu, Aug 31, 2023 at 17:17 Johannes Thyssen Tishman <
lists@thyssentishman.com> wrote:

> Hi,
>
> Is there is a way to install all {BUILD,LIB,RUN} dependencies before
> trying to build a port by using packages (pkg_add)? What I've been
> doing is using the list provided by 'make {build,run,lib}-depends-list',
> parsing the output and installing them manually. With the -a flag
> from pkg_add I can later uninstall them easily, but I feel like
> there's probably a better way.


What you want is FETCH_PACKAGES, see bsd.port.mk(5):

<https://man.openbsd.org/man5/bsd.port.mk.5#FETCH_PACKAGES>

>

Re: UPDATE: x11/fvwm3 to 1.0.7

Hi Stefan,

Stefan Hagen wrote on Wed, Aug 30, 2023 at 09:41:20AM +0200:

> There's no good way to handle a conflict that's introduced with an
> update. So what we would do is to move the manpages into the install
> directory. (thanks to espie@ for the suggestion)

Actually, i regard that as bad advice, espie@ shouldn't say such things.

Moving ports manual pages out of the standard /usr/local/man/ tree
is a last resort measure that should be reserved for the most
extreme cases - for example, language systems having huge numbers of
manual pages, many of which conflict with base system manual pages
(like lang/tcl, or to a lesser degree, plan9/plan9port) and for
collections of manual pages that simply don't document the system
they get installed on (like books/man-pages-posix).

For a small application-level port like x11/fvwm3, i regard moving
a handful of manual pages out of /usr/local/man/ as totally
inappropriate:

* Almost nobody ever bothers with putting "manpath" directives
into man.conf(5). And that's a good thing. Having to maintain a
list of manual page trees would be cumbersome. Besides, the more
trees you configure, the more error prone and the less efficient
manual page searching and lookup becomes. And there isn't really
any problem that needs to be solved with this configuration option.
Looking up manual pages ought to work by default, without users
having to worry about configuring anything - and porters can indeed
help making things work by default.

The consequence is that, if you move some manual pages out of
/usr/local/man/, most users simply won't ever see them, not even
when they are actively searching for them.

* Even if a user is aware where these pages are and wants to
look at them specifically, the simplest command achieving that is

man -M /usr/local/share/fvwm3/man FvwmPager

That's an awful lot to type, even with the help of tab completion.
For people coding in tcl a lot, doing something like

alias tm='man -M /usr/local/lib/tcl/tcl8.5/man'

in a shell initialization file would arguably be acceptable
even if not particularly elegant, but for fvwm3, such a
concoction would be quite the overkill.

I have occasionally considered making commands like

man -M tcl open

work, but the design isn't as trivial as it seems, getting it
right on the first try matters, and demand is so limited even
for stuff like tcl and man-pages-posix that i did not do it yet,
even though eventually, i certainly hope to. Even if we had that
already, it would seem unlikely to me that people would remember
using if for fvwm3.

> You'll then get a nice little info to add this path to your man path
> when the package is installed:
>
> --- +fvwm3-1.0.7 -------------------
> You may wish to add /usr/local/share/fvwm3/man to /etc/man.conf

I absolutely hate that message. It is not nice at all, and it is
almost always bad advice. You even get that message for tcl
and for man-pages-posix, where it makes absolutely zero sense.

And for a simple port like fvwm3, you would really be willing
to manually edit a system configuration file merely to read a
handful of manual pages contained in that port?
I certainly wouldn't do that, it feels so insulting.


Fortunately, there is a simple solution:

> +@man share/fvwm3/man/man1/FvwmAnimate.1
> +@man share/fvwm3/man/man1/FvwmAuto.1
> +@man share/fvwm3/man/man1/FvwmBacker.1
> +@man share/fvwm3/man/man1/FvwmButtons.1
> +@man share/fvwm3/man/man1/FvwmCommand3.1
> +@man share/fvwm3/man/man1/FvwmConsole.1
> +@man share/fvwm3/man/man1/FvwmEvent.1
> +@man share/fvwm3/man/man1/FvwmForm.1
> +@man share/fvwm3/man/man1/FvwmIconMan.1
> +@man share/fvwm3/man/man1/FvwmIdent.1
> +@man share/fvwm3/man/man1/FvwmMFL.1
> +@man share/fvwm3/man/man1/FvwmPager.1
> +@man share/fvwm3/man/man1/FvwmPerl.1
> +@man share/fvwm3/man/man1/FvwmPrompt.1
> +@man share/fvwm3/man/man1/FvwmRearrange.1
> +@man share/fvwm3/man/man1/FvwmScript.1

Change the file names of the above to fvwm3-FvwmPager.1 etc.
and install them /usr/local/man/.

Whether you use FvwmCommand3.1 or fvwm3-FvwmCommand3.1
is a matter of taste, both seem fine. It would be ideal to do it
in such a way that, for consistency, bot of these work:

man FvwmCommand3
man fvwm3-FvwmCommand3

> +@man share/fvwm3/man/man1/fvwm3-convert-2.6.1
> +@man share/fvwm3/man/man1/fvwm3-menu-desktop.1
> +@man share/fvwm3/man/man1/fvwm3-menu-directory.1
> +@man share/fvwm3/man/man1/fvwm3-menu-xlock.1
> +@man share/fvwm3/man/man1/fvwm3-perllib.1
> +@man share/fvwm3/man/man1/fvwm3-root.1
> +@man share/fvwm3/man/man1/fvwm3.1
> +@man share/fvwm3/man/man1/fvwm3all.1
> +@man share/fvwm3/man/man1/fvwm3commands.1
> +@man share/fvwm3/man/man1/fvwm3menus.1
> +@man share/fvwm3/man/man1/fvwm3styles.1

Those can go to /usr/local/man/ without any tweaking, i guess.

That way,

man -a FvwmPager

will display all three FvwmPager(1) manual pages when both ports are
installed, because our man(1) implementation takes page names
from all of the file names, .TH arguments, and NAME entries.
So you can easily have multiple manual pages with the same names
within the same manual tree (here, usr/local/man/), as long as the
file names differ. Even if the content of the individual pages should
fail to identify the fvwm version,

man -w FvwmPager

will tell you which is which.

And as a bonus,

man fvwm3-FvwmPager

works as soon as you are aware the is more than one and you know
which one you want - with absolutely zero user configuration needed,
sane defaults out of the box.

Of course, you should test that it all works as expected before
committing the port, but i don't see why it shouldn't.

Yours,
Ingo

Install port dependencies from packages?

Hi,

Is there is a way to install all {BUILD,LIB,RUN} dependencies before
trying to build a port by using packages (pkg_add)? What I've been
doing is using the list provided by 'make {build,run,lib}-depends-list',
parsing the output and installing them manually. With the -a flag
from pkg_add I can later uninstall them easily, but I feel like
there's probably a better way.

Thank you.

Kind regards,
Johannes

[fix] cad/oce: unreplaced variable on cmake files

Hi,

The following cmake files installed by cad/oce contain a variable
(${OCCT_INSTALL_BIN_LETTER}) that should've been replaced during
installation:

/usr/local/lib/cmake/opencascade/OpenCASCADEApplicationFrameworkTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEDataExchangeTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEDrawTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEModelingAlgorithmsTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEModelingDataTargets-release.cmake
/usr/local/lib/cmake/opencascade/OpenCASCADEVisualizationTargets-release.cmake

To verify, run the following. You'll notice how the variable is
escaped (\${...}):

# pkg_add oce
$ grep OCCT_INSTALL_BIN_LETTER /usr/local/lib/cmake/opencascade/OpenCASCADE*

I'm working on porting FreeCAD (which depends on oce)
and I'm getting the following error during the configuration stage:

> CMake Error at /usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets.cmake:87 (message):
> The imported target "TKernel" references the file
>
> "/usr/local/lib${OCCT_INSTALL_BIN_LETTER}/libTKernel.so.1.0"
>
> but this file does not exist. Possible reasons include:
>
> * The file was deleted, renamed, or moved to another location.
>
> * An install or uninstall procedure did not complete successfully.
>
> * The installation package was faulty and contained
>
> "/usr/local/lib/cmake/opencascade/OpenCASCADEFoundationClassesTargets.cmake"
>
> but not all the files it references.

The diff below is based on a patch from the FreeBSD port and should
fix this issue. The only consumer is cad/kicad and it built fine.

Kind regards,
Johannes

Index: Makefile
===================================================================
RCS file: /cvs/ports/cad/oce/Makefile,v
retrieving revision 1.9
diff -u -p -r1.9 Makefile
--- Makefile 28 Feb 2023 21:22:28 -0000 1.9
+++ Makefile 31 Aug 2023 19:47:51 -0000
@@ -7,7 +7,7 @@ GH_ACCOUNT = tpaviot
GH_PROJECT = oce
GH_COMMIT = 98a788062f0f30593880b0df1bcf967408212ba4
DISTNAME = oce-7.6.0
-REVISION = 1
+REVISION = 2

.for LIB in TKBO TKBRep TKBin TKBinL TKBinTObj TKBinXCAF TKBool TKCAF TKCDF \
TKDCAF TKDraw TKFeat TKFillet TKG2d TKG3d TKGeomAlgo TKGeomBase TKHLR \
Index: patches/patch-adm_cmake_occt_macros_cmake
===================================================================
RCS file: /cvs/ports/cad/oce/patches/patch-adm_cmake_occt_macros_cmake,v
retrieving revision 1.2
diff -u -p -r1.2 patch-adm_cmake_occt_macros_cmake
--- patches/patch-adm_cmake_occt_macros_cmake 11 Mar 2022 18:24:30 -0000 1.2
+++ patches/patch-adm_cmake_occt_macros_cmake 31 Aug 2023 19:47:51 -0000
@@ -1,15 +1,12 @@
-Ugly hack on ALL_OCCT_TARGET_FILES: change later
-
Index: adm/cmake/occt_macros.cmake
--- adm/cmake/occt_macros.cmake.orig
+++ adm/cmake/occt_macros.cmake
-@@ -592,7 +592,8 @@ macro (OCCT_UPDATE_TARGET_FILE)
+@@ -592,7 +592,7 @@ macro (OCCT_UPDATE_TARGET_FILE)
"cmake_policy(PUSH)
cmake_policy(SET CMP0007 NEW)
string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWERCASE)
- file (GLOB ALL_OCCT_TARGET_FILES \"${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
-+ file (GLOB ALL_OCCT_TARGET_FILES
-+ \"${PROJECT_BINARY_DIR}/CMakeFiles/Export/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
++ file (GLOB ALL_OCCT_TARGET_FILES \"\$ENV{DESTDIR}${INSTALL_DIR}/${INSTALL_DIR_CMAKE}/OpenCASCADE*Targets-\${CMAKE_INSTALL_CONFIG_NAME_LOWERCASE}.cmake\")
foreach(TARGET_FILENAME \${ALL_OCCT_TARGET_FILES})
file (STRINGS \"\${TARGET_FILENAME}\" TARGET_FILE_CONTENT)
file (REMOVE \"\${TARGET_FILENAME}\")

Re: UPDATE: audio/picard-2.9.1

On 2023/08/31 09:18, Stefan Hagen wrote:
> - Comment that pthread is needed, so the next person updating it won't
> trip over it.

That doesn't make sense - WANTLIB doesn't make sense at all for this
port any more. It's a holdover from when picard used to have .so modules
in the package, but they're no longer present.

Re: UPDATE: x11/fvwm3 to 1.0.7

I wanted to say, no support in pkg_add for suddenly conflicting
packages after an update is by design: there is no way this can't
be seen as anything but a regression.

Imagine: you install packages A and B, you go to update them, and
suddenly the new versions conflict.

The supported cases are classic cases of upstream fiddling with their
bits, like for instance the new B is a merge of the old A and B.

But anything else will require manual intervention: if the conflict is
genuine, the user will have to make a choice.

There are several cases where maintainers should be able to do something
smart:

- the conflict is accidental. Some peripheral files have the same names,
which is usually fixed by either renaming/removing the extra files.

- the conflicting files are the exact same thing in both packages...
which means there is a common small package to build containing the files
in question, and making both new packages depending on those common files
will be enough.

- one of the new packages suddenly provides the services of the other package
"on the side", in a slightly different way. That's a perfect scenario for
MULTI_PACKAGES obviously.


In the case at hand, fvwm2 vs fvwm3, there are genuine use cases for wanting
both: fvwm2 and fvwm3 are slightly tricky beasts, and I have BOTH installed
on my machines at the same time, because I run into regression once in a blue
moon.

The main files do not conflict. Versioning the manpages will work.


Note that we routinely do much much worse in order to be able to install,
say, 10 versions of autoconf at the same time.


Tl;dr: there is no tooling solution because it's not a tooling problem.
There is some genuine human thought required to give us something that's
not a crazy design.

Re: UPDATE: audio/picard-2.9.1

El jue, 31 ago 2023, 10:58, Stefan Hagen <sh+openbsd-ports@codevoid.de>
escribió:

> Jose Maldonado wrote (2023-08-31 09:21 CEST):
> > El 31/8/23 a las 3:18, Stefan Hagen escribió:
> > > Hi Jose,
> > >
> > > Jose Maldonado wrote (2023-08-31 08:26 CEST):
> > > > Hi, this is my first contribution. Bump version for audio/picard to
> 2.9.1.
> > > > All tested in amd64, not problems.
> > >
> > > You did a good job. For some reason your patch contained line breaks in
> > > the PLIST that shouldn't be there. But no problem - I just regenerated
> > > it.
> > >
> > > > +MODPY_EGG_VERSION = 2.9.1
> > > > DISTNAME = picard-${MODPY_EGG_VERSION}
> > > > REVISION = 0
> > >
> > > When the port version is bumped up, the REVISION can be removed.
> > > Everything else looks fine to me.
> > >
> > > Diff below with the following changes:
> > > - REVISION removed
> > > - RUN_DEPENDS sorted
> > > - Comment that pthread is needed, so the next person updating it won't
> > > trip over it.
> > >
> > > A runtime test was successful.
> > >
> > > The test target runs to 38% and then get's stuck at
> > > test/test_util_pipe.py where it loops at 100% cpu forever.
> > >
> > > ktrace:
> > > 5861148 46436 python3.10 CALL
> open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
> > > 5861149 46436 python3.10 RET open -1 errno 2 No such file or
> directory
> > > 5861150 46436 python3.10 CALL
> futex(0x803b2dc4ec0,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
> > > 5861151 46436 python3.10 RET futex 0
> > > 5861152 46436 python3.10 CALL
> futex(0x803b2dc8210,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
> > > 5861153 46436 python3.10 RET futex 0
> > > 5861154 46436 python3.10 CALL
> open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
> > > 5861155 46436 python3.10 RET open -1 errno 2 No such file or
> directory
> > >
> > > It seems not to hurt picard though.
> > >
> > > Best Regards,
> > > Stefan
> > >
> >
> > Thanks for the comments, I will take them into account for the next diff.
> >
> > Right now, I'm taking a look at Picard Github, to see what I can find
> that
> > gives an explanation to the problem indicated in the list.
>
> I just opened picard 20 times in a row and clicked around without a
> crash. I turned HW acceleration off in xorg.conf (amdgpu):
> Option "Accel" "off"
>
> With this option "on", roughly every third picard start would kill X.
>
> Is this the issue others are facing too, or did I stumble at something
> new?
>
> Best regards,
> Stefan
>

This seems to be the problem actually.

I trigger the bug after opening it 5-6 times in the same session.

With options -M (don't use the built-in player) the problem don't appear

>

Re: UPDATE: audio/picard-2.9.1

Jose Maldonado wrote (2023-08-31 09:21 CEST):
> El 31/8/23 a las 3:18, Stefan Hagen escribió:
> > Hi Jose,
> >
> > Jose Maldonado wrote (2023-08-31 08:26 CEST):
> > > Hi, this is my first contribution. Bump version for audio/picard to 2.9.1.
> > > All tested in amd64, not problems.
> >
> > You did a good job. For some reason your patch contained line breaks in
> > the PLIST that shouldn't be there. But no problem - I just regenerated
> > it.
> >
> > > +MODPY_EGG_VERSION = 2.9.1
> > > DISTNAME = picard-${MODPY_EGG_VERSION}
> > > REVISION = 0
> >
> > When the port version is bumped up, the REVISION can be removed.
> > Everything else looks fine to me.
> >
> > Diff below with the following changes:
> > - REVISION removed
> > - RUN_DEPENDS sorted
> > - Comment that pthread is needed, so the next person updating it won't
> > trip over it.
> >
> > A runtime test was successful.
> >
> > The test target runs to 38% and then get's stuck at
> > test/test_util_pipe.py where it loops at 100% cpu forever.
> >
> > ktrace:
> > 5861148 46436 python3.10 CALL open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
> > 5861149 46436 python3.10 RET open -1 errno 2 No such file or directory
> > 5861150 46436 python3.10 CALL futex(0x803b2dc4ec0,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
> > 5861151 46436 python3.10 RET futex 0
> > 5861152 46436 python3.10 CALL futex(0x803b2dc8210,0x82<FUTEX_WAKE|FUTEX_PRIVATE_FLAG>,1,0,0)
> > 5861153 46436 python3.10 RET futex 0
> > 5861154 46436 python3.10 CALL open(0x80316d14050,0x10000<O_RDONLY|O_CLOEXEC>)
> > 5861155 46436 python3.10 RET open -1 errno 2 No such file or directory
> >
> > It seems not to hurt picard though.
> >
> > Best Regards,
> > Stefan
> >
>
> Thanks for the comments, I will take them into account for the next diff.
>
> Right now, I'm taking a look at Picard Github, to see what I can find that
> gives an explanation to the problem indicated in the list.

I just opened picard 20 times in a row and clicked around without a
crash. I turned HW acceleration off in xorg.conf (amdgpu):
Option "Accel" "off"

With this option "on", roughly every third picard start would kill X.

Is this the issue others are facing too, or did I stumble at something
new?

Best regards,
Stefan

Re: pf state-table-induced instability

Dear David,

Thank you very much for all the new information!

I keep only those parts that I want to react.

>> It is not a fundamental issue, but it seems to me that during my tests not
>> only four but five CPU cores were used by IP packet forwarding:
> the packet processing is done in kernel threads (task queues are built
> on threads), and those threads could be scheduled on any cpu. the
> pf purge processing runs in yet another thread.
>
> iirc, the schedule scans down the list of cpus looking for an idle
> one when it needs to run stuff, except to avoid cpu0 if possible.
> this is why you see most of the system time on cpus 1 to 5.

Yes, I can confirm that any time I observed, CPU00 was not used by the
system tasks.

However, I remembered that PF was disabled during my stateless tests, so
I think its purge could not be the one that used CPU05. Now I repeated
the experiment, first disabling PF as follows:

dut# pfctl -d
pf disabled

And I can still see FIVE CPU cores used by system tasks:

load averages:  0.69,  0.29, 0.13                              
dut.cntrg 14:41:06
36 processes: 35 idle, 1 on processor up 0 days 00:03:46
CPU00 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 8.1% intr,
91.7% idle
CPU01 states:  0.0% user,  0.0% nice, 61.1% sys,  9.5% spin, 9.5% intr,
19.8% idle
CPU02 states:  0.0% user,  0.0% nice, 62.8% sys, 10.9% spin, 8.5% intr,
17.8% idle
CPU03 states:  0.0% user,  0.0% nice, 54.7% sys,  9.1% spin, 10.1% intr,
26.0% idle
CPU04 states:  0.0% user,  0.0% nice, 62.7% sys, 10.2% spin, 9.8% intr,
17.4% idle
CPU05 states:  0.0% user,  0.0% nice, 51.7% sys,  9.1% spin, 7.6% intr,
31.6% idle
CPU06 states:  0.2% user,  0.0% nice,  2.8% sys,  0.8% spin, 10.0% intr,
86.1% idle
CPU07 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 7.2% intr,
92.6% idle
CPU08 states:  0.0% user,  0.0% nice,  0.0% sys,  0.0% spin, 8.4% intr,
91.6% idle
CPU09 states:  0.0% user,  0.0% nice,  0.0% sys,  0.0% spin, 9.2% intr,
90.8% idle
CPU10 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 10.8% intr,
89.0% idle
CPU11 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 9.2% intr,
90.6% idle
CPU12 states:  0.0% user,  0.0% nice,  0.2% sys,  0.8% spin, 9.2% intr,
89.8% idle
CPU13 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 7.2% intr,
92.6% idle
CPU14 states:  0.0% user,  0.0% nice,  0.0% sys,  0.8% spin, 9.8% intr,
89.4% idle
CPU15 states:  0.0% user,  0.0% nice,  0.0% sys,  0.2% spin, 7.8% intr,
92.0% idle
Memory: Real: 34M/1546M act/tot Free: 122G Cache: 807M Swap: 0K/256M

I suspect that top shows an average (in a few seconds time window) and
perhaps one of the cores from CPU01 to CPU04 are skipped (e.g. because
it was used by the "top" command?), this is why I can see system load on
CPU05. (There is even some low amount of system load on CPU06.)


>> *Is there any way to completely delete its entire content?*
> hrm.
>
> so i just read the code again. "pfctl -F states" goes through the whole
> state table and unlinks the states from the red-black trees used for
> packet processing, and then marks them as unlinked so the purge process
> can immediately claim then as soon as they're scanned. this means that
> in terms of packet processing the tree is empty. the memory (which is
> what the state limit applies to) won't be reclaimed until the purge
> processing takes them.
>
> if you just wait 10 or so seconds after "pfctl -F states" then both the
> tree and state limits should be back to 0. you can watch pfctl -si,
> "systat pf", or the pfstate row in "systat pool" to confirm.
>
> you can change the scan interval with "set timeout interval" in pf.conf
> from 10s. no one fiddles with that though, so i'd put it back between
> runs to be representative of real world performance.

I usually wait 10s between the consecutive steps of the binary search of
my measurements to give the system a chance to relax (trying to ensure
that the steps are independent measurements). However, the timeout
interval of PF was set to 1 hour (using "set timeout interval 3600").
You may ask, why?

To have some well defined performance metrics, and to define repeatable
and reproducible measurements, we use the following tests:
- maximum connection establishment rate (during this test all test
frames result in a new connection)
- throughput with bidirectional traffic as required by RFC 2544 (during
this test no test frames result in a new connection, neither connection
time out happens -- a sufficiently high timeout could guarantee it)
- connection tear down performance (first loading N number of
connections and then deleting all connections in a single step and
measuring the execution time of the deletion: connection tear down rate
= N / deletion time of N connections)

It is a good question, how well the above performance metrics can
represent the "real word" performance of a stateful NAT64 implementation!

If you are interested (and have time) I would be happy to work together
with you in this area. We could publish a common paper, etc. Please let
me know, if you are open for that.

The focus of my current measurements is only to test and demonstrate if
using multiple IP addresses in stateless (RFC 2544) and stateful
benchmarking measurements makes a difference. And it definitely seems to
be so. :-)

(Now, I try to carry out the missing measurements and finish my paper
about the extension of siitperf with pseudorandom IP addresses ASAP.)

Best regards,

Gábor

Update: editors/qscintilla editors/py-qscintilla x11/py-sip-qt5 devel/py-qt-builder x11/py-qtpy

Update riverbankcomputing ecosystem and friends to the latest versio(s).
Looks and feels straight. Most changes in pyqt.

Feedback and OKs welcome.

Rafael

Index: editors/qscintilla/Makefile
===================================================================
RCS file: /cvs/ports/editors/qscintilla/Makefile,v
retrieving revision 1.33
diff -u -p -r1.33 Makefile
--- editors/qscintilla/Makefile 19 Aug 2022 23:54:16 -0000 1.33
+++ editors/qscintilla/Makefile 31 Aug 2023 13:55:58 -0000
@@ -1,13 +1,13 @@
COMMENT = Qt port of the Scintilla source code editor

# XXX update py-qscintilla alongside this port (same distfile).
-VERSION = 2.13.3
+VERSION = 2.14.1
DISTNAME = QScintilla_src-${VERSION}
PKGNAME = qscintilla-${VERSION}

CATEGORIES = editors x11

-SHARED_LIBS += qscintilla2_qt5 1.0 # 15.0
+SHARED_LIBS += qscintilla2_qt5 2.0 # 15.0

HOMEPAGE = https://www.riverbankcomputing.com/software/qscintilla/

Index: editors/qscintilla/distinfo
===================================================================
RCS file: /cvs/ports/editors/qscintilla/distinfo,v
retrieving revision 1.11
diff -u -p -r1.11 distinfo
--- editors/qscintilla/distinfo 14 Aug 2022 13:55:40 -0000 1.11
+++ editors/qscintilla/distinfo 31 Aug 2023 13:55:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (QScintilla_src-2.13.3.tar.gz) = cR0o43yPzKqCKejjmls7LZfz//xj2hC3HHG4T6Nkk5g=
-SIZE (QScintilla_src-2.13.3.tar.gz) = 3060031
+SHA256 (QScintilla_src-2.14.1.tar.gz) = 3+E8asydhd/Lp2zMgGHnGiI5V6bALzw0OzCp1DpM3U0=
+SIZE (QScintilla_src-2.14.1.tar.gz) = 3233610
Index: editors/qscintilla/pkg/PLIST
===================================================================
RCS file: /cvs/ports/editors/qscintilla/pkg/PLIST,v
retrieving revision 1.10
diff -u -p -r1.10 PLIST
--- editors/qscintilla/pkg/PLIST 11 Mar 2022 18:58:34 -0000 1.10
+++ editors/qscintilla/pkg/PLIST 31 Aug 2023 13:55:58 -0000
@@ -8,6 +8,7 @@ include/X11/qt5/Qsci/qscicommandset.h
include/X11/qt5/Qsci/qscidocument.h
include/X11/qt5/Qsci/qsciglobal.h
include/X11/qt5/Qsci/qscilexer.h
+include/X11/qt5/Qsci/qscilexerasm.h
include/X11/qt5/Qsci/qscilexeravs.h
include/X11/qt5/Qsci/qscilexerbash.h
include/X11/qt5/Qsci/qscilexerbatch.h
@@ -22,15 +23,19 @@ include/X11/qt5/Qsci/qscilexerdiff.h
include/X11/qt5/Qsci/qscilexeredifact.h
include/X11/qt5/Qsci/qscilexerfortran.h
include/X11/qt5/Qsci/qscilexerfortran77.h
+include/X11/qt5/Qsci/qscilexerhex.h
include/X11/qt5/Qsci/qscilexerhtml.h
include/X11/qt5/Qsci/qscilexeridl.h
+include/X11/qt5/Qsci/qscilexerintelhex.h
include/X11/qt5/Qsci/qscilexerjava.h
include/X11/qt5/Qsci/qscilexerjavascript.h
include/X11/qt5/Qsci/qscilexerjson.h
include/X11/qt5/Qsci/qscilexerlua.h
include/X11/qt5/Qsci/qscilexermakefile.h
include/X11/qt5/Qsci/qscilexermarkdown.h
+include/X11/qt5/Qsci/qscilexermasm.h
include/X11/qt5/Qsci/qscilexermatlab.h
+include/X11/qt5/Qsci/qscilexernasm.h
include/X11/qt5/Qsci/qscilexeroctave.h
include/X11/qt5/Qsci/qscilexerpascal.h
include/X11/qt5/Qsci/qscilexerperl.h
@@ -42,7 +47,9 @@ include/X11/qt5/Qsci/qscilexerpython.h
include/X11/qt5/Qsci/qscilexerruby.h
include/X11/qt5/Qsci/qscilexerspice.h
include/X11/qt5/Qsci/qscilexersql.h
+include/X11/qt5/Qsci/qscilexersrec.h
include/X11/qt5/Qsci/qscilexertcl.h
+include/X11/qt5/Qsci/qscilexertekhex.h
include/X11/qt5/Qsci/qscilexertex.h
include/X11/qt5/Qsci/qscilexerverilog.h
include/X11/qt5/Qsci/qscilexervhdl.h
@@ -64,6 +71,8 @@ lib/qt5/qsci/api/python/Python-2.5.api
lib/qt5/qsci/api/python/Python-2.6.api
lib/qt5/qsci/api/python/Python-2.7.api
lib/qt5/qsci/api/python/Python-3.1.api
+lib/qt5/qsci/api/python/Python-3.10.api
+lib/qt5/qsci/api/python/Python-3.11.api
lib/qt5/qsci/api/python/Python-3.2.api
lib/qt5/qsci/api/python/Python-3.3.api
lib/qt5/qsci/api/python/Python-3.4.api
Index: editors/py-qscintilla/Makefile
===================================================================
RCS file: /cvs/ports/editors/py-qscintilla/Makefile,v
retrieving revision 1.34
diff -u -p -r1.34 Makefile
--- editors/py-qscintilla/Makefile 13 Nov 2022 15:28:26 -0000 1.34
+++ editors/py-qscintilla/Makefile 31 Aug 2023 13:55:58 -0000
@@ -1,10 +1,9 @@
COMMENT = Python binding for the Scintilla source code editor

-VERSION = 2.13.3
+VERSION = 2.14.1
MODPY_EGG_VERSION = ${VERSION}
DISTNAME = QScintilla_src-${VERSION}
PKGNAME = py-qscintilla-${VERSION}
-REVISION = 1

CATEGORIES = editors x11 devel

Index: editors/py-qscintilla/distinfo
===================================================================
RCS file: /cvs/ports/editors/py-qscintilla/distinfo,v
retrieving revision 1.9
diff -u -p -r1.9 distinfo
--- editors/py-qscintilla/distinfo 14 Aug 2022 13:55:40 -0000 1.9
+++ editors/py-qscintilla/distinfo 31 Aug 2023 13:55:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (QScintilla_src-2.13.3.tar.gz) = cR0o43yPzKqCKejjmls7LZfz//xj2hC3HHG4T6Nkk5g=
-SIZE (QScintilla_src-2.13.3.tar.gz) = 3060031
+SHA256 (QScintilla_src-2.14.1.tar.gz) = 3+E8asydhd/Lp2zMgGHnGiI5V6bALzw0OzCp1DpM3U0=
+SIZE (QScintilla_src-2.14.1.tar.gz) = 3233610
Index: editors/py-qscintilla/pkg/PLIST
===================================================================
RCS file: /cvs/ports/editors/py-qscintilla/pkg/PLIST,v
retrieving revision 1.10
diff -u -p -r1.10 PLIST
--- editors/py-qscintilla/pkg/PLIST 11 Mar 2022 18:58:33 -0000 1.10
+++ editors/py-qscintilla/pkg/PLIST 31 Aug 2023 13:55:58 -0000
@@ -15,6 +15,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscicommandset.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscidocument.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexer.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerasm.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexeravs.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerbash.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerbatch.sip
@@ -28,15 +29,19 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerdiff.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerfortran.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerfortran77.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerhex.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerhtml.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexeridl.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerintelhex.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerjava.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerjavascript.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerjson.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerlua.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexermakefile.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexermarkdown.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexermasm.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexermatlab.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexernasm.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexeroctave.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerpascal.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerperl.sip
@@ -48,7 +53,9 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerruby.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerspice.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexersql.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexersrec.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexertcl.sip
+lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexertekhex.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexertex.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexerverilog.sip
lib/python${MODPY_VERSION}/site-packages/${PYQTVER}/bindings/Qsci/qscilexervhdl.sip
Index: x11/py-sip-qt5/Makefile
===================================================================
RCS file: /cvs/ports/x11/py-sip-qt5/Makefile,v
retrieving revision 1.12
diff -u -p -r1.12 Makefile
--- x11/py-sip-qt5/Makefile 25 Nov 2022 21:11:43 -0000 1.12
+++ x11/py-sip-qt5/Makefile 31 Aug 2023 13:55:58 -0000
@@ -1,12 +1,12 @@
COMMENT= sip module support for PyQt5

-MODPY_EGG_VERSION= 12.11.0
+MODPY_EGG_VERSION= 12.12.2

DISTNAME= PyQt5_sip-${MODPY_EGG_VERSION}
PKGNAME= py-${DISTNAME:L}
-REVISION= 1

WANTLIB = pthread
+
CATEGORIES= x11

HOMEPAGE= https://www.riverbankcomputing.com/software/sip/
Index: x11/py-sip-qt5/distinfo
===================================================================
RCS file: /cvs/ports/x11/py-sip-qt5/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- x11/py-sip-qt5/distinfo 14 Aug 2022 13:55:41 -0000 1.5
+++ x11/py-sip-qt5/distinfo 31 Aug 2023 13:55:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (PyQt5_sip-12.11.0.tar.gz) = tHEP2FtX7e9xbMVfrkW/1b+sb8e6kQNvHcw/Mxyg6zk=
-SIZE (PyQt5_sip-12.11.0.tar.gz) = 122792
+SHA256 (PyQt5_sip-12.12.2.tar.gz) = ENm/qfWfD9HK2Bvhh0eTFv/JVoT1c+/qlFEstCV9Kxc=
+SIZE (PyQt5_sip-12.12.2.tar.gz) = 123020
Index: devel/py-qt-builder/Makefile
===================================================================
RCS file: /cvs/ports/devel/py-qt-builder/Makefile,v
retrieving revision 1.11
diff -u -p -r1.11 Makefile
--- devel/py-qt-builder/Makefile 26 Nov 2022 15:02:55 -0000 1.11
+++ devel/py-qt-builder/Makefile 31 Aug 2023 13:55:58 -0000
@@ -1,10 +1,9 @@
COMMENT= PEP 517 compliant PyQt build system

-MODPY_EGG_VERSION= 1.13.0
+MODPY_EGG_VERSION= 1.15.2

DISTNAME= PyQt-builder-${MODPY_EGG_VERSION}
PKGNAME= py-qt-builder-${MODPY_EGG_VERSION}
-REVISION= 1

CATEGORIES= devel

Index: devel/py-qt-builder/distinfo
===================================================================
RCS file: /cvs/ports/devel/py-qt-builder/distinfo,v
retrieving revision 1.6
diff -u -p -r1.6 distinfo
--- devel/py-qt-builder/distinfo 14 Aug 2022 13:55:40 -0000 1.6
+++ devel/py-qt-builder/distinfo 31 Aug 2023 13:55:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (PyQt-builder-1.13.0.tar.gz) = SHdYDDjOtTIOEps4HQg7CoYBxoFm2LmXB/CPoKFonu8=
-SIZE (PyQt-builder-1.13.0.tar.gz) = 3906564
+SHA256 (PyQt-builder-1.15.2.tar.gz) = dGz+g8A+v/RFjUeKHAZxR5Dvk+RY7NWii8KDe6yI63Q=
+SIZE (PyQt-builder-1.15.2.tar.gz) = 3908851
Index: x11/py-qtpy/Makefile
===================================================================
RCS file: /cvs/ports/x11/py-qtpy/Makefile,v
retrieving revision 1.19
diff -u -p -r1.19 Makefile
--- x11/py-qtpy/Makefile 25 Nov 2022 21:11:43 -0000 1.19
+++ x11/py-qtpy/Makefile 31 Aug 2023 13:55:58 -0000
@@ -1,10 +1,9 @@
COMMENT = provides an abstraction layer of various Qt bindings

-MODPY_EGG_VERSION = 2.1.0
+MODPY_EGG_VERSION = 2.4.0
DISTNAME = QtPy-${MODPY_EGG_VERSION}
PKGNAME = py-qtpy-${MODPY_EGG_VERSION}
CATEGORIES = x11
-REVISION = 1

HOMEPAGE = https://github.com/spyder-ide/qtpy

Index: x11/py-qtpy/distinfo
===================================================================
RCS file: /cvs/ports/x11/py-qtpy/distinfo,v
retrieving revision 1.9
diff -u -p -r1.9 distinfo
--- x11/py-qtpy/distinfo 14 Aug 2022 13:55:41 -0000 1.9
+++ x11/py-qtpy/distinfo 31 Aug 2023 13:55:58 -0000
@@ -1,2 +1,2 @@
-SHA256 (QtPy-2.1.0.tar.gz) = yozUIXF1GGNEKZ7kwPfnrc82LHCFK6NbJVpTQHcCXAY=
-SIZE (QtPy-2.1.0.tar.gz) = 46470
+SHA256 (QtPy-2.4.0.tar.gz) = 2y1QgWeqYQZ4FWXI2lxvFIfeusujNRnO3DX6iZfUJNQ=
+SIZE (QtPy-2.4.0.tar.gz) = 65007
Index: x11/py-qtpy/pkg/PLIST
===================================================================
RCS file: /cvs/ports/x11/py-qtpy/pkg/PLIST,v
retrieving revision 1.9
diff -u -p -r1.9 PLIST
--- x11/py-qtpy/pkg/PLIST 25 Nov 2022 21:11:43 -0000 1.9
+++ x11/py-qtpy/pkg/PLIST 31 Aug 2023 13:55:58 -0000
@@ -9,13 +9,17 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/QtPy-${MODPY_EGG_VERSION}.dist-info/entry_points.txt
lib/python${MODPY_VERSION}/site-packages/QtPy-${MODPY_EGG_VERSION}.dist-info/top_level.txt
lib/python${MODPY_VERSION}/site-packages/qtpy/
+lib/python${MODPY_VERSION}/site-packages/qtpy/Qsci.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DAnimation.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DCore.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DExtras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DInput.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DLogic.py
lib/python${MODPY_VERSION}/site-packages/qtpy/Qt3DRender.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtAxContainer.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtBluetooth.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtCharts.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtConcurrent.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtCore.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtDBus.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtDataVisualization.py
@@ -23,24 +27,35 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/QtGui.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtHelp.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtLocation.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtMacExtras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtMultimedia.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtMultimediaWidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtNetwork.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtNetworkAuth.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtNfc.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtOpenGL.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtOpenGLWidgets.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtPdf.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtPdfWidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtPositioning.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtPrintSupport.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtPurchasing.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtQml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtQuick.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtQuick3D.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtQuickControls2.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtQuickWidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtRemoteObjects.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtScxml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtSensors.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtSerialPort.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtSql.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtStateMachine.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtSvg.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtSvgWidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtTest.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtTextToSpeech.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtUiTools.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWebChannel.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWebEngine.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWebEngineCore.py
@@ -49,11 +64,14 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWebSockets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtWinExtras.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/QtX11Extras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtXml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/QtXmlPatterns.py
lib/python${MODPY_VERSION}/site-packages/qtpy/__init__.py
lib/python${MODPY_VERSION}/site-packages/qtpy/__main__.py
${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}/
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qsci.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qsci.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DAnimation.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DAnimation.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DCore.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -66,8 +84,14 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DLogic.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DRender.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}Qt3DRender.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtAxContainer.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtAxContainer.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtBluetooth.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtBluetooth.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtCharts.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtCharts.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtConcurrent.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtConcurrent.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtCore.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtCore.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtDBus.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -82,6 +106,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtHelp.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtLocation.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtLocation.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtMacExtras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtMacExtras.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtMultimedia.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtMultimedia.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtMultimediaWidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -90,34 +116,54 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtNetwork.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtNetworkAuth.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtNetworkAuth.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtNfc.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtNfc.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtOpenGL.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtOpenGL.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtOpenGLWidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtOpenGLWidgets.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPdf.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPdf.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPdfWidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPdfWidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPositioning.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPositioning.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPrintSupport.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPrintSupport.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPurchasing.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtPurchasing.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuick.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuick.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuick3D.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuick3D.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuickControls2.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuickControls2.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuickWidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtQuickWidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtRemoteObjects.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtRemoteObjects.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtScxml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtScxml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSensors.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSensors.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSerialPort.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSerialPort.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSql.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSql.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtStateMachine.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtStateMachine.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSvg.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSvg.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSvgWidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtSvgWidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtTest.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtTest.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtTextToSpeech.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtTextToSpeech.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtUiTools.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtUiTools.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWebChannel.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWebChannel.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWebEngine.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -134,6 +180,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWinExtras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtWinExtras.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtX11Extras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtX11Extras.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtXml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtXml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}QtXmlPatterns.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -142,20 +190,26 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}__main__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}__main__.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}_utils.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}_utils.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}cli.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}cli.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}compat.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}compat.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}enums_compat.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}enums_compat.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}shiboken.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}shiboken.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}sip.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}sip.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}uic.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/${MODPY_PYCACHE}uic.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/_utils.py
lib/python${MODPY_VERSION}/site-packages/qtpy/cli.py
lib/python${MODPY_VERSION}/site-packages/qtpy/compat.py
lib/python${MODPY_VERSION}/site-packages/qtpy/enums_compat.py
lib/python${MODPY_VERSION}/site-packages/qtpy/py.typed
+lib/python${MODPY_VERSION}/site-packages/qtpy/shiboken.py
lib/python${MODPY_VERSION}/site-packages/qtpy/sip.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/__init__.py
@@ -166,12 +220,18 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}conftest.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_cli.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_cli.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_compat.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_compat.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_macos_checks.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_macos_checks.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_main.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_main.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_missing_optional_deps.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_missing_optional_deps.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qdesktopservice_split.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qdesktopservice_split.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qsci.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qsci.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3danimation.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3danimation.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3dcore.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -184,8 +244,14 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3dlogic.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3drender.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qt3drender.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtaxcontainer.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtaxcontainer.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtbluetooth.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtbluetooth.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtcharts.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtcharts.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtconcurrent.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtconcurrent.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtcore.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtcore.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtdatavisualization.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -200,6 +266,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qthelp.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtlocation.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtlocation.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtmacextras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtmacextras.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtmultimedia.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtmultimedia.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtmultimediawidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -212,30 +280,48 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtopengl.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtopenglwidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtopenglwidgets.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpdf.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpdf.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpdfwidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpdfwidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpositioning.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpositioning.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtprintsupport.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtprintsupport.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpurchasing.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtpurchasing.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtqml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtqml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquick.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquick.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquick3d.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquick3d.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquickcontrols2.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquickcontrols2.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquickwidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtquickwidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtremoteobjects.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtremoteobjects.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtscxml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtscxml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsensors.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsensors.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtserialport.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtserialport.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsql.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsql.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtstatemachine.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtstatemachine.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsvg.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsvg.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsvgwidgets.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtsvgwidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qttest.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qttest.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qttexttospeech.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qttexttospeech.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtuitools.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtuitools.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwebchannel.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwebchannel.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwebenginecore.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -250,28 +336,48 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwidgets.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwinextras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtwinextras.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtx11extras.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtx11extras.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtxml.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtxml.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtxmlpatterns.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_qtxmlpatterns.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_shiboken.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_shiboken.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_sip.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_sip.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_uic.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}test_uic.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/${MODPY_PYCACHE}utils.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/conftest.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/__init__.py
+${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/${MODPY_PYCACHE}/
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/${MODPY_PYCACHE}optional_dep.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/${MODPY_PYCACHE}optional_dep.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/optional_deps/optional_dep.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test.ui
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_cli.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_compat.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_custom.ui
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_macos_checks.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_main.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_missing_optional_deps.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qdesktopservice_split.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qsci.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3danimation.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3dcore.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3dextras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3dinput.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3dlogic.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qt3drender.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtaxcontainer.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtbluetooth.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtcharts.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtconcurrent.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtcore.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtdatavisualization.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtdbus.py
@@ -279,24 +385,34 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtgui.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qthelp.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtlocation.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtmacextras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtmultimedia.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtmultimediawidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtnetwork.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtnetworkauth.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtopengl.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtopenglwidgets.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtpdf.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtpdfwidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtpositioning.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtprintsupport.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtpurchasing.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtqml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtquick.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtquick3d.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtquickcontrols2.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtquickwidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtremoteobjects.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtscxml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtsensors.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtserialport.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtsql.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtstatemachine.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtsvg.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtsvgwidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qttest.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qttexttospeech.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtuitools.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwebchannel.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwebenginecore.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwebenginequick.py
@@ -304,8 +420,11 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwebsockets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwidgets.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtwinextras.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtx11extras.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtxml.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_qtxmlpatterns.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_shiboken.py
+lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_sip.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/test_uic.py
lib/python${MODPY_VERSION}/site-packages/qtpy/tests/utils.py
lib/python${MODPY_VERSION}/site-packages/qtpy/uic.py

Re: OT: Github requiring 2FA auth, meaning

There is no doubt they trained Copilot on OpenBSD code, it has a git
mirror on Github, why wouldn't they train their AI models on it?

I am pretty sure there is still a planned lawsuit against them for
infringement of GPL code, as they trained the AI model on open source
projects without considering the licence, and they knew this because if
you checked the disclaimer on Copilot, it stated there is a chance that
code could simply be copied by Copilot, although they reassured this was
rare.

The most recent mention I could find on this was:

https://www.theregister.com/2023/05/12/github_microsoft_openai_copilot/

But I am not sure how accurate this is.

But, Microsoft do have a leg to stand on here, as part of the agreement
you make when you push code to Github, you give them a certain portions
of your rights, such as being able to read and store said code,
regardless of the rights you reserve. But then again this does not give
them the right to train proprietary models off said code and then sell
for a subscription fee of $10/month, what a joke!

Take care,
--
Polarian
GPG signature: 0770E5312238C760
Website: https://polarian.dev
JID/XMPP: polarian@icebound.dev

Re: OT: Github requiring 2FA auth, meaning

Well Microsoft gives a lot of money into Open Source, Linux wouldn't be
where it is today without the countless number of patches from Microsoft
and the massive funding they have provided.

But there is a difference, accepting donations or patches from Microsoft
is not a big deal, you are the one in control there (unless of course
they make you sign a NDA or another contract which limits your rights
and control), however when you use github, you are the one signing your
rights away to Microsoft, not the other way around.

Its not so much a vendetta against the company, although I know many
people here will quite happily pull Microsoft through the dirt, but its
more the fact that people do not trust Microsoft with power and thus as
long as you are the one in control, why should you care?

So yes it is valid not trusting Microsoft with your source code, while
at the same time, accepting donations from said company.

Take care,
--
Polarian
GPG signature: 0770E5312238C760
Website: https://polarian.dev
JID/XMPP: polarian@icebound.dev

UPDATE: qsynth-0.9.11

Simple update qsynth to 0.9.11. This update need audio/fluidsynth>=2.3.2
(checkout ports@) and runtime tests.

Looking forward to read positive feedback.

Cheers Rafael

Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/qsynth/Makefile,v
retrieving revision 1.18
diff -u -p -u -p -r1.18 Makefile
--- Makefile 24 Apr 2023 11:40:35 -0000 1.18
+++ Makefile 31 Aug 2023 12:43:42 -0000
@@ -1,7 +1,6 @@
COMMENT = Qt GUI Interface for FluidSynth

-DISTNAME = qsynth-0.6.3
-REVISION = 0
+DISTNAME = qsynth-0.9.11

CATEGORIES = audio

@@ -14,24 +13,19 @@ PERMIT_PACKAGE = Yes

MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=qsynth/}

-WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5Gui Qt5Widgets c
-WANTLIB += m fluidsynth GL Qt5Network curses readline
+WANTLIB += ${COMPILER_LIBCXX} GL Qt6Core Qt6Gui Qt6Network Qt6Svg
+WANTLIB += Qt6Widgets c fluidsynth m

-MODULES = x11/qt5
+MODULES = x11/qt6 \
+ devel/cmake

-LIB_DEPENDS += audio/fluidsynth
+LIB_DEPENDS += audio/fluidsynth>=2.3.2 \
+ x11/qt6/qtsvg

RUN_DEPENDS += devel/desktop-file-utils \
x11/gtk+4,-guic

-USE_GMAKE = Yes
NO_TEST = Yes
-
-CONFIGURE_STYLE = gnu
-
-CONFIGURE_ENV += CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
- LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib -L${X11BASE}/lib" \
- ac_cv_path_ac_qmake="${MODQT_QMAKE}"

.if ${MACHINE_ARCH} == "hppa"
WANTLIB += atomic
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/qsynth/distinfo,v
retrieving revision 1.11
diff -u -p -u -p -r1.11 distinfo
--- distinfo 17 Aug 2020 19:39:40 -0000 1.11
+++ distinfo 31 Aug 2023 12:43:42 -0000
@@ -1,2 +1,2 @@
-SHA256 (qsynth-0.6.3.tar.gz) = G1cz01tLJGedWYEs+aXzFSrAx4BGuh23GHDLfv+tOHY=
-SIZE (qsynth-0.6.3.tar.gz) = 382990
+SHA256 (qsynth-0.9.11.tar.gz) = KTMN2e9Sssb+V48k8b2b6IFE6qO6yXxGdtYwkULX7Bs=
+SIZE (qsynth-0.9.11.tar.gz) = 333402
Index: patches/patch-Makefile_in
===================================================================
RCS file: patches/patch-Makefile_in
diff -N patches/patch-Makefile_in
--- patches/patch-Makefile_in 11 Mar 2022 18:20:29 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,27 +0,0 @@
-Don't compress manpages, also install(1) has no -v option
-
-Index: Makefile.in
---- Makefile.in.orig
-+++ Makefile.in
-@@ -109,16 +109,15 @@ translations_lrelease: translations_lupdate $(translat
-
- install: $(target) translations_lrelease $(name).1
- @$(MAKE) INSTALL_ROOT=$(DESTDIR) -f $(name).mak install
-- @install -d -v -m 0755 $(DESTDIR)$(translations_dir)
-- @install -d -v -m 0755 $(DESTDIR)$(mandir)/man1
-- @install -v -m 0644 $(translations_targets) $(DESTDIR)$(translations_dir)
-- @install -v -m 0644 $(name)*.1 $(DESTDIR)$(mandir)/man1
-- @gzip -nvf $(DESTDIR)$(mandir)/man1/$(name)*.1
-+ @install -d -m 0755 $(DESTDIR)$(translations_dir)
-+ @install -d -m 0755 $(DESTDIR)$(mandir)/man1
-+ @install -m 0644 $(translations_targets) $(DESTDIR)$(translations_dir)
-+ @install -m 0644 $(name)*.1 $(DESTDIR)$(mandir)/man1
-
- uninstall: $(DESTDIR)$(prefix)/bin/$(name)
- @$(MAKE) INSTALL_ROOT=$(DESTDIR) -f $(name).mak uninstall
- @rm -rvf $(DESTDIR)$(translations_dir)
-- @rm -vf $(DESTDIR)$(mandir)/man1/$(name)*.1.gz
-+ @rm -vf $(DESTDIR)$(mandir)/man1/$(name)*.1
-
-
- clean: $(name).mak
Index: patches/patch-src_qsynthChannelsForm_cpp
===================================================================
RCS file: patches/patch-src_qsynthChannelsForm_cpp
diff -N patches/patch-src_qsynthChannelsForm_cpp
--- patches/patch-src_qsynthChannelsForm_cpp 11 Mar 2022 18:20:29 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,16 +0,0 @@
-Index: src/qsynthChannelsForm.cpp
---- src/qsynthChannelsForm.cpp.orig
-+++ src/qsynthChannelsForm.cpp
-@@ -281,10 +281,12 @@ void qsynthChannelsForm::updateChannel ( int iChan )
- pItem->setText(QSYNTH_CHANNELS_PROG,
- QString::number(iProg));
- pItem->setText(QSYNTH_CHANNELS_NAME, sName);
-+ #ifdef CONFIG_FLUID_BANK_OFFSET
- pItem->setText(QSYNTH_CHANNELS_SFID,
- QString::number(iSFID));
- pItem->setText(QSYNTH_CHANNELS_SFNAME,
- QFileInfo(sSFName).baseName());
-+