We’re happy to announce the immediate availability of GForge 23.0. This release is primarily a bug-fix release with a fair number of new features included!
Key Highlights in 23.0
SSO – Many improvements to our Single Sign-On support.
Security – Fixed a number of security vulnerabilities found in an audit.
Angular 14 Migration – While this doesn’t impact our customers in any obvious way, this is a large undertaking to pay some technical debt.
Releases – We’ve made a number of improvements to the visibility of releases, particularly in the case where you want to prevent a release from being accessible but want to keep all its associations to tickets, etc intact.
This category looks at Tracker Item volume, status, and history.
Note: Because a Project can contain multiple Trackers (for, e.g., Development Tasks, Customer Support, Server List, and whatever else you need), each check can generate multiple fail or warning messages.
Definition: The number of tasks that have been open longer than 90 days, with some activity in the past seven days.
What it means: Tasks that linger for weeks or months clog your Standup, Burndown, and planning process. These tasks can also be a quiet drain on team productivity – making slow progress on a task requires way more task-switching than small, focused ones.
How to fix? Look at each long-running task, and ask these questions:
Is this still worth doing? Close it if it’s not valuable.
Is the task too vague? Clarifying the goal can make it easier to reach.
Is the task too broad? Create sub-tasks that can go faster.
Definition: The number of tasks that are currently open, but have been closed more than twice in the past.
What it means: Much like Long-Running Tasks, Recycled Tasks get in the way of good planning and tracking. They’re usually re-opened unexpectedly, usually because “done” is poorly-defined or regularly gets “un-done” somehow.
How to fix? Much like Long-Running Tasks, look at each Recycled Task and see if it should be refined in scope or killed permanently. Some tasks that keep coming back have an underlying technical or business-process cause – attack that instead of just changing the band-aid over and over again.
Definition: Tasks that are currently open and assigned or in a Sprint, but with no activity in the past 30 days.
What it means: Assigning a task or adding it to a Sprint represents a commitment to completing that Task. Tasks that sit for weeks with no progress are taking up attention and Story Points from other priorities.
How to fix? For each Stale Task, do one of the following:
This category of health checks focuses on the code you check into your GForge Next project, how it relates to task management, team and file sizes.
Commits Per Tracker Item
Definition: The number of separate commits associated to each Tracker Item in your project. Only commits created in the last 90 days are used, so the trends will change over time.
What it means: Having too many commits makes it harder to understand the associated Tracker Item’s history later on. It can also skew Sprint, Burndown, and Release metrics to look bigger or smaller than they really are.
How to fix? Although you can add or remove associations between a commit and a Tracker Item, it’s better to look forward than try to change history. When planning a Sprint or Release, consider the size of each Tracker Item, and break them down into smaller tasks that might affect fewer files, or involve fewer iterations for each TI.
Commits with Tracker Items
Definition: The percentage of commits in the last 90 days that are associated (or not) to a Tracker Item. Also checks for commits that are tied to more than on TI.
What it means: Pushing commits without an associated task is an easy way to mess up your code base over time. It’s also bad for team collaboration and Sprint and/or Release tracking.
How to fix? To fix existing commits, you can create Tracker Items, and associate them using the SCM Commits listing. Click a commit and use the “Tracker Item Associations” section at the bottom of the commit details view.
You can (and should) also fix the process for pushing commits to your project:
Go to the Project Admin SCM tab, and choose “Require” for the “Associate Tracker Items” option.
You might also check the “Restrict Tracker Item Associations” setting, depending on whether you want to allow associations between commits in this project and Tracker Items from other projects.
Usually, this setting should be “Yes” to keep it to the current project.
Definition: The number of users with commits in the last 90 days, and the proportion of all commits made by each user.
What it means: For smaller projects (with only one or two contributors) this check won’t mean much. For full-sized Agile teams (4-5 contributors) or larger, traditional teams (10 or more contributors), this check can help you understand if work is balanced properly between team members.
How to fix? If you’re not using Tracker Items (and requiring that commits tie to them), then you should start right away. Having a specific task should be required in order to make code changes anyway, and an official task list lets the Product Owner, Scrum Master, or even the team itself to balance tasks among contributors by size, functional area and dependencies. Proper task balancing will lead to balanced commits from the team.
Files Per Commit
Definition: The number of files changed (or added, or removed) by each commit. Only commits created in the last 90 days are used, so the trends will change over time.
What it means: In general, commits should touch less than ten files. Large commits (many files and/or many lines of code) are harder to review, harder to understand later, and more likely to cause merge conflicts with other commits.
How to fix? This is another one where what’s done is done. Going forward, make sure that the team is doing proper analysis on task sizes during planning, and on the changes to be made when working each task. If a specific task requires changing many files, try to find a way to iterate on it, changing a few files in one commit, reviewing/merging that commit, then moving on to the next set of files.
Of course, sometimes you’ll just need to bite the bullet – a breaking change in a dependency/library, an urgent security fix, etc. But those hefty commits should be the exception and not the rule.
GForge Next has everything that teams need to plan, execute, and document their work. You can start with simple features like kanban and source control, add workflow steps, code reviews and wiki articles, even integrate your build process and Zoom meetings.
But embracing all of these features and flexibilities can eventually make anyone feel a little lost:
On the one hand, we want all of these features. We need them. OTOH, we can’t (or really, really don’t want to) pay for training or plugins, or spend hours in Stack Overflow, to get the best use out of the tools we’re already paying for.
What we really need is a tool that tells us how we’re doing as we use it. Automatically. One that grows with our usage, making recommendations that apply to our process. Most importantly, one that doesn’t get in the way of actual productivity.
That’s why, starting in version 23.0, we’re rolling out a new item in Project Admin Reports called Project Health Checks. This new report will be run automatically against each active project in GForge Next, and provide insight, metrics and advice on features you may want to use, configuration options that need tweaking, or processes that may not be working for you. All of these Checks are designed to help you spend less time on your tools and more time getting things done.
Data + Analytics = Advice
Because GForge Next is a single service (with a single API and database), we can take a comprehensive view of each project – from users and roles, to releases, tasks and sprints, to the code changes, and even the configuration of access controls, workflow and integration settings – and look for patterns across all types of related data.
The Project Health Check is run automatically once a month, and all project admins are notified when results are available. Each report is organized into Categories, Checks, and Results:
In the screen shot above, “Commits” is the Category. Other Categories include Tasks, Sprints/Releases, Backlog, and Project Configuration, and more are planned for later this year.
Within each Category are a number of Checks, each of which looks for a single kind of pattern, warning, or possible improvement.
Each Check can yield one or more Results, depending on how many Users, Trackers, or other related data appears in your Project.
You can collapse and expand Categories and Checks. Collapsed sections will show summary counts of the Results that are hidden, like the colored boxes at the top of the report.
Checks fall into these categories:
Green boxes are OK/Success results, which shows that your project is performing well in this area.
Yellow boxes are Warning results. These don’t necessarily indicate a problem, but a trend that’s going the wrong way, or an easy opportunity for improvement.
Red boxes are Failed results. These results may point to a problem with your process, or a measurement that is way outside recommended boundaries.
Navigation and Customization
For the Warning and Failure Results, clicking on the result will take you to a blog post, wiki article or video with details about the issue, why it might affect you, and how to fix it.
Our Health Checks make some assumptions about projects and teams in general, and not all of these assumptions will apply to your situation. If there are Checks or Results that don’t make sense, you can turn them off completely, and exclude them from totals and future Health Check reports. Disabled Checks can be re-enabled at the bottom of the report.
As we start running Health Checks for SaaS customers, GForge staff will be contacting project admins directly to offer personalized walkthroughs of the data, discuss fixes, process improvements, or GForge Next features that might help, and get feedback on wording, content, and future Checks to be implemented. SaaS users can also use the “Get Support” button anytime to request help with this new feature.
We’re happy to announce the immediate availability of GForge 22.2. This release is primarily a bug-fix release with a fair number of new features included!
Key Highlights in 22.2
HTTP/2 Support added – To learn more about the benefits of HTTP/2 here.
Tickets can now be filtered based on whether or not they have attachments.
Tickets can also be filtered based on they have a parent and/or child ticket.
Users can now react (thumbs up/down) on comments.
File Uploads – Fixed the issue where file uploads would die after 20MB regardless of the configured value.
REST API – Updated missing and incomplete documentation.
Site Admin – Searching projects by name has been improved.
Browse Projects – Users could only search for projects they knew about in prior GForge versions. This version allows users to browse all projects they have access to.
Looking Ahead to 23.0
We want to point out some important changes coming in GForge 23.0 (spring 2023). This version will add support for Kubernetes and it is going to have a new ticket editor. We’d love to get some feedback on the new editor before it is released so if you would like a sneak peak you can register a test project or you can send us an email and we can shoot over some screenshots. Additionally, for you users interested in Kubernetes, if you have any specific questions or would like to beta test this in your environment we’d love to hear form you. Just contact us at firstname.lastname@example.org.
GForge v22.1 is primarily a bug fix release with a fair number of new features included!
GForge Now Supports Windows
Over the years we have been asked numerous times if GForge can run under windows. The complexities of GForge’s collaboration features had tied us completely to Linux. When we released our first version of GForgeNext under Docker we saw a future that might eventually include Windows. Today is that day.
You’re probably wondering why now when Docker has been out for years. The key lies in GForge’s interactions with the host filesystem and now with WSL (Windows Subsystem in Linux) those final hurdles have been dealt with.
GForge Includes Podman Support
We’re not here to ding Docker, it’s served us well for many years. That said, their approach to virtualization has caught the eye of many in the security world and because of that Podman was born. Podman was built to do everything Docker does but addressing many of the security concerns in Docker. With all that in mind, GForge now support Podman in addition to Docker. As important, your choice of Podman vs Docker is independent of your choice of Linux vs Window+WSL.
Other Key Highlights in v22.1
Tickets can now be filtered based on whether or not they have attachments.
Tickets can also be filtered based on they have a parent and/or child ticket.
Users can now react (thumbs up/down) on comments.
Chat – We have added a few useful macros. For example you can search StackOverflow, Microsoft, and Wikipedia. You can also send private messages to a specific user. To see all of the supported macros just type “/help”.
Markdown – Anywhere GForge supports markdown now includes support for tables.
Version Control – All the repository homepages now include a link to a GForge-specific FAQ addressing common issues our customers have using Git, SVN and CVS
GForge v22.0 is primarily a feature release with a fair number of bug fixes included
Introducing Planning Boards
You already know GForge allows you to plan, distribute and track your work. With GForge you are already able to plan a release, break the release down into manageable sprints and assign work to your team. Planning Boards gives our existing kanban features a big shot in the arm by allowing you to create boards and quickly begin moving work around. The image below gives an example of moving tickets in a release into sprints and assigning the work out.
We’ll be sharing a deeper dive covering Planning Boards on here and on our YouTube Channel.
Other Key Highlights in v22.0
Project Navigation – We’ve made a big improvement to the project navigation bar. The new version now groups related project features and adds labels. The prior version assumed you knew the icon for each feature).
There are cases where you want to have tickets in one project reference commits made in other projects. The commits tab in the ticket editor will now show the commit data.
There is a printable version of a ticket.
Documents – You can now add tags to documents.
Version Control – There’s been a number of improvements:
For Git repositories we’ve replaced the “master” branch with the name “main” (this only applies to new projects)
We’ve added a script to convert CVS repositories to Git
Some minor bug fixes (see ChangeLog below for more information)
We now have the ability to share a software bill of materials (SBOM) listing all the libraries and packages GForge uses in each release. You can request the SBOM by email email@example.com
Projects can now to exported from one GForge instance and imported into another GForge instance assuming both instances are running the same version of GForge.
GForge v21.2 is primarily a bug fix release. You will notice that there aren’t that many tickets in this release because we continued to focus on core technologies (libraries, etc) that needed to be upgraded. Specifically, a lot of energy was focused on upgrading to Angular 1.6.
Highlights in GForge 21.2
OIDC Support – GForge now supports OIDC and works with SSO systems like Okta.
Site Search – When inside a project, the navbar search now allows a way for you to search outside the current project (i.e. across all your projects and their artifacts)
Reports – There’s a couple of new reports for Site Administrators including a Cron History and Audit Log Reports.
Site Administration – We’ve added data retention settings for purging cron history and activity log data.
Kanban – The user interface has been completely revamped when working with tickets in Kanban view.
SVN – There’s been a number of improvements. The most notable is we’ve improved the speed of SVN operations (especially repositories with a lot of files). Also for repositories using SSH we fixed an ACL issue.
Just a reminder for customers still running GForge Advanced Server (v6.4.5 and prior) we have officially dropped support as of October of 2020. We will still answer any support questions about older releases but we will not be providing any future code updates or patches. Please feel free to reach out to us for a free consultation on the planning and upgrade paths.
Check back soon as we’ll be sharing our plans for the rest of 2022!
Hello and welcome to another GForge How-To. In this series, we teach you tips and tricks to help you maximize your experience with GForge. This time, we’re talking about the Project Admin SCM page, and the settings available there.
The settings on this page are as follows:
Access Method toggles between accessing your SCM over SSH or HTTPS; SSH is the default.
Git LFS support enables and disables Git LFS support.
Code search indexes the code in your promotion model branches for searching. Code tagging indexes the project’s code to tag related tracker items and user commits.
Enable Anonymous Read allows SCM to be read by anyone, including anonymous users.
Associate Tracker Items has three choices: you can keep commits unattached to tickets, attach them when you want, or require that every commit associates to a ticket.
Restrict Tracker Item Associations requires commit ticket IDs to reference a ticket in the project.
Commit Notifications sends an email to everyone monitoring the SCM repo when someone commits.
Validate Committers ensures that each commit is pushed by an authenticated user.
Validate Assignment automatically assigns a specified ticket to a committer.
Access Text shows any text you type in on the main SCM repo page.
Browse Text shows the text you type on the SCM Browse page.
As you can see, the SCM settings available to project admins can help in customizing and correcting GForge to fit any project’s needs. If you have any questions or feedback about the Project Admin SCM page, you can send us a message here. Make sure to check your inbox for more GForge How-To’s in the future!
Hello and welcome to our first article in a new series called “GForge How-Tos” where we share short, compact tips on getting the most out of GForge. Whether you are using GForge in our Cloud or on-premises we are confident you will find new ideas for getting the most out of GForge.
This week we want to cover how you get around in GForge using either the Mega-menu or by using the Project menu.
The GForge Mega-menu is the primary way for navigating everything GForge has to offer. The mega-menu is context sensitive which means users will only see projects and features you have access to. Additionally the mega-menu will also give project and site administrators access to their specialized administrative features.
For the impatient, here’s a quick video we did on navigating your projects in GForge.
Once inside a project, you will have access to the GForge Project Menu which is a subset of the mega-menu that allows you to quickly access different features within the current project. Don’t worry, the mega-menu is always there in case you need to navigate away from the current project.
Now, whether you are using the mega-menu or the project menu, there are some icons you should become familiar with since doing so means you will be able to quickly switch between the features within your project:
This icon is for your ProjectHomepage. Choose this option to view your project homepage which, by default, includes the name, description and team of your project along with some additional summary information.
This icon links you to your source code. If you’re not in Git, it will say CVS or SVN, depending on your specific version control system. This page provides information about accessing your repository , integrating into your commits, and general info about your repository.
The Standup allows you to browse team members and see exactly what they’re up to, according to their To-Do list. Each person can drag-and-drop between what they want to do and what they’re doing, and everyone else can view this. Finally, you can see what each person has committed and changed lately.
Sprints are a very useful tool for your team to create and follow through on their plans. Each team member commits to complete certain tickets within a set time, and GForge keeps track of it all.
Releases is where you can manage and publish all of your project’s releases. There is a list of all releases and you can see basic information about each release and package.
Your project’s Builds page allows you to keep track of your CICD pipeline in Jenkins.
The Wiki is great for publishing anything you want your customers or team members to know. All wiki pages are fully versioned and can be locked or monitored by users.
In Docs, you can view a list of documents for each folder in the project. You can also open and download any unlocked document in the project, create new folders within the project, upload new files (as independent files, whole folders or even ZIP files), download whole folders, and monitor the project documents.
On your Discussions page, you can participate in all the forums and chat rooms attached to your project.
This is a Tracker page. Of course, you may have multiple trackers; they will all have this icon in the Project Menu. You can hover over the icon to see the name of each tracker. The tracker page is the central location of all tickets in a tracker. You can view, add, and delete tickets within the tracker, as well as edit tickets you have access to
Assuming you have proper access, Tracker Admin page allows you to quickly administer trackers. This is where you can add, delete or change existing trackers including the defining of custom fields and workflows.
My Reports gives you the ability to see all your projects from a distance. Here you can create and share reports about the tickets in the projects you have access to.
This symbol is for the Teams page, which is available for project admins. There, you can view and filter a list of all team members, manage requests to join the project, and invite new team members to your project.
This is the Project Admin page, where you can administer all aspects of your project.
As you can see, we’ve given you a couple of ways to quickly access all the great features GForge has to offer. If you have questions or feedback on how we can improve navigation drop us a note. Also, stay tuned because next week our second How-To installment will take a deeper dive into the features available within the mega-menu.