Fetching the latest programs, projects, and workspace data.
Find open source projects actively accepting contributors. Search repositories, filter by program milestones, difficulty tags, or tech stack.
Use our Orbit AI Matcher to find out! Get instant matching scores based on your developer skills, preferred frameworks, and contribution experience.
Convert your selected open-source project into a winning GSoC, LFX, or Outreachy application using Proposal Studio.
APPLICATIONS ARE CLOSED. Please apply again in the Fall! We will post more information when it is available. Linux is the most widely used operating system in the world. The core software component of the Linux operating system is the kernel. Some of its roles include managing hardware interactions, virtualizing system resources, and enforcing security constraints. In effect, the Linux kernel powers almost all of the world's top supercomputers, android phones, and an innumerable variety of other computers. This course will introduce students to the Linux kernel development by focusing on device driver development, particularly character devices and the /proc and/sys interfaces. This will give students hands-on experience working with internal Linux kernel APIs for hardware access, memory management, DMA and interrupts, among other, and provide an overview of some of the core features and components of the kernel, such as scheduling, system calls, the boot process, and hardware description trees. Gaining an understand of the inner workings of the operating system and how to make changes to it will give students an invaluable perspective on how computers work behind the scenes, which will reveal a new layer of understanding to apply to any future software engineering practice. This is a new format of the following courses we created: https://www.uml.edu/catalog/courses/COMP/3085 or https://www.uml.edu/catalog/courses/COMP/5170
Formats like GIF are widely used, however, OpenCV provides a limited support for this format. Noticed that FFmpeg is a dependency of OpenCV and it can support GIF encode and decode, one of my idea is to support GIF encode and decode for imgcodecs with FFmpeg. Also, for animation formats like GIF, imwrite couldn’t provide parameters like frame duration and loop count. Thus, I would like to support writing animation for mats with frame duration and loop count by providing new apis or reload imwrite.
<p>this project has two main objectives, improve marK code base to support others types of annotation and add support to text annotation</p>
<p>This proposal aims to describe a set of transformations to implement for the spirv-fuzz tool. It provides a high-level overview of the transformations as well as specific implementation details that might be important to mention.</p>
Jaeger has always supported Elasticsearch (ES) as an official backend. Unfortunately, the Go driver we are using, `olivere/elastic`, does not support ESv8 and not planning to release any new versions. Despite the licensing changes, Elasticsearch remains a popular choice and v8 support question often comes up. In this project we want to add official support for ESv8. However, we also want to take this opportunity to do a better alignment with the OpenTelemetry Collector, which already has an [ESv8 exporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/elasticsearchexporter), perhaps we can use it directly and minimize the amount of code. - Expected Outcomes: - Use OTEL ESv8 exporter from Jaeger, if possible, otherwise build internal implementation - Stretch goal: use ES data as the source for Jaeger SPM views
<p>Inkscape has basic support for CSS style sheet. Currently it can read and parse internal sheet. Aim of project is to extend its support by adding functionality and making it all-in-one solution for users.</p>
<p>This proposal aims to add support for directly differentiating functors and lambda expressions and increase clad coverage and overcome its shortcomings by fixing various existing issues and adding support for various currently unsupported syntax.</p>
The Rust programming language supports Unicode in identifiers, similarly to other modern programming languages such as Go, C++, and JavaScript. The main goals of this project are supporting Unicode identifiers in GCC Rust and improving their location information for better error messages.
<p>Proposal is based on two project ideas:</p> <ol> <li>Notification engine for sending custom emails choosing re-usable templates with variables support</li> <li>Rich-text support</li> </ol>
<p>JPF does not yet fully implement the features of Java 11 - support extends only to Java 8 - including features as simple as string concatenation. This is an especially difficult situation given that Oracle has initiated an “end of public updates process” for Java 8 (although it is interesting to note that Oracle will continue “premier support” for Java 8). It is likely that many Java users will migrate to higher versions, and unless JPF fully supports the new features of a higher version of Java it is unlikely to be used and adopted.</p> <p>A crucial feature of Java 11 that needs to be urgently implemented is support for bootstrap methods that are generated and resolved at load time. These are used in Java for things as varied as string concatenation and lambda expressions. It is likely that more features of Java will take advantage of bootstrap methods as we go forward, so it is desirable to have a complete bootstrap method resolution engine in the JPF runtime that complies with the Java Virtual Machine 11 (JVM 11) specification for JPF to remain current.</p>
For GHC 9.2.x to achieve more widespread adoption, tooling will need to support its best features. For years users have been frustrated by Haskell's conspicuous lack of support for namespacing features common in other languages. Haskell provides a limited form of namespacing with qualified imports, but using it to namespace field selectors tends to require hacky file structures. Fortunately, Haskell now provides `DuplicateRecordFields`, and GHC 9.2 introduced the `OverloadedRecordDot` language extension. These together provide a cleaner and more ergonomic interface for working with record types, a step towards better namespace support in Haskell. HLS already supports record dot-syntax to a small extent. For example, in the line `y = x.a`, type information is available when hovering over `y` or `x`. To unlock the full potential of this syntax though, HLS users should be able to "dot into" the record to see its fields, enabling IDE-driven API exploration. Additionally, type information for the `.a` part should be available to the user on hover. These are the main features I propose to add to HLS for this project.
<p>In this project we will look at loop transformation heuristics, such as the unroll factor.</p>
<p>In GSoC 2020, The TFLite team and I released the <a href="https://docs.google.com/document/d/1zm9Ifiql4aFKTXMdEe0FXlEU83g6l5jWCO8a3BtHeI0/edit?usp=sharing" target="_blank">TensorFlow Lite Support Suite</a> consisting of TFLite Flutter Plugin, TFLite Flutter Helper Library, and a couple of example apps with tutorials. The project is receiving excellent comments from the community, as they are finally able to build performant Flutter ML apps with models and TF versions of their choice. The recent release of Flutter 2.0 should attract even more users. This year, we plan to extend the TFLite Flutter Support Suite based on the users' feedback and latest developments in the TensorFlow Lite ecosystem.</p> <p><a href="https://github.com/am15h/tflite_flutter_plugin" target="_blank">TFLite Flutter Plugin</a> will be improved for better handling errors and supporting more platforms along with Android and iOS.</p> <p><a href="https://github.com/am15h/tflite_flutter_helper" target="_blank">TFLite Flutter Helper</a> will be updated to match developments in its Java counterpart.</p> <p><strong>Flutter Task Library</strong> based on the TFLite Android Task Library to provide out-of-box support for popular use cases like detection, question, and answer, etc. The Flutter Library will leverage the performance and capabilities of the C++ Task APIs through dart ffi bindings. Example apps to demonstrate the usage of Task Library.</p>
Currently KubeArmor depends on kernel headers to use various kernel structures. This creates difficulty in having portability. Linux Kernel versions with BTF (BPF Type Format) information available allows us to write portable BPF CO-RE (or Compile Once - Run Everywhere) applications that can run on multiple kernel versions and configurations without any modification or runtime compilation on the target machine. But there is a restriction that CO-RE requires to have the BTF information of the target kernel, which is provided by the kernel itself when it's compiled with CONFIG_DEBUG_INFO_BTF=y. This option was introduced in Linux 5.2. For kernels < 5.2 we can use BTFGen to ship BTF information with KubeArmor code or use pahole to generate BTF information from the vmlinux image (with DWARF information) at runtime. The project aims to make KubeArmor truly portable across all kernel versions by reducing host environment dependencies.
<p>Due to its need to programmatically handle SPDX Documents, SPDX has developed Python tools that parse and write SPDX Documents in RDF and TAG/VALUE formats. This project consists in extending the format support to include JSON, XML and YAML formats. Additionally, as an extra part of the project, support for parsing SPDX license expressions will be implemented.</p>
Currently, Mathesar only supports creating a new table when a CSV or TSV file is imported. This project aims to enhance the capability of Mathesar’s APIs and database to support importing CSV data into an existing table for a seamless user experience. The above will be achieved by using a mix of already implemented APIs with some tweaks and implementation of some additional API endpoints along with some methods to accompany them.
NURBS is a basic function for BRL-CAD and BRL-CAD has support for some functions based on brep using openNURBS library. Beyond basic operations such as rotation and translation, the BRL-CAD core has no ability to edit them. This project would implement support for creating and editing geometry and topology in the BRL-CAD core, thus creating the prerequisites to handle them with higher level (i.e. GUI) tools.
The project aims to extend KubeArmor support and document how KubeArmor is relevant for securing Kubernetes on Edge in addition to generic Kubernetes based Application deployments - Expected Outcome: - Try KubeArmor on Different Kubernetes Platforms - Microshift, k0s - Make fixes to deployments to make them work if needed - Document Usecases on these platforms - Document Usecases at a broader level for EDGE and Container Security - Produce Blogs about extended support and additional usecases
<h3>Project</h3> <p>Rewrite core node cloud architecture and add Azure Provider Support.</p> <h3>Previous contributions</h3> <p>Fixed issues and added new features to NodeCloud, Oppia and FOSSASIA</p> <h3>Outcome of this Project</h3> <p>After new architecture implementation we will be at liberty to add any cloud provider support without changing the core. We can seamlessly add new cloud provider as dependencies to core.</p>
Vespucci, the Android editor for OpenStreetMap, uses the JOSM-compatible presets for tagging. Vespucci, however, has evolved to support far greater functionalities than those supported in JOSM. These functionalities include attributes like 'deprecated', which indicates a deprecated preset item, 'regions', and 'exclude_regions' for localisation, and 'value_type' to indicate the type of value, among many others. The project aims at adding these additional attributes to JOSM. Incorporating these attributes will provide a better user experience across the editors, improving the usability and functionality of JOSM.
<p>The Automatic Certificate Management Environment (ACME) protocol is a communications protocol for automating interactions between certificate authorities and their users' web servers, allowing the automated deployment of public key infrastructure at very low cost. Supporting this protocol will reduce the complexity of acquiring certificates for TLS encryption, via the "Let's encrypt" certificate authority.</p> <p>The final goal of this project is for ejabberd to fully support the ACME protocol and thus provide an easy and cheap way of acquiring security certificates.</p>
JPF currently cannot fully analyze Java 17 programs that use sealed classes and records — two features now standard in modern Java. This project completes Java 17 support in jpf-core by fixing sealed class enforcement, adding full record support (classfile parsing, metadata storage, and execution), and producing a Java 17 audit document that maps all remaining gaps for future contributors. The work targets the java-17 branch and builds on an existing contribution to the codebase.
FFmpeg already supports WHIP, allowing users to publish WebRTC streams using HTTP signaling. This project aims to extend WHIP support by adding support for more codecs, enabling multiple media streams, providing full ICE support, and other related improvements.