Support new M1 ARM-based Macs
M1 based macs compile software stack 2x as fast (according to customer). More apps & companies are going to start running on M1 too
Intellij CCI Plugin
Create the equivalent of the vs code extension but for the intellij platform https://marketplace.visualstudio.com/items?itemName=circleci.circleci
Provide option to build after prospective merge to master
It would be nice to have the option to enable the ability to build after a merge to the master/main branch See this conversation for additional details: https://discuss.circleci.com/t/show-test-results-for-prospective-merge-of-a-github-pr/1662
Tags/Custom Fields for Projects
Suggestion to add a tag or custom field to projects in CircleCI so that we can group projects by chargeback budget and improve cost/consumption reporting.
Auto-cancel redundant builds for specific branches
For our workflow, there are other branches in addition to the default branch that we would like to disable auto-cancel redundant builds for. CCI-I-1584
Allow granular usage controls and logs to see what has changed
It would be helpful to set storage usage/retention on a per project or even per workflow level. Additionally, having the ability to see what user and when these usage settings are changed. This would be beneficial for large organizations as there can be many admins between different teams with no easy way to differentiate who or what team is changing settings. If storage retention periods need to be kept high for a single project, any other project could now attribute to increased storage costs as the retention period must be kept high, or introduce logic to clear caches to only certain projects.
Limit SSH Access To Admins
Enable a setting to restrict the "Rebuild with SSH" action to only administrators (role on Github Team) CCI-I-823
XUnit test report schema support
Various flavors of junit xml are supported today (maven/gradle/etc) but one very common schema can not be imported by circle. https://github.com/jenkinsci/xunit-plugin/blob/master/src/main/resources/org/jenkinsci/plugins/xunit/types/model/xsd/junit-10.xsd Currently circleci only handles a subset of this schema and inconsistently imports test results when it encounters elements it isn't expecting. Archiving the following test results * /home/circleci/test-results/a4fa6610-e512-40fa-8f8c-050be7289598.xml Failed uploading test results Error File: home/circleci/test-results/a4fa6610-e512-40fa-8f8c-050be7289598.xml had the following problems: * theNameOfSomeTest, invalid testcase element: rerunFailure * invalid top level element: rerunFailure * invalid top level element: rerunFailure * invalid top level element: rerunFailure * invalid top level end element: testcase * theNameOfSomeOtherTest, invalid testcase element: rerunFailure * invalid top level element: rerunFailure (there were a further 15 problems. Marathon for example outputs junit xml in this xunit style schema. https://marathonlabs.github.io/marathon/ It looks like the maven surefire plugin which CircleCi claims to support in the "Collecting test data" documentation will use similar xml outputs when necessary. surefire-test-report-3.0.xsd maven-surefire-plugin: rerun-failing-tests Gradle appears to use a slight variation of the surefire format when retries are enabled as well. They give a basic explanation to it in the docblocks of the reporter implementation code.
Allow branch whitelist to override “Only build pull requests”
This is mostly copied from a thread in the Community Forum here - https://discuss.circleci.com/t/allow-branch-whitelist-to-override-only-build-pull-requests/6392 The goal is to be able to have Circle automatically build all commits to the default branch as well as other specially named branches without having to build non-PR branches. This is very useful for those of us who have expensive steps in our build process (like tests that run on external servers, or those using the mac OS builds who want to save minutes). Minimum viable here would be to allow a list of branch names. Better would be to allow a list of branch names and/or regexes to specify branches. We have a work-around that we developed locally by opening up fake PRs from our release branches into master as part of our process. But it's manual, error prone, and inelegant. Supporting a whitelist would be much nicer. CCI-I-215