mirror of
https://github.com/fluencelabs/fluence-js.git
synced 2025-06-25 22:01:32 +00:00
feat!: Unify all packages (#327)
* * Separate marine worker as a package * Trying to fix tests * Finalizing test fixes * fix: rename back to Fluence CLI (#320) chore: rename back to Fluence CLI * fix(deps): update dependency @fluencelabs/avm to v0.43.1 (#322) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore: release master (#324) * chore: release master * chore: Regenerate pnpm lock file * feat: use marine-js 0.7.2 (#321) * use marine-js 0.5.0 * increace some timeouts * increace some timeouts * use latest marine + remove larger timeouts * propagate CallParameters type * use marine 0.7.2 * Temp use node 18 and 20 * Comment out node 20.x --------- Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev> * chore: Fix test with node 18/20 error message (#323) * Fix test with node 18/20 error message * Run tests on node 18 and 20 * Enhance description * Fix type and obj property --------- Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev> * * Separate marine worker as a package * Trying to fix tests * Finalizing test fixes * * Refactoring packages. * Using CDN to load .wasm deps. * Setting up tests for new architecture * Fix almost all tests * Fix last strange test * Remove package specific packages * Remove avm class as it looks excessive * marine worker new version * misc refactoring/remove console.log's * Rename package js-peer to js-client * Move service info to marine worker * Change CDN path * Fix worker race confition * Remove buffer type * Remove turned off headless mode in platform tests * Remove async keyword to make tests pass * Remove util package * Make js-client.api package just reexport interface from js-client main package * Update package info in CI * Fix review comments * Remove test entry from marine-worker package * Misc fixes * Fix worker type * Add fetchers * Specify correct versions for js-client package * Set first ver for js-client * Update libp2p and related dep versions to the latest * Build all deps into package itself * Fix review * Refine package * Fix comment * Update packages/core/js-client/src/fetchers/browser.ts * Update packages/core/js-client/src/fetchers/index.ts * Update packages/core/js-client/src/fetchers/node.ts * Update packages/core/js-client/src/jsPeer/FluencePeer.ts * Update packages/core/js-client/src/keypair/__test__/KeyPair.spec.ts * Update packages/core/js-client/src/jsPeer/FluencePeer.ts Co-authored-by: shamsartem <shamsartem@gmail.com> * Delete outdated file * Need types for build to work * Inline func call * Add comments to replacement lines. P.S. we can remove some of them after update libp2p --------- Co-authored-by: shamsartem <shamsartem@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: fluencebot <116741523+fluencebot@users.noreply.github.com> Co-authored-by: Valery Antopol <valery.antopol@gmail.com> Co-authored-by: Anatoly Laskaris <github_me@nahsi.dev>
This commit is contained in:
@ -18,6 +18,7 @@
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@fluencelabs/js-client.api": "workspace:^",
|
||||
"@fluencelabs/js-client": "workspace:^",
|
||||
"base64-js": "1.5.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { fromByteArray } from 'base64-js';
|
||||
import { Fluence } from '@fluencelabs/js-client.api';
|
||||
import type { ClientConfig } from '@fluencelabs/js-client.api';
|
||||
import { Fluence } from '@fluencelabs/js-client';
|
||||
import type { ClientConfig } from '@fluencelabs/js-client';
|
||||
import { registerHelloWorld, helloTest, marineTest, resourceTest } from './_aqua/smoke_test.js';
|
||||
import { wasm } from './wasmb64.js';
|
||||
|
||||
|
@ -17,9 +17,7 @@
|
||||
"author": "Fluence Labs",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@fluencelabs/js-client.api": "workspace:^",
|
||||
"@fluencelabs/js-client.node": "workspace:^",
|
||||
"@test/aqua_for_test": "workspace:^"
|
||||
},
|
||||
"devDependencies": {}
|
||||
"@fluencelabs/js-client": "workspace:*",
|
||||
"@test/aqua_for_test": "workspace:../../aqua"
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
import '@fluencelabs/js-client.node';
|
||||
import '@fluencelabs/js-client';
|
||||
import { runTest } from '@test/aqua_for_test';
|
||||
|
||||
runTest().then(() => console.log('Smoke tests succeed!'));
|
||||
|
@ -7,7 +7,8 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="theme-color" content="#000000" />
|
||||
<meta name="description" content="Web site created using create-react-app" />
|
||||
<script src='http://localhost:8766/js-client.min.js' async></script>
|
||||
<!-- Ideally we want to use 'async' here. Currently, it's not supported. -->
|
||||
<script src="js-client.min.js"></script>
|
||||
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
|
||||
<!--
|
||||
manifest.json provides metadata used when your web app is installed on a
|
||||
|
@ -2,7 +2,8 @@ import puppeteer from 'puppeteer';
|
||||
import { dirname, join } from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
import { startCdn, startContentServer, stopServer } from '@test/test-utils';
|
||||
import { CDN_PUBLIC_PATH, startContentServer, stopServer } from '@test/test-utils';
|
||||
import { access, symlink } from 'fs/promises';
|
||||
|
||||
const port = 3001;
|
||||
const uri = `http://localhost:${port}/`;
|
||||
@ -10,12 +11,16 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
const publicPath = join(__dirname, '../build/');
|
||||
|
||||
const test = async () => {
|
||||
const cdn = await startCdn(8766);
|
||||
const localServer = await startContentServer(port, publicPath);
|
||||
try {
|
||||
await access(join(publicPath, 'source'))
|
||||
} catch {
|
||||
await symlink(CDN_PUBLIC_PATH, join(publicPath, 'source'));
|
||||
}
|
||||
|
||||
console.log('starting puppeteer...');
|
||||
const browser = await puppeteer.launch();
|
||||
const page = await browser.newPage();
|
||||
const browser = await puppeteer.launch({ headless: false });
|
||||
const page = (await browser.pages())[0];
|
||||
|
||||
// uncomment to debug what's happening inside the browser
|
||||
// page.on('console', (msg) => console.log('// from console: ', msg.text()));
|
||||
@ -34,7 +39,6 @@ const test = async () => {
|
||||
console.log('raw result: ', content);
|
||||
|
||||
await browser.close();
|
||||
await stopServer(cdn);
|
||||
await stopServer(localServer);
|
||||
|
||||
if (!content) {
|
||||
|
@ -19,8 +19,8 @@
|
||||
"author": "Fluence Labs",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@fluencelabs/js-client.web.standalone": "workspace:^",
|
||||
"@test/test-utils": "workspace:^"
|
||||
"@fluencelabs/js-client": "workspace:^",
|
||||
"@test/test-utils": "workspace:../../test-utils"
|
||||
},
|
||||
"devDependencies": {}
|
||||
}
|
||||
|
@ -16,8 +16,8 @@
|
||||
|
||||
<div id="res-placeholder"></div>
|
||||
|
||||
<script src='http://localhost:8765/js-client.min.js'></script>
|
||||
<script src="./index.js"></script>
|
||||
<script src="js-client.min.js"></script>
|
||||
<script src="index.js"></script>
|
||||
</main>
|
||||
</body>
|
||||
|
||||
|
@ -84,7 +84,7 @@ const getRelayTime = () => {
|
||||
|
||||
const main = async () => {
|
||||
console.log('starting fluence...');
|
||||
await fluence.defaultClient.connect(relay);
|
||||
fluence.defaultClient = await fluence.clientFactory(relay);
|
||||
console.log('started fluence');
|
||||
|
||||
console.log('getting relay time...');
|
||||
@ -104,7 +104,7 @@ btn.addEventListener('click', () => {
|
||||
main().then((res) => {
|
||||
const inner = document.createElement('div');
|
||||
inner.id = 'res';
|
||||
inner.innerText = 'res';
|
||||
inner.innerText = res;
|
||||
document.getElementById('res-placeholder').appendChild(inner);
|
||||
});
|
||||
});
|
||||
|
@ -2,7 +2,8 @@ import puppeteer from 'puppeteer';
|
||||
import { dirname, join } from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
import { startCdn, startContentServer, stopServer } from '@test/test-utils';
|
||||
import { CDN_PUBLIC_PATH, startCdn, startContentServer, stopServer } from '@test/test-utils';
|
||||
import { symlink, access } from 'fs/promises';
|
||||
|
||||
const port = 3000;
|
||||
const uri = `http://localhost:${port}/`;
|
||||
@ -10,12 +11,16 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
const publicPath = join(__dirname, '../public/');
|
||||
|
||||
const test = async () => {
|
||||
const cdn = await startCdn(8765);
|
||||
const localServer = await startContentServer(port, publicPath);
|
||||
try {
|
||||
await access(join(publicPath, 'source'))
|
||||
} catch {
|
||||
await symlink(CDN_PUBLIC_PATH, join(publicPath, 'source'));
|
||||
}
|
||||
|
||||
console.log('starting puppeteer...');
|
||||
const browser = await puppeteer.launch();
|
||||
const page = await browser.newPage();
|
||||
const page = (await browser.pages())[0];
|
||||
|
||||
// uncomment to debug what's happening inside the browser
|
||||
// page.on('console', (msg) => console.log('// from console: ', msg.text()));
|
||||
@ -34,7 +39,6 @@ const test = async () => {
|
||||
console.log('raw result: ', content);
|
||||
|
||||
await browser.close();
|
||||
await stopServer(cdn);
|
||||
await stopServer(localServer);
|
||||
|
||||
if (!content) {
|
||||
|
@ -16,8 +16,6 @@
|
||||
"author": "Fluence Labs",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@fluencelabs/js-client.api": "workspace:^",
|
||||
"@fluencelabs/js-client.node": "workspace:^",
|
||||
"serve-handler": "6.1.5"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
@ -7,7 +7,7 @@ import { fileURLToPath } from 'url';
|
||||
|
||||
const __dirname = dirname(fileURLToPath(import.meta.url));
|
||||
|
||||
const CDN_PUBLIC_PATH = join(__dirname, '../../../client/js-client.web.standalone/dist/');
|
||||
export const CDN_PUBLIC_PATH = join(__dirname, '../../../core/js-client/dist/browser');
|
||||
|
||||
export const startCdn = (port: number) => startContentServer(port, CDN_PUBLIC_PATH);
|
||||
|
||||
@ -15,6 +15,17 @@ export const startContentServer = (port: number, publicDir: string): Promise<Ser
|
||||
const server = createServer((request, response) => {
|
||||
return handler(request, response, {
|
||||
public: publicDir,
|
||||
rewrites: [{
|
||||
source: '/js-client.min.js',
|
||||
destination: '/source/index.umd.cjs'
|
||||
}],
|
||||
headers: [{
|
||||
source: '**/*',
|
||||
headers: [
|
||||
{ key: 'Cross-Origin-Opener-Policy', value: 'same-origin' },
|
||||
{ key: 'Cross-Origin-Embedder-Policy', value: 'require-corp' }
|
||||
]
|
||||
}]
|
||||
});
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user