Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin V2 #116

Closed
simondotm opened this issue May 27, 2023 · 0 comments · Fixed by #117
Closed

Plugin V2 #116

simondotm opened this issue May 27, 2023 · 0 comments · Fixed by #117

Comments

@simondotm
Copy link
Owner

Rewriting plugin to enable separate function apps and use esbuild to bundle function code.

This will be a feature branch until it is ready to merge to master and replace legacy V1 of the plugin.

@simondotm simondotm changed the title V2.0.0 Plugin V2.0.0 May 27, 2023
@simondotm simondotm changed the title Plugin V2.0.0 Plugin V2 May 27, 2023
@simondotm simondotm linked a pull request May 27, 2023 that will close this issue
15 tasks
simondotm added a commit that referenced this issue Jun 25, 2023
* Support function as a generator option (#114)

* Use `es2020` for node 16

* Move update-ts-config to shared utils

* No need for options on update-ts-config

* Add function generator

* Fix prettier for eslint and add deps

* Plugin rewrite to separate functions as esbuild projects

* Use implicitDependencies to handle build. Use run-many only for watch

* Set defaults for esbuild anyway

* Functions generator no longer needs --firebaseProject option

* Change option `--firebaseApp` to just `--app`

* e2e test now passing

* e2e tests check the package dependencies

* e2e cleanup wip

* Do not default functions directory

* added functions e2e test, cleanup helpers

* e2e functions tests wip

* more e2e wip

* e2e check lib imports in bundle

* e2e tests for importing all lib types

* e2e cleanup

* add `watch` target to app

* Add sync generator

* tag apps & functions

* Sort implicitDependencies when adding a function

* Improve tagging system to cope with renames & deletions

* sync generator wip

* Remove faulty jest `coverageDirectory` configs

* sync generator now passing e2e tests

* e2e improvements & fixes

* e2e log cleanup

* e2e cleaning up

* more sync gen code cleanup

* change `firebase:app:<name>` tag to `firebase:dep:<name>`

* change `firebase:app:<name>` tag to `firebase:dep:<name>`

* More code cleanup

* more e2e cleanup

* 1 step fwd, 1 step back, more things to do

* SYNC -> CHANGE

* e2e patch begone

* its a hot mess, but at last! the e2e passes!

- changed strategy for config files
- config files now parsed directly from project.json for app
- added firebase target to app project.json so only one place for --project and --config
- rewrote sync class to use pre-process for workspace changes
- needs a lot more cleanup
This took waayy longer than I wanted.

* more e2e & sync cleanups

* unify sync projects & changes -> workspace

* refactor sync code

* more sync generator cleanups

* more sync gen cleanups

* Another round of sync cleans

* the great cleanup continues.

* nearly there

* Remove legacy build executor

* hot mess of code to support first project config=firebase.json

* better regex

* e2e cleanups

* move debug to utils

* more cleanups

* Warn if there is no firebase.json config in active firebase workspace

* same as last commit

* Fix tests

* Add extra fields to esbuild target for certainty

* Some more e2e function test validations

* Some more e2e function test validations

* Add library e2e tests

* Move eslint-plugin-prettier to devdeps

* working on function lib e2e tests

* Improve --app function validation

* function import e2e tests passing

* ok at long last, all e2e tests passing

* Almost done with e2e tests at last

* e2e cleanup

* e2e target tests

* remove format option for functions, always esm output

* --format option no longer needed

* package-lock

* V2 Documentation

* Revert "remove format option for functions, always esm output"

This reverts commit 808e789.

* Revert "--format option no longer needed"

This reverts commit ad5a5fd.

* Docs updated

* Remove spurious package-lock file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant