@@ -38,6 +38,8 @@ Gitblit requires a Java 6 Runtime Environment (JRE) or a Java 6 Development Kit | |||
**New:** *web.enableRpcAdministration = false* | |||
- added: reusable JSON RPC client class | |||
- added: Gitblit Manager (Java/Swing Application) for remote administration of a Gitblit server. | |||
- added: per-repository setting to skip size calculation (faster repositories page loading) | |||
- added: per-repository setting to skip summary metrics calculation (faster summary page loading) | |||
- fixed: federation protocol timestamps. dates are now serialized to the [iso8601](http://en.wikipedia.org/wiki/ISO_8601) standard. | |||
**This breaks 0.6.0 federation clients/servers.** | |||
- fixed: collision on rename for repositories and users |
@@ -12,6 +12,8 @@ | |||
**New:** *web.enableRpcAdministration = false* | |||
- added: reusable JSON RPC client class | |||
- added: Gitblit Manager (Java/Swing Application) for remote administration of a Gitblit server. | |||
- added: per-repository setting to skip size calculation (faster repositories page loading) | |||
- added: per-repository setting to skip summary metrics calculation (faster summary page loading) | |||
- fixed: federation protocol timestamps. dates are now serialized to the [iso8601](http://en.wikipedia.org/wiki/ISO_8601) standard. | |||
**This breaks 0.6.0 federation clients/servers.** | |||
- fixed: collision on rename for repositories and users |
@@ -594,6 +594,7 @@ public class GitBlit implements ServletContextListener { | |||
model.isFrozen = getConfig(config, "isFrozen", false); | |||
model.showReadme = getConfig(config, "showReadme", false); | |||
model.skipSizeCalculation = getConfig(config, "skipSizeCalculation", false); | |||
model.skipSummaryMetrics = getConfig(config, "skipSummaryMetrics", false); | |||
model.federationStrategy = FederationStrategy.fromName(getConfig(config, | |||
"federationStrategy", null)); | |||
model.federationSets = new ArrayList<String>(Arrays.asList(config.getStringList( | |||
@@ -814,6 +815,7 @@ public class GitBlit implements ServletContextListener { | |||
config.setBoolean("gitblit", null, "isFrozen", repository.isFrozen); | |||
config.setBoolean("gitblit", null, "showReadme", repository.showReadme); | |||
config.setBoolean("gitblit", null, "skipSizeCalculation", repository.skipSizeCalculation); | |||
config.setBoolean("gitblit", null, "skipSummaryMetrics", repository.skipSummaryMetrics); | |||
config.setStringList("gitblit", null, "federationSets", repository.federationSets); | |||
config.setString("gitblit", null, "federationStrategy", | |||
repository.federationStrategy.name()); |
@@ -85,6 +85,8 @@ public class EditRepositoryDialog extends JDialog { | |||
private JCheckBox skipSizeCalculation; | |||
private JCheckBox skipSummaryMetrics; | |||
private JCheckBox isFrozen; | |||
private JComboBox accessRestriction; | |||
@@ -150,6 +152,8 @@ public class EditRepositoryDialog extends JDialog { | |||
anRepository.showReadme); | |||
skipSizeCalculation = new JCheckBox(Translation.get("gb.skipSizeCalculationDescription"), | |||
anRepository.skipSizeCalculation); | |||
skipSummaryMetrics = new JCheckBox(Translation.get("gb.skipSummaryMetricsDescription"), | |||
anRepository.skipSummaryMetrics); | |||
isFrozen = new JCheckBox(Translation.get("gb.isFrozenDescription"), anRepository.isFrozen); | |||
accessRestriction = new JComboBox(AccessRestrictionType.values()); | |||
@@ -180,6 +184,8 @@ public class EditRepositoryDialog extends JDialog { | |||
fieldsPanel.add(newFieldPanel(Translation.get("gb.showReadme"), showReadme)); | |||
fieldsPanel.add(newFieldPanel(Translation.get("gb.skipSizeCalculation"), | |||
skipSizeCalculation)); | |||
fieldsPanel | |||
.add(newFieldPanel(Translation.get("gb.skipSummaryMetrics"), skipSummaryMetrics)); | |||
fieldsPanel.add(newFieldPanel(Translation.get("gb.isFrozen"), isFrozen)); | |||
usersPalette = new JPalette<String>(); | |||
@@ -327,6 +333,7 @@ public class EditRepositoryDialog extends JDialog { | |||
repository.showRemoteBranches = showRemoteBranches.isSelected(); | |||
repository.showReadme = showReadme.isSelected(); | |||
repository.skipSizeCalculation = skipSizeCalculation.isSelected(); | |||
repository.skipSummaryMetrics = skipSummaryMetrics.isSelected(); | |||
repository.isFrozen = isFrozen.isSelected(); | |||
repository.accessRestriction = (AccessRestrictionType) accessRestriction.getSelectedItem(); |
@@ -117,7 +117,10 @@ public class RepositoriesTableModel extends AbstractTableModel { | |||
case Last_Change: | |||
return model.lastChange; | |||
case Size: | |||
return model.size; | |||
if (model.hasCommits) { | |||
return model.size; | |||
} | |||
return "(empty)"; | |||
} | |||
return null; | |||
} |
@@ -51,6 +51,7 @@ public class RepositoryModel implements Serializable, Comparable<RepositoryModel | |||
public List<String> federationSets; | |||
public boolean isFederated; | |||
public boolean skipSizeCalculation; | |||
public boolean skipSummaryMetrics; | |||
public String frequency; | |||
public String origin; | |||
public String size; |
@@ -160,4 +160,6 @@ gb.settings = settings | |||
gb.manage = manage | |||
gb.lastLogin = last login | |||
gb.skipSizeCalculation = skip size calculation | |||
gb.skipSizeCalculationDescription = do not calculate the repository size | |||
gb.skipSizeCalculationDescription = do not calculate the repository size (reduces page load time) | |||
gb.skipSummaryMetrics = skip summary metrics | |||
gb.skipSummaryMetricsDescription = do not calculate metrics on the summary page (reduces page load time) |
@@ -19,14 +19,15 @@ | |||
<tr><th><wicket:message key="gb.showRemoteBranches"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="showRemoteBranches" tabindex="7" /> <i><wicket:message key="gb.showRemoteBranchesDescription"></wicket:message></i></td></tr> | |||
<tr><th><wicket:message key="gb.showReadme"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="showReadme" tabindex="8" /> <i><wicket:message key="gb.showReadmeDescription"></wicket:message></i></td></tr> | |||
<tr><th><wicket:message key="gb.skipSizeCalculation"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="skipSizeCalculation" tabindex="9" /> <i><wicket:message key="gb.skipSizeCalculationDescription"></wicket:message></i></td></tr> | |||
<tr><th><wicket:message key="gb.isFrozen"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="isFrozen" tabindex="10" /> <i><wicket:message key="gb.isFrozenDescription"></wicket:message></i></td></tr> | |||
<tr><th><wicket:message key="gb.skipSummaryMetrics"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="skipSummaryMetrics" tabindex="10" /> <i><wicket:message key="gb.skipSummaryMetricsDescription"></wicket:message></i></td></tr> | |||
<tr><th><wicket:message key="gb.isFrozen"></wicket:message></th><td class="edit"><input type="checkbox" wicket:id="isFrozen" tabindex="11" /> <i><wicket:message key="gb.isFrozenDescription"></wicket:message></i></td></tr> | |||
<tr><td colspan="2"><hr></hr></td></tr> | |||
<tr><th><wicket:message key="gb.accessRestriction"></wicket:message></th><td class="edit"><select class="span6" wicket:id="accessRestriction" tabindex="11" /></td></tr> | |||
<tr><th><wicket:message key="gb.accessRestriction"></wicket:message></th><td class="edit"><select class="span6" wicket:id="accessRestriction" tabindex="12" /></td></tr> | |||
<tr><th style="vertical-align: top;"><wicket:message key="gb.permittedUsers"></wicket:message></th><td style="padding:2px;"><span wicket:id="users"></span></td></tr> | |||
<tr><td colspan="2"><hr></hr></td></tr> | |||
<tr><th><wicket:message key="gb.federationStrategy"></wicket:message></th><td class="edit"><select class="span6" wicket:id="federationStrategy" tabindex="12" /></td></tr> | |||
<tr><th><wicket:message key="gb.federationStrategy"></wicket:message></th><td class="edit"><select class="span6" wicket:id="federationStrategy" tabindex="13" /></td></tr> | |||
<tr><th style="vertical-align: top;"><wicket:message key="gb.federationSets"></wicket:message></th><td style="padding:2px;"><span wicket:id="federationSets"></span></td></tr> | |||
<tr><th></th><td class="editButton"><input class="btn" type="submit" value="Cancel" wicket:message="value:gb.cancel" wicket:id="cancel" tabindex="13" /> <input class="btn primary" type="submit" value="Save" wicket:message="value:gb.save" wicket:id="save" tabindex="14" /> </td></tr> | |||
<tr><th></th><td class="editButton"><input class="btn" type="submit" value="Cancel" wicket:message="value:gb.cancel" wicket:id="cancel" tabindex="14" /> <input class="btn primary" type="submit" value="Save" wicket:message="value:gb.save" wicket:id="save" tabindex="15" /> </td></tr> | |||
</tbody> | |||
</table> | |||
</form> |
@@ -213,6 +213,7 @@ public class EditRepositoryPage extends RootSubPage { | |||
form.add(new CheckBox("showRemoteBranches")); | |||
form.add(new CheckBox("showReadme")); | |||
form.add(new CheckBox("skipSizeCalculation")); | |||
form.add(new CheckBox("skipSummaryMetrics")); | |||
form.add(usersPalette); | |||
form.add(federationSetsPalette); | |||
@@ -43,6 +43,7 @@ import com.gitblit.GitBlit; | |||
import com.gitblit.Keys; | |||
import com.gitblit.models.Metric; | |||
import com.gitblit.models.PathModel; | |||
import com.gitblit.models.RepositoryModel; | |||
import com.gitblit.utils.JGitUtils; | |||
import com.gitblit.utils.MarkdownUtils; | |||
import com.gitblit.utils.StringUtils; | |||
@@ -64,10 +65,11 @@ public class SummaryPage extends RepositoryPage { | |||
int numberRefs = GitBlit.getInteger(Keys.web.summaryRefsCount, 5); | |||
Repository r = getRepository(); | |||
RepositoryModel model = getRepositoryModel(); | |||
List<Metric> metrics = null; | |||
Metric metricsTotal = null; | |||
if (GitBlit.getBoolean(Keys.web.generateActivityGraph, true)) { | |||
metrics = GitBlit.self().getRepositoryDefaultMetrics(getRepositoryModel(), r); | |||
if (!model.skipSummaryMetrics && GitBlit.getBoolean(Keys.web.generateActivityGraph, true)) { | |||
metrics = GitBlit.self().getRepositoryDefaultMetrics(model, r); | |||
metricsTotal = metrics.remove(0); | |||
} | |||