If I call e.g. url('users/activate', [], true), then it returns this url: https://:/users/activate. Why doesn't it insert the host name there? I tried with URL::secure too, nothing changed.
EDIT: It only does it, if I'm calling url() from a Job
Is your job queued? I'm not familiar with Lumen, but generally speaking, inside a queued job, or any environment outside the normal request lifecycle, the current request doesn't exist. Probably, the url helper tries to use the current request to get the host name but can't find it.
In Laravel, you can set the host name in your configuration, however, I'm not sure about Lumen.