- POSIX shell compliant
- missing shebang added to be able to run it with
`./scripts/utils/comporess.sh`
- refactored pushd and popd
- a short intro header added for better understanding of the
script functionality
This patch adds some missing newlines and trims multiple final newlines
into a single newline.
According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.
C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."
Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.
[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
* upgrade extJs to 3.2.1
* Remove "Pending commit" module in favore to "work in progress" module
* Remove "Pending patch" module in favore to "patches for review" module
* Add a field to ask for an email when we logging in. It allow users to contact others.
* Add a progress bar to allow user indicate the progression of his work
* Anonymous user are no longer "anonymous", as a cookie is set on connexion to "authenticate" him.
* Anonymous user can save a file as an authenticated user. No longer only use the "patch" button.
* New rules when a file is edited. When the file is edited by :
- an anonymous user : authenticated user can always edit it. When he does, the owner change and anonymous user can't edit it again.
- an authenticated user : anonymous and others authenticated users can't edit it. The first user must release it (eithers commit his change, or remove the change he does). Administrator can edit it. This can allow to override change made by an authenticated user. Administrators are defined per project in configuration file.
* We no longer allow a user to commit files changed by others users. An authenticated user can only commit his files.
Bugs :
- fix bug #51767
- fix bug that display internal file (.new) in some modules
- change file() class beaviours