261 Commits (4914332853bfc8c18cb68685b856cf9174eb4b5d)

Author SHA1 Message Date
Barış Soner Uşaklı a7600b4bbe feat: dont log action:plugins.fireHook 6 years ago
Aziz Khoury a6436716ea feat: hooks can now return promise or call callbacks
* hooks can now return promise or call callbacks, either way works

* cleanups

* moar cleanups and fix callback 1st null arg

* rm unnessesary spread
6 years ago
Barış Soner Uşaklı 5fa5e999f8
Plugin metrics (#7626)
* feat: add enable/disable checkbox for plugin usage

* feat: submit plugin data to packages.nodebb.org

only submit in production mode
submit once every 24 hours
dont submit for plugins that have "private": true in plugin.json
enabled on new installs
disabled on existing installs

* fix: hash not working after first send

fix statusCode

* fix: remove url

* feat: show compatibilty

* feat: add install question for submit plugin usage
6 years ago
Barış Soner Uşaklı 6472a06515 fix: hook names getting objectified by winston 6 years ago
Julian Lam a23854e3ff feat: new hook type: `response`
Used in authentication middleware. Instead of firing an action
hook, it now fires a response hook.

Response hooks are invoked serially, and if headers are sent from
one of the hook listeners, all subsequent hook methods are not
called.

Response hooks should only be used in situations where res.send
(or other like methods) are invoked. Existing plugin hooks that
pass in res purely for data retrieval purposes have not changed).

fixes nodebb/nodebb-plugin-write-api#101
6 years ago
Baris Usakli c14dbfc6b7 attempt to fix tests 6 years ago
Baris Usakli 65f6630722 add new hook action:plugins.firehook 6 years ago
Peter Jaszkowiak e1ca2d81f9 refactor: use loash when possible (#7230) 6 years ago
Barış Soner Uşaklı a662f118a5 fix: #7054 6 years ago
Peter Jaszkowiak ba619c7ec8 style(eslint): match operator-linebreak preferences 6 years ago
Baris Usakli 33d7735690 change deprecated message 6 years ago
Barış Soner Uşaklı f75e2ed1ee fix lint 6 years ago
Barış Soner Uşaklı c36ddec08b promisify plugins 6 years ago
Barış Soner Uşaklı e1eebef398 does this work 6 years ago
Barış Soner Uşaklı e14b0b38be derprelic 6 years ago
Barış Soner Uşaklı 485fbf7386 show more lines in stack 6 years ago
renovate[bot] 64b9dabff8 chore(deps): update dependency eslint-config-airbnb-base to v13 (#6599)
* chore(deps): update dependency eslint-config-airbnb-base to v13

* chore: #6599, linting 😬
6 years ago
Barış Soner Uşaklı da22940b80 dont retry absolute paths 6 years ago
Barış Soner Uşaklı 2f198583c4 change to this 6 years ago
Barış Soner Uşaklı a2aae7f805 shorter error message 6 years ago
Baris Usakli 82cda248f3 fix plugin requires 6 years ago
Baris Usakli 138154a71c move modules 6 years ago
Barış Soner Uşaklı 26d4e0852f use includes instead of indexOf
use _.uniq instead of filter&indexOf
6 years ago
Barış Soner Uşaklı 81341e86ee log fired hooks 7 years ago
Peter Jaszkowiak 70ff2d9b88 Support scoped theme packages 7 years ago
Barış Soner Uşaklı b7f5995aab closes #6550 7 years ago
Barış Soner Uşaklı 0b0ce1df8a closes #6549 7 years ago
Barış Soner Uşaklı 25ebd306cc closes #6548 7 years ago
Barış Soner Uşaklı 2edd908aee closes #6547 7 years ago
Julian Lam 3b57d3eadb closes #6434 7 years ago
Barış Soner Uşaklı 15e9bbac92 closes #6311 7 years ago
Peter Jaszkowiak be00a1c013 Support for using yarn instead of npm, include unread counts on cold load (#6179)
* Close #6178

* Support for package managers besides npm

- Also fixes issue where upgrade-plugins wouldn't work
7 years ago
Barış Soner Uşaklı b55087dab7 closes #6166 7 years ago
Peter Jaszkowiak c47c47f7e3 Use less memory to build translation files (#6070)
* Change languages build to use less memory

Add graceful-fs so no ned to worry about fs limits

* Specify encoding for fs.readFile

Use eachLimit since graceful-fs handles that now
7 years ago
Peter Jaszkowiak dfad76120d Support npm@5 and yarn (#6010)
* Support npm@5 and yarn

Use package.default.json
Partial #6008

- Overwrite package.json with package.default.json values
- `dependencies` field is merged with package.default.json version taking precidence
- `./nodebb upgrade` automatically does those things and runs `git pull`
- use `./nodebb upgrade --dev` to avoid the `git pull`

* added logic to preserve extraneous plugins installed in node_modules/

* Don't automatically git pull

* Simplify package-install, run it on upgrade just in case
7 years ago
Peter Jaszkowiak e609e497b3 Provide more error information to logs
Provides full stack instead of just message
7 years ago
Baris Usakli 9101400264 closes #5961 7 years ago
Peter Jaszkowiak da9da8190f Bump dependencies
Bumping eslint & configs meant making some linting fixes

For future reference, the `xmlhttprequest-ssl` library must be of equal versioning to the one in `engine.io-client`, otherwise it won't be deduped which causes the socket.io tests to fail
7 years ago
Julian Lam 4976d13013 removed console log 8 years ago
Julian Lam f7d78771f8 fixes #5921 8 years ago
psychobunny 0e219a8c58 closes #5891 8 years ago
Baris Usakli 2053726c81 up spam-be-gone 8 years ago
Julian Lam 4f9cbabec3 fixes #5853 8 years ago
Julian Lam 29e7bdbc99 expose license info in plugin API for installed plugins 8 years ago
Julian Lam f4fb9ee04b adding filter hooks for flag list and retrieval 8 years ago
Julian Lam b4870654fc Merge pull request #5728 from NodeBB/patch-pitaj
Assorted Fixes
8 years ago
Julian Lam 29e868b002 closes #5585 8 years ago
Peter Jaszkowiak 34af855848 Fix npm@5 saving by default 8 years ago
Peter Jaszkowiak 3c2d4fe649 Switch from underscore to lodash 8 years ago
Barış Soner Uşaklı f1b8492164 remove unnecessary checks 8 years ago
Peter Jaszkowiak 3dd282b7b9 Load languages with other plugin data
- Added more tests
- Should speed up builds
- Allows for incremental builds in the future
8 years ago
Peter Jaszkowiak 90da6d889d Only load necessary plugin data
Fix tests to work in this case
Add more verbose messages to plugins/data
8 years ago
Peter Jaszkowiak b0645cc67d Plugin load refactor 8 years ago
Peter Jaszkowiak 759c3f5584 Fix soundpacks not working 8 years ago
barisusakli d500e7f2aa add back action:plugin.install and action:plugin activate #5407 8 years ago
Julian Lam 45c479a101 Merge branch 'master' into develop 8 years ago
barisusakli 2e47cf4db3 intersititial test 8 years ago
Julian Lam 72e77772db Merge branch 'master' into develop 8 years ago
Peter Jaszkowiak dd2b930824 Resolve merge conflicts, minify only `.js` files 8 years ago
Julian Lam 672d7352bb Merge branch 'master' into develop 8 years ago
Peter Jaszkowiak b227297ef3 ESlint no-use-before-define 8 years ago
Peter Jaszkowiak 4bb49a7171 ESlint no-unused-vars 8 years ago
Peter Jaszkowiak 09e868ce5f ESlint no-useless-escape, no-else-return 8 years ago
Peter Jaszkowiak 896c8c7343 ESlint object-curly-spacing 8 years ago
Peter Jaszkowiak 1493afee2a ESlint indent 8 years ago
Peter Jaszkowiak 3b0dd2d1ef ESlint padded-blocks 8 years ago
Peter Jaszkowiak feb8405f95 ESlint eol-last 8 years ago
Peter Jaszkowiak 604358ecc4 ESlint keyword-spacing, no-multi-spaces 8 years ago
Peter Jaszkowiak 2ba46808a1 ESlint one-var, fix comma-dangle 8 years ago
Peter Jaszkowiak bc1d70c126 ESlint comma-dangle 8 years ago
Peter Jaszkowiak 9f15008247 Address review issues 8 years ago
Peter Jaszkowiak c75391f9f5 Sound system improvements
- Fix sound ACP uploads
- Display soundpack names with sound files
- Soundpacks can have sounds with identical names
- Link sounds during build step
- Generate map of sound name to file name during build step
- Change how soundpacks work. It's now done via a field in plugin.json
8 years ago
Julian Lam 8a0a74d95e Merge remote-tracking branch 'origin/master' into develop 8 years ago
barisusakli b37d52c089 closes #5407 8 years ago
barisusakli 3fb7f9fce5 closes #5398 8 years ago
Peter Jaszkowiak 001aa3d1a8 Fix tests, npm Windows fixes 8 years ago
Peter Jaszkowiak 186209a0a3 Build plugin `staticDirs`
- route `/plugins` -> `build/public/plugins`
- symlink `staticDirs` directories into `build/public/plugins`
- remove custom `/plugins` route handling
8 years ago
Julian Lam 73879b824c Merge branch 'master' into develop 8 years ago
Peter Jaszkowiak 8c86b2e32c Build pipeline improvements
- Refactor meta/css
- `fs.link` usage consolidated to `file.link`
- rimraf built modules directory to fix error
- Remove `local-assets` flag
8 years ago
Peter Jaszkowiak 2f07c18c5a All hail the glorious translation prebuilding 8 years ago
Julian Lam 81ca10d72e Merge pull request #5332 from pitaj/async@2
async v2 upgrade
8 years ago
Julian Lam 3861b2dd80 Merge remote-tracking branch 'origin/master' into develop 8 years ago
Peter Jaszkowiak 11f7cc4163 Pass tests 8 years ago
Peter Jaszkowiak ec544518e8 Use async v2 8 years ago
Julian Lam db20df0110 Merge branch 'master' into develop 8 years ago
Barış Soner Uşaklı f225fc3e3d closes #5314 8 years ago
barisusakli 4943832dd8 fix dupe code 8 years ago
Julian Lam 29c7ae7645 Merge remote-tracking branch 'origin/master' into develop 8 years ago
Barış Soner Uşaklı 1b6d718dab closes #5300 8 years ago
Julian Lam 76bcc1c327 Merge branch 'flagging-refactor' into develop 8 years ago
barisusakli 3bd1c6c2b5 notification tests 8 years ago
Julian Lam 5e109bb4a8 Merge remote-tracking branch 'origin/master' into flagging-refactor 8 years ago
Julian Lam e028ac1363 passing in arguments to npm instead of command string, closes #5286 8 years ago
Julian Lam a5fb4825b4 deprecating old hook for #5232 8 years ago
barisusakli f8caed95db don't crash if plugin doesnt set defaultLang 8 years ago
Peter Jaszkowiak c5237443cd Standard language codes (#5218)
* Use standard language codes. Fallback for plugins.

* Fix transifex config

* Tab vs space here for some reason

* Remove redundancies

* config.relative_path instead of allcaps

* added upgrade script for existing users' accounts
8 years ago
barisusakli 5d6e2ad083 multiple test fixes 8 years ago
barisusakli 51b41a9b44 fix eslint 8 years ago
Julian Lam 6acbd3ea21 optimising build step for #5211 8 years ago
barisusakli 50a2a7abbe plugins/install tests 8 years ago
barisusakli bfcef27c47 plugin tests 8 years ago
HeeL 4a3c31b2dc Fix space-before-function-paren linter rule 8 years ago
HeeL 3fa1c1f927 Fix space-infix-ops linter rule 8 years ago
barisusakli ae8b9c3683 closes #4665 9 years ago
Julian Lam bb80dc360e closes #4982 9 years ago
barisusakli 50aac3c6a4 closes #4979 closes #4984 9 years ago
Timothy Fike ed3bc06dee Fix requiring files outside of node_modules
e.g.
```
"scripts": [
        "../../public/vendor/jquery/js/jquery-ui-1.10.4.custom.js"
]
```
9 years ago
Mathias Schreck ce9ee62fa0 Handle callback errors 9 years ago
Julian Lam 19b4679c0e properly handling flattened dependencies in plugin scripts 9 years ago
barisusakli 11236bb841 fix missing callback 9 years ago
barisusakli af75a887b5 closes #4892
prevent crash if registerHook is called with invalid hook name
9 years ago
akhoury 46a57f5d5c rm cls because it's not ready yet 9 years ago
Aziz Khoury 374fa8dd8c fix: deprecated-message not showing for all hooks (#4714)
* fix deprecated hooks params warning + var-cleanup

* fix deprecated message
9 years ago
Julian Lam 192998c5c3 Revert "fixed link to documentation, @akhoury"
This reverts commit bc0359475c.
9 years ago
Julian Lam 5d030dd8ab removed console log 9 years ago
Julian Lam ffa051e828 added defaultLang support, #4655 9 years ago
Julian Lam 437770538c work-in-progress commit for #4655 9 years ago
Julian Lam bc0359475c fixed link to documentation, @akhoury 9 years ago
Barış Soner Uşaklı f0685468f8 Merge pull request #4162 from akhoury/master
add continuation-local-storage (CLS) support
9 years ago
Julian Lam b12811d21d spring cleaning 9 years ago
Julian Lam 2c83789482 Allowing object to be passed as module list
fixes #4576 again
9 years ago
Julian Lam 1d7a5f58e2 fixes #4576 9 years ago
Aziz Khoury 02e53fd442 update deprecation message 9 years ago
Aziz Khoury 01ee020750 bring back disconnect only for CLS purposes 9 years ago
Julian Lam 94a505a6bb removed symlink logic and using route bridging instead.
Also allowed plugins to define modules from their plugin.json
9 years ago
akhoury 509676fdf4 add deprecation warnings for CLS 9 years ago
akhoury f47c06279a added depracation warning 9 years ago
psychobunny 42c0b973f1 closes #3134 9 years ago
Julian Lam 4357c2ef4e fixed #4062, fixed akhoury/nodebb-plugin-emailer-mandrill#19 9 years ago
barisusakli d035b1a353 removed npm dep, use exec('npm install/uninstall'); closes #3780 9 years ago
Julian Lam 8fa2c34fc5 Deprecated action:user.loggedOut, updated plugin deprecation notices
... to show replacement, if available.
9 years ago
barisusakli ca294fc6ec closes #3663 10 years ago
barisusakli e3ca91e325 #3591 fixes item 1 10 years ago
Julian Lam ea9f5cbc61 adding in another deprecated hook to the warning list 10 years ago
Julian Lam a1d5132777 Deprecated filter:user.delete hook
Please use static:user.delete instead.
10 years ago
Julian Lam e382dcab13 Reduce verbosity of plugin incompatibility errors
Instead of showing a 4-5 line warning for each potentially incompatible
plugin, we'll show the warning and then a list of plugins.
10 years ago
Julian Lam 23bb45b480 fixing plugin version checker to use satisfies again 10 years ago
Julian Lam ad38c55b12 fixes #3314 10 years ago
Julian Lam 74f2f7caef fixes #3307 10 years ago
Julian Lam 88dd8b1d4d using new reset command in plugin incompatibility warning 10 years ago
psychobunny 9704af3b6d some plugins may not have a library, no need to warn unless unable to parse 10 years ago
barisusakli 3063da83ef argument fix for static/action hooks 10 years ago
Fokke Zandbergen 1eee970ebb Allow NodeBB version to be set via config to package.json version can be incremented when needed. 10 years ago
barisusakli a626005570 closes #2851 10 years ago
barisusakli 3dd337bd34 closes #2829 10 years ago
Barış Soner Uşaklı f7d7cc2610 closes #2808 10 years ago
psychobunny dee5d18439 require npm module only as needed - shaves off a full second of loading time yay 10 years ago
Barış Soner Uşaklı 66d6c49ed4 closes #2749 10 years ago
Barış Soner Uşaklı 55884220b4 #2749 upgrade plugins:active to zset 10 years ago
barisusakli 722b629572 closes #2703 10 years ago