SShortSingh.
Back to feed

miglite v0.8.0 lets Go developers embed SQL migrations directly in binaries

0
·1 views

The miglite database migration library for Go has reached v0.8.0 after four releases and 69 commits since version 0.4.0 was covered in June. The headline addition is support for embedding SQL migration files inside the compiled binary using Go's embed.FS, eliminating the need to ship a separate migrations directory alongside deployments. A new --db flag introduced in v0.5.0 allows developers to override the database name at the command line without modifying config files, making it easier to run migrations against alternate databases temporarily. Version v0.5.0 also improved the exec command to wrap multiple SQL statements in a single transaction, so a mid-run failure no longer leaves the database in a partially applied state. The command set and upgrade scripts remain unchanged, meaning existing users can upgrade without modifications.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Mixed Naming Conventions in APIs Can Cause Silent Data Bugs in Production

Inconsistent use of camelCase and snake_case across codebases — such as between a Python backend and a TypeScript frontend — can cause fields to be silently misread or written as null, with no error thrown. The bug often survives code review because each side of the codebase appears internally consistent, masking the mismatch at the boundary. The root cause is the absence of a dedicated serialization or mapping layer that enforces a single naming convention at the API boundary. Developers are advised to pick one convention per boundary layer and validate it with automated tests, such as snapshotting a real API response in CI to catch unexpected field name changes. Common pitfalls include inconsistent handling of acronyms during case conversion and filesystem case-sensitivity differences between macOS and Linux environments.

0
ProgrammingDEV Community ·

How to Fix Apple's Guideline 2.1 'Information Needed' Rejection Before It Happens

Apps built with tools like Lovable, Bolt, v0, or Replit frequently receive Apple's Guideline 2.1 'Information Needed' rejection, typically because reviewers cannot access the app past a login screen. Unlike crashes, this issue is preventable by correctly completing the App Review Information section in App Store Connect before submission. Developers are advised to provide a working demo account with no SMS or email verification, clear navigation paths to paid features and account deletion, and explanations for any hardware-dependent functionality. In-app purchase flows should also be tested end-to-end in sandbox mode, as a broken paywall triggers a separate but related rejection under Guideline 2.1(b). Keeping review notes concise — three to five lines — improves the chance that a reviewer reads them fully rather than skimming past critical details.

0
ProgrammingDEV Community ·

CERT-BUND Flags 16 Drupal Modules at Critical Risk Under CVE-2026-96357

CERT-BUND advisory WID-SEC-2026-3554, published on 23 September 2026, identifies 16 contributed Drupal modules across 19 affected version ranges under CVE-2026-96357, carrying a critical CVSS v3.1 base score of 9.8. The vulnerability is rated high risk, remotely exploitable, and impacts modules including Webform, Project Browser, REST & JSON API Authentication, and Smart Content, among others. All 36 identifiers share a common impact profile covering arbitrary code execution, privilege escalation, security bypass, data tampering, and cross-site scripting. A ZoomEye scan conducted on 25 September 2026 found over 436,000 publicly visible Drupal instances, though not all necessarily run the affected modules. Site administrators are advised to audit installed modules against the affected ranges and apply fixes detailed in Drupal security advisories sa-contrib-2026-154 through sa-contrib-2026-191, verifying the installed version after updating.

0
ProgrammingDEV Community ·

HardwareMind: AI Tool Built at Hackathon to Diagnose Hardware Failures

A hackathon team developed HardwareMind, an AI-powered system designed to help engineers investigate and diagnose hardware failures. The platform consists of three core components: a Streamlit-based user interface, a backend API, and an AI engine with memory for contextual diagnosis. One team member served as the Demo, Testing, and Documentation Engineer, responsible for structuring the live demonstration, building a testing checklist, and writing project documentation. Testing covered functional workflows, input validation, and backend integration to ensure reliability before the final presentation. Clear documentation was prioritized to help the team communicate the system's architecture, setup process, and usage during the hackathon.