Skip to main content

Pluggable app for your Django projects to modify your mobile app versions using your API.

Project description

django-mobile-app-version

A Django app for managing mobile app versions through your API.

Requirements

  • Python 3.13+
  • Django 3.0+
  • Django REST Framework 3.14+

Installation

pip install django-mobile-app-version

Quick Start

  1. Add 'mobile_app_version.apps.MobileAppVersionConfig' to your INSTALLED_APPS in settings.py module:
INSTALLED_APPS = [
    ...
    'mobile_app_version.apps.MobileAppVersionConfig',
]
  1. Include the Mobile App Version URLconf in your projects urls.py like this:
path('app-versions', include('mobile_app_version')),
  1. Run migrations to create the database tables:
python manage.py migrate mobile_app_version

If you clone this app directly in your project and have changes to application models, first run:

python manage.py makemigrations mobile_app_version
python manage.py migrate mobile_app_version

Version Format

Semantic Versioning

The version field follows Semantic Versioning format: X.Y.Z

  • X (Major): Incremented for incompatible API changes
  • Y (Minor): Incremented for backwards-compatible functionality additions
  • Z (Patch): Incremented for backwards-compatible bug fixes

Valid Version Examples

1.0.0
2.5.3
10.20.30
0.1.0

Invalid Version Examples

1.0          # Missing patch version
v1.0.0       # Prefix not allowed
1.0.0-alpha  # Pre-release tags not allowed
1.0.0.1      # Too many components
01.0.0       # Leading zeros not allowed

API Usage

When creating or updating a mobile app version through the API, the version field must follow the semantic versioning format:

# Valid request
{
    "version": "1.0.0",
    "platform_type": "ANDROID",
    "link": "https://example.com/app.apk",
    "forcing_update": true
}

# Invalid request - will return validation error
{
    "version": "v1.0.0",  # Error: Version must follow semantic versioning format (X.Y.Z)
    "platform_type": "ANDROID",
    "link": "https://example.com/app.apk"
}

Error Messages

If an invalid version format is provided, you'll receive a clear error message:

{
    "version": [
        "Version must follow semantic versioning format (X.Y.Z). Each component must be a non-negative integer. Example: 1.0.0, 2.3.4"
    ]
}

Contributing

Interested in contributing? Please see our CONTRIBUTING.md for development setup instructions and guidelines.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_mobile_app_version-1.3.0.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_mobile_app_version-1.3.0-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file django_mobile_app_version-1.3.0.tar.gz.

File metadata

File hashes

Hashes for django_mobile_app_version-1.3.0.tar.gz
Algorithm Hash digest
SHA256 7f941a12a9afb8abae67401615fd374e1a62d0eb57bd9ac0287863be8e5e45f6
MD5 2f61ea2dfbc030af62a57ceba29771b1
BLAKE2b-256 abf32519ae41f49718334d5032e35ecce260ca400845b9b5b268a23e81e66b01

See more details on using hashes here.

File details

Details for the file django_mobile_app_version-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for django_mobile_app_version-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f098364e810715fc01a443e06d7b7194967bbbc319ad4ed829636f9fa5113046
MD5 73b158c34da8d34d73b4642fb260f9e0
BLAKE2b-256 c2b2bae0f9c4800d9f79570663f881b49b7764012df3082447173ef51c8452c8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page