Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not fetching projects from TC anymore in Firefox #148

Open
bw908 opened this issue Dec 5, 2024 · 5 comments
Open

Not fetching projects from TC anymore in Firefox #148

bw908 opened this issue Dec 5, 2024 · 5 comments

Comments

@bw908
Copy link

bw908 commented Dec 5, 2024

I've been using this extension for a while on Linux, and added it to my windows Firefox install today.
Unfortunately, it no longer works - I added a TeamCity service but when clicking "show" all I get is
TypeError: NetworkError when attempting to fetch resource.

There is no error reported in the debugging console and no network traffic on the Network monitor, just an info item with some logging:

options availableProjects  >Object { name: "availableProjects", serviceSettings: {…} }

which contains the settings I had put in the UI.

My Linux install also "forgot" its working configuration at some point and suffers from a similar inability to connect to TC now. I tried going back to the previous version in case something broke in the 5.0.0 release, but no success, same problem.

@AdamNowotny
Copy link
Owner

The configuration reset is expected with the major update to 4.0.0. Sorry about that - Google now requires manifest v3 and I had to essentially rewrite the whole app and adding config migration would delay things even further.
You could try building locally from v3.0.0 tag to force the older version (npm run dist)

Does the problem only happen on Firefox or Chrome/Brave as well?
I have just tried connecting to https://teamcity.jetbrains.com/ using latest build on Brave/Linux and it got the available projects just fine. At the very minimum there should be some network request coming out.
It looks like the UI never got a response from the background service worker - there should be something like

service-worker messaging.handleMessage {name: 'availableProjects', serviceSettings: {…}}

@bw908
Copy link
Author

bw908 commented Dec 6, 2024

Thanks for the response!

Yes, it seems to work fine on Chrome but I'm trying to move away from that - the manifest V3 BS completely breaks extensions like uBlock/uMatrix. 😠

I definitely don't see anything on the "network" traffic tab in the inspector in Firefox (but it does show in Chrome). I do see the logged item you refer to in the console, but the contained "Pipelines" array is empty.

The "Network Error" is shown almost immediately when clicking the "show" button which suggests to me something is blocking it at the local level - but I'm not sure what. I tried with all other extensions disabled in case one was interfering.

@AdamNowotny
Copy link
Owner

Alright, good to know it works in Chrome. I generally do the testing in Brave and only basic in Firefox so I'll need to look into it. Thanks for letting me know. Hopefully it's an easy fix. If not then perhaps Firefox will need manifest v2 which will take a bit longer.
As a quick workaround, you can downgrade to version 3.0.1 and install the extension locally (you need to switch extensions to develop mode) - you can download the build at https://github.com/AdamNowotny/BuildReactor/releases/tag/v3.0.1

Yeah it was quite a lot of work with the manifest v3 but it's the only version Chrome Webstore now allows to be published so it was either that or take down the extension completely.

@AdamNowotny
Copy link
Owner

Had a closer look at this but I can't reproduce the issue, at least works fine with https://teamcity.jetbrains.com/
I suspect there is some error hidden around error handling and the response not coming back or being processed for some reason.
Perhaps try to login to your TC server in some other tab to make sure it's not unauthorized error (username/password missing?)

Other then that I'd need more info on what's coming back from the server and debug logs from service worker. You can build a local version with extra debugging messages, set debug to true in service worker here - https://github.com/AdamNowotny/BuildReactor/blob/master/src/service-worker/main.ts#L15

logger.init({ prefix: 'service-worker', debug: true });

You'd need to load the built extension in Firefox and click "Inspect" to make sure you can see the service worker logs as well, not just the UI.

@bw908
Copy link
Author

bw908 commented Jan 6, 2025

Unfortunately this is for a work environment so the time I can commit to getting set up to build this myself for testing is limited, sorry.

I am logged into TC in the browser itself already and the issue persists regardless of whether I give TC a username and password or leave it blank.

The only things I can think of is that we don't use an FQDN for our setup and (as a side effect) the install doesn't use SSL. But that doesn't explain why it works fine in Chrome 🤷

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants