Since moving to github, there has been a lot more activity (from what
I can see) on the TiddlyWiki project. This is great, and I think we
should encourage this as much as possible.

This means anyone could submit code that enhanced an existing
TiddlyWiki feature.

My question is where does the line get drawn about what can be pushed
into the project as we have a duty to project the code base for
existing users.

For instance, I could create a pull request that changed the default
theme of TiddlyWiki. The core project commiters might reject this
change, and I might be put off to ever sending pull requests to
TiddlyWiki code, as in the current world it was not clear when I
submitted such a pull request that it had any grounds to be rejected.
I also don't want to give the impression that has been given in the
past that it is one rule for Osmosoft and another rule for everyone
else, which is not the case.

In my opinion, we should allow any pull requests that enhance or
improve the existing codebase on the basis that they provide unit
tests.
By this I propose we might accept the following things:
* A javascript function is refactored into 2 functions to allow better
reuse
* The code is cleaned up to be more readable
* An existing function/macro is enhanced/extended to accept further
arguments (on the basis of improving the offering)
* The code is cleaned up to work in different environments (for
instance TiddlySpace run some of the TiddlyWiki code in nodejs a
server side implementation of javascript or code might be packaged up
into a jQuery plugin to allow more reuse in other projects

Situations where we might reject or want further discussion in groups
could be
* The code introduces a new core macro to the code base
* The code breaks a test
* the code changes how the api works (backwards compatibility
concerns)
* the code results in a visible change to the appearance of TiddlyWiki

There is also questions when code might break backwards compatibility
with certain plugins. Part of the pull request would be to make plugin
authors aware of the change so they can react accordingly.

Since the current state of tests in the TiddlyWiki project is not as
comprehensive as one might like, in many situations this will mean
people composing pull requests would be required to write tests for
existing code before writing the enhancement and more tests to test
it. If enhancements are what it takes to get more tests, I think this
is a good thing.

It would be great if we could come up with a set of guidelines for
contributing to the TiddlyWiki project and link to it / include it in
the git repository. I think it is vitally important that we continue
to build on the momentum that we seem to have gained so far.

Please chip in with your thoughts and views on what these guidelines
should be.

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWikiDev" group.
To post to this group, send email to tiddlywikidev@googlegroups.com.
To unsubscribe from this group, send email to 
tiddlywikidev+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/tiddlywikidev?hl=en.

Reply via email to