Closed Bug 1587145 Opened 5 years ago Closed 4 years ago

Upgrade taskcluster-client-web library

Categories

(Tree Management :: Treeherder: Frontend, enhancement, P2)

enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: armenzg, Assigned: sclements)

Details

Attachments

(1 file)

We're currently on version 8.1.1

I want to upgrade before it becomes a critical issue.

Sarah will be looking into this.

Assignee: armenzg → sclements
Blocks: 1566190

Blocker: https://github.com/taskcluster/taskcluster/issues/1536. Also, I don't think this is a blocker for bug 1566190.

No longer blocks: 1566190
Priority: -- → P2
Priority: P2 → P3

There's nothing we can do until the issue referred is resolved.

Assignee: sclements → nobody
Status: ASSIGNED → NEW

Blocker: https://github.com/taskcluster/taskcluster/issues/1536. Also, I don't think this is a blocker for bug 1566190.

I don't think anyone remembers what the original issue was filed for but we can test out version v29.3.0 when it's released (there was a webpack bug in version 29.2.0 I found while testing it out).

Assignee: nobody → sclements
Status: NEW → ASSIGNED
Priority: P3 → P2

v29.3.0 is being released right now. The issue should hopefully be fixed.

(In reply to Hassan Ali (:hassan) from comment #5)

v29.3.0 is being released right now. The issue should hopefully be fixed.

The install was successful with that fix but I'm hitting this issue: Could not find a declaration file for module 'taskcluster-client-web'. '.../node_modules/taskcluster-client-web/build/index.js' implicitly has an 'any' type. It doesn't look like there is a @types/taskcluster-client-web package. Any suggestions?

With this change from v8 -> v29 I had to separately install crypto-js and hawk v7.10.0. It sounds like we used to have them installed for other purposes, per your comment here, but that no longer applies. I think the tricky thing is now we'll have to ensure we keep those packages updated based on whatever versions you have pinned in taskcluster-client-web. No good deed goes unpunished, eh Hassan? :)

Btw that hawk package has been deprecated and moved to @hapi/hawk.

(In reply to Sarah Clements [:sclements] from comment #6)

(In reply to Hassan Ali (:hassan) from comment #5)

v29.3.0 is being released right now. The issue should hopefully be fixed.

The install was successful with that fix but I'm hitting this issue: Could not find a declaration file for module 'taskcluster-client-web'. '.../node_modules/taskcluster-client-web/build/index.js' implicitly has an 'any' type. It doesn't look like there is a @types/taskcluster-client-web package. Any suggestions?

Does treeherder uses something like Typescript? From my understanding, a project shouldn't need a declaration file if they're not using static typing.

With this change from v8 -> v29 I had to separately install crypto-js and hawk v7.10.0. It sounds like we used to have them installed for other purposes, per your comment here, but that no longer applies. I think the tricky thing is now we'll have to ensure we keep those packages updated based on whatever versions you have pinned in taskcluster-client-web. No good deed goes unpunished, eh Hassan? :)

Interesting! It looks like hawk was removed in https://github.com/mozilla/treeherder/commit/af892c7f5a4c7550bf3f059fc900914cf3377ee0 for example. I'm happy to put them back as dependencies to taskcluster-client-web but I assume the treeherder folks would probably need to readjust the threshold for the package size. Ok with you?

Flags: needinfo?(sclements)

hrm, as far as I know we're not using typescript. However, I see several @types/<packageName> in our package.json. I wonder if it's used as part of another library or enabled via an eslint rule?? Armen, do you know anything about this?

I'm ok with having the package size bigger; I think it will be easier to manage those dependencies that way.

Flags: needinfo?(sclements) → needinfo?(armenzg)

The change has been merged and should be available in the next release of Taskcluster (not yet released).

I have no idea.
Doing some Git archaelogy shows that they were needed for removing warnings for react2angular in bug 1468573.
Probably safe to remove them.

Flags: needinfo?(armenzg)

Sarah, have you had a chance to see if the issue was fixed in the latest release of TC?

Flags: needinfo?(sclements)

No, I haven't had a chance yet. I'll take a look tomorrow and let you know.

Flags: needinfo?(sclements)

I've tried the new release and I'm still not able to import the library. import { Queue } from 'taskcluster-client-web' imports Queue as undefined and import * as taskcluster from 'taskcluster-client-web' only imports an empty object. This is really baffling. Has something changed between v8 to v29 with how your modules are exported?

Flags: needinfo?(helfi92)

Yes, something has changed. I will look into this. Sorry for the trouble this has caused.

Ok, the next release of taskcluster should hopefully unblock you (current version is 29.6.0). I tested this locally using the treeherder repo and I didn't see the error in the console.

Flags: needinfo?(helfi92)

sclements, do you mind trying the latest release to see if the issue has been fixed, please?

Flags: needinfo?(sclements)

Upgraded to the latest and everything works. Thanks :)

Flags: needinfo?(sclements)
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: