An awesome contributor implemented programmatic Project.toml creation in Genie - but now the corresponding test breaks in Julia v1.7. It’s this line:
Pkg.project(Pkg.API.Context(), name, tmpdir) # generate tmp
in Genie.jl/Generator.jl at f04988dc1c988767963ad8dcff80c36e58bebbf0 · GenieFramework/Genie.jl · GitHub
Is it meant to be breaking and how can the same functionality be achieved in v1.7?
You are reaching pretty far into internals there so I wouldn’t call it breaking.
Why not just use the TOML stdlib and use TOML.print instead?
It’s user contributed and I’m trying to digest the whole thing but I’m not familiar with the APIs.
TOML.print seems to require writing the Project.toml by hand? Is there a way to hook into the current Pkg API to replicate the old functionality?
In v1.6 the line Pkg.project(Pkg.API.Context(), name, "zetempdir") generates the full Project.toml file (including folders creation):
OK, I just git blamed the file in Pkg and stol… ehem, borrowed the old Pkg.project and related API into Genie.Generate 
Also it looks like 1.7 breaks something in Revise
WARNING: Method definition Any() in module Revise at C:\Users\adria\.julia\packages\Revise\9lZUE\src\types.jl:272 overwritten on the same line (check for duplicate calls to `include`)