@aztec/cli 0.7.7 → 0.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAwB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,YAE1C;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,qBAiB/E;AAKD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,iBAwBnF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAwB,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAOpD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,YAE1C;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,qBAiB/E;AAKD;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,iBAyBnF"}
package/dest/client.js CHANGED
@@ -46,24 +46,23 @@ class VersionMismatchError extends Error {
46
46
  */
47
47
  export async function checkServerVersion(rpc, expectedVersionRange) {
48
48
  const serverName = 'Aztec Sandbox';
49
- const { client } = await rpc.getNodeInfo();
50
- if (!client) {
49
+ const { sandboxVersion } = await rpc.getNodeInfo();
50
+ if (!sandboxVersion) {
51
51
  throw new VersionMismatchError(`Couldn't determine ${serverName} version. You may run into issues.`);
52
52
  }
53
- const version = client.split('@')[1];
54
- if (!version || !valid(version)) {
55
- throw new VersionMismatchError(`Missing or invalid version identifier for ${serverName} (${version ?? 'empty'}).`);
53
+ if (!sandboxVersion || !valid(sandboxVersion)) {
54
+ throw new VersionMismatchError(`Missing or invalid version identifier for ${serverName} (${sandboxVersion ?? 'empty'}).`);
56
55
  }
57
- else if (!satisfies(version, expectedVersionRange)) {
58
- if (gtr(version, expectedVersionRange)) {
59
- throw new VersionMismatchError(`${serverName} is running version ${version} which is newer than the expected by this CLI (${expectedVersionRange}). Consider upgrading your CLI to a newer version.`);
56
+ else if (!satisfies(sandboxVersion, expectedVersionRange)) {
57
+ if (gtr(sandboxVersion, expectedVersionRange)) {
58
+ throw new VersionMismatchError(`${serverName} is running version ${sandboxVersion} which is newer than the expected by this CLI (${expectedVersionRange}). Consider upgrading your CLI to a newer version.`);
60
59
  }
61
- else if (ltr(version, expectedVersionRange)) {
62
- throw new VersionMismatchError(`${serverName} is running version ${version} which is older than the expected by this CLI (${expectedVersionRange}). Consider upgrading your ${serverName} to a newer version.`);
60
+ else if (ltr(sandboxVersion, expectedVersionRange)) {
61
+ throw new VersionMismatchError(`${serverName} is running version ${sandboxVersion} which is older than the expected by this CLI (${expectedVersionRange}). Consider upgrading your ${serverName} to a newer version.`);
63
62
  }
64
63
  else {
65
- throw new VersionMismatchError(`${serverName} is running version ${version} which does not match the expected by this CLI (${expectedVersionRange}).`);
64
+ throw new VersionMismatchError(`${serverName} is running version ${sandboxVersion} which does not match the expected by this CLI (${expectedVersionRange}).`);
66
65
  }
67
66
  }
68
67
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksQ0FBQztBQUNsQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXBEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLE1BQWM7SUFDekMsT0FBTyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxNQUFjLEVBQUUsTUFBbUI7SUFDOUUsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVGLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqRixNQUFNLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLDZDQUE2QztJQUV2RyxJQUFJO1FBQ0YsTUFBTSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztLQUN4RDtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osSUFBSSxHQUFHLFlBQVksb0JBQW9CLEVBQUU7WUFDdkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDM0I7YUFBTTtZQUNMLE1BQU0sR0FBRyxDQUFDO1NBQ1g7S0FDRjtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxtREFBbUQ7QUFDbkQsTUFBTSxvQkFBcUIsU0FBUSxLQUFLO0NBQUc7QUFFM0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsR0FBYSxFQUFFLG9CQUE0QjtJQUNsRixNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUM7SUFDbkMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxNQUFNLElBQUksb0JBQW9CLENBQUMsc0JBQXNCLFVBQVUsb0NBQW9DLENBQUMsQ0FBQztLQUN0RztJQUNELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUMvQixNQUFNLElBQUksb0JBQW9CLENBQUMsNkNBQTZDLFVBQVUsS0FBSyxPQUFPLElBQUksT0FBTyxJQUFJLENBQUMsQ0FBQztLQUNwSDtTQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7UUFDcEQsSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7WUFDdEMsTUFBTSxJQUFJLG9CQUFvQixDQUM1QixHQUFHLFVBQVUsdUJBQXVCLE9BQU8sa0RBQWtELG9CQUFvQixvREFBb0QsQ0FDdEssQ0FBQztTQUNIO2FBQU0sSUFBSSxHQUFHLENBQUMsT0FBTyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7WUFDN0MsTUFBTSxJQUFJLG9CQUFvQixDQUM1QixHQUFHLFVBQVUsdUJBQXVCLE9BQU8sa0RBQWtELG9CQUFvQiw4QkFBOEIsVUFBVSxzQkFBc0IsQ0FDaEwsQ0FBQztTQUNIO2FBQU07WUFDTCxNQUFNLElBQUksb0JBQW9CLENBQzVCLEdBQUcsVUFBVSx1QkFBdUIsT0FBTyxtREFBbUQsb0JBQW9CLElBQUksQ0FDdkgsQ0FBQztTQUNIO0tBQ0Y7QUFDSCxDQUFDIn0=
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVksb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLElBQUksQ0FBQztBQUNsQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXBEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLE1BQWM7SUFDekMsT0FBTyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxNQUFjLEVBQUUsTUFBbUI7SUFDOUUsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sZUFBZSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVGLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNqRixNQUFNLG9CQUFvQixHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLDZDQUE2QztJQUV2RyxJQUFJO1FBQ0YsTUFBTSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztLQUN4RDtJQUFDLE9BQU8sR0FBRyxFQUFFO1FBQ1osSUFBSSxHQUFHLFlBQVksb0JBQW9CLEVBQUU7WUFDdkMsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDM0I7YUFBTTtZQUNMLE1BQU0sR0FBRyxDQUFDO1NBQ1g7S0FDRjtJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxtREFBbUQ7QUFDbkQsTUFBTSxvQkFBcUIsU0FBUSxLQUFLO0NBQUc7QUFFM0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsR0FBYSxFQUFFLG9CQUE0QjtJQUNsRixNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUM7SUFDbkMsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25ELElBQUksQ0FBQyxjQUFjLEVBQUU7UUFDbkIsTUFBTSxJQUFJLG9CQUFvQixDQUFDLHNCQUFzQixVQUFVLG9DQUFvQyxDQUFDLENBQUM7S0FDdEc7SUFDRCxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1FBQzdDLE1BQU0sSUFBSSxvQkFBb0IsQ0FDNUIsNkNBQTZDLFVBQVUsS0FBSyxjQUFjLElBQUksT0FBTyxJQUFJLENBQzFGLENBQUM7S0FDSDtTQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7UUFDM0QsSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7WUFDN0MsTUFBTSxJQUFJLG9CQUFvQixDQUM1QixHQUFHLFVBQVUsdUJBQXVCLGNBQWMsa0RBQWtELG9CQUFvQixvREFBb0QsQ0FDN0ssQ0FBQztTQUNIO2FBQU0sSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLG9CQUFvQixDQUFDLEVBQUU7WUFDcEQsTUFBTSxJQUFJLG9CQUFvQixDQUM1QixHQUFHLFVBQVUsdUJBQXVCLGNBQWMsa0RBQWtELG9CQUFvQiw4QkFBOEIsVUFBVSxzQkFBc0IsQ0FDdkwsQ0FBQztTQUNIO2FBQU07WUFDTCxNQUFNLElBQUksb0JBQW9CLENBQzVCLEdBQUcsVUFBVSx1QkFBdUIsY0FBYyxtREFBbUQsb0JBQW9CLElBQUksQ0FDOUgsQ0FBQztTQUNIO0tBQ0Y7QUFDSCxDQUFDIn0=
@@ -7,17 +7,17 @@ describe('client', () => {
7
7
  rpc = mock();
8
8
  });
9
9
  it('checks versions match', async () => {
10
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha47' });
10
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha47' });
11
11
  await checkServerVersion(rpc, '0.1.0-alpha47');
12
12
  });
13
13
  it('reports mismatch on older rpc version', async () => {
14
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha47' });
14
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha47' });
15
15
  await expect(checkServerVersion(rpc, '0.1.0-alpha48')).rejects.toThrowError(/is older than the expected by this CLI/);
16
16
  });
17
17
  it('reports mismatch on newer rpc version', async () => {
18
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha48' });
18
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha48' });
19
19
  await expect(checkServerVersion(rpc, '0.1.0-alpha47')).rejects.toThrowError(/is newer than the expected by this CLI/);
20
20
  });
21
21
  });
22
22
  });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xpZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFhLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXJELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqRCxRQUFRLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtJQUN0QixRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO1FBQ2xDLElBQUksR0FBd0IsQ0FBQztRQUU3QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsR0FBRyxHQUFHLElBQUksRUFBWSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3JDLEdBQUcsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLEVBQWMsQ0FBQyxDQUFDO1lBQy9FLE1BQU0sa0JBQWtCLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHVDQUF1QyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3JELEdBQUcsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLEVBQWMsQ0FBQyxDQUFDO1lBQy9FLE1BQU0sTUFBTSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQ3pFLHdDQUF3QyxDQUN6QyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsdUNBQXVDLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDckQsR0FBRyxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsRUFBYyxDQUFDLENBQUM7WUFDL0UsTUFBTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FDekUsd0NBQXdDLENBQ3pDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xpZW50LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFhLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXJELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqRCxRQUFRLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtJQUN0QixRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO1FBQ2xDLElBQUksR0FBd0IsQ0FBQztRQUU3QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsR0FBRyxHQUFHLElBQUksRUFBWSxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3JDLEdBQUcsQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFjLENBQUMsQ0FBQztZQUNuRixNQUFNLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNyRCxHQUFHLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBYyxDQUFDLENBQUM7WUFDbkYsTUFBTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FDekUsd0NBQXdDLENBQ3pDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyx1Q0FBdUMsRUFBRSxLQUFLLElBQUksRUFBRTtZQUNyRCxHQUFHLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBYyxDQUFDLENBQUM7WUFDbkYsTUFBTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FDekUsd0NBQXdDLENBQ3pDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"unbox.d.ts","sourceRoot":"","sources":["../src/unbox.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAwQ9C;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,YAAY,EAAE,MAAM,EACpB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,KAAK,iBAqBX"}
1
+ {"version":3,"file":"unbox.d.ts","sourceRoot":"","sources":["../src/unbox.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AA8Q9C;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,YAAY,EAAE,MAAM,EACpB,mBAAmB,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,KAAK,iBA6BX"}
package/dest/unbox.js CHANGED
@@ -4,6 +4,7 @@ import fetch from 'node-fetch';
4
4
  import * as path from 'path';
5
5
  const GITHUB_OWNER = 'AztecProtocol';
6
6
  const GITHUB_REPO = 'aztec-packages';
7
+ const GITHUB_TAG_PREFIX = 'aztec-packages';
7
8
  const NOIR_CONTRACTS_PATH = 'yarn-project/noir-contracts/src/contracts';
8
9
  const BOXES_PATH = 'yarn-project/boxes';
9
10
  /**
@@ -59,26 +60,25 @@ async function copyFolderFromGithub(data, repositoryFolderPath, localOutputPath,
59
60
  * monorepo on github. this will copy over the `yarn-projects/boxes/{contract_name}` folder
60
61
  * as well as the specified `directoryPath` if the box doesn't include source code
61
62
  * `directoryPath` should point to a single noir contract in `yarn-projects/noir-contracts/src/contracts/...`
62
- * @param tagVersion - the version of the CLI that is running. we pull from the corresponding tag in the monorepo
63
+ * @param tag - The git tag to pull.
63
64
  * @param directoryPath - path to a noir contract's source code (folder) in the github repo
64
65
  * @param outputPath - local path that we will copy the noir contracts and web3 starter kit to
65
66
  * @returns
66
67
  */
67
- async function downloadContractAndBoxFromGithub(tagVersion, contractName, outputPath, log) {
68
- const tagName = `aztec-packages-v${tagVersion}`;
68
+ async function downloadContractAndBoxFromGithub(tag, contractName, outputPath, log) {
69
69
  // small string conversion, in the ABI the contract name looks like PrivateToken
70
70
  // but in the repostory it looks like private_token
71
71
  const kebabCaseContractName = contractNameToFolder(contractName, '-');
72
72
  log(`Downloading @aztex/boxes/${kebabCaseContractName} to ${outputPath}...`);
73
73
  // Step 1: Fetch the monorepo ZIP from GitHub, matching the CLI version
74
- const url = `https://github.com/${GITHUB_OWNER}/${GITHUB_REPO}/archive/refs/tags/${tagName}.zip`;
74
+ const url = `https://github.com/${GITHUB_OWNER}/${GITHUB_REPO}/archive/refs/tags/${tag}.zip`;
75
75
  const response = await fetch(url);
76
76
  const buffer = await response.arrayBuffer();
77
77
  const zip = new JSZip();
78
78
  const data = await zip.loadAsync(buffer);
79
79
  // Step 2: copy the '@aztec/boxes/{contract-name}' subpackage to the output directory
80
80
  // this is currently only implemented for PrivateToken under 'boxes/private-token/'
81
- const repoDirectoryPrefix = `${GITHUB_REPO}-${tagName}`;
81
+ const repoDirectoryPrefix = `${GITHUB_REPO}-${tag}`;
82
82
  const boxPath = `${repoDirectoryPrefix}/${BOXES_PATH}/${kebabCaseContractName}`;
83
83
  await copyFolderFromGithub(data, boxPath, outputPath, log);
84
84
  const contractTargetDirectory = path.join(outputPath, 'src', 'contracts');
@@ -113,14 +113,15 @@ async function downloadContractAndBoxFromGithub(tagVersion, contractName, output
113
113
  * something usable by the copied standalone unboxed folder. Adjusts relative paths
114
114
  * and package versions.
115
115
  * @param packageVersion - CLI npm version, which determines what npm version to grab
116
+ * @param tag - The git tag.
116
117
  * @param outputPath - relative path where we are copying everything
117
118
  * @param log - logger
118
119
  */
119
- async function updatePackagingConfigurations(packageVersion, outputPath, log) {
120
+ async function updatePackagingConfigurations(packageVersion, tag, outputPath, log) {
120
121
  await updatePackageJsonVersions(packageVersion, outputPath, log);
121
122
  await updateTsConfig('tsconfig.json', outputPath, log);
122
123
  await updateTsConfig('tsconfig.dest.json', outputPath, log);
123
- await updateNargoToml(packageVersion, outputPath, log);
124
+ await updateNargoToml(tag, outputPath, log);
124
125
  }
125
126
  /**
126
127
  * adjust the contract Nargo.toml file to use the same repository version as the npm packages
@@ -128,14 +129,14 @@ async function updatePackagingConfigurations(packageVersion, outputPath, log) {
128
129
  * @param outputPath - relative path where we are copying everything
129
130
  * @param log - logger
130
131
  */
131
- async function updateNargoToml(packageVersion, outputPath, log) {
132
+ async function updateNargoToml(tag, outputPath, log) {
132
133
  const nargoTomlPath = path.join(outputPath, 'src', 'contracts', 'Nargo.toml');
133
134
  const fileContent = await fs.readFile(nargoTomlPath, 'utf-8');
134
135
  const lines = fileContent.split('\n');
135
- const updatedLines = lines.map(line => line.replace(/tag="master"/g, `tag="v${packageVersion}"`));
136
+ const updatedLines = lines.map(line => line.replace(/tag="master"/g, `tag="${tag}"`));
136
137
  const updatedContent = updatedLines.join('\n');
137
138
  await fs.writeFile(nargoTomlPath, updatedContent);
138
- log(`Updated Nargo.toml to point to local copy of noir-libs.`);
139
+ log(`Updated Nargo.toml to point to the compatible version of aztec noir libs.`);
139
140
  }
140
141
  /**
141
142
  * The `tsconfig.json` also needs to be updated to remove the "references" section, which
@@ -244,12 +245,19 @@ export async function unboxContract(contractName, outputDirectoryName, packageVe
244
245
  return;
245
246
  }
246
247
  const outputPath = await createDirectory(outputDirectoryName, log);
248
+ const tag = `${GITHUB_TAG_PREFIX}-v${packageVersion}`;
247
249
  // downloads the selected contract's relevant folder in @aztec/boxes/{contract_name}
248
250
  // and the noir source code from `noir-contracts` into `${outputDirectoryName}/src/contracts`
249
251
  // if not present in the box
250
- await downloadContractAndBoxFromGithub(packageVersion, contractName, outputPath, log);
252
+ await downloadContractAndBoxFromGithub(tag, contractName, outputPath, log);
251
253
  // make adjustments for packaging to work as a standalone, as opposed to part of yarn workspace
252
254
  // as in the monorepo source files
253
- await updatePackagingConfigurations(packageVersion, outputPath, log);
255
+ await updatePackagingConfigurations(packageVersion, tag, outputPath, log);
256
+ log('');
257
+ log(`${contractName} has been successfully initialised!`);
258
+ log('To get started, simply run the following commands:');
259
+ log(` cd ${outputDirectoryName}`);
260
+ log(' yarn');
261
+ log(' yarn start:dev');
254
262
  }
255
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5ib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdW5ib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sS0FBSyxNQUFNLFlBQVksQ0FBQztBQUMvQixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixNQUFNLFlBQVksR0FBRyxlQUFlLENBQUM7QUFDckMsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDckMsTUFBTSxtQkFBbUIsR0FBRywyQ0FBMkMsQ0FBQztBQUN4RSxNQUFNLFVBQVUsR0FBRyxvQkFBb0IsQ0FBQztBQUV4Qzs7OztLQUlLO0FBQ0wsU0FBUyxvQkFBb0IsQ0FBQyxZQUFvQixFQUFFLFNBQVMsR0FBRyxHQUFHO0lBQ2pFLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUMvRixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsS0FBSyxVQUFVLG1CQUFtQixDQUFDLGFBQXFCO0lBQ3RELElBQUk7UUFDRixNQUFNLEtBQUssR0FBRyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUMsT0FBTyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztLQUN6QjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsNEJBQTRCO1FBQzVCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7QUFDSCxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxLQUFLLFVBQVUsb0JBQW9CLENBQUMsSUFBVyxFQUFFLG9CQUE0QixFQUFFLGVBQXVCLEVBQUUsR0FBVTtJQUNoSCxHQUFHLENBQUMsNEJBQTRCLG9CQUFvQixFQUFFLENBQUMsQ0FBQztJQUN4RCxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNwRSxPQUFPLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUNoRSxDQUFDLENBQUMsQ0FBQztJQUVILEtBQUssTUFBTSxTQUFTLElBQUkscUJBQXFCLEVBQUU7UUFDN0MsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEUsTUFBTSxVQUFVLEdBQUcsR0FBRyxlQUFlLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEQsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBQ2pEO0lBRUQsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQzNELE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDakUsQ0FBQyxDQUFDLENBQUM7SUFFSCxLQUFLLE1BQU0sSUFBSSxJQUFJLFlBQVksRUFBRTtRQUMvQixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqRSxNQUFNLFVBQVUsR0FBRyxHQUFHLGVBQWUsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN4RCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDL0MsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztLQUN6QztBQUNILENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxLQUFLLFVBQVUsZ0NBQWdDLENBQzdDLFVBQWtCLEVBQ2xCLFlBQW9CLEVBQ3BCLFVBQWtCLEVBQ2xCLEdBQVU7SUFFVixNQUFNLE9BQU8sR0FBRyxtQkFBbUIsVUFBVSxFQUFFLENBQUM7SUFDaEQsZ0ZBQWdGO0lBQ2hGLG1EQUFtRDtJQUVuRCxNQUFNLHFCQUFxQixHQUFHLG9CQUFvQixDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RSxHQUFHLENBQUMsNEJBQTRCLHFCQUFxQixPQUFPLFVBQVUsS0FBSyxDQUFDLENBQUM7SUFDN0UsdUVBQXVFO0lBQ3ZFLE1BQU0sR0FBRyxHQUFHLHNCQUFzQixZQUFZLElBQUksV0FBVyxzQkFBc0IsT0FBTyxNQUFNLENBQUM7SUFDakcsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFNUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUN4QixNQUFNLElBQUksR0FBRyxNQUFNLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFekMscUZBQXFGO0lBQ3JGLG1GQUFtRjtJQUNuRixNQUFNLG1CQUFtQixHQUFHLEdBQUcsV0FBVyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBRXhELE1BQU0sT0FBTyxHQUFHLEdBQUcsbUJBQW1CLElBQUksVUFBVSxJQUFJLHFCQUFxQixFQUFFLENBQUM7SUFDaEYsTUFBTSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUUzRCxNQUFNLHVCQUF1QixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMxRSxNQUFNLHFCQUFxQixHQUFHLE1BQU0sbUJBQW1CLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUNqRixJQUFJLHFCQUFxQixFQUFFO1FBQ3pCLE9BQU87S0FDUjtJQUVELDRGQUE0RjtJQUM1RixzRUFBc0U7SUFDdEUscUZBQXFGO0lBQ3JGLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRWpDLHdEQUF3RDtJQUN4RCxNQUFNLHFCQUFxQixHQUFHLG9CQUFvQixDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0RSxNQUFNLHFCQUFxQixHQUFHLEdBQUcsbUJBQW1CLElBQUksbUJBQW1CLElBQUkscUJBQXFCLFdBQVcsQ0FBQztJQUNoSCwrRUFBK0U7SUFDL0UsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQzVELE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDbEUsQ0FBQyxDQUFDLENBQUM7SUFFSCxzRUFBc0U7SUFDdEUsMENBQTBDO0lBQzFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0UsS0FBSyxNQUFNLElBQUksSUFBSSxhQUFhLEVBQUU7UUFDaEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxxQkFBcUIsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9DLE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEMsR0FBRyxDQUFDLE1BQU0sUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN2QjtBQUNILENBQUM7QUFDRDs7Ozs7OztHQU9HO0FBQ0gsS0FBSyxVQUFVLDZCQUE2QixDQUFDLGNBQXNCLEVBQUUsVUFBa0IsRUFBRSxHQUFVO0lBQ2pHLE1BQU0seUJBQXlCLENBQUMsY0FBYyxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRSxNQUFNLGNBQWMsQ0FBQyxlQUFlLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sY0FBYyxDQUFDLG9CQUFvQixFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM1RCxNQUFNLGVBQWUsQ0FBQyxjQUFjLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQ3pELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILEtBQUssVUFBVSxlQUFlLENBQUMsY0FBc0IsRUFBRSxVQUFrQixFQUFFLEdBQVU7SUFDbkYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM5RSxNQUFNLFdBQVcsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdEMsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxFQUFFLFNBQVMsY0FBYyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNsRCxHQUFHLENBQUMseURBQXlELENBQUMsQ0FBQztBQUNqRSxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxLQUFLLFVBQVUsY0FBYyxDQUFDLFFBQWdCLEVBQUUsVUFBa0IsRUFBRSxHQUFVO0lBQzVFLElBQUk7UUFDRixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhDLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUV6QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUUxRCxHQUFHLENBQUMsV0FBVyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0tBQzdCO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxHQUFHLENBQUMsa0JBQWtCLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDbkMsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsS0FBSyxVQUFVLHlCQUF5QixDQUFDLGNBQXNCLEVBQUUsVUFBa0IsRUFBRSxHQUFVO0lBQzdGLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzlELE1BQU0sV0FBVyxHQUFHLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUU1QyxvR0FBb0c7SUFDcEcsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1FBQzVCLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUNuRSxJQUFJLEtBQUssS0FBSyxhQUFhLEVBQUU7Z0JBQzNCLFdBQVcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQzthQUN0RDtTQUNGO0tBQ0Y7SUFFRCx1Q0FBdUM7SUFDdkMsSUFBSSxXQUFXLENBQUMsZUFBZSxFQUFFO1FBQy9CLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsRUFBRTtZQUN0RSxJQUFJLEtBQUssS0FBSyxhQUFhLEVBQUU7Z0JBQzNCLHFGQUFxRjtnQkFDckYsMkVBQTJFO2dCQUMzRSxXQUFXLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7YUFDekQ7U0FDRjtLQUNGO0lBRUQsNEZBQTRGO0lBQzVGLDhGQUE4RjtJQUM5RixvRUFBb0U7SUFDcEUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPLENBQ3JGLFFBQVEsRUFDUixJQUFJLGNBQWMsRUFBRSxDQUNyQixDQUFDO0lBRUYsV0FBVyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsSUFBSSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBRXBILG1FQUFtRTtJQUNuRSxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDNUQsTUFBTSxFQUFFLENBQUMsU0FBUyxDQUFDLGVBQWUsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUVwRCxHQUFHLENBQUMscUNBQXFDLGNBQWMsRUFBRSxDQUFDLENBQUM7QUFDN0QsQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsS0FBSyxVQUFVLGVBQWUsQ0FBQyxtQkFBMkIsRUFBRSxHQUFVO0lBQ3BFLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUV2RCxJQUFJO1FBQ0YsdURBQXVEO1FBQ3ZELE1BQU0sS0FBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLG1CQUFtQiw2QkFBNkIsQ0FBQyxDQUFDO1NBQ3pGO0tBQ0Y7SUFBQyxPQUFPLEtBQVUsRUFBRTtRQUNuQixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzNCLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUNsRCxHQUFHLENBQUMscURBQXFELFlBQVksRUFBRSxDQUFDLENBQUM7U0FDMUU7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDO1NBQ2I7S0FDRjtJQUVELE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUM7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQ2pDLFlBQW9CLEVBQ3BCLG1CQUEyQixFQUMzQixjQUFzQixFQUN0QixHQUFVO0lBRVYsTUFBTSxhQUFhLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUV2QyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUN6QyxHQUFHLENBQ0QsNEJBQTRCLFlBQVk7VUFDcEMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7Z0RBQ1ksQ0FDM0MsQ0FBQztRQUNGLE9BQU87S0FDUjtJQUNELE1BQU0sVUFBVSxHQUFHLE1BQU0sZUFBZSxDQUFDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRW5FLG9GQUFvRjtJQUNwRiw2RkFBNkY7SUFDN0YsNEJBQTRCO0lBQzVCLE1BQU0sZ0NBQWdDLENBQUMsY0FBYyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdEYsK0ZBQStGO0lBQy9GLGtDQUFrQztJQUNsQyxNQUFNLDZCQUE2QixDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDdkUsQ0FBQyJ9
263
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5ib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdW5ib3gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEMsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sS0FBSyxNQUFNLFlBQVksQ0FBQztBQUMvQixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUU3QixNQUFNLFlBQVksR0FBRyxlQUFlLENBQUM7QUFDckMsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDckMsTUFBTSxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUMzQyxNQUFNLG1CQUFtQixHQUFHLDJDQUEyQyxDQUFDO0FBQ3hFLE1BQU0sVUFBVSxHQUFHLG9CQUFvQixDQUFDO0FBRXhDOzs7O0tBSUs7QUFDTCxTQUFTLG9CQUFvQixDQUFDLFlBQW9CLEVBQUUsU0FBUyxHQUFHLEdBQUc7SUFDakUsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0FBQy9GLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxLQUFLLFVBQVUsbUJBQW1CLENBQUMsYUFBcUI7SUFDdEQsSUFBSTtRQUNGLE1BQU0sS0FBSyxHQUFHLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM5QyxPQUFPLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0tBQ3pCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDViw0QkFBNEI7UUFDNUIsT0FBTyxLQUFLLENBQUM7S0FDZDtBQUNILENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILEtBQUssVUFBVSxv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
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@aztec/cli",
3
- "version": "0.7.7",
3
+ "version": "0.7.8",
4
4
  "main": "./dest/index.js",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@aztec/aztec.js": "0.7.7",
8
- "@aztec/ethereum": "0.7.7",
9
- "@aztec/foundation": "0.7.7",
10
- "@aztec/noir-compiler": "0.7.7",
11
- "@aztec/noir-contracts": "0.7.7",
12
- "@aztec/types": "0.7.7",
7
+ "@aztec/aztec.js": "0.7.8",
8
+ "@aztec/ethereum": "0.7.8",
9
+ "@aztec/foundation": "0.7.8",
10
+ "@aztec/noir-compiler": "0.7.8",
11
+ "@aztec/noir-contracts": "0.7.8",
12
+ "@aztec/types": "0.7.8",
13
13
  "commander": "^9.0.0",
14
14
  "jszip": "^3.10.1",
15
15
  "lodash.startcase": "^4.4.0",
@@ -13,19 +13,19 @@ describe('client', () => {
13
13
  });
14
14
 
15
15
  it('checks versions match', async () => {
16
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha47' } as NodeInfo);
16
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha47' } as NodeInfo);
17
17
  await checkServerVersion(rpc, '0.1.0-alpha47');
18
18
  });
19
19
 
20
20
  it('reports mismatch on older rpc version', async () => {
21
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha47' } as NodeInfo);
21
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha47' } as NodeInfo);
22
22
  await expect(checkServerVersion(rpc, '0.1.0-alpha48')).rejects.toThrowError(
23
23
  /is older than the expected by this CLI/,
24
24
  );
25
25
  });
26
26
 
27
27
  it('reports mismatch on newer rpc version', async () => {
28
- rpc.getNodeInfo.mockResolvedValue({ client: 'rpc@0.1.0-alpha48' } as NodeInfo);
28
+ rpc.getNodeInfo.mockResolvedValue({ sandboxVersion: '0.1.0-alpha48' } as NodeInfo);
29
29
  await expect(checkServerVersion(rpc, '0.1.0-alpha47')).rejects.toThrowError(
30
30
  /is newer than the expected by this CLI/,
31
31
  );
package/src/client.ts CHANGED
@@ -51,25 +51,26 @@ class VersionMismatchError extends Error {}
51
51
  */
52
52
  export async function checkServerVersion(rpc: AztecRPC, expectedVersionRange: string) {
53
53
  const serverName = 'Aztec Sandbox';
54
- const { client } = await rpc.getNodeInfo();
55
- if (!client) {
54
+ const { sandboxVersion } = await rpc.getNodeInfo();
55
+ if (!sandboxVersion) {
56
56
  throw new VersionMismatchError(`Couldn't determine ${serverName} version. You may run into issues.`);
57
57
  }
58
- const version = client.split('@')[1];
59
- if (!version || !valid(version)) {
60
- throw new VersionMismatchError(`Missing or invalid version identifier for ${serverName} (${version ?? 'empty'}).`);
61
- } else if (!satisfies(version, expectedVersionRange)) {
62
- if (gtr(version, expectedVersionRange)) {
58
+ if (!sandboxVersion || !valid(sandboxVersion)) {
59
+ throw new VersionMismatchError(
60
+ `Missing or invalid version identifier for ${serverName} (${sandboxVersion ?? 'empty'}).`,
61
+ );
62
+ } else if (!satisfies(sandboxVersion, expectedVersionRange)) {
63
+ if (gtr(sandboxVersion, expectedVersionRange)) {
63
64
  throw new VersionMismatchError(
64
- `${serverName} is running version ${version} which is newer than the expected by this CLI (${expectedVersionRange}). Consider upgrading your CLI to a newer version.`,
65
+ `${serverName} is running version ${sandboxVersion} which is newer than the expected by this CLI (${expectedVersionRange}). Consider upgrading your CLI to a newer version.`,
65
66
  );
66
- } else if (ltr(version, expectedVersionRange)) {
67
+ } else if (ltr(sandboxVersion, expectedVersionRange)) {
67
68
  throw new VersionMismatchError(
68
- `${serverName} is running version ${version} which is older than the expected by this CLI (${expectedVersionRange}). Consider upgrading your ${serverName} to a newer version.`,
69
+ `${serverName} is running version ${sandboxVersion} which is older than the expected by this CLI (${expectedVersionRange}). Consider upgrading your ${serverName} to a newer version.`,
69
70
  );
70
71
  } else {
71
72
  throw new VersionMismatchError(
72
- `${serverName} is running version ${version} which does not match the expected by this CLI (${expectedVersionRange}).`,
73
+ `${serverName} is running version ${sandboxVersion} which does not match the expected by this CLI (${expectedVersionRange}).`,
73
74
  );
74
75
  }
75
76
  }
package/src/unbox.ts CHANGED
@@ -16,6 +16,7 @@ import * as path from 'path';
16
16
 
17
17
  const GITHUB_OWNER = 'AztecProtocol';
18
18
  const GITHUB_REPO = 'aztec-packages';
19
+ const GITHUB_TAG_PREFIX = 'aztec-packages';
19
20
  const NOIR_CONTRACTS_PATH = 'yarn-project/noir-contracts/src/contracts';
20
21
  const BOXES_PATH = 'yarn-project/boxes';
21
22
 
@@ -77,25 +78,24 @@ async function copyFolderFromGithub(data: JSZip, repositoryFolderPath: string, l
77
78
  * monorepo on github. this will copy over the `yarn-projects/boxes/{contract_name}` folder
78
79
  * as well as the specified `directoryPath` if the box doesn't include source code
79
80
  * `directoryPath` should point to a single noir contract in `yarn-projects/noir-contracts/src/contracts/...`
80
- * @param tagVersion - the version of the CLI that is running. we pull from the corresponding tag in the monorepo
81
+ * @param tag - The git tag to pull.
81
82
  * @param directoryPath - path to a noir contract's source code (folder) in the github repo
82
83
  * @param outputPath - local path that we will copy the noir contracts and web3 starter kit to
83
84
  * @returns
84
85
  */
85
86
  async function downloadContractAndBoxFromGithub(
86
- tagVersion: string,
87
+ tag: string,
87
88
  contractName: string,
88
89
  outputPath: string,
89
90
  log: LogFn,
90
91
  ): Promise<void> {
91
- const tagName = `aztec-packages-v${tagVersion}`;
92
92
  // small string conversion, in the ABI the contract name looks like PrivateToken
93
93
  // but in the repostory it looks like private_token
94
94
 
95
95
  const kebabCaseContractName = contractNameToFolder(contractName, '-');
96
96
  log(`Downloading @aztex/boxes/${kebabCaseContractName} to ${outputPath}...`);
97
97
  // Step 1: Fetch the monorepo ZIP from GitHub, matching the CLI version
98
- const url = `https://github.com/${GITHUB_OWNER}/${GITHUB_REPO}/archive/refs/tags/${tagName}.zip`;
98
+ const url = `https://github.com/${GITHUB_OWNER}/${GITHUB_REPO}/archive/refs/tags/${tag}.zip`;
99
99
  const response = await fetch(url);
100
100
  const buffer = await response.arrayBuffer();
101
101
 
@@ -104,7 +104,7 @@ async function downloadContractAndBoxFromGithub(
104
104
 
105
105
  // Step 2: copy the '@aztec/boxes/{contract-name}' subpackage to the output directory
106
106
  // this is currently only implemented for PrivateToken under 'boxes/private-token/'
107
- const repoDirectoryPrefix = `${GITHUB_REPO}-${tagName}`;
107
+ const repoDirectoryPrefix = `${GITHUB_REPO}-${tag}`;
108
108
 
109
109
  const boxPath = `${repoDirectoryPrefix}/${BOXES_PATH}/${kebabCaseContractName}`;
110
110
  await copyFolderFromGithub(data, boxPath, outputPath, log);
@@ -144,14 +144,20 @@ async function downloadContractAndBoxFromGithub(
144
144
  * something usable by the copied standalone unboxed folder. Adjusts relative paths
145
145
  * and package versions.
146
146
  * @param packageVersion - CLI npm version, which determines what npm version to grab
147
+ * @param tag - The git tag.
147
148
  * @param outputPath - relative path where we are copying everything
148
149
  * @param log - logger
149
150
  */
150
- async function updatePackagingConfigurations(packageVersion: string, outputPath: string, log: LogFn): Promise<void> {
151
+ async function updatePackagingConfigurations(
152
+ packageVersion: string,
153
+ tag: string,
154
+ outputPath: string,
155
+ log: LogFn,
156
+ ): Promise<void> {
151
157
  await updatePackageJsonVersions(packageVersion, outputPath, log);
152
158
  await updateTsConfig('tsconfig.json', outputPath, log);
153
159
  await updateTsConfig('tsconfig.dest.json', outputPath, log);
154
- await updateNargoToml(packageVersion, outputPath, log);
160
+ await updateNargoToml(tag, outputPath, log);
155
161
  }
156
162
 
157
163
  /**
@@ -160,14 +166,14 @@ async function updatePackagingConfigurations(packageVersion: string, outputPath:
160
166
  * @param outputPath - relative path where we are copying everything
161
167
  * @param log - logger
162
168
  */
163
- async function updateNargoToml(packageVersion: string, outputPath: string, log: LogFn): Promise<void> {
169
+ async function updateNargoToml(tag: string, outputPath: string, log: LogFn): Promise<void> {
164
170
  const nargoTomlPath = path.join(outputPath, 'src', 'contracts', 'Nargo.toml');
165
171
  const fileContent = await fs.readFile(nargoTomlPath, 'utf-8');
166
172
  const lines = fileContent.split('\n');
167
- const updatedLines = lines.map(line => line.replace(/tag="master"/g, `tag="v${packageVersion}"`));
173
+ const updatedLines = lines.map(line => line.replace(/tag="master"/g, `tag="${tag}"`));
168
174
  const updatedContent = updatedLines.join('\n');
169
175
  await fs.writeFile(nargoTomlPath, updatedContent);
170
- log(`Updated Nargo.toml to point to local copy of noir-libs.`);
176
+ log(`Updated Nargo.toml to point to the compatible version of aztec noir libs.`);
171
177
  }
172
178
 
173
179
  /**
@@ -300,11 +306,19 @@ export async function unboxContract(
300
306
  }
301
307
  const outputPath = await createDirectory(outputDirectoryName, log);
302
308
 
309
+ const tag = `${GITHUB_TAG_PREFIX}-v${packageVersion}`;
303
310
  // downloads the selected contract's relevant folder in @aztec/boxes/{contract_name}
304
311
  // and the noir source code from `noir-contracts` into `${outputDirectoryName}/src/contracts`
305
312
  // if not present in the box
306
- await downloadContractAndBoxFromGithub(packageVersion, contractName, outputPath, log);
313
+ await downloadContractAndBoxFromGithub(tag, contractName, outputPath, log);
307
314
  // make adjustments for packaging to work as a standalone, as opposed to part of yarn workspace
308
315
  // as in the monorepo source files
309
- await updatePackagingConfigurations(packageVersion, outputPath, log);
316
+ await updatePackagingConfigurations(packageVersion, tag, outputPath, log);
317
+
318
+ log('');
319
+ log(`${contractName} has been successfully initialised!`);
320
+ log('To get started, simply run the following commands:');
321
+ log(` cd ${outputDirectoryName}`);
322
+ log(' yarn');
323
+ log(' yarn start:dev');
310
324
  }