version: Yona v1.4.0
README: Add Amazon AWS installation guide link
attachment: Use SHA-256 instead of SHA-1
Overwriting an existing attachment file maliciously is possible since
Yona uses SHA-1 algorithm, which is known to be shattered, to digest
the contents to generate the names of the attachment files.
This fix ensures backward compatibility. Only new attachments have
filenames generated by SHA-256 algorithm. Fortunately, the length of
'name' column of 'attachment' table is 255 which is enough to store
SHA-256 which requires 64.
issue: Increase number of issue minimum width
issue: Change css style of number of issue
navbar: Show the number of user open issues
See: Yona Github issue #178
project: Fix default project scope by conf file
See: Yona Github issue #180
issue: Clear the revision history when moving from a personal project
- personal project = user's own private project
code: Prevent lazy loading model bug for some cases
issue: Issues moved from personal projects will not display history
mail: Remove header-anchor link from mail body
issue: Remove new issue button link attr 'target=_blank'
See: Yona Github issue #164
issue: Change checked issue list style
code: Add logic to check for online commit permissions
code-browser: Cache code browser page with ehcache
project: Provide option for default project scope when create
It can be set with "public" or "private".
Default value is "public"
project.default.scope.when.create = "public"
See: Yona Github issue #166
login: Support simplified LDAP login
login: Simplify login input form
markdown: Set code block to wrap words
initial-data: Set admin user state 'ACTVIE' at first
user-profile: Polishing view pages
User profile page will be more simplified
in the future.
It's easy to slow down, but it's not used very well.
See: Yona Github issue #170
code: Support simplified online commit
project-list: Fix wrong total page indicator
See: Yona Github issue #66
issue: Add issue body, comments when download as xls file
See: Yona Github issue #148
usermenu: Load usermenu asynchronously