Commit Graph

4402 Commits

Author SHA1 Message Date
Mish Ushakov 698959dddb Added --no-cache option for building templates without cache (#735)
- Adds `--no-cache` parameter to CLI `template build` command for
building templates without cache.
@e2b/cli@1.4.1
2025-05-15 19:19:04 +02:00
Ben Fornefeld 10db4e95e6 CLI: Improve auth login typing + browser sign in response usage (#733)
This pr improves the auth login code, to be more declarative and
realistic to the actual response that is sent by the dashboard sign in
flow.
2025-05-15 19:18:24 +02:00
github-actions[bot] 231e19694d [skip ci] Release new versions 2025-05-15 16:46:57 +00:00
Ben Fornefeld a1c2466841 Fix authErrorBox switch breaking (#734)
To show the correct error message in our cli, we need to break the
switch cases. Currently always the last case will be applied, no matter
the input.
@e2b/cli@1.4.0
2025-05-15 18:44:00 +02:00
Jakub Novák 90ffca91ff Remove sandbox streams (#731)
# Description

This route isn't used anymore
2025-05-15 05:54:12 -07:00
github-actions[bot] 286e70d689 [skip ci] Release new versions 2025-05-14 15:19:57 +00:00
Jiri Sveceny 2def1305f3 Flag for securing envd access with auth token (#688)
Waiting until secure flag will be available in production cluster.

---------

Co-authored-by: Jakub Novák <jakub@e2b.dev>
@e2b/python-sdk@1.5.0 e2b@1.5.0
2025-05-14 15:15:18 +00:00
Vasek Mlejnsky af0773b74d Add hugging face to the quickstart guide (#726)
Adds an example how to use E2B with Hugging Face's serverless inference
API to the quickstart guide.
2025-05-14 01:26:52 +02:00
Mish Ushakov fd0a097ca9 Added homebrew installation instructions to the docs (#721) 2025-05-13 11:40:12 +00:00
Jakub Novák 3b87ed9087 Update dependencies (#720)
# Description

Fixes: 
https://github.com/e2b-dev/E2B/security/dependabot/149
https://github.com/e2b-dev/E2B/security/dependabot/150
2025-05-12 20:35:21 +00:00
Jakub Novák 106d0a7715 Remove closed port tests (#722)
# Description

They will be moved to infra, they are integration tests
2025-05-12 13:32:30 -07:00
Tomas Valenta 209e3407da Fix sandbox not found test (#715)
- Fix error code in json
- Modify the error message to match the new returned error
2025-05-10 16:42:54 +00:00
0div 1d17b9d484 Fix and update integration test template (#712)
These changes were made while testing
https://github.com/e2b-dev/infra/pull/603
- fix and install [stress-ng](https://github.com/ColinIanKing/stress-ng)
in integration test template
- fix integration test e2b.toml
2025-05-07 10:12:36 -07:00
Tomas Valenta 88266d6ae6 Unify passing of template used in tests and log background commands output (#704)
- Show errors from background commands
- Unify passing of template used in tests
2025-05-06 00:55:03 -07:00
Jakub Novák 05721758c6 Revert "Update metrics docs beta note to be public " (#718)
Reverts e2b-dev/E2B#717

Metrics aren't public yet
2025-05-06 00:45:32 -07:00
0div 01174c8954 Update metrics docs beta note to be public (#717)
The metrics command is not in private beta as it does not require a
special cluster.
2025-05-06 02:24:34 +02:00
github-actions[bot] 41f42a1490 [skip ci] Release new versions 2025-05-05 16:34:23 +00:00
0div 2703f75370 Add minor changeset to python and js SDKs (#716)
`npx changeset` for the release of
https://github.com/e2b-dev/E2B/pull/649
@e2b/python-sdk@1.4.0 e2b@1.4.0
2025-05-05 16:29:35 +00:00
0div a5b08de85f Add optional depth parameter to SDK file listing methods. (#649)
# Description

Do not merge before https://github.com/e2b-dev/infra/pull/524 is merged
and deployed.

The DX would look like this:
```js
const files = await sandbox.files.list(dirName, { depth: 3 })
```
- [x] update `envd` pb spec 
- [x] generate for `js-sdk`
- [x] update `js-sdk` `file.list` method to include optional depth param
- [x] update `js-sdk` tests
- [x] generate for `python-sdk`
- [x] update `python-sdk` `file.list` method to include optional depth
param
  - [x] sync
  - [x] async
- [x] update `python-sdk` tests
  - [x] sync
  - [x] async

---------

Co-authored-by: Mish <10400064+mishushakov@users.noreply.github.com>
2025-05-05 09:17:08 -07:00
never not exploring a32bd71616 Remove HubSpot contact creation (#714)
This pr removes the HubSpot contact creation from our `/new_user` edge
function.
2025-05-04 10:01:52 -07:00
Mish Ushakov 2e6f3c6ae9 Vitest: continue after failing test (#711)
Like in pytest, we should be running all the tests before reporting test
results. Currently, vitest finishes after 1 test has failed, this could
cause confusion if your new test should be running after the failing
one.
2025-05-02 07:05:18 -07:00
Jakub Novák 0a4ffb0977 Update connect bucket docs page (#710)
# Description

Update connect bucket guide to new SDK version

---------

Co-authored-by: 0div <98087403+0div@users.noreply.github.com>
2025-05-01 09:33:54 +00:00
github-actions[bot] 5cb2edc0d1 [skip ci] Release new versions 2025-04-29 15:28:51 +00:00
Jakub Dobry e3021758f1 Update JS SDK target to es2017 (#708)
Updates the JS SDK target to es2017 (from es2015). This change improves
error logs that include user code. This is happening because before
es2017 (e.g. es2015) tsup adds polyfill for async (which we use in the
API) obfuscating the code execution path.

(The previously generated code)
```
var __async = (__this, __arguments, generator) => {
  return new Promise((resolve, reject) => {
    var fulfilled = (value) => {
      try {
        step(generator.next(value));
      } catch (e) {
        reject(e);
      }
    };
    var rejected = (value) => {
      try {
        step(generator.throw(value));
      } catch (e) {
        reject(e);
      }
    };
    var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
    step((generator = generator.apply(__this, __arguments)).next());
  });
};
var __await = function(promise, isYieldStar) {
  this[0] = promise;
  this[1] = isYieldStar;
};
```
e2b@1.3.0
2025-04-29 08:23:47 -07:00
Mish Ushakov 10c6af28d4 docs: env > envs in Environment variable doc (#707)
- Minor change that fixes incorrect parameter in the docs
2025-04-29 12:16:17 +00:00
Jakub Novák 4ec6c82630 Security patches (#706)
# Description

Fixes:
https://github.com/e2b-dev/E2B/security/dependabot/163
https://github.com/e2b-dev/E2B/security/dependabot/157
https://github.com/e2b-dev/E2B/security/dependabot/156
https://github.com/e2b-dev/E2B/security/dependabot/148
https://github.com/e2b-dev/E2B/security/dependabot/147
2025-04-29 02:41:14 -07:00
0div 8bfd3c0eed Test new error handling indicating when the sandbox is not found (#540)
Added a test in `js-sdk` for https://github.com/e2b-dev/infra/pull/231

---------

Co-authored-by: Jakub Novák <jakub@e2b.dev>
2025-04-25 23:44:39 +02:00
Jakub Novák 3cfed0e4c0 Refactor workflows to enable requiring tests in PRs (#703)
# Description

Refactor to enable successful status checks for tests
2025-04-25 14:20:17 +02:00
github-actions[bot] 2c633a4ee9 [skip ci] Release new versions 2025-04-24 15:34:38 +00:00
Jakub Novák f81307c515 Allow for short sandbox id in e2b sbx connect (#702)
# Description

Allow for short sandbox ID in CLI when using `e2b sandbox connect
<sandbox-id>`
@e2b/cli@1.3.4
2025-04-24 08:31:04 -07:00
github-actions[bot] cde5128e96 [skip ci] Release new versions 2025-04-24 09:46:24 +00:00
Jakub Novák 64f2f71309 Respect E2B_DOMAIN for e2b auth login in CLI (#701)
# Description

- Respect `E2B_DOMAIN` for `e2b auth login` in CLI
- Keep `E2B_DOCS_BASE` to allow for running dashboard locally or towards
potentially different domain
@e2b/cli@1.3.3
2025-04-24 11:43:34 +02:00
Jakub Novák e1f1d9666e Fix codesnippet in docs for API Key (#699)
# Description

Updates code snippet for current SDK version

https://e2b-web-git-fix-docs-api-key.e2b-preview.dev/docs
2025-04-23 17:59:00 +02:00
Jakub Novák 93db2ed5ef Add API key page to docs (#698)
# Description

Adds a page on how to use API Keys and Access Tokens

Co-authored-by: never not exploring <50748440+ben-fornefeld@users.noreply.github.com>
2025-04-23 16:38:14 +02:00
github-actions[bot] 67f5230532 [skip ci] Release new versions 2025-04-18 22:43:01 +00:00
0div ba65bb5ad8 Fix publishing workflow (#696)
Fix package publishing workflow ([see
issue](https://github.com/e2b-dev/E2B/actions/runs/14542539046/job/40803167565))

---------

Co-authored-by: Tomas Valenta <valenta.and.thomas@gmail.com>
2025-04-19 01:38:49 +03:00
Tomas Valenta 74ff53c3bb Add option for proxying SDK requests to API and sandbox (#695)
PR that allows you to pass `proxy` (of the type ProxyTypes) when calling
methods in the SDK that send requests. Also, if you pass `proxy` when
creating a sandbox, all the sandbox requests (called on the
Sandbox/AsyncSandbox instance) will automatically use the same proxy.

The PR also contains a small bugfix—adding missing passing of limits and
passing these directly instead of through transport to be able to pass
the proxy parameter properly.

This change should also be compatible with the code interpreter—it uses
the client transport, which uses the passed proxy if there is any.
@e2b/python-sdk@1.3.5
2025-04-19 01:12:25 +03:00
Mish Ushakov 4f6563c27c Adde CLI beta list command docs (#691) 2025-04-17 19:39:28 +02:00
Mish Ushakov c8d338cf45 Updated docs on Sandbox.list v2 (#681)
- Added notices in "Connect to running sandbox", "Sandbox metadata"
docs.
- Updated "List sandboxes", "Sandbox persistence" docs.
- Renamed route "List running sandboxes"  > "List sandboxes".
2025-04-17 17:56:49 +02:00
never not exploring 34f8f2e244 Improve assetPrefix configuration for proxy / development setup (#683)
Because our docs nextjs app is being proxied by our dashboard nextjs
app, we need to ensure the docs nextjs app uses absolute urls to handle
it's assets. Because when it is proxied by another nextjs app, the proxy
tries to reference the docs nextjs apps assets relatively, which results
in assets not being found.

Before this pr, we set an assetPrefix for every node production
deployment, which caused issues on preview deployments, since these can
consist of multiple assigned domains and depending on which one was
opened, the asset prefixing failed.

These changes ensure that only the production deployment of the docs
application has an assetPrefix. Here we can be certain on which domain
it will live. I created a new environment variable `PRODUCTION_URL` here
to ensure 100% consistency with `e2b-dev/dashboard`s proxy domain
config, without relying on the vercel projects assigned domain setup.
2025-04-17 13:26:22 +02:00
0div 1b447a5761 Clone remote desktop & code-interpreter SDK refs into E2B sdk refs folder during publish (#682)
### Description 

This was initially performed in [the legacy
workflow](https://github.com/e2b-dev/E2B/blob/d27f81c5d3a85e2791258e388eb7ebd5f2e5eaa9/.github/workflows/generate_sdk_ref.yml#L101-L117)
but has since been removed, adding it back to have latest [desktop &
code-interpreter SDK references](https://e2b.dev/docs/sdk-reference) on
our docs

### Test
<img width="234" alt="Screenshot 2025-04-15 at 1 47 16 PM"
src="https://github.com/user-attachments/assets/b00347d9-794d-41f1-98db-c4704c59f50d"
/>


#### should become:

- [ ] desktop:
  - [ ] js-sdk `v1.7.01@latest`
  - [ ] python-sdk `v1.6.1@latest`
- [ ] code-interpreter
  - [ ] js-sdk `v1.1.1@latest`
  - [ ] python-sdk `v1.2.0@latest`
2025-04-16 18:49:02 +02:00
Tomas Valenta 6ac98dbe15 Fix dataclass declaration for WriteEntry (#679)
There was a type in dataclass declaration that caused the WriteEntry to
behave incorrectly.
2025-04-11 22:03:47 +02:00
github-actions[bot] 5a43e39579 [skip ci] Release new versions 2025-04-11 16:11:00 +00:00
Penny Templeton a1e2274eca Fix minor issue in python filesystem SDK (#678)
One should now be able to use sb.filesystem.write(WriteEntry[]) in a
typesafe way.

---------

Co-authored-by: Mish <10400064+mishushakov@users.noreply.github.com>
@e2b/python-sdk@1.3.4
2025-04-11 18:04:38 +02:00
github-actions[bot] 2822c7bec0 [skip ci] Release new versions 2025-04-10 16:09:43 +00:00
Mish Ushakov f4e0026583 Updates SandboxApiOpts type with added headers field (#677)
- Minor type fix
e2b@1.2.5
2025-04-10 18:04:25 +02:00
0div e0c1bc752d Make codegen robust and deterministic for js and python SDKs (#664)
# Description 

This PR allows to codegen without worrying about your environment and
dependencies for consistent outcomes in what code is generated from
openapi and envd protobuf spec. Will generate files for `js-sdk` and
`python-sdk`

- [x] create Docker image with all the pinned deps needed to codegen
- [x] create codegen script using this container with mapped volumes
- [x] adapt Makefiles to this new approach
- [x] adapt where we install the connect-python protobuf binary for this
to work

# Test

```sh
make codegen # this command is similar to `make generate` but w/o the hassle

Generating SDK code from openapi and envd spec
cd packages/js-sdk && pnpm generate

> e2b@1.2.1 generate /workspace/packages/js-sdk
> python ./../../spec/remove_extra_tags.py sandboxes templates && openapi-typescript ../../spec/openapi_generated.yml -x api_key --arr
ay-length --alphabetize --output src/api/schema.gen.ts

 openapi-typescript 7.6.1
🚀 ../../spec/openapi_generated.yml → src/api/schema.gen.ts [44.2ms]
cd packages/js-sdk && pnpm generate-envd-api

> e2b@1.2.1 generate-envd-api /workspace/packages/js-sdk
> openapi-typescript ../../spec/envd/envd.yaml -x api_key --array-length --alphabetize --output src/envd/schema.gen.ts

 openapi-typescript 7.6.1
🚀 ../../spec/envd/envd.yaml → src/envd/schema.gen.ts [22.7ms]

[...]

cd packages/python-sdk && make generate-api

All done!  🍰 
```

---------

Co-authored-by: Jiri Sveceny <jiri.sveceny@icloud.com>
2025-04-07 17:00:31 +02:00
Jakub Novák e9f39b07f1 Remove order check from SDK. (#675)
# Description

The test was moved to integration tests directly in infra repo
2025-04-07 07:00:57 -07:00
Jakub Novák 2aada562d1 Update esbuild to 0.25.0 (#673)
# Description

https://github.com/e2b-dev/E2B/security/dependabot/147
2025-04-07 15:54:56 +02:00
github-actions[bot] b02f93e7f4 [skip ci] Release new versions 2025-04-05 20:21:53 +00:00