This is a bit complicated at the moment and might be reconsidered if a better solution pops up, suggestions are very welcome! The 'problem' is that 'svelte-accmod'-modifications have to always be put on top of the Svelte master branch, which means rebasing and forced pushing which is generally considered to be bad for collaboration.
Branch hierarchy:
dev-1-optional
starting point, modifications are optional
dev-2-default
default version, modifications are the default / obligatorydev-3-release
README.md
,CONTRIBUTING.md
andpackage.json
changes
main
force pushed dev-3-release
+ tagged CHANGELOG.md
change as commit
Current workflow:
-
Create a new branch based on the
dev-1-optional
branchdev-1-optional
is the initial version of 'svelte-accmod' where the modifications made are optional, means they can be 'turned on/off' by setting compile optionsuseAccMod
andaccessorsAsync
totrue
orfalse
(important: both options should be set totrue
the same value for the full 'accmod'-effect). This version might be dropped in future but is currently the starting point for everything else. -
Make changes
Frequent rebasing on
dev-1-optional
during development is recommended. -
Pull request
Generally: all changes have to be force pushed after each rebase.
What happens from here is:
-
dev-2-default
has to be rebased on the updateddev-1-optional
dev-2-default
is a version of 'svelte-accmod' where the modifications aredefault
, means the compile optionsuseAccMod
andaccessorsAsync
are not available.accessors
are alwaystrue
(settingaccessors:false
will have no effect) and asynchronous (flush()
is omitted from setters) and all 'svelte-accmod' modifications are unconditional. This is the version to be published! -
dev-3-release
has to be rebased on the updateddev-2-default
In this branch only
README.md
,CONTRIBUTING.md
andpackage.json
are edited. -
main
has to be rebased on the updateddev-3-release
and force pushed, and finally:- the
CHANGELOG.md
has to be updated (X.Y.Z), tagged (X.Y.Z) and commited (not force pushed)
- the
this workflow will be tested over several Svelte updates before going public and might change...
see https://github.com/sveltejs/svelte/blob/master/CONTRIBUTING.md
By contributing to 'svelte-accmod', you agree that your contributions will be licensed under its MIT license.