Home / Companies / GitHub / Blog / August 2023

August 2023 Summaries

22 posts from GitHub

Filter
Month: Year:
Post Summaries Back to Blog
GitHub has enhanced its Codespaces offering by leveraging new AMD-based virtual machines, providing users with twice the RAM and improved CPU performance, allowing for significant cost reductions while maintaining or improving developer experience. Previously, developers often had to overprovision CPUs to obtain sufficient RAM, particularly for complex and memory-intensive environments, but the new machines mitigate this issue, enabling more efficient resource usage. GitHub's internal testing showed that smaller machines with fewer CPUs could handle demanding workflows with minimal impact on performance, resulting in approximately 50% cost savings without sacrificing developer satisfaction. Encouraging organizations to adopt this change, GitHub suggests testing smaller machines to find the optimal balance between cost and performance, thereby empowering developers to work effectively while controlling expenses.
Aug 31, 2023 594 words in the original blog post.
Rust, a systems programming language created by Graydon Hoare in 2006, has rapidly gained prominence and is celebrated for its focus on safety, performance, and productivity, with its popularity reflected in its top ranking as the most desired programming language in Stack Overflow's annual developer survey for eight consecutive years. Initially developed as a safer alternative to C and C++, Rust employs a statically typed system that enhances memory safety and error detection, making it particularly suitable for performance-critical backend systems, operating systems, web development, and blockchain technology. Its distinctive features, such as concurrency support, zero-cost abstractions, type inference, and the absence of garbage collection, contribute to its efficiency and reliability. Rust's ecosystem, bolstered by the Cargo package manager, a supportive community, and a growing repository of resources and frameworks, has made it a preferred choice for developers around the world. Despite its smaller user base compared to languages like Java or Python, Rust is admired for its speed, safety, and performance, and continues to evolve, with resources like GitHub Copilot offering new opportunities for learning and development.
Aug 30, 2023 1,934 words in the original blog post.
GitHub Enterprise Server 3.10 introduces new features aimed at enhancing security, compliance, and efficiency for developers and administrators, such as GitHub Projects for managing large projects, custom deployment protection rules for GitHub Actions, and improved code scanning for identifying vulnerabilities across repositories. The update also introduces fine-grained personal access tokens to minimize risk, enhanced branch protection rules for compliance, and faster backup processes. These enhancements collectively aim to streamline operations and ensure secure, efficient development practices within organizations.
Aug 29, 2023 1,075 words in the original blog post.
GitHub Projects is a versatile tool embraced by various users, including program managers and developers, for its ease of use and effectiveness in managing issues and pull requests. The platform offers numerous features to enhance project management, such as the ability to manage projects via the GitHub CLI for terminal enthusiasts, exporting project data to TSV files for integration with other platforms, and creating reusable project templates to streamline repetitive tasks. Users can automate workflows to maintain project updates, add visual customization to fields for better organization, and aggregate issues from multiple organizations for cohesive tracking. Additional functionalities include bulk editing of items, reordering fields for prioritization, and utilizing slice fields to filter views according to specific criteria, all contributing to a more efficient project management experience. The platform continues to evolve, aiming to make issue and pull request tracking as seamless as possible, while support is readily available for users seeking guidance.
Aug 28, 2023 1,649 words in the original blog post.
Bevy, a cross-platform game engine built in Rust, celebrates its third anniversary by reflecting on its community's achievements and future goals, while RayLib, a minimalist game engine, marks its tenth year with an interactive timeline of its development journey. The classic PlayStation racing game Wipeout has been restored for browser play by Dominic Szablewski, who also contributed Q1K3, an homage to Quake, for the js13kGames jam. id Software has published the source code for Quake II 2023 to support modders, and VCMI, an open-source recreation of Heroes of Might and Magic III, released several quality-of-life improvements in its latest update. Jupiter Hell introduced modding capabilities with its recent update, and the DEMoCap motion capture tool reached version 1.0, offering an affordable VR-based solution. Additionally, AMD has open-sourced its FidelityFX SDK for developers to integrate image quality effects into their projects. Upcoming game jams include js13kGames, GBJam11, Ludum Dare #54, Scream Jam, and Game Off 2023, inviting developers to showcase their skills and creativity.
Aug 25, 2023 1,115 words in the original blog post.
Dependabot's recent release introduces the ability to group version updates, streamlining the dependency management process by allowing developers to specify groups of dependencies that can be updated together in a single pull request. This enhancement addresses previous challenges where individual pull requests for each update increased workflow complexity and risked dependencies falling out of sync. With the new grouping feature, developers can organize updates by dependency type, patterns, or update type using the dependabot.yml file, which simplifies management, reduces the risk of breaking changes, and potentially eliminates the need for third-party tools and manual workarounds. Users with repository permissions can configure these groups, ultimately making it easier to stay up-to-date with version updates and prevent breaking changes.
Aug 24, 2023 736 words in the original blog post.
GitHub Codespaces offers developers a cloud-based coding environment accessible through a browser, streamlining the setup of Integrated Development Environments (IDEs) by providing pre-configured templates for various projects. This tool allows developers to create consistent coding environments without starting from scratch, enhancing productivity and focus on software creation. The author shares their experience of utilizing Codespaces to overcome setup challenges, particularly in customizing a template for Android development due to the absence of an existing one. By creating a Dockerfile and a devcontainer.json, the author successfully configured an Android development environment, simplifying the entire process of SDK installation and environment setup. This approach not only saves time but also ensures a seamless and efficient collaborative experience for anyone cloning the repository. The author encourages developers to explore and customize GitHub Codespaces templates to suit their specific project needs, highlighting the ease and efficiency that these pre-configured environments bring to development workflows.
Aug 24, 2023 1,004 words in the original blog post.
GitHub is leveraging its platform and resources to address global challenges through social impact initiatives, focusing on skilling, accessibility, environmental sustainability, and humanitarian response. With over 100 million developers, GitHub aims to create a positive societal impact by fostering an inclusive and diverse tech industry, empowering people with disabilities, and addressing climate change in partnership with Microsoft and other organizations. The company is committed to skilling 5,000 individuals in open source within three years and ensuring equal access to technology as a fundamental right. By collaborating with nonprofit organizations and the developer community, GitHub seeks to enhance its humanitarian response and drive systemic change, encouraging developers and partners to contribute to a better future through technology and AI.
Aug 23, 2023 791 words in the original blog post.
Git 2.42 introduces significant enhancements and optimizations to the Git system, incorporating contributions from over 78 developers, including 17 newcomers. Notable improvements include faster object traversals thanks to a new bitmap traversal algorithm that excels in sparse bitmap coverage situations, an efficient reference exclusion mechanism for the `for-each-ref` command, and a `gc.recentObjectsHook` configuration for preserving unreachable objects from garbage collection. Additionally, the release enhances the `diff-tree` command to support sparse indexes, refines `git rev-list` to accommodate complex modifiers in `--stdin` mode, and addresses issues with tag conflicts and tag message retention. These updates collectively aim to improve performance, streamline processes, and provide more robust data handling capabilities within Git repositories.
Aug 21, 2023 3,113 words in the original blog post.
X.509 certificates have gained prominence in zero-trust networks for client authentication, particularly through mutual TLS (mTLS), which offers benefits over traditional methods like passwords or tokens but introduces complexity. This complexity can manifest in vulnerabilities such as user impersonation, privilege escalation, and information leakages, often due to improper implementation. The text explores specific vulnerabilities found in popular open-source identity servers, such as Keycloak and Apereo CAS, and demonstrates how these can be exploited, for example, through improper certificate validation or certificate revocation checks. It underscores the importance of understanding the nuances of mTLS, including certificate chain validation, the potential for LDAP and SQL injections through certificate stores, and the risk of SSRF and even remote code execution (RCE) if revocation checks are improperly executed. It highlights that these vulnerabilities can be identified and resolved by adhering to best practices in certificate handling, such as ensuring that only the first certificate in a chain is verified and carefully managing certificate store configurations.
Aug 17, 2023 3,163 words in the original blog post.
GitHub Universe 2023 is set to be an engaging event for developers and enterprises, focusing on enhancing productivity through AI, developer-centric security, and improved developer experience (DevEx). Scheduled for November 8-9 at the Yerba Buena Center for the Arts in San Francisco, the event promises a range of new content formats, interactive sessions, and more than 100 industry speakers. Attendees can choose from various stages, including the Main Stage and SF MoMA theater, and participate in workshops and certification exams for GitHub tools. Networking opportunities abound with the expanded campus and partners' presence, while virtual attendees can access live content and recordings. The event also features a lively atmosphere with food, beverages, and GitHub merchandise available, aiming to create a comprehensive and enjoyable professional development experience.
Aug 15, 2023 853 words in the original blog post.
GitHub Security emphasizes the importance of vigilance against common attack patterns targeting GitHub Actions, particularly those involving compromised personal access tokens (PATs), which can lead to the insertion of malicious workflows or JavaScript files in repositories. These attacks often involve obfuscation techniques, such as using misleading commit usernames, to gain the trust of users. Threats arise not only from stolen tokens but also from compromised accounts or sessions, often due to malware like RedLine Stealer. To mitigate risks, it is advised that repository owners diligently review code changes, especially those involving Actions workflows and JavaScript files, and take preventative measures such as rotating compromised repository secrets, employing security hardening for GitHub Actions, and using environments for deployment. For further protection, users should secure their accounts by reviewing access tokens, changing passwords, resetting two-factor recovery codes, and employing the integrity attribute for JavaScript on websites. GitHub remains committed to disrupting compromised account activities and encourages users to maintain the security of their credentials and remain alert to any suspicious changes in their repositories.
Aug 15, 2023 478 words in the original blog post.
The July Release Radar highlights significant updates in open-source projects across various domains, from natural language processing and audio visualization to video creation and virtual machine management. Octokit.js 3.0, GitHub's SDK, now supports Browsers, Node.js, and Deno but drops support for older Node.js versions. Wavesurfer.js 7.0 introduces a TypeScript rewrite for better performance and new plugins, while Spark NLP 5.0 from John Snow Labs enhances AI capabilities with updates like ONNX Runtime support. Remotion 4.0, used for creating videos with React, now includes a new studio and is powered by Rust. Whisky 1.0 acts as a wine wrapper for macOS to run Windows games, and QrcodeReader 5.0 improves QR code detection in Vue.js. Prettier 3.0 continues to enforce code style consistency with expanded support, and I Hate Money 6.0 simplifies shared budget management with Python 3.11 support. Flux 2.0, a tool for Kubernetes, integrates with Prometheus and other Kubernetes components, and KubeVirt 1.0 extends Kubernetes for VM management. The Release Radar emphasizes the importance of community contributions and encourages developers to submit their projects for future features.
Aug 15, 2023 1,240 words in the original blog post.
GitHub's Security Bug Bounty Program celebrated a record-breaking ninth year in 2022, achieving significant milestones, including surpassing $3 million in total payments and hosting a successful live hacking event, H1-512, with HackerOne. The event in Austin featured 45 international participants who focused on uncovering vulnerabilities in GitHub products such as Copilot and Codespaces, resulting in 182 reports and $696,000 in rewards, with a portion donated to charities matched by GitHub. The program saw a 21% increase in contributors and a 58% rise in first-time reports, alongside the launch of a swag store offering non-monetary incentives. Limited disclosure of CVE-awarded reports was introduced to enhance transparency, while researcher spotlights highlighted individual contributions during Cybersecurity Awareness Month. As it approaches its tenth anniversary, GitHub plans to expand transparency and community engagement, emphasizing the crucial role of security researchers in maintaining platform safety.
Aug 14, 2023 953 words in the original blog post.
GitHub Actions, a popular automation platform, has been identified as a target for code injection vulnerabilities, particularly within open-source projects hosted on GitHub. Research conducted by teams from Purdue University and North Carolina State University, presented at the Usenix Security Conference 2023, uncovered several such vulnerabilities in GitHub Actions workflows. The researchers collaborated with the GitHub Security Lab to verify these vulnerabilities and offer guidance on reporting them. A key vulnerability involves the misuse of GitHub Actions' expression evaluation, which can lead to command injection if user-controlled inputs are not properly handled. To mitigate these risks, it is recommended to use intermediate environment variables for untrusted inputs, enable code scanning for workflows, and adhere to the principle of least privilege by adjusting permission settings for workflow tokens. Additionally, enabling Private Vulnerability Reporting (PVR) facilitates secure communication between security researchers and project maintainers. Despite GitHub's efforts to improve security, maintaining vigilance in workflow security practices is crucial to prevent exploitation.
Aug 09, 2023 1,373 words in the original blog post.
GitHub has expanded its push protection features to enhance security and prevent secret leaks in public repositories. Initially available for free public repositories, push protection now includes user settings and organizational metrics to give individuals and organizations greater control over their code security. Users can enable push protection in their personal settings, ensuring all code committed to public repositories is safeguarded, while organizations can access insights into secret interception and bypass trends, helping them understand and mitigate potential security threats. These updates aim to reduce security incidents and improve productivity by preventing secrets from being pushed to public repositories, with features starting as opt-in during the public beta phase and eventually becoming default for all GitHub Free users.
Aug 09, 2023 540 words in the original blog post.
In July, GitHub experienced a degraded performance incident on the 21st, due to a partial power outage at one of its redundant data centers, lasting 59 minutes. The outage began at 13:07 UTC, and GitHub updated the status of six services to yellow by 13:12 UTC, with most customer impact occurring in the first ten minutes as requests were rerouted. Although the initial disruption was quickly managed, the status remained at yellow until full capacity was restored to ensure caution. In response, GitHub is reviewing power feeds with datacenter partners and identifying improvements to enhance recovery time and traffic failover efficiency. Real-time updates are available on their status page, and further details can be found on the GitHub Engineering Blog.
Aug 09, 2023 188 words in the original blog post.
GitHub has been exploring ways to integrate AI into developer workflows, emphasizing the importance of developer experience (DevEx) when designing AI-driven tools. With their work on GitHub Copilot, they have discovered key insights into building AI products, such as leveraging natural language for creative coding, identifying and addressing developer pain points, and designing for imperfection given the limitations of current AI models. The development process involves collecting meaningful developer feedback, designing for accessibility, performance, and extensibility, and ensuring tools have revision workflows to improve both developer skills and AI models. The article also highlights the importance of recognizing biases during research and the need for tools to be customizable to suit individual developer needs. These experiences underscore that innovation in AI tool development is an iterative process requiring small, consistent steps forward.
Aug 08, 2023 2,988 words in the original blog post.
The text discusses the importance of making a GitHub repository collaboration-ready by drawing parallels between software projects and caring for pets, emphasizing the role of community contributions in a project's success. It outlines the need for proper repository settings, such as visibility and branch protection, and highlights essential files like README.md, LICENSE.md, CONTRIBUTING.md, CODEOWNERS, and CODE_OF_CONDUCT.md to guide collaborators. Automation tools like GitHub Actions can streamline processes by running tests and checks, while security measures are crucial for safeguarding code and data. Advanced options, such as issue templates and GitHub Codespaces, further enhance collaboration by providing a structured environment for contributors. The text underscores the maintainer's role in fostering a responsive and organized community, suggesting the use of GitHub Projects for management and promoting the repository to attract more users and contributors.
Aug 04, 2023 2,918 words in the original blog post.
GitHub has introduced a private beta feature for GitHub Copilot, which allows developers to see when code suggestions match public code on GitHub, offering insights into where similar code appears and under what licenses. This update aims to enhance decision-making by providing context for code suggestions, particularly in scenarios with minimal surrounding code. The feature includes a filter that checks code suggestions against an index of public code, displaying matches and repository information directly in the editor. While matches occur in less than one percent of Copilot suggestions, they are more common in nearly empty files due to the lack of context. The tool also addresses the complexities of code attribution, given that matching code can appear in numerous repositories under different licenses. By offering visibility into code origins, developers can attribute code properly, learn from others, and potentially take dependencies on open-source libraries, fostering a more informed and collaborative development environment.
Aug 03, 2023 735 words in the original blog post.
GitHub Enterprise users often face challenges in structuring organizations and teams to maximize collaboration and align with their company's culture, as an effective structure is crucial for leveraging DevSecOps and innersourcing principles. While innersourcing promotes open collaboration by adopting open-source community values within an enterprise, enterprises must balance this with access control, intellectual property protection, and regulatory compliance. Organizations in GitHub serve as a mechanism for grouping resources and setting policies and controls, and teams provide role-based access and facilitate collaboration. The article suggests minimizing the number of organizations to reduce administrative overhead and avoid silos while ensuring flexibility to protect resources when necessary. It emphasizes the importance of focusing on shared responsibilities and product ownership rather than existing micro-structures, and highlights that scaling out is generally easier than scaling in. The guidelines provided aim to help enterprises find a balance between maximizing collaboration and adhering to necessary controls, ultimately fostering a culture of productivity and innovation.
Aug 02, 2023 3,364 words in the original blog post.
GitHub's developer experience engineering team has designed a comprehensive system called the "paved path" to enhance the efficiency and effectiveness of its software engineering processes. This system is built on Kubernetes and includes a suite of automated tools and applications that streamline the creation, deployment, scaling, debugging, and operation of software. By centralizing capacity planning and configuration management, GitHub can efficiently manage a wide range of services while maintaining security and compliance. The onboarding process for new services is simplified through ChatOps commands and GitHub Apps, which automate the generation of necessary configurations and deployment files. Security is reinforced through practices such as two-person reviews, automated security scans, and centralized secret management. The entire deployment process is streamlined, allowing engineers to focus on delivering value to users with minimal infrastructure concerns. GitHub encourages others to explore its features and share their experiences on platforms like Twitter.
Aug 02, 2023 1,315 words in the original blog post.