17 Repos
Enforcing a specific version of a package to ensure environmental stability.
Distinct from Versioned Package Managers: Distinct from Versioned Package Managers: specifically addresses the mechanism of pinning to prevent automatic version drift.
Explore 17 awesome GitHub repositories matching development tools & productivity · Version Pinning. Refine with filters or upvote what's useful.
This project is a command line package manager and dependency management engine used for installing, updating, and removing software packages across different operating systems. It functions as a package recipe system and software repository administrator, utilizing declarative scripts to define software sources, build arguments, and installation steps. The system operates as a binary distribution platform that compiles source code into pre-compiled binaries and distributes them through remote repositories. It includes an automated version tracker that monitors upstream software releases and
Prevents specific packages from being updated automatically to ensure system stability.
This project is a Ruby-based package definition repository that functions as a cross-platform package manager and software dependency resolver for macOS and Linux. It provides a centralized system for installing, updating, and managing software through a Git-based distribution model. The system distinguishes itself through a binary package distribution network that produces pre-compiled bottles to avoid local compilation from source. It utilizes a Ruby-based domain specific language to define installation recipes and employs a distributed version control architecture to synchronize these defi
Prevents a package from being updated during global upgrade processes to ensure version stability.
Buf is a toolchain for managing the full lifecycle of Protocol Buffers schemas. It provides a set of tools for schema governance, including linting to enforce style guides, a breaking change detector to ensure backward compatibility, and a system for producing language-specific source code via local or remote plugins. The project distinguishes itself through a remote schema registry that centralizes the hosting, versioning, and distribution of Protocol Buffers modules. This registry allows for server-side enforcement of governance policies, such as blocking updates that introduce backward-inc
Enforces specific versions of generated libraries using labels or commit IDs to ensure reproducible builds.
MicroK8s is a lightweight, single-package Kubernetes distribution designed for resource-constrained environments, edge computing, and local development. It packages all Kubernetes control-plane components into a single daemon process, reducing resource overhead while maintaining full Kubernetes conformance. The project is distributed as a snap package, enabling automatic updates and strict confinement for secure deployment on Linux systems. The distribution distinguishes itself through its minimal footprint and self-contained architecture, running all Kubernetes services as one process with a
Tracks upstream Kubernetes releases and pins to any version from 1.10 onward for compatibility and testing.
Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible builds across environments. It stores project-specific copies of Go packages in a vendor directory, isolating dependencies per project to avoid version conflicts, and supports fetching packages from Git, Mercurial, Bazaar, and Subversion repositories. The tool resolves dependency versions using semantic versioning ranges and operators, and generates a lock file that records exact commit IDs for all transitive dependencies. Glide distinguishes itself with an interactive version wiz
Uses the tilde operator to lock a dependency to the latest patch within a minor version.
SD.Next is an all-in-one web interface and multi-backend inference engine for generating, editing, and processing images and videos using diffusion models. It functions as a comprehensive tool for diffusion model management and an automated image processing pipeline for bulk operations. The project is distinguished by its hardware-backend abstraction layer, which provides automatic detection and acceleration for NVIDIA CUDA, AMD ROCm, Intel OpenVINO, and DirectML. It features a headless generative API and a programmatic command interface, allowing users to trigger tasks via REST API or CLI wi
Forces specific compute and CUDA combinations via environment variables to support legacy GPU hardware.
Orval is an OpenAPI-to-TypeScript code generator that produces fully typed API clients, data-fetching hooks, mock data, validation schemas, and server handlers from OpenAPI or Swagger specifications. It reads any YAML or JSON API specification and generates TypeScript interfaces, HTTP request functions, and framework-specific integration code that ensures compile-time correctness for all API calls. The project distinguishes itself by generating production-ready data-fetching hooks for React Query, Vue Query, Svelte Query, Solid Query, Angular, and SWR, complete with automatic cache invalidati
Forces generated schemas to emit Zod 3 or Zod 4 syntax regardless of the installed package version.
zplug ist ein Plugin-Manager für die Zsh-Shell, der dazu entwickelt wurde, Community-Plugins, Themes und Befehle aus entfernten Repositories und lokalen Pfaden zu installieren und zu organisieren. Er konzentriert sich auf die Reproduzierbarkeit der Umgebung durch versionierte Konfiguration, was es ermöglicht, Plugins an spezifische Git-Branches, Tags oder Commit-Hashes zu pinnen. Das Projekt optimiert die Shell-Startgeschwindigkeit durch ein Lazy-Loading-System, das die Ausführung von Plugins verzögert, bis sie explizit benötigt werden. Um die anfängliche Umgebungseinrichtung zu beschleunigen, setzt es einen parallelen Installer ein, der mehrere Erweiterungen gleichzeitig herunterlädt. Der Manager unterstützt Multi-Source-Installation und handhabt die Abhängigkeitsauflösung von Erweiterungen, um sicherzustellen, dass erforderliche Pakete in der richtigen Reihenfolge geladen werden. Er enthält zudem Funktionen zum Herunterladen externer binärer Artefakte und deren automatische Zuordnung zum Systempfad sowie zur Ausführung benutzerdefinierter Lebenszyklus-Hooks während der Installation und Updates.
Allows pinning plugins to specific git branches, tags, or commit hashes to ensure stable and reproducible environments.
OpenStack is an open-source cloud computing platform for building and managing public and private cloud infrastructure at scale. It provides a framework for deploying, configuring, and operating cloud services, orchestrating compute, storage, and networking resources across a datacenter through a unified management layer. The platform is built on a decoupled service architecture where individual cloud services are developed and versioned independently within their own repositories. This meta-repository tracks interoperable versions of all OpenStack components as verified submodules, with each
Tracks interoperable versions across interdependent cloud services using pinned, tested commit snapshots.
Dieses Projekt ist eine umfassende Sammlung von Bildungsressourcen und strukturierten Lehrplänen für das Erlernen von künstlicher Intelligenz und Deep Learning. Es bietet einen Machine-Learning-Lehrplan, der aus Vorlesungsmaterialien und interaktiven Notebooks besteht, die sich auf die Implementierung von Modellen mit dem PyTorch-Framework konzentrieren. Das didaktische Design folgt einem Code-First-Ansatz, bei dem Studierende funktionierende Modelle implementieren, bevor sie die zugrunde liegende theoretische Mathematik studieren. Der Lehrplan wird über ausführbare Dokumente vermittelt, die Live-Code, Gleichungen und erklärende Texte kombinieren, um die Implementierung und Bereitstellung neuronaler Netze anzuleiten. Das Projekt enthält Automatisierungen für die Bereitstellung von Deep-Learning-Umgebungen auf lokalen oder Cloud-Servern. Es nutzt versionsgebundenes Dependency-Management, um sicherzustellen, dass Notebooks in verschiedenen Rechenumgebungen konsistent ausgeführt werden.
Uses version pinning of libraries to ensure notebooks execute consistently across different computing environments.
Prelude ist eine Emacs-Distribution und ein Konfigurations-Framework, das einen kuratierten Satz an Defaults und eine modulare Architektur bereitstellt. Es fungiert als Wrapper für das Paketmanagement, um stabile Versionen externer Erweiterungen zu installieren und zu pinnen, was eine konsistente und reproduzierbare Entwicklungsumgebung sicherstellt. Das Projekt zeichnet sich durch sein modulares Konfigurationssystem aus, das es Benutzern ermöglicht, Editor-Funktionen durch das Umschalten spezifischer Feature-Module über eine zentrale Konfigurationsdatei anzupassen. Es enthält zudem eine automatisierte Language-Server-Umgebung, die sprachspezifische Tools und Syntax-Parser bei Bedarf basierend auf dem bearbeiteten Dateityp installiert und konfiguriert. Die Distribution deckt breitere Funktionsbereiche ab, einschließlich Bootstrapping der Editor-Umgebung, versionsgebundenes Abhängigkeitsmanagement und die Integration geprüfter Erweiterungen für Versionskontrolle und Projektnavigation. Die Umgebung kann aktualisiert und Projektdateien direkt aus dem Editor heraus aktualisiert werden.
Locks external extensions to specific stable releases to prevent breaking changes during updates.
tfenv ist ein Terraform-Versionsmanager und Kommandozeilen-Utility, das entwickelt wurde, um mehrere Versionen des Terraform-CLI auf einem einzigen lokalen System zu installieren und zwischen ihnen zu wechseln. Es fungiert als Binär-Switcher, der konsistente Infrastructure-as-Code-Toolings über verschiedene Projekte und Teamumgebungen hinweg sicherstellt. Das Utility verwaltet aktive ausführbare Versionen über Umgebungsvariablen und lokale Konfigurationsdateien. Es unterstützt das Pinnen von Projektversionen, um spezifische Versionen für verschiedene Umgebungen oder Kundenprojekte zu sperren und Kompatibilitätsprobleme während der Zusammenarbeit zu verhindern. Das Tool bietet Utilities zum Herunterladen und Installieren spezifischer oder neuester Versionen, zum Auflisten verfügbarer Releases und zum Deinstallieren lokaler Binärdateien. Diese Operationen werden durch eine lokale Versions-Registry, checksum-verifizierte Artefakt-Downloads und symbolische Link-Umschaltung unterstützt, um die aktive ausführbare Datei im Systempfad zu aktualisieren.
Allows locking a project to a specific version in a configuration file to ensure environmental stability.
govendor ist ein Toolset für Go-Dependency-Management, das die Replikation externer Pakete in ein lokales Verzeichnis ermöglicht, um reproduzierbare Builds ohne aktiven Netzwerkzugriff sicherzustellen. Es fungiert als Dependency-Vendor-Tool und Versionsmanager, der spezifische Git-Revisionen, Tags oder Branches entfernter Pakete abruft. Das Projekt enthält einen Dependency-Auditor, um fehlende, modifizierte oder veraltete Pakete im Vergleich zu ihren Remote-Quellen zu identifizieren. Es bietet zudem ein Utility zur Lizenzextraktion, das die mit Projekt-Importpfaden und Abhängigkeiten verbundenen rechtlichen Lizenzen entdeckt und auflistet. Das System unterstützt konfigurationsgesteuerte Synchronisation und Build-Tag-bewusste Filterung, um spezifische Dateien oder Pakete basierend auf Build-Constraints auszuschließen. Es verwaltet das Mirroring von Remote- zu lokalen Quellen und verfolgt spezifische Revisionen, um konsistente Paketversionen über Umgebungen hinweg beizubehalten.
Ensures consistent package versions across environments by pinning dependencies to specific git hashes or tags.
Testcontainers for .NET ist eine Docker-Testbibliothek und ein Integrationstest-Framework, das für die Verwaltung des Lebenszyklus von kurzlebigen Containern entwickelt wurde. Es bietet High-Level-Abstraktionen als Docker-API-Wrapper zur Bereitstellung ephemerer Infrastruktur und ersetzt Mocks durch echte Datenbank-, Messaging- und Suchmaschineninstanzen, um isolierte und reproduzierbare Testumgebungen zu gewährleisten. Das Projekt zeichnet sich durch ein Builder-Konfigurations-Container-Muster und einen dynamischen Port-Binding-Mechanismus aus, der Kollisionen während der gleichzeitigen Testausführung verhindert. Es ermöglicht zuverlässige Service-zu-Service-Kommunikation via virtueller Netzwerk-Orchestrierung und Netzwerk-Aliasing und stellt die Serviceverfügbarkeit durch Polling-basierte Bereitschaftsprüfungen für HTTP-Endpunkte und TCP-Ports sicher. Die Bibliothek bietet spezialisierte Module für relationale, NoSQL- und Vektor-Datenbanken sowie Messaging-Broker und Cloud-Service-Emulatoren. Ihr Funktionsumfang erstreckt sich auf Container-Image-Konfiguration, Log-Sammlung und die Simulation von Netzwerkbedingungen zur Überprüfung der Systemresilienz. Sie unterstützt die Konnektivität zu lokalen und Remote-Docker-Runtimes durch standardisierte Umgebungsvariablen und Konfigurationsdateien.
Overrides default image tags to specific versions to ensure consistent and reproducible test environments.
Cake ist ein plattformübergreifendes Build-Automatisierungssystem und Skripting-Framework, das es Nutzern ermöglicht, Software-Build-Pipelines mittels C#-Skripten zu definieren. Es fungiert als CI/CD-Pipeline-Orchestrator und Build-Runner und bietet eine stark typisierte, domänenspezifische Sprache, um die Orchestrierung von Kompilierung, Tests und Verpackungsprozessen unter Windows, Linux und macOS zu vereinfachen. Das System stellt reproduzierbare Build-Umgebungen durch das Pinnen von Versionen der Build-Tools, Module und Abhängigkeiten sicher. Es zeichnet sich dadurch aus, dass es einen C#-Skripting-Workflow mit vollständiger IDE-Unterstützung ermöglicht, einschließlich Autocomplete, Syntax-Highlighting und direkter Task-Ausführung innerhalb von Editoren. Das Framework deckt eine breite Palette an Funktionen ab, einschließlich der Ausführung von Directed-Acyclic-Graph-Tasks, plattformübergreifender Prozessabstraktion und automatisierter Tool-Installation. Es bietet umgebungsbewusste Erkennung für verschiedene Continuous-Integration-Anbieter und Erweiterbarkeit durch eine NuGet-basierte Plugin-Architektur und Dependency Injection. Build-Skripte werden als laufzeitkompilierte Binärdateien ausgeführt oder innerhalb einer Konsolenanwendung gehostet.
Locks specific versions of build extensions to ensure consistent and reproducible environments.
Dieses Projekt ist eine Sammlung von Best Practices und kuratierten Vorlagen für den Aufbau sicherer, stabiler und produktionsreifer Docker-Images. Es bietet Standards für die OCI-Image-Optimierung und einen Leitfaden für die Implementierung branchenüblicher Konfigurationen in Container-Umgebungen. Das Repository bietet spezifische Muster für das Security-Hardening, wie etwa die Implementierung von Non-Root-Benutzerausführung mit statischen IDs, um eine Privilegieneskalation auf dem Host zu verhindern. Es bietet zudem strukturelle Vorlagen für Multi-Stage-Builds, um Build-Zeit-Abhängigkeiten von der finalen Laufzeitumgebung zu trennen. Zusätzliche Funktionen umfassen das Container-Prozessmanagement unter Verwendung leichtgewichtiger Init-Systeme, um Systemsignale zu verarbeiten und Zombie-Prozesse zu verhindern. Das Projekt enthält zudem Methoden zur Sicherstellung der Build-Reproduzierbarkeit durch versionsfixierte Basis-Images und Netzwerkkonfigurationen zur Behebung von DNS-Fehlern über ältere Linux- und macOS-Runtimes hinweg.
Locks specific base image tags to ensure consistent builds and prevent breaking changes from upstream updates.
This project is a command-line utility designed to manage development environments by installing, switching, and pinning multiple versions of programming languages, SDKs, runtimes, and database engines. It functions as a centralized controller for complex toolchains, ensuring that specific software versions are maintained consistently across different machines and project directories. The tool distinguishes itself through an interactive terminal interface that allows users to browse and select software versions visually, reducing the need to memorize complex command-line arguments. It also pr
Locks specific software versions to individual project directories to ensure environment consistency across teams.