Files
lib-privatebin/CHANGELOG.md

5.5 KiB

v0.1.8.4 (2025-08-29)

Breaking Changes

  • Binary Renaming: Renamed all binaries from privatebinapi.* to libprivatebin.*
    • privatebinapi.dlllibprivatebin.dll
    • privatebinapi.liblibprivatebin.lib
    • privatebinapi.explibprivatebin.exp
  • Header Renaming: Renamed main header file from privatebinapi.h to libprivatebin.h
  • Source Renaming: Renamed main source file from privatebinapi.cpp to libprivatebin.cpp

Project Restructuring

  • Project Name: Changed from PrivateBinAPI to LibPrivateBin
  • Target Names: Updated all CMake targets to use libprivatebin naming convention
  • Include Paths: Updated all include statements throughout the codebase
  • Build Scripts: Updated all build and release scripts to reference new binary names

Technical Improvements

  • Consistent Naming: Unified naming convention across all project components
  • Build System: Updated CMakeLists.txt files in main project, examples, and tests
  • Script Updates: All PowerShell scripts updated to handle new binary names
  • Documentation: Updated README.md examples with new include paths

Compatibility Notes

  • API Compatibility: No functional changes to the API - only naming changes
  • Source Code: Existing code using the old names will need to be updated
  • Build Process: Clean build required after renaming changes

v0.1.7.4 (2025-08-29)

New Features

  • Automated Release System: Complete PowerShell script for automated releases
  • LLVM Code Coverage: Integrated LLVM coverage reporting with clang-cl builds
  • Intelligent Tag Incrementation: Automatic detection of next available version tag
  • Comprehensive Testing: Integration tests against live PrivateBin server
  • Build Artifact Collection: Automated collection and upload of build artifacts

Technical Improvements

  • Release Automation: Full CI/CD pipeline with Gitea API integration
  • Coverage Reports: HTML coverage reports generated and packaged as artifacts
  • Remote Detection: Smart Git remote detection (origin > upstream > first available)
  • Error Handling: Robust error handling and validation throughout the process
  • PowerShell Scripts: Clean, maintainable PowerShell automation scripts

Build System

  • CMake Integration: Enhanced CMakeLists.txt with LLVM coverage support
  • Cross-Platform: Improved Windows and Linux build compatibility
  • Dependency Management: Better vcpkg and system package integration
  • Test Framework: Comprehensive CTest integration with coverage targets

Documentation

  • Release Process: Complete documentation of automated release workflow
  • Build Instructions: Platform-specific build and test instructions
  • API Examples: Enhanced examples for all supported text formats
  • Testing Guide: Integration testing setup and execution guide

v0.1.1.5 (2025-08-28)

New Features

  • Enhanced Text Format Support: Added support for plaintext, syntax highlighting, and markdown formats
  • Comprehensive Format Testing: Examples and integration tests now cover all supported formats
  • Format-Specific Examples: Code examples for each text format type

Technical Improvements

  • API Documentation: Enhanced documentation with format-specific examples
  • Test Coverage: Improved test coverage for all supported text formats
  • Format Validation: Better handling of format parameters in the API

Compatibility

  • PrivateBin v1.3+: Full compatibility with current API version
  • Backward Compatible: Existing functionality remains unchanged

v0.1.1.4 (2025-08-28)

  • NEW: Automated release creation script (scripts/create_release.ps1)
  • NEW: Build scripts moved to scripts/ directory for better organization
  • IMPROVED: Enhanced build documentation with platform-specific instructions
  • IMPROVED: Better project structure and organization

v0.1.1.3 (2025-08-28)

New Features

  • File Upload Functionality: New upload_file() function added
  • Binary Files: Support for uploading arbitrary file types
  • Enhanced Security: Same end-to-end encryption as text pastes
  • File Upload Example: New example program file_upload_example demonstrates the functionality

Technical Improvements

  • File Processing: Binary files are correctly read and processed
  • Size Limitation: Maximum file size limited to 100MB
  • Compression: Automatic zlib compression before encryption
  • Metadata: Files are stored as encrypted binary pastes

Documentation

  • FILE_UPLOAD_README.md: Detailed documentation of file upload functionality
  • README.md: Updated with file upload information and examples
  • English Localization: All documentation and examples in English

Compatibility

  • PrivateBin v1.3+: Full compatibility with current API version
  • Cross-Platform: Support for Windows and Linux
  • Backward Compatible: Existing text paste functionality remains unchanged

v0.1.1.2 (2024-XX-XX)

Bugfixes

  • Improved error handling for network issues
  • Fixed memory leaks in JSON processing

Improvements

  • Updated dependencies (Crypto++, nlohmann/json)
  • Better Windows compatibility

v0.1.1.1 (2024-XX-XX)

Features

  • First stable version of PrivateBin API Library
  • Support for PrivateBin v1.3 JSON-API
  • End-to-end encryption with AES-256-GCM
  • Cross-platform support (Windows/Linux)

API Functions

  • create_paste() - Create encrypted text pastes
  • get_paste() - Retrieve and decrypt pastes
  • delete_paste() - Delete pastes with deletion tokens
  • free_string() - Memory management