{ "info": { "author": "Oliver Bestwalter", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "License :: OSI Approved :: MIT License", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Utilities" ], "description": "[![Project Status: Active \u2013 The project has reached a stable, usable state and is being actively developed.](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active)\n[![Build Status](https://travis-ci.org/obestwalter/i3configger.svg?branch=master)](https://travis-ci.org/obestwalter/i3configger)\n[![PyPI version](https://badge.fury.io/py/i3configger.svg)](https://pypi.org/project/i3configger/)\n[![Documentation](https://img.shields.io/badge/docs-sure!-brightgreen.svg)](http://oliver.bestwalter.de/i3configger)\n[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n\n# i3configger\n\n**Disclaimer:** this is a tool aimed at users who already know how the configuration of [i3](https://i3wm.org) works (as described in the [excellent docs](https://i3wm.org/docs/userguide.html)). `i3configger` is an independent add-on, not directly affiliated with the project and in no way necessary to use i3 productively.\n\n**NOTE** using `i3configger` will replace your existing config files (`config` and optional status bar configs), but it will move them to `.bak` if no backup exists yet, so that you can easily revert the damage if you want to go back to your old files.\n\n## Why?\n\nI wanted to be able to switch between different color themes and do things like hide the i3bar with a keyboard shortcut. `i3configger` makes this and other dynamic changes possible without changing i3wm itself.\n\n## Main characteristics\n\n* [same config language as i3](https://i3wm.org/docs/userguide.html#configuring) with these differences:\n * possibility to spread config over several files\n * possibility to assign variables to variables\n * variables in i3status configs are also resolved (set them anywhere in the sources)\n* additional configuration of `i3configger` itself and persistence of changes to the i3 configuration is achieved by sprinkling a bit of json on top of the config files.\n* command line driven - activities can be bound to keyboard shortcuts directly or as part of a [binding mode](https://i3wm.org/docs/userguide.html#binding_modes)\n\n## How?\n\nIn the end i3wm needs a config file it can cope with and it needs to reload or restart, when something changes.\n\nThis is realized by adding a build step that can be triggered by calling `i3configger` directly or by running it as a \\[daemonized\\] watcher process that automatically rebuilds and reloads when source files change or messages are sent.\n\n## What can I do with it?\n\n### Switch between arbitrary \"schemes\"\n\nYou can switch sub configurations (e.g. different color schemes) that conform with a simple naming convention (`config.d/..conf`, `config.d/..conf`, etc.) by invoking e.g. `i3configger select-next ` or `i3configger select `.\n\nTo get an idea what can be done, have a look at the [examples](https://github.com/obestwalter/i3configger/tree/master/examples) and [read the docs](http://oliver.bestwalter.de/i3configger).\n\n### Override any variable\n\nYou can change any variable you have defined in the configuration by invoking `i3configger set `. These changes are persisted not in the config itself but in an additional file.\n\nSee [i3configger docs](http://oliver.bestwalter.de/i3configger/concept/) for a detailed explanation of the concept and other possible commands.\n\n### Usage example\n\nHere is a snippet from an i3 config that uses a mode to alter itself by sending messages to `i3configger`:\n\n```text\nset $i3cBin ~/.virtualenvs/i3/bin/i3configger\n\nbindsym $win+w mode \"i3configger\"\nmode \"i3configger\" {\n bindsym Right exec \"$i3cBin select-next colors --i3-refresh-msg restart\"\n bindsym Left exec \"$i3cBin select-previous colors --i3-refresh-msg restart\"\n bindsym Up exec \"$i3cBin shadow bars:targets:laptop:mode dock\"\n bindsym Down exec \"$i3cBin shadow bars:targets:laptop:mode hide\"\n bindsym Return mode \"default\"\n bindsym Escape mode \"default\"\n}\n```\n\n**Explanation of the messages used:**\n\n* `select[...]` integrates different config partials and can therefore make broad changes. In this case for example there are different `colors..conf` partials that activate different color schemes\n* `shadow` adds an overlay that in this case changes the mode of the laptop bar between `hide` and `dock`\n\n## Installation\n\n $ pip install i3configger\n\nSee [docs](http://oliver.bestwalter.de/i3configger/installation) For more details and different ways of installation.\n\n## Some inspiration from the i3 project\n\n... that I would also like to heed for this project:\n\n> * Never break configuration files or existing workflows. Breaking changes require a major version bump (v4 \u2192 v5).\n> * Keep mental complexity low: once you know i3\u2019s key features, other features should be easy to understand.\n> * Only add features which benefit many people, instead of going to great lengths to support rarely used workflows.\n> * Only documented behavior is supported. Clear documentation is a requirement for contributions.\n\n\n# CHANGELOG\n\n## 0.9.1.post1 (Never too late to botch up the changelog) - 2018-12-28\n## Fixed\n\n* broken changelog\n\n## 0.9.1 (Never too late to make stupid mistakes) - 2018-12-28\n## Fixed\n\n* crash when executing command due to forgotten explicit self\n\n## 0.9.0 (A new beginning) - 2018-12-19\n## Added\n\n* where it makes sense, defaults for command line settings can be changed in i3configger.json (command line overrides settings in config)\n* make status command configurable (for refresh)\n* off-switch for ipc configuration (for easier testing)\n* functional tests for main cli functionality\n\n## Changed\n\n* keep Python version in sync with Arch system Python: test with Python 3.7\n* breaking changes in i3configger.json - check examples to see what is different. Easiest way to upgrade is to move your old config to the side, run i3configger to generate a new default config and add your settings from the old config back in.\n* terminology: i3status -> i3bar\n* terminology: value -> select\n* internal modernization and refactoring\n\n## Fixed\n\n* wrong use of reversed in select-next/previous\n\n## Removed\n\n* option for different config has no real use and unnecessarily complicates things\n\n## 0.8.0 (Naming things is hard) - 2017-06-20\n## Changed\n\n* Name for i3bar key is fixed to `i3bar` - no need to be configurable\n\n## Fixed\n* don't crash if no i3bar config file was yet generated\n* terminology i3status -> i3bar\n\n## 0.7.7 (It's just getting better and better) - 2017-06-16\n### Added\n\n- resolve variables with as many levels of indirections as you want\n- if resolving fails proper feedback about the failing path is given\n- better error handling/notification, when config is broken\n- tests for resolving contexts\n\n### Fixed\n\n- watch process does not crash anymore but gives proper feedback\n- don't crash if switching without a default in .messages.json\n\n## 0.7.6 (The devil is in the detail) - 2017-06-11\n### Changed\n\n- do not add partial into config if it purely contains set statements\n- strip empty lines from beginning and end of partials\n\n## 0.7.5 (Time to make an -git AUR?) - 2017-06-11\n### Changed\n\n- make checks more forgiving if no i3 is installed - for testing a complete run after a PKGBUILD\n\n## 0.7.4 (Packaging is fun and good for testing) - 2017-06-11\n### Changed\n\n- improve ipc handling - fix setting methods too late\n\n## 0.7.3 (Do the right thing) - 2017-06-11\n### Fixed\n\n- use actual partials path for initialization instead of assuming that parent of config path == partials path\n\n## 0.7.2 (Need for speed) - 2017-06-11\n### Changed\n\n- shave off a few hundred precious milliseconds startup time, by moving the very expensive version fetching into a function that is only called, when the version is really needed.\n- help the user, when they use a non existing command\n- remove unwanted side effects from message\n- when config.d already exists, but no i3configger.json exists yet, it is automatically created now\n- better examples/tests\n\n## 0.7.1 (The great packaging adventure begins) - 2017-06-10\n### Changed\n\n- (internal) vendor in a different inotify library that makes it easier to package for Archlinux\n\n## 0.7.0 (Better safe than sorry) - 2017-06-10\n### Changed\n\n- always create a backup of the users files if it does not exist already. Do **not** clobber it on subsequent builds to make sure you can always go back to your old files if needed, even if they have no external backups or SCM in place.\n\n## 0.6.0 (Command & Conquer) - 2017-06-10\n### Fixed\n\n- wrong ordering of context merges (set was not working in all cases)\n\n### Added\n\n- new command: shadow - shadow arbitrary entries in `i3configger.json`\n- new command: merge - merge a `.json` file into `.messages.json`\n- new command: prune - opposite of merge: remove all keys from a given `.json` file in `.messages.json`\n\n### Changed\n\n- renamed file containing frozen messages from `.state.json` to `.messages.json`\n\n## 0.5.3 (KISS) - 2017-06-09\n### Changed\n\n- de-rocket-science release process\n- change description of tool\n\n## 0.5.2 (Releasing correctly is hard) - 2017-06-09\n### Fixed\n\n- wrong CHANGELOG :)\n\n## 0.5.1 (Maybe I should test more) - 2017-06-09\n### Fixed\n\n- #4 repair watch and daemon mode\n\n## 0.5.0 (Half way there) - 2017-06-08\n### Added\n\n- proper documentation at http://oliver.bestwalter.de/i3configger/\n- copy user or default config into `config.d` on initialization\n\n### Removed\n\n- end of line comments are not supported anymore (too much bug potential - would need some form of parsing already to make it work -> not worth the fuzz)\n\n### Changed\n\n- comments are not stripped from the build anymore\n- notification is off by default: cli arg changed from `--no-notify-` to `--notify`\n\n### Fixed\n\n- checking the config with `i3 -C` did not work because `-c` (small c) was not passed and the passed path to the new config was silently ignored and the active config was checked instead\n\n## 0.4.4 (I am not alone) - 2017-06-05\n### Fixed\n\n- #2 - fails if not using i3status. Fixed by making the refresh call ignore any errors - not nice, just a quick fix.\n\n## 0.4.3 - (The Curious Incident of the Dog in the Night-Time) - 2017-06-04\n### Added\n\n* examples that are used as test cases\n\n### Fixed\n\n* some small fixes regarding selection\n\n## 0.4.2 (The answer) - 2017-06-03\n### Basic implementation\n\n* build main config and one or several i3status configs from the same sources\n* variables are handled slightly more intelligently than i3 does it (variables assigned to other variables are resolved)\n* end of line comments are possible (removed at build time)\n* variables in i3status configs are also resolved (set anywhere in the sources)\n* reload or restart i3 when a change has been done (using `i3-msg`)\n* notify when new config has been created and activated (using `notify-send`)\n* simple way to render partials based on key value pairs in file name\n* simple way to change the configuration by sending messages\n* build config as one shot script or watch for changes\n* send messages to watching i3configger process\n* if `i3 -C fails` with the newly rendered config, the old config will be kept, no harm done\n\n---\n\n**Note:** format based on: [Keep a Changelog](http://keepachangelog.com/) project adheres to [Semantic Versioning](http://semver.org/).\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/obestwalter/i3configger", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "i3configger", "package_url": "https://pypi.org/project/i3configger/", "platform": "", "project_url": "https://pypi.org/project/i3configger/", "project_urls": { "Homepage": "https://github.com/obestwalter/i3configger" }, "release_url": "https://pypi.org/project/i3configger/0.9.1.post1/", "requires_dist": [ "psutil", "python-daemon", "mkdocs ; extra == 'docs'", "mkdocs-material ; extra == 'docs'", "pre-commit ; extra == 'lint'", "plumbum ; extra == 'release'", "twine ; extra == 'release'", "readme-renderer[md] ; extra == 'release'", "pytest ; extra == 'test'" ], "requires_python": ">=3.6", "summary": "i3 config manipulation tool", "version": "0.9.1.post1" }, "last_serial": 4641647, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "b7b36da9420661e63aa3825deed9714b", "sha256": "c81e76d82b0f61c079ef7e0a4f1dcbd85e1f2c40786de99d825fdb4f36e56bab" }, "downloads": -1, "filename": "i3configger-0.1.1.tar.gz", "has_sig": false, "md5_digest": "b7b36da9420661e63aa3825deed9714b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18638, "upload_time": "2017-05-25T23:08:54", "url": "https://files.pythonhosted.org/packages/d8/27/04f4efdfc0abdbd9f03a1444da0aea0fa51e2a3f381190c0685247e44863/i3configger-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "5563b3499d4ed98c37bc3ecaa5cf8bb8", "sha256": "d5c5316c0e8db734eacce0956fecd2dc4d0036e38a83b148d6e2222e9a85caa6" }, "downloads": -1, "filename": "i3configger-0.1.2.tar.gz", "has_sig": false, "md5_digest": "5563b3499d4ed98c37bc3ecaa5cf8bb8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18539, "upload_time": "2017-05-25T23:17:00", "url": "https://files.pythonhosted.org/packages/cb/9f/54b0731828a69a581ad2ed43a054a9b743167f1ff1e3fb4ad14afdc317cd/i3configger-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "2f18eec64831067d20e01aab92e750b5", "sha256": "f7c2b687cfb8c51c7a217dcc0774e2bad27a88c35cbcba6dbf13bb9cdaca7a50" }, "downloads": -1, "filename": "i3configger-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2f18eec64831067d20e01aab92e750b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19461, "upload_time": "2017-05-25T23:43:51", "url": "https://files.pythonhosted.org/packages/e0/63/c8f86027075a74853b272ee320abc1ee8884755d57ac78da523c2d492147/i3configger-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "dcab8d015a2f2f63cbb1f8ccfd279395", "sha256": "94932778b51e14847a79ad4cb6b2aabda91e9ef393fa7364d1aae577677b686b" }, "downloads": -1, "filename": "i3configger-0.1.4.tar.gz", "has_sig": false, "md5_digest": "dcab8d015a2f2f63cbb1f8ccfd279395", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12199, "upload_time": "2017-05-25T23:46:02", "url": "https://files.pythonhosted.org/packages/89/de/2377f3b75f6ef921a7d46790d1b8d7735538644a143306e79bb79398a60e/i3configger-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "30cc9eaaf928f896fec49e6ec631ae9d", "sha256": "9700179471f9cb199331cacd6f02da5bf791d18a5f5ee8c133c4833f278eba5d" }, "downloads": -1, "filename": "i3configger-0.1.5.tar.gz", "has_sig": false, "md5_digest": "30cc9eaaf928f896fec49e6ec631ae9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12199, "upload_time": "2017-05-25T23:49:32", "url": "https://files.pythonhosted.org/packages/4c/58/c69ec58d4dbbac2afde451eb7714d449f2d27b977295a830c93f790cc722/i3configger-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "faff587613349700f052de153452d223", "sha256": "114a3122845da24941f3dafd2210b231b30a18b672a2af0fd10347505815c0da" }, "downloads": -1, "filename": "i3configger-0.1.6.tar.gz", "has_sig": false, "md5_digest": "faff587613349700f052de153452d223", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12220, "upload_time": "2017-05-26T00:04:48", "url": "https://files.pythonhosted.org/packages/cc/e6/585d08604ca72ca727a0190a848f6ae6879ec659757ad34ab9b1ab2a00b3/i3configger-0.1.6.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "564c2dc89abfc6614330ab9fa4b46090", "sha256": "bee12bdec839121663892329046aba2da45b6aab8754d73c12f7905600296f46" }, "downloads": -1, "filename": "i3configger-0.1.8.tar.gz", "has_sig": false, "md5_digest": "564c2dc89abfc6614330ab9fa4b46090", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11908, "upload_time": "2017-05-26T00:17:07", "url": "https://files.pythonhosted.org/packages/5a/e0/60e796b61f95f97333a3efcb284a55ba09dba31ba5d1abde8c8607fbecec/i3configger-0.1.8.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f67b9a1b5035f1de374bafbfe760fb47", "sha256": "7bad4cd208da028772e14d883305aa1afc822eb46d96299a0cc976429ef4180d" }, "downloads": -1, "filename": "i3configger-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f67b9a1b5035f1de374bafbfe760fb47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12306, "upload_time": "2017-05-26T00:18:51", "url": "https://files.pythonhosted.org/packages/5d/92/ca1fa135d73d89cd5310733b02024a081a6bfe82d7b2113d3c5dd7dd7a27/i3configger-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "6b4e672e716258a002a11b1298be13b6", "sha256": "3405d1324d02659fa444002a6aa29f47e57cc3e928cbf861f5c1e9eea52c45a7" }, "downloads": -1, "filename": "i3configger-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6b4e672e716258a002a11b1298be13b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12350, "upload_time": "2017-05-26T00:22:45", "url": "https://files.pythonhosted.org/packages/17/e1/a8babdfd9819c8ab9df2c02e0f322265ca0ed441d902cdd33377a6a19a5f/i3configger-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "96d87d20413340b25be14b3052844e3f", "sha256": "5fa423629c5b4d58c2a9d1e9ba725e7dd1cacdaa11e10306d20d5e2248adc882" }, "downloads": -1, "filename": "i3configger-0.2.2.tar.gz", "has_sig": false, "md5_digest": "96d87d20413340b25be14b3052844e3f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12406, "upload_time": "2017-05-26T00:51:02", "url": "https://files.pythonhosted.org/packages/be/4c/dbc34bce4fbc499ba9bbf0f5d396c0fd03c175719dd18f39351c58137907/i3configger-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "e5a75a9b45ee246fa9f1cdaaf38d2f3d", "sha256": "8e07dd371fcfa04776a67a15851a80fce7c1535d864313148cdf33e772b6cc1d" }, "downloads": -1, "filename": "i3configger-0.3.0.tar.gz", "has_sig": false, "md5_digest": "e5a75a9b45ee246fa9f1cdaaf38d2f3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22796, "upload_time": "2017-06-02T22:58:19", "url": "https://files.pythonhosted.org/packages/8c/ba/25ddc8108df291bd55a08deaf1e8ba7c3443981d81aa300f63d8545bf30e/i3configger-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "61ee4f7aa4b7687951aa3fc7b04487ab", "sha256": "8e8a2f9b3ca7c667bab32dce26f18d52a0ad461de3f94b8f6b69d674a6b1238d" }, "downloads": -1, "filename": "i3configger-0.3.1.tar.gz", "has_sig": false, "md5_digest": "61ee4f7aa4b7687951aa3fc7b04487ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22761, "upload_time": "2017-06-02T23:10:13", "url": "https://files.pythonhosted.org/packages/cf/e1/ad32020cf4e6fe3f0bf741974f45180d9aa7b817ab427c02d297128d065b/i3configger-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "b91486018c3195d0ae4dd78b668e82fa", "sha256": "4eada4e2a79dd0a89fc545dec5ef471747e3eee0d37cceed7c1f8b2b1fa8d211" }, "downloads": -1, "filename": "i3configger-0.3.2.tar.gz", "has_sig": false, "md5_digest": "b91486018c3195d0ae4dd78b668e82fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22776, "upload_time": "2017-06-02T23:12:41", "url": "https://files.pythonhosted.org/packages/a6/e0/aac7ce2966adfaa5f5568119443469f07e73a543360b96a85fb10a5b5ba6/i3configger-0.3.2.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "61a571978beaf745659a99b5d8796eac", "sha256": "26bd42c299b45e690221d3c6bc3bbb1df4a13e3de05554463b4a259085942252" }, "downloads": -1, "filename": "i3configger-0.4.0.tar.gz", "has_sig": false, "md5_digest": "61a571978beaf745659a99b5d8796eac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24896, "upload_time": "2017-06-03T11:25:50", "url": "https://files.pythonhosted.org/packages/d9/c9/af56c8871e720357f1350fd9626a8424af8c01c22dde6a57b1052684bdec/i3configger-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "520bbaa09f6ab1debed7cc6fe5de1d65", "sha256": "78e9da7ea5d4a3c70cf4052b38f54395b80008a3c6966a88335d17cc348a06de" }, "downloads": -1, "filename": "i3configger-0.4.1.tar.gz", "has_sig": false, "md5_digest": "520bbaa09f6ab1debed7cc6fe5de1d65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24893, "upload_time": "2017-06-03T11:33:32", "url": "https://files.pythonhosted.org/packages/7b/cc/f60482b8d43d4e92251248474cad393f9f8de651e0e85648d1e35f09eb5e/i3configger-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "5fb7b8be4ee27761e28555ddea8adc11", "sha256": "fbabafaca6f94bffa41b76bb0687b29b9e045f74fe6e4f6b93a369f19156c828" }, "downloads": -1, "filename": "i3configger-0.4.2.tar.gz", "has_sig": false, "md5_digest": "5fb7b8be4ee27761e28555ddea8adc11", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24903, "upload_time": "2017-06-03T11:41:20", "url": "https://files.pythonhosted.org/packages/cb/24/54eae1ed836c8b6048ba75aac09304566b0388f91353f47299cb7c0bdb27/i3configger-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "c2900127730bb8c154a43e9cdc895ce7", "sha256": "bb96a8ed5b7a777fec02a1f3d30503f4538dc1d7c876b80c4be71dcd800b66a9" }, "downloads": -1, "filename": "i3configger-0.4.3.tar.gz", "has_sig": false, "md5_digest": "c2900127730bb8c154a43e9cdc895ce7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27692, "upload_time": "2017-06-04T01:35:19", "url": "https://files.pythonhosted.org/packages/15/dd/70345814876299c610f46cee152b4b5f691f3f1876e0767b03ba8c4c1bbd/i3configger-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "2f8b455b53745c985d770f9dd83ca927", "sha256": "f2e3272184f56dcc5641396c95f4af53bc7264499ed7ecd572d5b0900e3c24c3" }, "downloads": -1, "filename": "i3configger-0.4.4.tar.gz", "has_sig": false, "md5_digest": "2f8b455b53745c985d770f9dd83ca927", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27716, "upload_time": "2017-06-05T15:29:00", "url": "https://files.pythonhosted.org/packages/94/e3/f3126ef45d50fa8ebb9e3212c1aab3056e7e5be61079c404dcd4c4820c23/i3configger-0.4.4.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "b6475e52fa46d6fbaac411c2b9aff60f", "sha256": "d50ccf6058102304cfcbd1111091befcf024c248e7fd1161c62ebcf09d682c3b" }, "downloads": -1, "filename": "i3configger-0.5.0.tar.gz", "has_sig": false, "md5_digest": "b6475e52fa46d6fbaac411c2b9aff60f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54758, "upload_time": "2017-06-08T21:32:36", "url": "https://files.pythonhosted.org/packages/f3/f7/8b920f17a38452aa727c1912a04ed68313d5b1f7c5c2f5b4a944ecca81a6/i3configger-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "80a0ec7deee694ca6c0d5a578fcff9a1", "sha256": "08ca933481fc06c8771b65e911223f3ac4f8eea863aae1e1560aec6a0c92ac95" }, "downloads": -1, "filename": "i3configger-0.5.1.tar.gz", "has_sig": false, "md5_digest": "80a0ec7deee694ca6c0d5a578fcff9a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54532, "upload_time": "2017-06-09T09:44:30", "url": "https://files.pythonhosted.org/packages/a1/94/5a62828ae76338d38f94447f36f22603b59e222c08c42d6b41dd40bf683f/i3configger-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "303618383a234dde272436b685321b51", "sha256": "46ba8d65c231adbccbe6befa8803b23f9d8e686512d5f42f53262fcde9b243dc" }, "downloads": -1, "filename": "i3configger-0.5.2.tar.gz", "has_sig": false, "md5_digest": "303618383a234dde272436b685321b51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54814, "upload_time": "2017-06-09T12:35:12", "url": "https://files.pythonhosted.org/packages/8f/00/54fe2316a05d43c509afe4f1827e45199d8e673ec77acae6c8f00df5321b/i3configger-0.5.2.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "f68aa1bdb08d0ae55f7e7d902cafcd96", "sha256": "a0d32b6d10ad6ab83ed83400a604895a16bea42e1d2b05f74ed84726107e5e5c" }, "downloads": -1, "filename": "i3configger-0.5.3.tar.gz", "has_sig": false, "md5_digest": "f68aa1bdb08d0ae55f7e7d902cafcd96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53587, "upload_time": "2017-06-09T14:15:38", "url": "https://files.pythonhosted.org/packages/f4/b7/c48aeb15e490d15a30d312303540d63a874fd941894841bf32c233e4ff80/i3configger-0.5.3.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "ca6961af19cea5f47d72ae0f62fe8fd7", "sha256": "72f812f46f580766ce5b6fa549c78362ed8cf545b3456211f2cbe905aeab392b" }, "downloads": -1, "filename": "i3configger-0.6.0.tar.gz", "has_sig": false, "md5_digest": "ca6961af19cea5f47d72ae0f62fe8fd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54978, "upload_time": "2017-06-09T23:23:25", "url": "https://files.pythonhosted.org/packages/80/29/dbcb1b2154b7a61bd8ba481f941d8c92b3ef6d06c9dbfca42d893009f53e/i3configger-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "2e4c702e616f89f72f2f2b07492f5557", "sha256": "d186eb561b60ef92d540087bc8063de5bed1a68ed565319a3f180c40f0d543cd" }, "downloads": -1, "filename": "i3configger-0.7.0.tar.gz", "has_sig": false, "md5_digest": "2e4c702e616f89f72f2f2b07492f5557", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56049, "upload_time": "2017-06-10T10:46:15", "url": "https://files.pythonhosted.org/packages/cf/a5/5fe19b16d16778dc18142d1db1065add20cdbb11286d1f131ceb72a16747/i3configger-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "f143304c5d7b5c9235bfc4fb29219d9a", "sha256": "d06819771438d48966ad7c138dc3332b4edeffd432956d8ae4f71873629183bf" }, "downloads": -1, "filename": "i3configger-0.7.1.tar.gz", "has_sig": false, "md5_digest": "f143304c5d7b5c9235bfc4fb29219d9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59823, "upload_time": "2017-06-10T16:10:17", "url": "https://files.pythonhosted.org/packages/7a/4f/ea9aad496e3b69fed97c6fb9f9c049ccdb2105e1624d18092e58151222d0/i3configger-0.7.1.tar.gz" } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "06b0a22270ce40cbfff546a701a68768", "sha256": "0c2f8802e49e97564b9ca5d30ebde4fcaf1c1b10aec48c74d7d9dd627ab2cc4d" }, "downloads": -1, "filename": "i3configger-0.7.2.tar.gz", "has_sig": false, "md5_digest": "06b0a22270ce40cbfff546a701a68768", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61469, "upload_time": "2017-06-11T13:33:27", "url": "https://files.pythonhosted.org/packages/dd/85/befa37d309831ebd8878812db4c19cb7cb2a0c9f028b7e401f04f2131c0c/i3configger-0.7.2.tar.gz" } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "fdae293e974d53e71b4a9a122c9b90f1", "sha256": "dce450dafce7ec2d7556b1192230406314ca443ce3de80f5742dfc1f61d69d8c" }, "downloads": -1, "filename": "i3configger-0.7.3.tar.gz", "has_sig": false, "md5_digest": "fdae293e974d53e71b4a9a122c9b90f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61628, "upload_time": "2017-06-11T13:45:44", "url": "https://files.pythonhosted.org/packages/6a/5f/8af96ac6cb2333a014644168244e5968e21a2473c2b4d10aa91698896342/i3configger-0.7.3.tar.gz" } ], "0.7.4": [ { "comment_text": "", "digests": { "md5": "0c64c3454f9337da60fc649a8f2dc034", "sha256": "5849fb1f6f90edcd332b1e7c52b96156645370402d913e72d63f747ff4c2edd1" }, "downloads": -1, "filename": "i3configger-0.7.4.tar.gz", "has_sig": false, "md5_digest": "0c64c3454f9337da60fc649a8f2dc034", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61845, "upload_time": "2017-06-11T14:25:28", "url": "https://files.pythonhosted.org/packages/c4/07/a10bfd6989e2bdf8781bbca9e8b7f649fb1c08b7e041cbef37750f67c6b0/i3configger-0.7.4.tar.gz" } ], "0.7.5": [ { "comment_text": "", "digests": { "md5": "c794aa0d8793713530f4639f20855100", "sha256": "1c1cd542f1a604ca1340cde47274ffff4de9fb1e16f1ac9ee55a060c2f228a3f" }, "downloads": -1, "filename": "i3configger-0.7.5.tar.gz", "has_sig": false, "md5_digest": "c794aa0d8793713530f4639f20855100", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 62114, "upload_time": "2017-06-11T14:33:11", "url": "https://files.pythonhosted.org/packages/14/8e/84a7cc398a5e70d46707dbd2951e5c047b25f20436b8fe0197167193601e/i3configger-0.7.5.tar.gz" } ], "0.7.6": [ { "comment_text": "", "digests": { "md5": "2ad3b950f4b263f4ff290550585dde8a", "sha256": "6e17ae9c2ccb5250ae56e1b2fba78da848edfcdc84441ca50c93cbfa7a7dee67" }, "downloads": -1, "filename": "i3configger-0.7.6.tar.gz", "has_sig": false, "md5_digest": "2ad3b950f4b263f4ff290550585dde8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 62507, "upload_time": "2017-06-11T20:40:31", "url": "https://files.pythonhosted.org/packages/2d/1d/1a5696e2ff4692fe85d468e3818d937fbed680d7343fd98c82d3f5e1880e/i3configger-0.7.6.tar.gz" } ], "0.7.7": [ { "comment_text": "", "digests": { "md5": "3e514f5ec61a60ad4a7f3465d4bf12c4", "sha256": "7c0872a1721e36bb2b01f18189a03e5f793604c291df47c61e99ea67b0a833b5" }, "downloads": -1, "filename": "i3configger-0.7.7.tar.gz", "has_sig": false, "md5_digest": "3e514f5ec61a60ad4a7f3465d4bf12c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63779, "upload_time": "2017-06-15T22:51:24", "url": "https://files.pythonhosted.org/packages/61/9a/4f474e2821d0a1a218b5cd1859f94dcf26f6c5f4164e8c59f0b63775173c/i3configger-0.7.7.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "4ca8e0724913c04f2cc90c8a8bb7437d", "sha256": "2e7eb917e792461be72e93e61118085c841ef0d32c4a0244fe1323804bfb08a3" }, "downloads": -1, "filename": "i3configger-0.8.0.tar.gz", "has_sig": false, "md5_digest": "4ca8e0724913c04f2cc90c8a8bb7437d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65446, "upload_time": "2017-06-20T21:25:31", "url": "https://files.pythonhosted.org/packages/f0/ad/5a623255526df9a5958f7bd1cc67af59ef3d2a3afe4e76248b7b2705b4e4/i3configger-0.8.0.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "dcf8f9be75f089fc37f13dca221f631e", "sha256": "166423bef8f2f2696cf9daee227d1023ae1d263f62db34c1484b6761fbe3edf0" }, "downloads": -1, "filename": "i3configger-0.9.0-py3-none-any.whl", "has_sig": false, "md5_digest": "dcf8f9be75f089fc37f13dca221f631e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 25088, "upload_time": "2018-12-19T21:20:36", "url": "https://files.pythonhosted.org/packages/02/e4/d23c482bc43604a92f0c06c139efe6434ccf2b039d0f9328ef4a78d4c9dd/i3configger-0.9.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d1577a2f38c00e8b01584f2f97d1e2f0", "sha256": "81896f8aea83d561f3c8cf668dcd8a842ad4c86be1fb1bb9d11b2105079a603e" }, "downloads": -1, "filename": "i3configger-0.9.0.tar.gz", "has_sig": false, "md5_digest": "d1577a2f38c00e8b01584f2f97d1e2f0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 66082, "upload_time": "2018-12-19T21:20:38", "url": "https://files.pythonhosted.org/packages/9e/db/1fee80acdc233fa6ee92df250ea4a22650756367a61daefe1d1f76b40d05/i3configger-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "703b17eb1496f0e5967e77cfdc591a56", "sha256": "e4192719687af8a81b156f29d85f35556eed05cc61d6e84d374970a4b8063635" }, "downloads": -1, "filename": "i3configger-0.9.1-py3-none-any.whl", "has_sig": false, "md5_digest": "703b17eb1496f0e5967e77cfdc591a56", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 25147, "upload_time": "2018-12-28T16:51:33", "url": "https://files.pythonhosted.org/packages/8f/f4/48a21baa0994503ebe21ba95c8223e32573a4c268586f30a7d36f1554783/i3configger-0.9.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7102d425d7bebec38fff96a9ff3bade9", "sha256": "d58f6734ddbb533e73bb1b8a0d5cd8d2799c0e5b0ae7a67f948755cb371664b9" }, "downloads": -1, "filename": "i3configger-0.9.1.tar.gz", "has_sig": false, "md5_digest": "7102d425d7bebec38fff96a9ff3bade9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 66401, "upload_time": "2018-12-28T16:51:35", "url": "https://files.pythonhosted.org/packages/0e/6b/a0dd7fd738c0981d965f26376c709ffda7163966b952efe84a4b57542d23/i3configger-0.9.1.tar.gz" } ], "0.9.1.post1": [ { "comment_text": "", "digests": { "md5": "942e2f6ff9823b3fefc8d1e94a08d1ca", "sha256": "6adb95ca2b85b81175fbef240af3008d8725ffc10d5f24c39f6cdbf7ceb69cc1" }, "downloads": -1, "filename": "i3configger-0.9.1.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "942e2f6ff9823b3fefc8d1e94a08d1ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 25256, "upload_time": "2018-12-28T16:54:48", "url": "https://files.pythonhosted.org/packages/53/c4/1f5b0fb042212154a92c033c103967a91a1cf694c7c823cd12ff2db9e1b6/i3configger-0.9.1.post1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7e1614ae486629fe1f0fd5861f8a9e0", "sha256": "87e44188c893ba33d68ac62dc2ae22155886a1c8d047c7ed88211ea46fddc89d" }, "downloads": -1, "filename": "i3configger-0.9.1.post1.tar.gz", "has_sig": false, "md5_digest": "c7e1614ae486629fe1f0fd5861f8a9e0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 66492, "upload_time": "2018-12-28T16:54:50", "url": "https://files.pythonhosted.org/packages/5e/94/1e93d7ba8083db10c2618505849e1da361e6eff51b63043c045889f7eae3/i3configger-0.9.1.post1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "942e2f6ff9823b3fefc8d1e94a08d1ca", "sha256": "6adb95ca2b85b81175fbef240af3008d8725ffc10d5f24c39f6cdbf7ceb69cc1" }, "downloads": -1, "filename": "i3configger-0.9.1.post1-py3-none-any.whl", "has_sig": false, "md5_digest": "942e2f6ff9823b3fefc8d1e94a08d1ca", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 25256, "upload_time": "2018-12-28T16:54:48", "url": "https://files.pythonhosted.org/packages/53/c4/1f5b0fb042212154a92c033c103967a91a1cf694c7c823cd12ff2db9e1b6/i3configger-0.9.1.post1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c7e1614ae486629fe1f0fd5861f8a9e0", "sha256": "87e44188c893ba33d68ac62dc2ae22155886a1c8d047c7ed88211ea46fddc89d" }, "downloads": -1, "filename": "i3configger-0.9.1.post1.tar.gz", "has_sig": false, "md5_digest": "c7e1614ae486629fe1f0fd5861f8a9e0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 66492, "upload_time": "2018-12-28T16:54:50", "url": "https://files.pythonhosted.org/packages/5e/94/1e93d7ba8083db10c2618505849e1da361e6eff51b63043c045889f7eae3/i3configger-0.9.1.post1.tar.gz" } ] }