Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

dealer

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

dealer

Dealer -- SCM (Git, Mercurial) watcher

  • 2.1.0
  • PyPI
  • Socket score

Maintainers
1

Home-page: http://github.com/klen/dealer Author: Kirill Klenov horneds@gmail.com Author-email: horneds@gmail.com License: BSD Description: |logo| Dealer #############

    .. _description:
    
    Dealer — SCM_ revision helper in your projects. Just add SCM_ revision to
    your static paths and get automatic control at client browser caches:
    
    Somewhere in templates: ::
        
        <script src='/main.js?{{ request.revision }}'
    
    On clientside: ::
    
        <script src='/main.js?34jhfd45hd8'
    
    Supported Git_, Mercurial_ and simple revision parse by file.
    
    .. note:: You should install Mercurial_ for hg support.
    
    .. note:: For Django<2 please use Dealer<3
    
    
    .. _badges:
    
    .. image:: http://img.shields.io/travis/klen/dealer.svg?style=flat-square
        :target: http://travis-ci.org/klen/dealer
        :alt: Build Status
    
    .. image:: http://img.shields.io/coveralls/klen/dealer.svg?style=flat-square
        :target: https://coveralls.io/r/klen/dealer
        :alt: Coverals
    
    .. image:: http://img.shields.io/pypi/v/dealer.svg?style=flat-square
        :target: https://pypi.python.org/pypi/dealer
        :alt: Version
    
    .. image:: http://img.shields.io/pypi/dm/dealer.svg?style=flat-square
        :target: https://pypi.python.org/pypi/dealer
        :alt: Downloads
    
    .. image:: http://img.shields.io/gratipay/klen.svg?style=flat-square
        :target: https://www.gratipay.com/klen/
        :alt: Donate
    
    
    .. _contents:
    
    .. contents::
    
    
    .. _requirements:
    
    Requirements
    =============
    
    - python 2.7, 3.5+
    
    .. note:: For Django<2 please use Dealer<3
    
    
    .. _installation:
    
    Installation
    =============
    
    **Dealer** should be installed using pip: ::
    
        pip install dealer
    
    
    .. _usage:
    
    Usage
    =====
    
    Basic usage
    -----------
    ::
    
        from dealer.git import git
    
        print git.revision
    
        print git.tag
    
    ::
    
        # Auto parse repository type
        from dealer.auto import auto
        print auto.revision
    
        print auto.tag
    
    
    Manually create backend
    ----------------------
    
    **path** — path to SCM_ repository (current dir by default)
    ::
    
        from dealer.mercurial import Backend
    
        hg = Backend('/path/to/hg/repo')
    
    
    Django support
    --------------
    
    Settings
    ^^^^^^^^
    
    **DEALER_TYPE** — Type of SCM_ repository ('auto', 'git', 'mercurial', 'simple', 'env', 'null'). By default 'auto';
    
    **DEALER_PATH** — Path to SCM_. By default current dir;
    
    **DEALER_SILENT** — Disable log warnings;
    
    **DEALER_BACKENDS** — Backends for auto search by default ('git', 'mercurial', 'simple', 'env', 'null');
    
    
    Context-processor
    ^^^^^^^^^^^^^^^^^
    
    Append to your context processors: ::
    
        ...
        context_processors = ['dealer.contrib.django.context_processor']
    
    And use the *REVISION* and *TAG* variables in your templates: ::
    
        <link href="/test.css?{{ REVISION }}" rel="stylesheet" type="text/css" media="screen" />
        <script src="/test.js?{{ REVISION }}"></script>
    
    Middleware
    ^^^^^^^^^^
        
    Append to your settings: ::
    
        MIDDLEWARE = ['dealer.contrib.django.Middleware']
    
    And use in your views: ::
    
        def view(request):
            return request.revision
    
    Or in your templates by `request.revision` var.
    
    
    Flask support
    -------------
    
    Settings
    ^^^^^^^^
    
    *DEALER_TYPE* — Type of SCM_ repository ('auto', 'git', 'mercurial', 'simple', 'env', 'null'). By default 'auto'
    *DEALER_PARAMS* — Params for backend
    
    Usage
    ^^^^^
    
    In views::
    
            from flask import Flask, g
            from dealer.contrib.flask import Dealer
    
            app = Flask('test')
            Dealer(app)
            assert app.revision
    
            @app.route('/')
            def usage_in_view():
                return g.revision
    
    
    In templates: ::
    
        <link href="/test.css?{{ REVISION }}" rel="stylesheet" type="text/css" media="screen" />
    
    Pyramid support
    ---------------
    
    ::
    
        config.include('dealer.contrib.pyramid')
    
    ::
    
        def myview(request):
            revision = request.registry.dealer.revision
            tag = request.registry.dealer.tag
    
    In templates
    
    ::
    
        Revision: {{DEALER_REVISION}}
        Tag: {{DEALER_TAG}}
    
    
    Heroku support
    -------------
    
    Settings
    ^^^^^^^^
    
    *DEALER_TYPE* = 'env'
    *DEALER_PARAMS*:
        *revision_env_keyname* - Variable name for revision (default: DEALER_REVISION)
    	*tag_env_keyname* - Variable name for tag (default: DEALER_TAG)
    
    Usage
    ^^^^^
    
    Setup your revision and tag value in envirement variables.
    For example in Heroku.com:
    ::
        heroku config:set DEALER_REVISION='3ffb6b6'
        heroku config:set DEALER_TAG=v1_1
    
    After that use dealer as described above.
     
    
    .. _bagtracker:
    
    Bug tracker
    ===========
    
    If you have any suggestions, bug reports or
    annoyances please report them to the issue tracker
    at https://github.com/klen/Dealer/issues
    
    
    .. _contributing:
    
    Contributing
    ============
    
    Development of dealer happens at github: https://github.com/klen/dealer
    
    
    .. _contributors:
    
    Contributors
    =============
    
    * klen_ (Kirill Klenov)
    
    
    .. _license:
    
    License
    =======
    
    Licensed under a `BSD license`_.
    
    
    .. _links:
    
    .. _BSD license: http://www.linfo.org/bsdlicense.html
    .. _klen: http://klen.github.com/
    .. _SCM: http://en.wikipedia.org/wiki/Source_Control_Management
    .. _Git: http://en.wikipedia.org/wiki/Git_(oftware)
    .. _Mercurial: http://en.wikipedia.org/wiki/Mercurial
    .. |logo| image:: https://raw.github.com/klen/dealer/develop/docs/_static/logo.png
                      :width: 100
    

Keywords: mercurial,git,static,revision,django,flask Platform: Any Classifier: Development Status :: 4 - Beta Classifier: Intended Audience :: Developers Classifier: Intended Audience :: System Administrators Classifier: Natural Language :: Russian Classifier: Natural Language :: English Classifier: License :: OSI Approved :: BSD License Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 3.5 Classifier: Environment :: Console

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc