Commit Graph

4088 Commits

Author SHA1 Message Date
KernelDeimos b92a4edb83 fix: missing return for app icons on init
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-09-15 04:31:36 -04:00
KernelDeimos 4d92f4a3ce fix: missing span name ("fn is not defined" error) 2025-09-15 04:28:51 -04:00
KernelDeimos ed5464f0c0 tmp: disable refresh_app_cache
Earlier I actually thought this wasn't running in prod because when I
run Puter locally the "refresh app cache" message doesn't appear.
I ensured that minlog was off but I forgot that around the same time
I also disabled the "tick" log level by default. If it weren't for
that I would've realized this an hour ago. That said, it's kind of
odd that this seems to be the source of the leak, because this isn't
new behavior.
2025-09-15 04:15:19 -04:00
KernelDeimos 3a0733f557 debug: add annotation class for app objects
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-09-15 04:00:27 -04:00
KernelDeimos 7d7291cde4 fix: add unlink() methods to clear ECMAP 2025-09-15 03:19:46 -04:00
KernelDeimos 509f1add4e tmp: for now, make refresh_apps_cache a noop 2025-09-15 02:47:11 -04:00
KernelDeimos f98c78504b fix: try disabling this 30 second app cache for now
OOM conditions happening... maybe this will fix it
2025-09-15 00:12:46 -04:00
Nariman Jelveh 735f16725d refactor: make theme service non-blocking and fix captcha issues (#1564)
Replaced inline styles with CSS classes for the captcha modal to improve maintainability and readability. Adjusted JavaScript to accommodate the new structure and ensure proper functionality. Enhanced error handling and loading state management during the captcha verification process.
2025-09-14 20:20:19 -07:00
KernelDeimos 42abfcc5e7 perf: huh, right... not sure how I missed that
These two async operations depend on fetchEntry, but they do not
depend on each other; they can be run in parallel.
2025-09-14 20:40:18 -04:00
KernelDeimos 27ab23e7b1 fix: read 'push' of undefined
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-09-14 19:01:59 -04:00
KernelDeimos f3fdfea65b perf: add 30 second app cache
There used to be an app cache here that would be invalidated but I
think this may have been removed because the invalidation logic
was causing issues. A 30 second cache seems reasonable though, so
let's do that for now.
2025-09-14 19:01:59 -04:00
KernelDeimos 733b6a653e perf: further readdir improvements 2025-09-14 19:01:59 -04:00
Aryan Arlikar 9820794470 Translate and improve emojis (#1557)
* chore(i18n/emoji): improve clarity of confirmation and name validation emojis

* chore(i18n/emoji): improve clarity of confirmation and name validation emojis
2025-09-14 12:45:54 -07:00
Watson 4c5032ff47 Update ko.js with full Korean translations (#1558)
* Update ko.js with full Korean translations

* fix: update 'public' translation from '공개' (open) to '공용' (shared) for clarity
2025-09-14 11:22:24 -07:00
Webb321 cab3d130c7 fix: add Chinese transaltions (#1559)
* fix: add Chinese transaltions

* fix: formatting

---------

Co-authored-by: Nariman Jelveh <nj@puter.com>
2025-09-14 10:55:41 -07:00
KernelDeimos 094dd183b2 fix: event multiplication introduced in ebf4d7
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
2025-09-13 22:41:09 -04:00
KernelDeimos 7872fd58ed perf: optimize extension loader
Parallelize as much as possible, and avoid reading data from the
package.json when the file was generated by the extension loader
in the first place.
2025-09-13 22:41:09 -04:00
KernelDeimos 7730877c91 dev: add extension initialization priority 2025-09-13 22:41:09 -04:00
KernelDeimos 55c53d9eee dev: extension registry and lifecycle
Adds `register`, `registry`, `preinit`, and related symbols to the
available extension globals.
2025-09-13 22:41:09 -04:00
KernelDeimos 9135632129 dev: add support for ES6 Module extensions
Previously ES6 Module extensions would only work on versions of node
with --experimental-require-module enabled by default, and provided the
entry file had no top-level await. This commit uses "await import"
conditionally if the "type" in package.json is set to "module".
2025-09-13 22:41:09 -04:00
Daniel Salazar 0608958117 Merge pull request #1555 from HeyPuter/DS/main
fix: br.js transaltions
2025-09-13 18:14:25 -07:00
Daniel Salazar 6b05c90a21 fix: br.js transaltions 2025-09-13 18:12:57 -07:00
Daniel Salazar 740fef2306 Merge pull request #1484 from HeyPuter/DS/main
feat: logging for queries in puter js
2025-09-13 18:12:31 -07:00
Daniel Salazar 5569af8961 Merge branch 'main' into DS/main 2025-09-13 18:10:08 -07:00
AlfreThiago 07f97deab5 Adding missing translations for Brazilian Portuguese. (#1554)
* Feat: Adding missing translations for Brazilian Portuguese. Fixes #1500

* Corrections in brazilian translation

* Clean up translation file by removing comments

Removed comments indicating missing translations in br.js.

---------

Co-authored-by: Nariman Jelveh <nj@puter.com>
2025-09-13 17:30:41 -07:00
KernelDeimos a5882889dd perf: make stat really fast 2025-09-13 20:27:44 -04:00
KernelDeimos c70434d947 perf: avoid reduntant fetches due to concurrency
Sometimes the same fs entry is fetched multiple times concurrently
because of parallel methods with separation of concerns.

After this commit, only one parallel fetch will go through and the
others will wait for it. Subsequent fetches will not occur is the
data that was needed is already there.
2025-09-13 20:27:44 -04:00
KernelDeimos 6a129ba8cc perf: skip quick_check for only one provider
The 'quick_check' increases the amount of time it takes to perform a
stat operation significantly proportional to the time it takes to do
a stat because an fsentry fetch occurs before a transient
memoization map is available for an operation.
2025-09-13 20:27:44 -04:00
dependabot[bot] 915358cec4 build(deps-dev): bump rollup from 3.23.0 to 3.29.5 in /src/terminal (#1553)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
Bumps [rollup](https://github.com/rollup/rollup) from 3.23.0 to 3.29.5.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG-3.md)
- [Commits](https://github.com/rollup/rollup/compare/v3.23.0...v3.29.5)

---
updated-dependencies:
- dependency-name: rollup
  dependency-version: 3.29.5
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 16:01:23 -07:00
dependabot[bot] 1f3e83a9a0 build(deps): bump path-to-regexp from 6.2.1 to 6.3.0 in /src/phoenix (#1552)
Bumps [path-to-regexp](https://github.com/pillarjs/path-to-regexp) from 6.2.1 to 6.3.0.
- [Release notes](https://github.com/pillarjs/path-to-regexp/releases)
- [Changelog](https://github.com/pillarjs/path-to-regexp/blob/master/History.md)
- [Commits](https://github.com/pillarjs/path-to-regexp/compare/v6.2.1...v6.3.0)

---
updated-dependencies:
- dependency-name: path-to-regexp
  dependency-version: 6.3.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:48:24 -07:00
Nariman Jelveh 1c64aee87e Update package-lock.json 2025-09-13 13:45:49 -07:00
dependabot[bot] 298cb83c48 build(deps): bump braces from 3.0.2 to 3.0.3 in /src/phoenix (#1551)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3)

---
updated-dependencies:
- dependency-name: braces
  dependency-version: 3.0.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:43:31 -07:00
dependabot[bot] d746d3ef55 build(deps): bump serialize-javascript and mocha in /src/phoenix (#1550)
Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) to 6.0.2 and updates ancestor dependency [mocha](https://github.com/mochajs/mocha). These dependencies need to be updated together.


Updates `serialize-javascript` from 6.0.0 to 6.0.2
- [Release notes](https://github.com/yahoo/serialize-javascript/releases)
- [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.0...v6.0.2)

Updates `mocha` from 10.2.0 to 10.8.2
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v10.2.0...v10.8.2)

---
updated-dependencies:
- dependency-name: serialize-javascript
  dependency-version: 6.0.2
  dependency-type: indirect
- dependency-name: mocha
  dependency-version: 10.8.2
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:38:43 -07:00
dependabot[bot] 7e1a3c9ac7 build(deps): bump get-func-name from 2.0.0 to 2.0.2 in /tools/api-tester (#1549)
Bumps [get-func-name](https://github.com/chaijs/get-func-name) from 2.0.0 to 2.0.2.
- [Release notes](https://github.com/chaijs/get-func-name/releases)
- [Commits](https://github.com/chaijs/get-func-name/commits/v2.0.2)

---
updated-dependencies:
- dependency-name: get-func-name
  dependency-version: 2.0.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:30:47 -07:00
dependabot[bot] a38d8db965 build(deps): bump axios from 1.4.0 to 1.12.0 in /tools/api-tester (#1548)
Bumps [axios](https://github.com/axios/axios) from 1.4.0 to 1.12.0.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.4.0...v1.12.0)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.12.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:28:13 -07:00
dependabot[bot] 3c2639403c build(deps): bump form-data from 4.0.0 to 4.0.4 in /tools/api-tester (#1547)
Bumps [form-data](https://github.com/form-data/form-data) from 4.0.0 to 4.0.4.
- [Release notes](https://github.com/form-data/form-data/releases)
- [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md)
- [Commits](https://github.com/form-data/form-data/compare/v4.0.0...v4.0.4)

---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-13 13:26:11 -07:00
Nariman Jelveh a582c0ee38 Update package-lock.json 2025-09-13 13:19:58 -07:00
Nariman Jelveh 8392396b1b Update Axios 2025-09-13 13:18:01 -07:00
Nariman Jelveh 338ae161d7 closes #1545 2025-09-13 13:16:37 -07:00
shadow-taw ac9a42b8e2 Updating the Arabic (العربية) translation (#1543)
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
* the Arabic (العربية) translation of Puter is Completed

* Update ar.js

* updating the Arabic (العربية) translation of Puter

---------

Co-authored-by: jelveh <nj@puter.com>
2025-09-12 18:26:30 -07:00
KernelDeimos e926738d64 perf: add some new keys to initial fetch 2025-09-12 19:40:26 -04:00
KernelDeimos 7bc03fe17c perf: fix sequential kv gets for default apps 2025-09-12 19:33:43 -04:00
KernelDeimos 5d3863d473 style: user_preferences.default_apps
This snippet of code doesn't need to iterate over keys, it can iterate over
values instead. Also, this "let" can be a "const".
2025-09-12 19:23:24 -04:00
KernelDeimos 5119efaf79 Reapply "feat: support Gemini imagegen service"
This reverts commit 05071b4338.
2025-09-12 19:16:58 -04:00
KernelDeimos c40c138aa2 fix: I have no idea how I didn't catch this
Apparently this just never happens when I use Puter locally.
2025-09-12 19:09:41 -04:00
KernelDeimos 05071b4338 Revert "feat: support Gemini imagegen service"
Docker Image CI / build-and-push-image (push) Has been cancelled
Maintain Release Merge PR / update-release-pr (push) Has been cancelled
release-please / release-please (push) Has been cancelled
test / test (18.x) (push) Has been cancelled
test / test (20.x) (push) Has been cancelled
test / test (22.x) (push) Has been cancelled
This reverts commit e13b008c79.

This is being done temporarily to debug something else without
confounding variables.
2025-09-12 18:43:20 -04:00
ProgrammerIn-wonderland e13b008c79 feat: support Gemini imagegen service 2025-09-12 18:17:31 -04:00
KernelDeimos b3e2b69c4d perf: execution context memoization map for filesystem
This commit adds an object called ECMAP. This object is a transient
memoization store for use by FSNodeContext.
2025-09-12 18:13:41 -04:00
KernelDeimos 43a0be33ca fix: selector handling from 8cfa0ece
For instances where svc_fs.node was called and explicitly passed a
NodePathSelector (instead of being passed a legacy-style object
with a path attribute) this code was failing. This commit moves the
affected code snippet after input coercion and updates references
to use the coerced input.

style: formatting changes were applied to the code. Instead of using
nested conditional blocks we use labelled breaks
2025-09-12 16:59:47 -04:00
KernelDeimos c508189455 fix: missing condition in ownership check
Not sure when this went away, but we were always getting the
permission though the file path instead of ID/UUID from what it
looks like, which was hiding this problem.
2025-09-12 16:45:39 -04:00