wallabyjs / public

Repository for Wallaby.js questions and issues
http://wallabyjs.com
760 stars 45 forks source link

Add support for open source license to work with nested projects #2521

Open guybarnard opened 4 years ago

guybarnard commented 4 years ago

Thanks for offering wallaby free for OSS projects. I am getting the error message "Wallaby.js has been stopped because your project is not associated with a valid GitHub project." I am not sure what is invalid about the project as it was validated as an open source in a previous Wallaby message but one thing to note is that it is a mono repository with a set of meta packages downloaded from other open source packages using https://github.com/mateodelnorte/meta.

It also worked fine with a trial license of wallaby.js

smcenlly commented 4 years ago

Can you please provide us with the URL of the open source project you are using?

Wallaby's OSS license does not currently support git submodules or mono-repos with nested git repositories (note: the trial version of Wallaby and paid version of Wallaby support both).

The meta tool creates nested projects, each with their own git repository, which is likely why Wallaby isn't working for you.

guybarnard commented 4 years ago

Ok, these are not git submodules, but yes the nested projects do each have their own git repository so that is the problem. It would be great to support nested repositories if each is OSS with a valid license, but I understand the paid version supports this.

jakobrosenberg commented 3 years ago

Thanks for providing Wallaby to the OSS community.

My use case: I maintain 10+ OSS libraries that are interconnected and part of my workspace folder. Working on them in isolation is not an option for me.

I hope this feature request materializes. 🤞

BeSpunky commented 3 years ago

I don't have nested Git repos, however my problem feels related: Automatic config works. As soon as I add a manual wallaby.js file I see the error message. I remove wallaby.js and it starts again.

Does that mean that my project IS valid, and my config file is has a problem?

Here's my repo: @bespunky/angular-google-maps

smcenlly commented 3 years ago

@BeSpunky - Could you please try cloning your repo to a fresh directory and try again?

BeSpunky commented 3 years ago

I resolved the issue by:

  1. Moving my wallaby.js to the root workspace folder (not the library project folder).
  2. Cleaning the file.
  3. Adding autoDetect: true.
  4. Adding the file I wanted to include in the tests.
  5. Select the config file in VSCode: Ctrl+Shift+P > Wallaby.js: Select Configuration > wallaby.js.

I should mention this is an Angular 11 workspace.

image

Here's my working file:

module.exports = () =>
{
    return ({
        autoDetect: true,
        files: [
            'projects/bespunky/angular-google-maps/testing/google-maps-api.js'
        ]
    });
};
smcenlly commented 3 years ago

Note: this issue also affects nested projects in a mono-repo.

ghost commented 3 years ago

Any update? Different workflows shouldn't invalidate a license

smcenlly commented 3 years ago

We don't have an exact ETA that we can share at this time but the issue is prioritised in our backlog. At this stage, I expect we will add support for nested GitHub repos within the next 2-3 months.

davidzwa commented 2 years ago

Just wanted to let you know that this issue is currently holding me back from using Wallaby at all.

My FOSS project is completely nested and I dont want to change that because of a support tool. I cannot get Wallaby to automatically or config-based pick up any tests with the error:

Automatic Jest configuration error: Module jest-cli is not found in '.'.

We've also tried to automatically configure Wallaby.js for other frameworks
Automatic Vitest configuration error: Vitest dependency not found.

https://github.com/fdm-monster/fdm-monster