Commit graph

108 commits

Author SHA1 Message Date
SamTV12345
ff24e1e80e bump version 2024-12-22 17:08:30 +01:00
SamTV12345
5b8be1cac4 bump version 2024-10-28 22:05:58 +01:00
SamTV12345
4034ee1e6e bump version 2024-09-21 13:07:21 +02:00
SamTV12345
15a9dfc992 bump version 2024-09-07 15:02:04 +02:00
SamTV12345
79da35c6a6 bump version 2024-09-05 18:55:46 +02:00
SamTV12345
84cfbe51e5 Added makedocs to root. 2024-09-05 18:55:25 +02:00
SamTV12345
bad5ac89c3 bump version 2024-08-09 11:40:31 +02:00
SamTV12345
133c94046e bump version 2024-08-08 22:52:13 +02:00
SamTV12345
59531d47e7 bump version 2024-08-08 21:31:37 +02:00
SamTV12345
550a29f3e6 Added new command to setup etherpad. Fixed Dockerfile 2024-07-23 17:43:32 +02:00
SamTV12345
d6d636955c
Feat/bundle js (#6511)
* Added minify

* Added POC for browser

* Moved first js files to ts

* Fixed caret positioning

* Added support for plugins

* Fixed get undefined.

* Removed require of socketio, l10n, html10n and error reporter

* Added minify

* Added POC for browser

* Moved first js files to ts

* Fixed caret positioning

* Added support for plugins

* Fixed get undefined.

* Removed require of socketio, l10n, html10n and error reporter

* Fixed popup not showing

* Fixed timeslider

* Reworked paths

* Fixed loading

* Don't generate sources map in production mode

* Non working hmr

* Added live reloading.

* Fixed timeslider when hot reloading

* Removed eval

* Fixed.

* Fixed env

* Fixed frontend tests.

* Added minifying via lightningcss

* Added minify via esbuild

* Fixed diagnostic url

* Removed lightningcss

* Fixed types

* Fixed alias

* Fixed loadtest

* Fixed

* Fixed loading ep_font_color3

* Restructure windows build

* Fixed windows build

* Fixed pnpm lock

---------

Co-authored-by: SamTv12345 <samtv12345@samtv12345.com>
2024-07-18 08:51:30 +02:00
SamTV12345
8a9bda71ab bump version 2024-07-07 20:53:01 +02:00
Helder Sepulveda
13e160cbe4
Clean comments (#6420)
* Add script to trigger test on utils

* Add new function to remove the comments from the settings file.
It reduces the size of the payload when we save on the admin page `.../admin/settings`

* Add     font-family: monospace; to the settings
2024-06-04 19:32:21 +02:00
SamTV12345
de9c1f0a60 bump version 2024-06-02 12:59:38 +02:00
Satoshi Yazawa
3a1ef560ec
Upgrade live-plugin-manager to 1.0.0 (#6396)
* Upgrade the live-plugin-manager

* Fix migration scripts to skip checking for the system directory of live-plugin-manager

* Updated lockfile

* Improved handling of install.

---------

Co-authored-by: yacchin1205 <968739+yacchin1205@users.noreply.github.com>
Co-authored-by: SamTV12345 <40429738+samtv12345@users.noreply.github.com>
2024-06-01 14:05:53 +02:00
SamTV12345
f6f6ea9d4c Added compatibility with install-plugins script 2024-06-01 11:19:24 +02:00
SamTV12345
27dab95113
Fixed documentation to be pnpm run plugins i for plugin installation (#6405) 2024-05-24 21:57:39 +02:00
SamTV12345
966b0dc2d1 Removed 2024-05-24 21:36:13 +02:00
SamTV12345
95328dcaeb
Fixed api query authorization (#6404)
* Fixed api query authorization

* Fixed api query authorization
2024-05-24 21:31:58 +02:00
SamTV12345
54860cd35a
Added querying and removing plugins. (#6274)
* Added querying and removing plugins.

* Added listing and removing plugins via cli
2024-05-18 11:56:41 +02:00
SamTV12345
e30a527805 bump version 2024-04-29 21:32:31 +02:00
SamTV12345
eb766c80fa Removed specific pnpm version from lockfile. 2024-04-24 19:20:02 +02:00
SamTV12345
e12be96102
feat(admin): Added shoutout to admin panel (#6346)
* Added shoutout

* Added shoutout function

* Fixed test.

* Included feedback from review.

* Removed unnecessary file
2024-04-21 17:58:51 +02:00
SamTV12345
43d57e36ae bump version 2024-04-10 19:06:26 +02:00
SamTV12345
fb56809e55
Feat/oauth2 (#6281): Added oauth to API paths
* Added oauth provider.

* Fixed provider.

* Added auth flow.

* Fixed auth flow and added scaffolding vite config.

* Added working oauth2.

* Fixed dockerfile.

* Adapted run.sh script

* Moved api tests to oauth2.

* Updated security schemes.

* Removed api key from existance.

* Fixed installation

* Added missing issuer in config.

* Fixed dev dependencies.

* Updated lock file.
2024-03-26 17:11:24 +01:00
SamTV12345
d004d19dd7
Added vitepress for documentation. (#6270) 2024-03-23 20:58:05 +01:00
SamTV12345
8dd9fb3b03 bump version 2024-03-17 22:02:49 +01:00
SamTV12345
6c91759f52 bump version 2024-03-17 12:21:32 +01:00
Stefan Müller
fe106f0afc
Improve plugins docker build and fixed plugin loading when dependencies are specified (#6164)
* Install pnpm only local - not global

* Install plugins during docker build with live-plugin-manager

* Migrated installer to ts.

* Added missing workspace script.

* Fixed docker build.

* Fix Dockerfile

* Fixed installer not being yet initialized.

* Ported installer to correct install path.

* Fixed pnpm installation.

* Fixed docker build.

* Fixed plugin loading.

* Fixed plugins not being able to be loaded.

* Fix plugin installation instructions in README

* Fixed startup.

* Fixed folder not present.

* Added unlinking dependencies.

* Added deleting dependencies.

* Fixed listing plugins.

---------

Co-authored-by: SamTV12345 <40429738+samtv12345@users.noreply.github.com>
2024-03-14 16:06:32 +01:00
SamTV12345
73dff0bfe7
Begin redesigning admin panel. (#6219)
* Begin redesigning admin panel.

* Added monaco editor.

* Fixed tests
2024-03-13 15:47:02 +01:00
SamTV12345
93a929b5ff Fixed run command not being there. 2024-03-12 22:10:27 +01:00
SamTV12345
c2699e4528
Added playwright tests. (#6212)
* Added playwright tests.

* Added clear authorship color.

* Ported enter ts.

* Ported more tests.

* Commented helper tests.

* Fixed admin tests.

* Fixed.

* Fixed admin pages not there.

* Fixed waiting.

* Upload playwright report.

* Remove saucelabs

* Fixed waiting.

* Fixed upload artifact.

* Also install deps.

* Added retry mechanism.

* Added timeout for restart etherpad server.

* Fixed tests.

* Added frontend playwright tests.
2024-03-10 23:18:50 +01:00
JannikStreek
04063d664b
cleanup after workspace refactoring (#6174)
* fix bin folder and workflows as far its possible

cleanup of dockerfile

changed paths of scripts

add lock file

fix working directory for workflows

fix windows bin

fix travis (is travis used anyway?)

fix package refs

remove pnpm-lock file in root as these conflicts with the docker volume setup

optimize comments

use install again

refactor prod image call to run

fix --workspace can only be used inside a workspace

correct comment

try fix pipeline

try fix pipeline for upgrade-from-latest-release

install all deps

smaller adjustments

save

update dockerfile

remove workspace command

fix run test command

start repair latest release workflow

start repair latest release workflow

start repair latest release workflow

further repairs

* remove test plugin from docker compose
2024-02-21 21:50:11 +01:00
JannikStreek
b4ac96d823
Refactor project structure and introduce workspaces (#6170)
* prototype for structure change - working

* move server.ts

* Revert "move server.ts"

This reverts commit 4cf2e61dc0.

* adjusted package file

* further cleanup

* add workspace root flag

* fix docker install

* fix loadtest

* fix run
2024-02-19 22:31:27 +01:00
Richard Hansen
da10d42183 Delete top-level package.json
Advantages of a top-level `package.json`:
  * It prevents npm from printing benign warnings about missing
    `package.json` whenever a plugin is installed.
  * Semantically, it is "the right thing to do" if plugins are to be
    installed in the top-level directory. This avoids violating
    assumptions various tools make about `package.json`, which makes
    it more likely that we can easily switch to a new version of npm
    or to an npm alternative.

Disadvantages of a top-level `package.json`:
  * Including a dependency of `ep_etherpad-lite@file:src` in the
    top-level `package.json`, which is required to keep npm from
    deleting the `node_modules/ep_etherpad-lite` symlink each time a
    package is installed, drastically slows down plugin installation
    because npm recursively walks the ep_etherpad-lite dependencies.
  * npm has a horrible dependency hoisting behavior: It moves
    dependencies from `src/node_modules/` to the top-level
    `node_modules/` directory when possible. This causes numerous
    mysterious problems, such as silent failures in `npm outdated` and
    `npm update`, and it breaks plugins that do
    `require('ep_etherpad-lite/node_modules/foo')`.

Right now, with npm v6.x, eliminating the disadvantages is far more
valuable than keeping the advantages. (This might change with npm
v7.x.)

For a long time there was no top-level `package.json` and it worked
fairly well, although users were often confused by npm's benign
warnings. The top-level `package.json` was added because we needed a
place to put ESLint config for the stuff in `bin/` and `tests/`, and
we wanted the advantages listed above. Unfortunately we were unaware
of the disadvantages at the time. The `bin/` and `tests/` directories
were moved under `src/` so we no longer need the top-level
`package.json` for ESLint.

An alternative to a top-level `package.json`: Create
`plugins/package.json` and install all plugins in `plugins/`. If
`plugins/package.json` has a dependency of
`ep_etherpad-lite@file:../src` then plugin installation will still be
slow (npm will still recursively walk the dependencies in
`src/package.json`) but it should avoid npm's nasty dependency
hoisting behavior. To avoid slow plugin installation we could create a
lightweight `etherpad-pluginlib` package that Etherpad plugins would
use to indirectly access Etherpad's internals. As an added bonus, this
intermediate package could become an adaptor that provides a stable
interface to plugins even when Etherpad core rapidly evolves.
2021-02-07 06:24:52 +00:00
John McLear
2ea8ea1275 restructure: move bin/ and tests/ to src/
Also add symlinks from the old `bin/` and `tests/` locations to avoid
breaking scripts and other tools.

Motivations:

  * Scripts and tests no longer have to do dubious things like:

        require('ep_etherpad-lite/node_modules/foo')

    to access packages installed as dependencies in
    `src/package.json`.

  * Plugins can access the backend test helper library in a non-hacky
    way:

        require('ep_etherpad-lite/tests/backend/common')

  * We can delete the top-level `package.json` without breaking our
    ability to lint the files in `bin/` and `tests/`.

    Deleting the top-level `package.json` has downsides: It will cause
    `npm` to print warnings whenever plugins are installed, npm will
    no longer be able to enforce a plugin's peer dependency on
    ep_etherpad-lite, and npm will keep deleting the
    `node_modules/ep_etherpad-lite` symlink that points to `../src`.

    But there are significant upsides to deleting the top-level
    `package.json`: It will drastically speed up plugin installation
    because `npm` doesn't have to recursively walk the dependencies in
    `src/package.json`. Also, deleting the top-level `package.json`
    avoids npm's horrible dependency hoisting behavior (where it moves
    stuff from `src/node_modules/` to the top-level `node_modules/`
    directory). Dependency hoisting causes numerous mysterious
    problems such as silent failures in `npm outdated` and `npm
    update`. Dependency hoisting also breaks plugins that do:

        require('ep_etherpad-lite/node_modules/foo')
2021-02-04 17:15:08 -05:00
Richard Hansen
759e2aaec3 lint: Use node config for tests/frontend/travis, tests/ratelimit
The files in these directories contain test drivers, not tests.
2021-02-01 19:52:24 +00:00
John McLear
0cc8405e9c Bump minimum required Node.js version to 10.17.0
This makes it possible to use fs.promises.
2021-01-30 17:00:40 -05:00
Richard Hansen
b02ab430fe Bump eslint-config-etherpad to 1.0.24 2021-01-29 01:10:58 -05:00
Richard Hansen
794dfb1863 lint: Bump eslint-config-etherpad and install its new deps 2020-12-17 22:18:29 +00:00
Richard Hansen
fc234d0088 lint: Bump eslint and eslint-config-etherpad versions 2020-12-16 22:09:48 +00:00
Richard Hansen
2fdac836d0 lint: Bump eslint-config-etherpad to 1.0.13
Also bump eslint to 7.14.0.
2020-11-27 06:25:43 +00:00
Richard Hansen
98967735d5 lint: Bump eslint-config-etherpad to 1.0.11 2020-11-25 13:09:14 -05:00
Richard Hansen
a78d6605b7 lint: Configure ESLint 2020-11-24 20:06:12 +00:00
Egil Moeller
1239ce7f28 The Big Renaming - etherpad is now an NPM module 2012-02-26 13:07:51 +01:00
Egil Moeller
e994b5b2b1 Oups, bad format 2012-02-24 15:33:20 +01:00
Egil Moeller
b4b0026068 Added the basic parts for a plugin loader 2012-02-24 13:42:36 +01:00
Chad Weider
1063a3d036 Account for more spaces and Windows paths. This fixes #456. 2012-02-16 14:19:16 -08:00
Chad Weider
2931382a10 Update require-kernel, which fixes #451. 2012-02-15 13:35:16 -08:00
booo
edfdb775fe package.json: upgrade clean-css package 2012-02-07 16:59:19 +01:00