summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/models
Commit message (Collapse)AuthorAgeFilesLines
* Make sure reports are not run in test environmentsFlorian Zschocke2025-06-141-2/+6
|
* fix: Fix broken pushes to ticketsFlorian Zschocke2022-12-071-0/+1
| | | | | | | The update of JGit broke pushes to tickets. The ReceiveCommand now requires all three arguments, oldId, newId and name, to be not null. The ticket code handling pushes to tickets left name and old id as null in certain cases. This is fixed by always providing values.
* Rewrite fix without the additional ListFlorian Zschocke2022-08-071-17/+10
| | | | | | This also removes the additional Set. What changes is that the order of the repositories is kept, but the resulting list will have user and team permissions intertwined.
* fix user effective permission display if users is in multiple groups with ↵kaspars.kurms2022-08-071-0/+13
| | | | different permissions
* Fix NPETom2021-11-031-7/+3
| | | | | | | | Although it seems strange to have a RefModel with a referenced object but a null Ref, Gitblit uses such RefModels for instance in JGitUtils.getNotesOnCommit(). Be careful to do something sensible when that Ref is null.
* Issue #1011: do not serialize JGit commit objectsTom2021-11-032-28/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | JGit commit objects are a recursive data structure; they have links to their parent commits. Serializing a JGit commit will try to recursively serialize all reachable ancestors as faras they have been loaded. If that ancestor chain is too long, a StackOverflowError is thrown during Wicket's page serialization if a page has a reference to sucha JGit commit. Fixed by making sure that pages o not contain references to JGit commits. Use the (existing) wrapper object RepositoryCommit instead. * RepositoryCommit has a transient reference to the JGit commit and reads the commit from the repository upon de-serialization. * RefModel is a similar case (JGit tags/branches may also have links to the commits they point to). Solved a bit differently by making it a pure data object by transferring the interesting data from the JGit object in the constructor. * Change DataViews instantiated with RevCommit to use RepositoryCommit instead. * Change inner anonymous DataViews to ensure they do not have a synthesized field referencing the "allRefs" map. Such a synthesized field would also get serialized, and then serialize JGit commits again. Finally, remove non-transient logger instances in Wicket classes. Those might lead to NotSerializableException. These StackOverflowErrors have been reported in several places since 2014: * https://groups.google.com/forum/#!topic/gitblit/GH1d8WSlR6Q * https://bugs.chromium.org/p/gerrit/issues/detail?id=3316 * https://groups.google.com/d/msg/repo-discuss/Kcl0JIGNiGk/0DjH4mO8hA8J * https://groups.google.com/d/msg/repo-discuss/0_P6A3fjTec/2kcpVPIUAQAJ * https://github.com/gitblit/gitblit/issues/1011 * https://github.com/tomaswolf/gerrit-gitblit-plugin/issues/21
* Add support nested groups on the Repositories pageFlorian Zschocke2019-06-151-0/+178
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for #725. Also covers #527. This is a squashed commit of the following commits, merging and closing pull request #1267: commit 55fee41769ffab1aff59344fe117d481687aa743 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 17:19:53 2017 +0100 declared local variable final to fix travis build commit 131e4d14a48c2a3fdce621fa54637de50684d040 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 14:11:55 2017 +0100 fix formatting (use tab for identation) commit 8da5f6d5967894f157251c320928acdab3a451e7 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 13:45:39 2017 +0100 Add repositoryListType tree. Addresses #725, 527 and includes #1224 commit 6c061651fb95212ae242dbca06c8d9ef80146201 Merge: f365daa3 40ee9653 Author: Martin Spielmann <mail@martinspielmann.de> Date: Sat Nov 4 13:19:08 2017 +0100 Merge remote-tracking branch 'collapsible/ticket/527' into 725_nested_repos commit f365daa3b1d6be135365f9b11bdece320beabf4e Author: Martin Spielmann <mail@martinspielmann.de> Date: Sat Nov 4 13:10:24 2017 +0100 first working version of tree model
* Remove duplicate import of class SecureRandomFlorian Zschocke2016-12-151-1/+0
| | | | | Fixes the build that was broken by cherry-picking commit 2be2c2, which resulted in an import collision on the `SecureRandom` class.
* Merge branch 'rcaa-master' into master.Florian Zschocke2016-12-131-0/+8
|\
| * Introduce SecureRandom wrapper for properly seeded static instancesFlorian Zschocke2016-12-121-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduce our own wrapper `SecureRandom` around `java.security.SecureRandom`. This a) makes sure that the PRNG is seeded on creation and not when random bytes are retrieved, and b) uses a static instance in the `UserModel` so that lags do not occur during operation due to potentially seeding getting blocked on Unix when reading from the system's entropy pool. To keep the random data still secure, the static instance will reseed all 24 hours, also a functionality of the wrapper class. This fixes #1063 and extends and closes PR #1116
| * changing Math.random to SecureRandomrcaa2016-12-111-1/+5
| |
| * removing duplicated code for cookie genaration and adding random bytes to ↵Rodrigo Andrade2016-08-151-0/+4
| | | | | | | | generate user cookies
* | Merge branch 'fixMentionsInTickets-985'Florian Zschocke2016-12-121-2/+4
|\ \
| * | Fix user mention regular expression and group replacement.merged--fixMentionsInTickets-985Florian Zschocke2016-12-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The regular expression used for user mentions used to work only inside sentences. Also, since it tested for whitespace, the whitespace would get replaced, too, which would join lines together. Instead the new regex uses boundary matchers to match against word boundaires. As these are not capturing only the actual user mention can be captured and is then replaced. Also, this way the regex can ignore punctuation like in "@jim, look at this." Since Gibtlit now requires Java 7 we can use named capture groups. This makes the use of a centrally defined regular expression much safer. The (admittedly only) group to capture the user name is named "user" and can be referenced by this name. By using the name instead of a group number, the regex could be changed without the code using it breaking because the group number changed. A simple test is added for user mentions, which unfortunately has to deal with the full markdown replacement, too. Fixes #985
| * | Use REGEX_TICKET_MENTION instead of hardcoded regular expressionGlenn Matthys2016-12-101-1/+3
| |/
* / Add integration strategy to merge tickes fast-forward or with commit.Florian Zschocke2016-10-281-0/+3
|/ | | | | | | | | | | | | Add the option to merge a ticket branch to the integration branch only when it can be fast-forwarded, or always with a merge commit, or by fast-foward if possible, otherwise with a merge commit. Adds a new property ticket.mergeType with the valid values FAST_FOWARD_ONLY, MERGE_ALWAYS and MERGE_IF_NECESSARY. Merging and canMerge were refactored to make use of a new IntegrationStrategy class for each type of strategy.
* Merge pull request #1055 from gitblit/1048-TicketReferencesPaul Martin2016-06-181-4/+214
|\ | | | | Ticket Reference handling #1048
| * Ticket Reference handling #1048Paul Martin2016-04-271-4/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + Supports referencing: + Tickets from other tickets via comments + Tickets from commits on any branch + Common TicketLink class used for both commits and tickets + TicketLink is temporary and persisted to ticket as a Reference + Support deletion of ticket references + Rebasing patchsets/branches will generate new references + Deleting old patchsets/branches will remove the relevant references + Substantial testing of use cases + With and without patchsets, deleting, amending + BranchTicketService used during testing to allow end-to-end ref testing + Relocated common git helper functions to JGitUtils
* | Fixes #1061 - Most recent first on filestore pagePaul Martin2016-04-281-1/+6
|/
* Fix for #962 - Delete patchset abilityPaul Martin2016-04-061-1/+44
|
* Fix for #976 - Filestore links via browserPaul Martin2015-12-252-16/+107
| | | | | | | | | | | | | + GitLFS client support + FilestoreModel now parses meta file + Read meta heading from cache if available + Authentication based on accept headers for browser view filestore login + PathModel & PathChangeModel now understands filestore items + Zip & Rar downloads contain include filestore items + Filestore servlet returns LFS JSON error only if accepted by client + DiffStat now knows repository to allow identification of filestore items + Filestore items identified and returned via view, raw & blob links on blame, commitDiff, commit and Tree pages
* fix for #967 filestore menu for all usersPaul Martin2015-12-071-0/+9
| | | | | | + Filestore listing filtered by user view permissions + Configuration help for filestore relocated to website files + Added migration example
* Git-LFS supportPaul Martin2015-10-101-0/+159
| | | | | | | | | | | | | | + Metadata maintained in append-only JSON file providing complete audit history. + Filestore menu item + Lists filestore items + Current size and availability + Link to GitBlit Filestore help page (top right) + Hooks into existing repository permissions + Uses default repository path for out-of-box operation with Git-LFS client + accessRestrictionFilter now has access to http method and auth header + Testing for servlet and manager
* Simplify RefModel datesJames Moger2015-09-181-6/+1
|
* Use author date to be consistent with other tools (fixes #919)James Moger2015-09-181-3/+3
|
* allow advertising gitblit privileges for external URLsJoel Johnson2015-07-011-2/+2
| | | | | | | | | | | | | | | | commit c20191fc0931a19bec0df1ab2b56f287e5d8b7c7 enabled support for hiding internal URLs, but didn't consider that it broke the evaluation of permissions (used for tickets, etc.), and caused a NPE on repoUrl.permission when trying to view the TicketPage. With all internal mechanisms disabled, it would result in the first URL being external with unknown permissions. This adds an option to use internal permissions even for external URLs. Note that this does not grant any additional permissions, but does offer the option to have gitblit advertise the full set of what is allowed, even if the external URL imposes additional restrictions.
* Tickets - Priority, Severity optionsPaul Martin2014-10-201-1/+119
| | | | | | | | | + Severity indicated via new character indicator and color of ticket icon on ticket list + Priority indicated via new priority icon and color on ticket list + Indexed as integers to provide sorting and maintain language neutral index + Colours and indicator text controlled through CSS classes priority-<x> & severity-<x> + UITicketTest created to generate tickets of all types to ease debugging
* New Ticket Type - MaintenancePaul Martin2014-10-191-2/+2
| | | | | | | + Indended for identifiying and loggin maintenance of development tools and systems to provide an integrated means to satisfy ISO requirements + Improved alignment of query icons via fixed width attribute
* Add NO CHANGE REQUIRED ticket statusJames Moger2014-09-171-4/+4
|
* Ensure TicketModel comment text is not null in hasComment() testJames Moger2014-09-171-1/+1
|
* Fix ticket mail dropping bug when author does not have an addressJames Moger2014-09-081-1/+1
|
* Add clone transport user preferenceJames Moger2014-06-051-0/+11
|
* Add "email me on my ticket changes" preferenceJames Moger2014-06-051-0/+13
|
* Revise language/locale preference handlingJames Moger2014-06-051-1/+5
|
* Allow plugins to extend the top navbar and repository navbarJames Moger2014-05-051-0/+140
| | | | | This change also ties the plugin manager into the Wicket framework and allows plugins to contribute and mount new pages which are linked by the top navbar and repository navbar extensions.
* Overhaul menu item classes and add AdminMenuExtension pointJames Moger2014-05-051-0/+302
|
* Fix inconsistency with owner permissions checkJames Moger2014-05-012-5/+5
|
* Fix bug introduced in 67278f5James Moger2014-04-281-1/+1
|
* Fix forcing default locale to en or LANG_CC for web uiJames Moger2014-04-281-0/+6
|
* Simplify current plugin release detection, ignore currentRelease registry fieldJames Moger2014-04-231-33/+14
|
* Filter the current plugin release by the system versionJames Moger2014-04-171-4/+28
|
* Removed obsolete Gravatar profile codeJames Moger2014-04-151-83/+0
|
* Update to pf4j 0.8.0James Moger2014-04-151-4/+4
|
* Upgrade plugin commandJames Moger2014-04-131-2/+2
|
* Eliminate plugin name, stick with id and descriptionJames Moger2014-04-121-5/+2
|
* Improve plugin manager based on upstreamed contributions to pf4jJames Moger2014-04-101-2/+19
|
* Allow specifying accepted PUSH transportsJames Moger2014-04-101-0/+3
|
* Implement simple JSON-based plugin registry and install commandJames Moger2014-04-101-0/+143
|
* Implement management commands in repositories dispatcherJames Moger2014-04-101-1/+11
|
* Add review SSH commandDavid Ostrovsky2014-04-101-1/+12
| | | | Change-Id: Ia03c15608814346522c548ff2439ee672ccb0d28