Skip to content

Speed up make check ~5x#459

Merged
Victor Schappert (vcschapp) merged 1 commit intodevfrom
speed-up-tests
Mar 9, 2026
Merged

Speed up make check ~5x#459
Victor Schappert (vcschapp) merged 1 commit intodevfrom
speed-up-tests

Conversation

@mojodna
Copy link
Collaborator

Run test, doctest, lint, and mypy targets in parallel via make -j, and replace the geometry type powerset (127 subsets) with representative subsets (singletons + pairs + full = 28 subsets).

Changes

Makefile: Split each check target into a -only variant (no uv-sync dep) so make -j can run them concurrently. check does a single uv-sync upfront, then fans out.

test_geom.py: Replace powerset enumeration with singletons, pairs, and the full set. Covers individual type acceptance/rejection, pairwise composition, and unconstrained acceptance without combinatorial explosion.

Geometry constraint tests: replace full powerset (127 subsets of 7
geometry types) with singletons + pairs + full set (29 subsets).
GeometryTypeConstraint is a set-membership check — combinatorial
testing beyond pairs exercises no additional code paths.

Makefile: run pytest, doctest, ruff, and mypy concurrently via
make -j after a single upfront uv-sync. Added -only variants
(no uv-sync dep) for the parallel invocation; standalone targets
preserved with their original uv-sync dependencies.
@vcschapp
Copy link
Collaborator

replace the geometry type powerset (127 subsets) with representative subsets (singletons + pairs + full = 28 subsets)

Thanks for this - it's been on my agenda for a while and I've been too lazy to this point.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

She's the ship that did $ make check in under 12 parsecs!

	Millenium Falcon


                           ____          ____
                          / --.|        |.-- \
                         /,---||        ||---.\
                        //    ||        ||    \\
                       //     ||        ||     \\
                      // __   ||        ||   __ \\
                     //,'  `. ||        || ,'||`.\\
                    //( \`--|)||        ||( \'|  )\\
                   //  `.-_,' ||________|| `.-_,'  \\
                  //        | ||   _|   ||          \\
                 //         | || | .. | ||           \\
                //          | || | :: | ||            \\
               /    __     888|| |  _ | ||        __    \
              /   ,'|_'. _ 888|| |  | | ||  _   ,'-.`.   \
             /   ( ,-._ | |888|| | -| | || |_| (   |==)   \
            /     `O__,'|_|8@ || | [| | |@ |_|  `._|,'     \
           /            __..|--| | )| | |--|_|__            \           ,==.
          /      __,--''      |  |  | |  |      ``--.__      \         //[]\\
         /    ,::::'          |-=|  | |  |::::..       `-.    \       //||||\\
        /  ,-':::::       ..::|  | /| |  |::::::::        `-.  \     ||,'  `.||
       / ,'    ''       ::::::|  | \| |  |  ''::::     oo    `. \    |--------|
      /,'           ,'\ :::'''|] |  | |  |   ....    o8888o    `.\   |:::_[[[[]
     /'           ,'   )      |> |  | | [|  ::::::     88888  ..  \  |    |   ]
    /           ,'     |      |] |=_| | [|  '::::'oo     8   ::::  \-'    |---|
   .'     o   ,'    \_/       | :| \| |.[|      o8888o        ::;-'      ,'   |
  ,'     o88,'   `._/:\|      | :|  | |: |     88888888      ,-'  \  _,-'     |
  |     8888 ``--'|::::|      |_:|  | |:_|       8888     ,-'   \ ,-'   .::_,-'
 ,'    8888      ''--""      || || [| || ||            ,-'    _,-'   \ _::'
 |                           || |_,--._| ||         ,-'  \ ,-'     _,-'
 |                           |__(______)__|      ,-'   _,-' .::_,-'   |
|'                  88o     =====,,--..=====  .-'   ,-' \  _::'       `|
|                  888888o    ,-'\    /`-.     \ \-' . _,-'            |
`---._____        888888888 ,' / [HHHH[=====-   \ |_::'       _____.---'
  __|_____`=======._____   /   \ [HHHH[=====-    `'__.======='_____|__
 {I |  _______________ || /    /\/____\/\:.  \ || _______________  | I}
 [I |  :___]__[_______ ||(    /   _.._   \:.  )|| ______]___[___:  | I]
 {I_|____________o8o___|| \  /:  /\  /\   \: / ||__________________|_I}
    |_____,------'         \/:'  \ \/ /    \/:..   88`-------._____|
.---'   ::::::              `.   [||||]   ,'  '::..                `---.
|          '::..::        ,'  `-.      ,-'  `.  ':'                    |
|.        .:::''        ,' __    ``--''    __ `.     .::.             ,|
 |        '''         ,' ,'||`.    __    ,'||`. `.    '::::.          |
 |                  ,'  (||||||) ,'||`. (||||||) 88.    '::::.        |
 `.               ,'     `.||,' (||||||) `.||,' 88888.    ':'        ,'
  |             ,'      __       `.||,'       __  88  `.             |
  `.          ,'      ,'||`.       __       ,'||`.      `.          ,'
   `.       ,'       (||||||)    ,'||`.    (||||||)       `.       ,'
     \    ,'          `.||,'    (||||||)    `.||,'          `.    /
      `.  |                      `.||,'                      |  ,'
        `-|                                                  |-'
          `.   ,'.                                    .`.   ,'
            `-:,'o88o ,/                        \.     `.;-'
               `-888 //      /     ||ooo  \ oo88 \\ __,-'   Joe Reiss
                    `--..__ /'     ||888  `\ oo8;--'
                           ```-----''-----''''

@vcschapp Victor Schappert (vcschapp) merged commit c4c0ebe into dev Mar 9, 2026
2 of 4 checks passed
@vcschapp Victor Schappert (vcschapp) deleted the speed-up-tests branch March 9, 2026 23:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants