Release Notes for Helix GitSwarm Version 2016.1 Introduction Helix GitSwarm extends the GitLab Community Edition (CE) software to let users using Git maintain their code repositories in Perforce Helix, facilitating contributions and collaboration between users using Git and users using P4 on complex products containing source code and binaries. Additionally, by maintaining the code repository in the Helix Versioning Engine, GitSwarm enables an enterprise to manage and secure all of its Intellectual Property (IP) in one place. GitSwarm offers users an interface to manage code repositories, means to fork repositories hosted in Helix and collaborate on a project using a "pull-request" style code review workflow. Please send all feedback to support@perforce.com. --------------------------------------------------------------------------- Documentation GitSwarm Release 2016.1 documentation is included in the distribution and can be accessed from within GitSwarm from the "?" menu on the top toolbar. The latest GitSwarm Release documentation can be found online at: https://www.perforce.com/perforce/doc.current/manuals/gitswarm/ Supported Client Browsers GitSwarm supports the following client web browsers and versions: * Chrome (Latest stable version) * Firefox (Latest released version and latest ESR version) * Safari 7+ (known problem: required fields in html5 do not work) * Opera (Latest released version) * IE 10+ We recommend the use of the latest stable version of the browsers listed above for the best experience when using GitSwarm. Other web browsers might also work, including prior, development or beta builds of the above web browsers, but these browsers are not officially supported. Installation and Supported Platforms Please see the separate "install" file, a peer to this file. Upgrading Please see the separate "upgrade" file, a peer to this file. Known Issues * Helix Mirroring stops working when a GitSwarm project involves commits that contain only tags and no file changes. * GitSwarm project names can only contain letters, numbers, underscores, periods, and dashes, and must begin with a letter, number, or underscore. Since depot paths in the Helix Versioning Engine (P4D) can contain Unicode and other special characters, we recommend depot paths for projects you intend on importing into GitSwarm via Git Fusion adhere to the naming convention described above. If you are using multi-byte characters in any of your Git Fusion repository names, you should use an SSH connection to Git Fusion. * If a new project is created and GitSwarm is used to automatically mirror it (via convention-based mirroring), updating the project's namespace and/or project name does *not* change the location under Helix Versioning Engine (P4D). In order to move the project's files to a new location, you need to delete the project, re-create it with convention-based mirroring, and then re-add the files. * Once a project has been created with mirroring to Git Fusion, changing the settings in `/etc/gitswarm/gitswarm.rb` does not update the mirroring settings for the project (or any other project). This can result in problems that prevent pushing new changes to the project. Unfortunately, the solution is to delete the project, correct the settings in `gitswarm.rb`, and then re-create the project. * Git Fusion, when installed on CentOS/RHEL 7.x, does not support HTTP(S) authentication. This issue prevents pushing new work to a Git Fusion repo, including any updates in GitSwarm that would be mirrored to Git Fusion. Instead, use SSH connections when Git Fusion is hosted on CentOS/RHEL 7.x. * An error related to setting LANG/LC_ALL can show up when GitSwarm tries to connect to a remote Helix Git Fusion server (running on CentOS/RHEL 6.6+) over SSH, as part of mirroring setup on the `Create Project` page. Please see the Helix mirroring documentation for help. --------------------------------------------------------------------------- Major new functionality in 2016.1 #dc874776, #4b6b6f1a, #8a4dbc96, #2c4b9e9d, #c82e6884, #06aee6d9, #239a5c8c, #19aecef4, #b87f33d7, #63ce742e, #56eb4196, #2de88af7 (Bug #85089, Bug #85088, Bug #85127, Bug #85177, Bug #85197, Bug #85367, Bug #85368, Bug #85478, Bug #85516, Bug #85681, Bug #85701) Add ability to create custom branch mappings from Helix depot paths #c7383efd, #a5a0f738, #a2ef9572, #55d68e67 (Bug #83775, Bug #83776, Bug #83777, Bug #83778, Bug #83779, Bug #84013) Add experimental support for enforcing Helix protections #7771ec0e, #78124ebb, #28c84e8a, d0828830, #78124ebb, #156b6977, #0c1875a9, #35dc7354 (Bug #83802, Bug #83803, Bug #83804, Bug #83805, Bug #83906, Bug #84574, Bug #84808, Bug #84761, Bug #85200) Add ability to disable and re-enable mirroring in Helix Minor new functionality in 2016.1 #c2996f37 (Bug #85710) UI improvements for mirroring errors #b18fe46c (Bug #85153) Switch to Perforce job IDs for relnotes #45d62189 (Bug #85091) Improve display of mirroring status on project details page #f44e3dbf, #1d9895e3 (Bug #84828, #85949) Improvements to bootstrap script, with support for RHEL #b0eb9f83 (Bug #84076) Ensure mirrored projects with missing server config are still shown #b949f635 (Bug #80590) Ensure Git Fusion repo remains selected when new project page errors out Bugs fixed in 2016.1 #5b06580d (Bug #86271) Updated internal patch version to match check-for-updates version. #6c190a6a (Bug #86120) Incorporated GitLab Community fix for two-factor authentication bypass #b3e472f9 (Bug #85879) Update hooks now run before mirroring to Git Fusion #1d3099b1 (Bug #83814) Allow repos with a '/' in the name #fdae5087 (Bug #81226) Selecting a repository to mirror should auto-select "mirror from existing" #c412fbe3 (Bug #83849, Bug #80745, Bug #80820) Fixed multiple help links #b3bbd754 (Bug #80797) Ensure /etc/gitswarm/gitswarm.rbe file isn't created GitLab changelogs since GitLab 8.0 GitLab 8.4 - Prevent privilege escalation via "impersonate" feature - Prevent privilege escalation via notes API - Prevent privilege escalation via project webhook API - Prevent XSS via Git branch and tag names - Prevent XSS via custom issue tracker URL - Prevent XSS via `window.opener` - Prevent information disclosure via snippet API - Prevent information disclosure via project labels - Prevent information disclosure via new merge request page - Remove persistent XSS vulnerability in `commit_person_link` helper - Fix a 2FA authentication spoofing vulnerability. - Don't attempt to fetch any tags from a forked repo (Stan Hu). - Bump Git version requirement to 2.7.4 - Update omniauth-saml gem to 1.4.2 - Prevent long-running backup tasks from timing out the database connection - Add a Project setting to allow guests to view build logs (defaults to true) - Increase lfs_objects size column to 8-byte integer to allow files larger than 2.1GB - Correctly highlight MR diff when MR has merge conflicts - Fix highlighting in blame view - Update sentry-raven gem to prevent "Not a git repository" console output when running certain commands - Add instrumentation to additional Gitlab::Git and Rugged methods for performance monitoring - Allow autosize textareas to also be manually resized - Bump required gitlab-workhorse version to bring in a fix for missing artifacts in the build artifacts browser - Get rid of those ugly borders on the file tree view - Fix updating the runner information when asking for builds - Bump gitlab_git version to 7.2.24 in order to bring in a performance improvement when checking if a repository was empty - Add instrumentation for Gitlab::Git::Repository instance methods so we can track them in Performance Monitoring. - Increase contrast between highlighted code comments and inline diff marker - Fix method undefined when using external commit status in builds - Apply security updates for Rails (4.2.5.1), rails-html-sanitizer (1.0.3), and Nokogiri (1.6.7.2) - Fix redirect loop during import - Fix diff highlighting for all syntax themes - Allow LDAP users to change their email if it was not set by the LDAP server - Ensure Gravatar host looks like an actual host - Consider re-assign as a mention from a notification point of view - Add pagination headers to already paginated API resources - Properly generate diff of orphan commits, like the first commit in a repository - Improve the consistency of commit titles, branch names, tag names, issue/MR titles, on their respective project pages - Autocomplete data is now always loaded, instead of when focusing a comment text area - Improved performance of finding issues for an entire group - Added custom application performance measuring system powered by InfluxDB - Add syntax highlighting to diffs - Gracefully handle invalid UTF-8 sequences in Markdown links (Stan Hu) - Bump fog to 1.36.0 (Stan Hu) - Add user's last used IP addresses to admin page (Stan Hu) - Add housekeeping function to project settings page - The default GitLab logo now acts as a loading indicator - LDAP group sync: Remove user from group when they are removed from LDAP - Fix caching issue where build status was not updating in project dashboard (Stan Hu) - Accept 2xx status codes for successful Web hook triggers (Stan Hu) - Fix missing date of month in network graph when commits span a month (Stan Hu) - Expire view caches when application settings change (e.g. Gravatar disabled) (Stan Hu) - Don't notify users twice if they are both project watchers and subscribers (Stan Hu) - Fix error with file size check with submodules (Stan Hu) - Remove gray background from layout in UI - Remove gray background from layout in UI - Fix signup for OAuth providers that don't provide a name - Implement new UI for group page - Implement search inside emoji picker - Let the CI runner know about builds that this build depends on - Add API support for looking up a user by username (Stan Hu) - Add project permissions to all project API endpoints (Stan Hu) - Link to milestone in "Milestone changed" system note - LDAP Group Sync: Allow group role downgradegit - Only allow group/project members to mention `@all` - Expose Git's version in the admin area (Trey Davis) - Add "Frequently used" category to emoji picker - Add CAS support (tduehr) - Add link to merge request on build detail page - Fix: Problem with projects ending with .keys (Jose Corcuera) - Revert back upvote and downvote button to the issue and MR pages - Swap position of Assignee and Author selector on Issuables (Zeger-Jan van de Weg) - Add system hook messages for project rename and transfer (Steve Norman) - Fix version check image in Safari - Show 'All' tab by default in the builds page - Add Open Graph and Twitter Card data to all pages - Fix API project lookups when querying with a namespace with dots (Stan Hu) - Enable forcing Two-Factor authentication sitewide, with optional grace period - Import GitHub Pull Requests into GitLab - Change single user API endpoint to return more detailed data (Michael Potthoff) - Update version check images to use SVG - Validate README format before displaying - Enable Microsoft Azure OAuth2 support (Janis Meybohm) - Properly set task-list class on single item task lists - Add file finder feature in tree view (Kyungchul Shin) - Ajax filter by message for commits page - API: Add support for deleting a tag via the API (Robert Schilling) - Allow subsequent validations in CI Linter - Show referenced MRs & Issues only when the current viewer can access them - Fix Encoding::CompatibilityError bug when markdown content has some complex URL (Jason Lee) - Add API support for managing project's builds - Add API support for managing project's build triggers - Add API support for managing project's build variables - Allow broadcast messages to be edited - Autosize Markdown textareas - Import GitHub wiki into GitLab - Add reporters ability to download and browse build artifacts (Andrew Johnson) - Autofill referring url in message box when reporting user abuse. - Remove leading comma on award emoji when the user is the first to award the emoji (Zeger-Jan van de Weg) - Add build artifacts browser - Improve UX in builds artifacts browser - Increase default size of `data` column in `events` table when using MySQL - Expose button to CI Lint tool on project builds page - Fix: Creator should be added as a master of the project on creation - Added X-GitLab-... headers to emails from CI and Email On Push services (Anton Baklanov) - Add IP check against DNSBLs at account sign-up - Added cache:key to .gitlab-ci.yml allowing to fine tune the caching GitLab 8.3 - Use gitlab-workhorse 0.5.4 (fixes API routing bug) - Preserve CE behavior with JIRA integration by only calling API if URL is set - Fix duplicated branch creation/deletion events when using Web UI (Stan Hu) - Add configurable LDAP server query timeout - Get "Merge when build succeeds" to work when commits were pushed to MR target branch while builds were running - Suppress e-mails on failed builds if allow_failure is set (Stan Hu) - Fix project transfer e-mail sending incorrect paths in e-mail notification (Stan Hu) - Better support for referencing and closing issues in Asana service (Mike Wyatt) - Enable "Add key" button when user fills in a proper key (Stan Hu) - Fix error in processing reply-by-email messages (Jason Lee) - Fix Error 500 when visiting build page of project with nil runners_token (Stan Hu) - Use WOFF versions of SourceSansPro fonts - Fix regression when builds were not generated for tags created through web/api interface - Fix: maintain milestone filter between Open and Closed tabs (Greg Smethells) - Fix missing artifacts and build traces for build created before 8.3 - Disable --follow in `git log` to avoid loading duplicate commit data in infinite scroll (Stan Hu) - Add support for Google reCAPTCHA in user registration - Fix Error 500 when global milestones have slashes (Stan Hu) - Fix Error 500 when doing a search in dashboard before visiting any project (Stan Hu) - Fix LDAP identity and user retrieval when special characters are used - Move Sidekiq-cron configuration to gitlab.yml - Bump rack-attack to 4.3.1 for security fix (Stan Hu) - API support for starred projects for authorized user (Zeger-Jan van de Weg) - Add open_issues_count to project API (Stan Hu) - Expand character set of usernames created by Omniauth (Corey Hinshaw) - Add button to automatically merge a merge request when the build succeeds (Zeger-Jan van de Weg) - Add unsubscribe link in the email footer (Zeger-Jan van de Weg) - Provide better diagnostic message upon project creation errors (Stan Hu) - Bump devise to 3.5.3 to fix reset token expiring after account creation (Stan Hu) - Remove api credentials from link to build_page - Deprecate GitLabCiService making it to always be inactive - Bump gollum-lib to 4.1.0 (Stan Hu) - Fix broken group avatar upload under "New group" (Stan Hu) - Update project repositorize size and commit count during import:repos task (Stan Hu) - Fix API setting of 'public' attribute to false will make a project private (Stan Hu) - Handle and report SSL errors in Web hook test (Stan Hu) - Bump Redis requirement to 2.8 for Sidekiq 4 (Stan Hu) - Fix: Assignee selector is empty when 'Unassigned' is selected (Jose Corcuera) - Add rake tasks for git repository maintainance (Zeger-Jan van de Weg) - Fix 500 error when update group member permission - Fix: As an admin, cannot add oneself as a member to a group/project - Trim leading and trailing whitespace of milestone and issueable titles (Jose Corcuera) - Recognize issue/MR/snippet/commit links as references - Backport JIRA features from EE to CE - Add ignore whitespace change option to commit view - Fire update hook from GitLab - Allow account unlock via email - Style warning about mentioning many people in a comment - Fix: sort milestones by due date once again (Greg Smethells) - Migrate all CI::Services and CI::WebHooks to Services and WebHooks - Don't show project fork event as "imported" - Add API endpoint to fetch merge request commits list - Don't create CI status for refs that doesn't have .gitlab-ci.yml, even if the builds are enabled - Expose events API with comment information and author info - Fix: Ensure "Remove Source Branch" button is not shown when branch is being deleted. #3583 - Run custom Git hooks when branch is created or deleted. - Fix bug when simultaneously accepting multiple MRs results in MRs that are of "merged" status, but not merged to the target branch - Add languages page to graphs - Block LDAP user when they are no longer found in the LDAP server - Improve wording on project visibility levels (Zeger-Jan van de Weg) - Fix editing notes on a merge request diff - Automatically select default clone protocol based on user preferences (Eirik Lygre) - Make Network page as sub tab of Commits - Add copy-to-clipboard button for Snippets - Add indication to merge request list item that MR cannot be merged automatically - Default target branch to patch-n when editing file in protected branch - Add Builds tab to merge request detail page - Allow milestones, issues and MRs to be created from dashboard and group indexes - Use new style for wiki - Use new style for milestone detail page - Fix sidebar tooltips when collapsed - Prevent possible XSS attack with award-emoji - Upgraded Sidekiq to 4.x - Accept COPYING,COPYING.lesser, and licence as license file (Zeger-Jan van de Weg) - Fix emoji aliases problem - Fix award-emojis Flash alert's width - Fix deleting notes on a merge request diff - Display referenced merge request statuses in the issue description (Greg Smethells) - Implement new sidebar for issue and merge request pages - Emoji picker improvements - Suppress warning about missing `.gitlab-ci.yml` if builds are disabled - Do not show build status unless builds are enabled and `.gitlab-ci.yml` is present - Persist runners registration token in database - Fix online editor should not remove newlines at the end of the file - Expose Git's version in the admin area - Show "New Merge Request" buttons on canonical repos when you have a fork (Josh Frye) GitLab 8.2 - Fix application settings cache not expiring after changes (Stan Hu) - Fix Error 500s when creating global milestones with Unicode characters (Stan Hu) - Update documentation for "Guest" permissions - Properly convert Emoji-only comments into Award Emojis - Enable devise paranoid mode to prevent user enumeration attack - Webhook payload has an added, modified and removed properties for each commit - Fix 500 error when creating a merge request that removes a submodule - Fix 404 in redirection after removing a project (Stan Hu) - Ensure cached application settings are refreshed at startup (Stan Hu) - Fix Error 500 when viewing user's personal projects from admin page (Stan Hu) - Fix: Raw private snippets access workflow - Prevent "413 Request entity too large" errors when pushing large files with LFS - Fix invalid links within projects dashboard header - Make current user the first user in assignee dropdown in issues detail page (Stan Hu) - Fix: duplicate email notifications on issue comments - Forcefully update builds that didn't want to update with state machine - Fix: saving GitLabCiService as Admin Template - Improved performance of finding projects and groups in various places - Improved performance of rendering user profile pages and Atom feeds - Expose build artifacts path as config option - Fix grouping of contributors by email in graph. - Improved performance of finding issues with/without labels - Fix Drone CI service template not saving properly (Stan Hu) - Fix avatars not showing in Atom feeds and project issues when Gravatar disabled (Stan Hu) - Added a GitLab specific profiling tool called "Sherlock" (see GitLab CE merge request #1749) - Upgrade gitlab_git to 7.2.20 and rugged to 0.23.3 (Stan Hu) - Improved performance of finding users by one of their Email addresses - Add allow_failure field to commit status API (Stan Hu) - Commits without .gitlab-ci.yml are marked as skipped - Save detailed error when YAML syntax is invalid - Since GitLab CI is enabled by default, remove enabling it by pushing .gitlab-ci.yml - Added build artifacts - Improved performance of replacing references in comments - Show last project commit to default branch on project home page - Highlight comment based on anchor in URL - Adds ability to remove the forked relationship from project settings screen. (Han Loong Liauw) - Improved performance of sorting milestone issues - Allow users to select the Files view as default project view (Cristian Bica) - Show "Empty Repository Page" for repository without branches (Artem V. Navrotskiy) - Fix: Inability to reply to code comments in the MR view, if the MR comes from a fork - Use git follow flag for commits page when retrieve history for file or directory - Show merge request CI status on merge requests index page - Send build name and stage in CI notification e-mail - Extend yml syntax for only and except to support specifying repository path - Enable shared runners to all new projects - Bump GitLab-Workhorse to 0.4.1 - Allow to define cache in `.gitlab-ci.yml` - Fix: 500 error returned if destroy request without HTTP referer (Kazuki Shimizu) - Remove deprecated CI events from project settings page - Use issue editor as cross reference comment author when issue is edited with a new mention. - Add graphs of commits ahead and behind default branch (Jeff Stubler) - Improve personal snippet access workflow (Douglas Alexandre) - [API] Add ability to fetch the commit ID of the last commit that actually touched a file - Fix omniauth documentation setting for omnibus configuration (Jon Cairns) - Add "New file" link to dropdown on project page - Include commit logs in project search - Add "added", "modified" and "removed" properties to commit object in webhook - Rename "Back to" links to "Go to" because its not always a case it point to place user come from - Allow groups to appear in the search results if the group owner allows it - Add email notification to former assignee upon unassignment (Adam Lieskovský) - New design for project graphs page - Remove deprecated dumped yaml file generated from previous job definitions - Show specific runners from projects where user is master or owner - MR target branch is now visible on a list view when it is different from project's default one - Improve Continuous Integration graphs page - Make color of "Accept Merge Request" button consistent with current build status - Add ignore white space option in merge request diff and commit and compare view - Ability to add release notes (markdown text and attachments) to git tags (aka Releases) - Relative links from a repositories README.md now link to the default branch - Fix trailing whitespace issue in merge request/issue title - Fix bug when milestone/label filter was empty for dashboard issues page - Add ability to create milestone in group projects from single form - Add option to create merge request when editing/creating a file (Dirceu Tiegs) - Prevent the last owner of a group from being able to delete themselves by 'adding' themselves as a master (James Lopez) - Add Award Emoji to issue and merge request pages GitLab 8.1 - Fix bug where manually merged branches in a MR would end up with an empty diff (Stan Hu) - Prevent redirect loop when home_page_url is set to the root URL - Fix incoming email config defaults - Remove CSS property preventing hard tabs from rendering in Chromium 45 (Stan Hu) - Force update refs/merge-requests/X/head upon a push to the source branch of a merge request (Stan Hu) - Spread out runner contacted_at updates - Use issue editor as cross reference comment author when issue is edited with a new mention - Add Facebook authentication - Fix cloning Wiki repositories via HTTP (Stan Hu) - Add migration to remove satellites directory - Fix specific runners visibility - Fix 500 when editing CI service - Require CI jobs to be named - Fix CSS for runner status - Fix CI badge - Allow developer to manage builds - Removed, see 8.1.2 - Ensure MySQL CI limits DB migrations occur after the fields have been created (Stan Hu) - Fix duplicate repositories in GitHub import page (Stan Hu) - Redirect to a default path if HTTP_REFERER is not set (Stan Hu) - Adds ability to create directories using the web editor (Ben Ford) - Cleanup stuck CI builds - Send an email to admin email when a user is reported for spam (Jonathan Rochkind) - Show notifications button when user is member of group rather than project (Grzegorz Bizon) - Fix bug preventing mentioned issued from being closed when MR is merged using fast-forward merge. - Fix nonatomic database update potentially causing project star counts to go negative (Stan Hu) - Don't show "Add README" link in an empty repository if user doesn't have access to push (Stan Hu) - Fix error preventing displaying of commit data for a directory with a leading dot (Stan Hu) - Speed up load times of issue detail pages by roughly 1.5x - Fix CI rendering regressions - If a merge request is to close an issue, show this on the issue page (Zeger-Jan van de Weg) - Add a system note and update relevant merge requests when a branch is deleted or re-added (Stan Hu) - Make diff file view easier to use on mobile screens (Stan Hu) - Improved performance of finding users by username or Email address - Fix bug where merge request comments created by API would not trigger notifications (Stan Hu) - Add support for creating directories from Files page (Stan Hu) - Allow removing of project without confirmation when JavaScript is disabled (Stan Hu) - Support filtering by "Any" milestone or issue and fix "No Milestone" and "No Label" filters (Stan Hu) - Improved performance of the trending projects page - Remove CI migration task - Improved performance of finding projects by their namespace - Fix bug where transferring a project would result in stale commit links (Stan Hu) - Fix build trace updating - Include full path of source and target branch names in New Merge Request page (Stan Hu) - Add user preference to view activities as default dashboard (Stan Hu) - Add option to admin area to sign in as a specific user (Pavel Forkert) - Show CI status on all pages where commits list is rendered - Automatically enable CI when push .gitlab-ci.yml file to repository - Move CI charts to project graphs area - Fix cases where Markdown did not render links in activity feed (Stan Hu) - Add first and last to pagination (Zeger-Jan van de Weg) - Added Commit Status API - Added Builds View - Added when to .gitlab-ci.yml - Show CI status on commit page - Added CI_BUILD_TAG, _STAGE, _NAME and _TRIGGERED to CI builds - Show CI status on Your projects page and Starred projects page - Remove "Continuous Integration" page from dashboard - Add notes and SSL verification entries to hook APIs (Ben Boeckel) - Fix grammar in admin area "labels" .nothing-here-block when no labels exist. - Move CI runners page to project settings area - Move CI variables page to project settings area - Move CI triggers page to project settings area - Move CI project settings page to CE project settings area - Fix bug when removed file was not appearing in merge request diff - Show warning when build cannot be served by any of the available CI runners - Note the original location of a moved project when notifying users of the move - Improve error message when merging fails - Add support of multibyte characters in LDAP UID (Roman Petrov) - Show additions/deletions stats on merge request diff - Remove footer text in emails (Zeger-Jan van de Weg) - Ensure code blocks are properly highlighted after a note is updated - Fix wrong access level badge on MR comments - Hide password in the service settings form - Move CI web hooks page to project settings area - Fix User Identities API. It now allows you to properly create or update user's identities. - Add user preference to change layout width (Peter Göbel) - Use commit status in merge request widget as preferred source of CI status - Integrate CI commit and build pages into project pages - Move CI services page to project settings area - Add "Quick Submit" behavior to input fields throughout the application. Use Cmd+Enter on Mac and Ctrl+Enter on Windows/Linux. - Fix position of hamburger in header for smaller screens (Han Loong Liauw) - Fix bug where Emojis in Markdown would truncate remaining text (Sakata Sinji) - Persist filters when sorting on admin user page (Jerry Lukins) - Update style of snippets pages (Han Loong Liauw) - Allow dashboard and group issues/MRs to be filtered by label - Add spellcheck=false to certain input fields - Invalidate stored service password if the endpoint URL is changed - Project names are not fully shown if group name is too big, even on group page view - Apply new design for Files page - Add "New Page" button to Wiki Pages tab (Stan Hu) - Only render 404 page from /public - Hide passwords from services API (Alex Lossent) - Fix: Images cannot show when projects' path was changed - Let gitlab-git-http-server generate and serve 'git archive' downloads - Optimize query when filtering on issuables (Zeger-Jan van de Weg) - Fix padding of outdated discussion item. - Animate the logo on hover Major new functionality in 2015.4 #d1e79253, #a6b4510f (Bug #81120) Mirror existing GitSwarm project into Helix #e0d6ed64 (Bug #80866) Support restoring GitLab 8.0 backups into GitSwarm 2015.4 GitLab 8.0 - Add "replace" and "upload" functionalities to allow user replace existing file and upload new file into current repository - Remove satellites - Ability to fetch merge requests from refs/merge-requests/:id - Added Drone CI integration (Kirill Zaitsev) - Allow developers to retry builds - Add support for Crowd - Global Labels that are available to all projects - Add FogBugz project import (Jared Szechy) GitLab 7.14 - Add support for destroying project milestones (Stan Hu) - Allow custom backup archive permissions - Send notification to all participants when MR is merged. - Add support for CI skipped status - Fetch code from forks to refs/merge-requests/:id/head when merge request created - Add "Check out branch" button to the MR page. Minor new functionality in 2015.4 #33aae928 (Bug #81336) Cleanse removes the p4dctl config file #3d53a333 (Bug #81135) Update GitSwarm logo and favicon #1651e961, #2e87e04a (Bug #81119, Bug #81118) Add Mirror in Helix button to project details #1d9d67b5, #798e27d7 (Bug #80359) Renamed the misleading "default" git fusion config block to "local" GitLab 8.0 - Clarify confirmation text on user deletion - Make commit graphs responsive to window width changes (Stan Hu) - Remove git refs used internally by GitLab from network graph (Stan Hu) - Use standard Markdown font in Markdown preview instead of fixed-width font (Stan Hu) - Add option to use StartTLS with Reply by email IMAP server. - Improve CI migration procedure and documentation - Gracefully handle errors in syntax highlighting by leaving the block unformatted (Stan Hu) - Sort issues by creation date in Bitbucket importer (Stan Hu) - Remove user OAuth tokens from the database and request new tokens each session (Stan Hu) - Restrict users API endpoints to use integer IDs (Stan Hu) - Better performance for web editor (switched from satellites to rugged) - Faster merge - Allow displaying of archived projects in the admin interface (Artem Sidorenko) - Allow configuration of import sources for new projects (Artem Sidorenko) - Create cross-reference for closing references on commits pushed to non-default branches (Maël Valais) - Ability to search milestones - Move dashboard activity to separate page (for your projects and starred projects) - Improve performance of git blame - Limit content width to 1200px for most of pages to improve readability on big screens - Bring more UI consistency in way how projects, snippets and groups lists are rendered - Make all profiles and group public - Retrieving oauth token with LDAP credentials - Load Application settings from running database unless env var USE_DB=false - Hide advanced project options for non-admin users - Refactored service API and added automatically service docs generator (Kirill Zaitsev) - Added web_url key project hook_attrs (Kirill Zaitsev) - Add ability to get user information by ID of an SSH key via the API - Project notification level can be set on the project page itself - Added service API endpoint to retrieve service parameters (Petheő Bence) - Sort users autocomplete lists by user (Allister Antosik) - Webhook for issue now contains repository field (Jungkook Park) - Add ability to add custom text to the help page (Jeroen van Baarsen) - Add pg_schema to backup config - Removed API calls from CE to CI GitLab 7.14 - Improve abuse reports management from admin area - Only include base URL in OmniAuth full_host parameter (Stan Hu) - Ability to enable SSL verification for Webhooks - Allow configuration of LDAP attributes GitLab will use for the new user account. - Update default robots.txt rules to disallow crawling of irrelevant pages (Ben Bodenmiller) - Upgrade gitlab_git to 7.2.14 to ignore CRLFs in .gitmodules (Stan Hu) - Provide more feedback what went wrong if HipChat service failed test (Stan Hu) - Bump Haml to 4.0.7 to speed up textarea rendering (Stan Hu) - Show incompatible projects in Bitbucket import status (Stan Hu) - Always add current user to autocomplete controller to support filter by "Me" (Stan Hu) - Add "Confirm user" button in user admin page (Stan Hu) - Add support for Unicode filenames in relative links (Hiroyuki Sato) - Return comments in created order in merge request API (Stan Hu) - Disable internal issue tracker controller if external tracker is used (Stan Hu) - Expire Rails cache entries after two weeks to prevent endless Redis growth - Add project star and fork count, group avatar URL and user/group web URL attributes to API - Show who last edited a comment if it wasn't the original author - Add ability to manage user email addresses via the API. - Show buttons to add license, changelog and contribution guide if they're missing. - Tweak project page buttons. - Mention group and project name in creation, update and deletion notices (Achilleas Pipinellis) - Update gravatar link on profile page to link to configured gravatar host (Ben Bodenmiller) - Remove comments and email addresses when publicly exposing ssh keys (Zeger-Jan van de Weg) - Improve MR merge widget text and UI consistency. - Improve text in MR "How To Merge" modal. - Cache all events - Order commits by date when comparing branches - Include branch/tag name in archive file and directory name - Add dropzone upload progress - Add a label for merged branches on branches page (Florent Baldino) - Detect .mkd and .mkdn files as markdown (Ben Boeckel) - Set max-width for README, issue and merge request description for easier read on big screens - Update Flowdock integration to support new Flowdock API (Boyan Tabakov) - Remove author from files view (Sven Strickroth) Bugs fixed in 2015.4 #2f267684 (Bug #81413) Helix Git Fusion Server dropdown blows out page with long URLs #d6df3abc (Bug #81056) Prevent installing GitSwarm overtop of GitLab #04944d0d (Bug #80979) Fixes WRITE_LOCK_SOCKET is not a valid socket error when group or project name is long #440103c3 (Bug #80780) Set LANG before connecting to git fusion to reduce chance of errors when communicating with Helix Git Fusion #6967d6ba (Bug #80571) Only update the p4d root user when GitSwarm's root user password changes if GitSwarm's root user is still and admin. #17386be8 (Bug #80382) Improve error message when there is a problem reading gitswarm.rb #3a25f71b, #9bc23c5d (Bug #80340) Reinstalling gitswarm after an uninstall results in a fatal error during reconfigure #02b39207 (Bug #80323) Make sure the P4 client name is not initially set as the hostname #4cc7824c, #a3e13281, #cde228c3 (Bug #80302) Fixed issue where too many piled up mirror processes caused a failover of the gitswarm server GitLab 8.0 - Correct lookup-by-email for LDAP logins - Fix loading spinner sometimes not being hidden on Merge Request tab switches - Fix Message-ID header to be RFC 2111-compliant to prevent e-mails being dropped (Stan Hu) - Fix referrals for :back and relative URL installs - Fix anchors to comments in diffs - Remove CI token from build traces - Fix "Assign All" button on Runner admin page - Fix URL shown in Slack notifications - Fix bug where projects would appear to be stuck in the forked import state (Stan Hu) - Fix Error 500 in creating merge requests with > 1000 diffs (Stan Hu) - Fix default avatar not rendering in network graph (Stan Hu) - Skip check_initd_configured_correctly on omnibus installs - Prevent double-prefixing of help page paths - Fix top margin for sign-in button on public pages - Fix LDAP attribute mapping - Fix Reply by email for non-UTF-8 messages. - Fix Markdown links not showing up in dashboard activity feed (Stan Hu) - Remove milestones from merge requests when milestones are deleted (Stan Hu) - Fix HTML link that was improperly escaped in new user e-mail (Stan Hu) - Fix broken sort in merge request API (Stan Hu) - Bump rouge to 1.10.1 to remove warning noise and fix other syntax highlighting bugs (Stan Hu) - Fix URL construction for merge requests, issues, notes, and commits for relative URL config (Stan Hu) - Fix emoji URLs in Markdown when relative_url_root is used (Stan Hu) - Omit filename in Content-Disposition header in raw file download to avoid RFC 6266 encoding issues (Stan HU) - Fix broken Wiki Page History (Stan Hu) - Import forked repositories asynchronously to prevent large repositories from timing out (Stan Hu) - Prevent anchors from being hidden by header (Stan Hu) - Fix bug where only the first 15 Bitbucket issues would be imported (Stan Hu) - Prevent too many redirects upon login when home page URL is set to external_url (Stan Hu) - Improve dropdown positioning on the project home page (Hannes Rosenögger) - Upgrade browser gem to 1.0.0 to avoid warning in IE11 compatibilty mode (Stan Hu) - Only show recent push event if the branch still exists or a recent merge request has not been created (Stan Hu) - Search for comments should be case insensetive - Gracefully handle SMTP user input errors (e.g. incorrect email addresses) to prevent Sidekiq retries (Stan Hu) - Fix 500 error when submit project snippet without body - Improve search page usability - Fixed login failure when extern_uid changes (Joel Koglin) - Don't notify users without access to the project when they are (accidentally) mentioned in a note - Fail builds if no .gitlab-ci.yml is found - Fix bug which IE cannot show image at markdown when the image is raw file of gitlab - Fix highlighting of deleted lines in diffs. GitLab 7.14 - Fix "Reload with full diff" URL button in compare branch view (Stan Hu) - Fix Error 500 in API when accessing a group that has an avatar (Stan Hu) - Upgrade gitlab_git to 7.2.15 to fix `git blame` errors with ISO-encoded files (Stan Hu) - Fix bug where non-project members of the target project could set labels on new merge requests. - Fix redirection after sign in when using auto_sign_in_with_provider - Clear cache to prevent listing deleted branches after MR removes source branch (Stan Hu) - Fix bug where backslashes in inline diffs could be dropped (Stan Hu) - Disable turbolinks when linking to Bitbucket import status (Stan Hu) - Fix broken code import and display error messages if something went wrong with creating project (Stan Hu) - Fix corrupted binary files when using API files endpoint (Stan Hu) - Fix coloring of diffs on MR Discussion-tab (Gert Goet) - Fix "Network" and "Graphs" pages for branches with encoded slashes (Stan Hu) - Fix errors deleting and creating branches with encoded slashes (Stan Hu) - Fix multi-line syntax highlighting (Stan Hu) - Fix network graph when branch name has single quotes (Stan Hu) - Upgrade gitlab_git to version 7.2.6 to fix Error 500 when creating network graphs (Stan Hu) - Fix URL used for refreshing notes if relative_url is present (Bartłomiej Święcki) - Fix commit data retrieval when branch name has single quotes (Stan Hu) - Check that project was actually created rather than just validated in import:repos task (Stan Hu) - Fix full screen mode for snippet comments (Daniel Gerhardt) - Fix 404 error in files view after deleting the last file in a repository (Stan Hu) - Fix the "Reload with full diff" URL button (Stan Hu) - Fix label read access for unauthenticated users (Daniel Gerhardt) - Fix access to disabled features for unauthenticated users (Daniel Gerhardt) - Fix OAuth provider bug where GitLab would not go return to the redirect_uri after sign-in (Stan Hu) - Fix file upload dialog for comment editing (Daniel Gerhardt) - Set OmniAuth full_host parameter to ensure redirect URIs are correct (Stan Hu) - Disabled autocapitalize and autocorrect on login field (Daryl Chan) - Fix bug causing error when the target branch of a symbolic ref was deleted - Fix: User search feature in admin area does not respect filters - Fix infinite loop when SAML was incorrectly configured. Major new functionality in 2015.3 #8491fa96, #d307adc4, #eb9349ae, #fc04a46a Bug #79375, Bug #79376, Bug #79406, Bug #79464, Bug #79466, Bug #79468) Introduced a new all-in-one package that includes a default Helix Server for trying out the product #a8940a55, #5fe7603f (Bug #79900, Bug #79904, Bug #80301) Add configuration options for connecting to multiple Git Fusion Servers #61ff0890, #93bd4d8a, #cf5ff0c8 (Bug #80301, Bug #79903, Bug #79905, Bug #79906, Bug #80314) Add support for creating new repos in Git Fusion when creating a new project GitLab 7.13 - Allow users to send abuse reports - Support commenting on diffs in side-by-side mode (Stan Hu) - Allow users to customize their default Dashboard page. - Reporter role can manage issue tracker now: edit any issue, set assignee or milestone and manage labels - Redesign project page. Show README as default instead of activity. Move project activity to separate page Minor new functionality in 2015.3 #2834d83c, #65e0d404 (Bug #79899) Added support for a global Git Fusion config section for setting defaults across multiple Git Fusion servers #562da480, #3fd23a8b (Bug #80079) Provided a check for determining if your connected Git Fusion servers meet our minimum version requirements #a4490a66 (Bug #80238) When connecting a new Git Fusion server, we add the server to the ssh trust list the first time it is used #40b18cb3 (Bug #80239, Bug #80326, Bug #80403) Improved error messages in the UI when trying to create a mirrored project #f8311f34 (Bug #80495) Increased our merge timeout values so mirrored merges have a bit more time GitLab 7.13 - Add admin_merge_request ability to Developer level and up - Show the first tab automatically on MergeRequests#new - Only enable HSTS header for HTTPS and port 443 (Stan Hu) - Add branch switching support for graphs (Daniel Gerhardt) - Add support for unlocking users in admin settings (Stan Hu) - Add Irker service configuration options (Stan Hu) - Add `two_factor_enabled` field to admin user API (Stan Hu) - Admin can edit and remove user identities - Convert CRLF newlines to LF when committing using the web editor. - API request /projects/:project_id/merge_requests?state=closed will return only closed merge requests without merged one. If you need ones that were merged - use state=merged. - Allow Administrators to filter the user list by those with or without Two-factor Authentication enabled. - Show a user's Two-factor Authentication status in the administration area. - Better performance for pages with events list, issues list and commits list - Allow users to be blocked and unblocked via the API - Use native Postgres database cleaning during backup restore - Make left menu more hierarchical and less contextual by adding back item at top - Allow administrators to disable 2FA for a specific user Bugs fixed in 2015.3 #b480a7e7 Fixed a race condition during setup of the database and the database user #61336ea4 (Bug #79979) Fixed an issue where certain URL parameters broke the version check #42546246 (Bug #79204, Bug #79206) Fixed an issue where check for updates status changes would cause a page reload GitLab 7.13 - Fix bug causing Bitbucket importer to crash when OAuth application had been removed. - Fix Error 500 when browsing projects with no HEAD (Stan Hu) - Fix labels / assignee / milestone for the merge requests when issues are disabled - Fix: Label modifications are not reflected in existing notes and in the issue list - Fix: Label not shown in the Issue list, although it's set through web interface - Fix: Group/project references are linked incorrectly - Fix of migration: Check if session_expire_delay column exists before adding the column - Fix: ActionView::Template::Error - Fix: "Create Merge Request" isn't always shown in event for newly pushed branch - Fix bug causing "Remove source-branch" option not to work for merge requests from the same project. - Render Note field hints consistently for "new" and "edit" forms - Remove repository graph log to fix slow cache updates after push event (Stan Hu) - Fix user autocomplete for unauthenticated users accessing public projects (Stan Hu) - Fix redirection to home page URL for unauthorized users (Daniel Gerhardt) - Fix external issue tracker hook/test for HTTPS URLs (Daniel Gerhardt) - Remove link leading to a 404 error in Deploy Keys page (Stan Hu) - Fix order of issues imported from GitHub (Hiroyuki Sato) - Bump rugments to 1.0.0beta8 to fix C prototype function highlighting (Jonathon Reinhart) - Fix Merge Request webhook to properly fire "merge" action when accepted from the web UI - Fix invalid timestamps in RSS feeds (Rowan Wookey) - Fix downloading of patches on public merge requests when user logged out (Stan Hu) - Fix Error 500 when relative submodule resolves to a namespace that has a different name from its path (Stan Hu) - Extract the longest-matching ref from a commit path when multiple matches occur (Stan Hu) - Fix JavaScript error when clicking on the comment button on a diff line that has a comment already (Stan Hu) - Return 40x error codes if branch could not be deleted in UI (Stan Hu) - Update ssl_ciphers in Nginx example to remove DHE settings. This will deny forward secrecy for Android 2.3.7, Java 6 and OpenSSL 0.9.8 - Users with guest access level can not set assignee, labels or milestones for issue and merge request - Correctly show anonymous authorized applications under Profile > Applications. - A fork can’t have a visibility level that is greater than the original project. - Faster code search in repository and wiki. Fixes search page timeout for big repositories - Add error message for SSH key linebreaks Major new functionality in 2015.2 #8b2e4143, #018f5314, #0768eff1, #99b1ce88 (Bug #79652, Bug #79651, Bug #79539, Bug #79518) Added the ability to import from existing Git Fusion repositories when creating a new project. #cd2f7c57 (Bug #79517, Bug #79216, Bug #79215) Added Git Fusion Mirroring Support. Upgraded to our new version of Shell which includes support for configuring Git Fusion Servers. GitLab 7.12 - Add SAML support as an omniauth provider - Add web hook support for note events (Stan Hu) - Add Merged tab to MR lists. Minor new functionality in 2015.2 #6fc4e897 (Bug #79758) On new installations, a gitswarm user is created automatically for use with the import feature, so you do not have to create it manually. #874466b8 (Bug #79519, Bug #79652) Added a mirror fetch worker to keep mirrored repositories up to date. GitLab 7.12 - Update browser gem to version 0.8.0 for IE11 support (Stan Hu) - Add "Remember me" checkbox to LDAP signin form. - Show warning when a comment will add 10 or more people to the discussion. - Add option to disallow users from registering any application to use GitLab as an OAuth provider - Support editing target branch of merge request (Stan Hu) - Add file attachment support in Milestone description (Stan Hu) - Set milestone on new issue when creating issue from index with milestone filter active. - Make namespace API available to all users (Stan Hu) - Add "Resend confirmation e-mail" link in profile settings (Stan Hu) - Allow to configure location of the `.gitlab_shell_secret` file. (Jakub Jirutka) - Use the user list from the target project in a merge request (Stan Hu) - Default extention for wiki pages is now .md instead of .markdown (Jeroen van Baarsen) - Add a note when an Issue or Merge Request's title changes - Group project contributions by both name and email. - User has ability to leave project - Allow to configure a URL to show after sign out - Add an option to automatically sign-in with an Omniauth provider - Better performance for web editor (switched from satellites to rugged) - When remove project - move repository and schedule it removal - Add option to automatically link omniauth and LDAP identities Bugs fixed in 2015.2 #92845475 (Bug #79179) Fixed an issue where you couldn't pass arguments to the rake tasks. #ac68c503 (Bug #79113) Fixed an issue with the gitswarm:app:check where it would always fail. GitLab 7.12 - Fix Error 500 when one user attempts to access a personal, internal snippet (Stan Hu) - Disable changing of target branch in new merge request page when a branch has already been specified (Stan Hu) - Fix hooks for web based events with external issue references (Daniel Gerhardt) - Fix timeout when rendering file with thousands of lines. - Don't notify users mentioned in code blocks or blockquotes. - Omit link to generate labels if user does not have access to create them (Stan Hu) - Disable changing of the source branch in merge request update API (Stan Hu) - Fix Markdown preview not working in Edit Milestone page (Stan Hu) - Fix Zen Mode not closing with ESC key (Stan Hu) - Fix milestone "Browse Issues" button. - Disable "New Issue" and "New Merge Request" buttons when features are disabled in project settings (Stan Hu) - Fix clone URL losing selection after a single click in Safari and Chrome (Stan Hu) - Fix git blame syntax highlighting when different commits break up lines (Stan Hu) - Fix resolving of relative links to repository files in AsciiDoc documents. (Jakub Jirutka) - Add validation to wiki page creation (only [a-zA-Z0-9/_-] are allowed) (Jeroen van Baarsen) - Fix new/empty milestones showing 100% completion value (Jonah Bishop) - You can not remove user if he/she is an only owner of group - User should be able to leave group. If not - show him proper message - Trigger create-hooks on backup restore task --------------------------------------------------------------------------- Credits Helix GitSwarm, based on the excellent GitLab Open Source Community Edition software with additional contributions from the GitSwarm Team: DJ Mountney, Elliot Wiltshire, Geoff Nicol, Jayesh Mistry, Jan Van Uytven, Elizabeth Hale, Porus Patell, Tony Kim, Ewan Edwards, Sean Ardley, Russ Tremain, Murtaza Amiji, Jason Novecosky, Michael Davies, Janet Taylor, Darrell Robins, Scott Wellard, Patrycja Tomiak, Samuel Penn, David Birch, Martin Phillips, Chris Lesemann, Doris Wong, Brad Martin, Colin Grant, Kuntal Das, Nathan Eror and Mike Bingen. END