Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ branch:  streamtuner2


History of config.py of b9a667bbe7d0a7d2

History of the file that is called config.py at checkin b9a667bbe7d0a7d2

2020-05-21
11:54
Add more detailed user-agent string, introduce conf.version (from pmd) file: [f8ba9ac1af] check-in: [d9a4e95fc9] user: mario, branch: trunk, size: 14790 [annotate] [blame] [check-ins using] [diff]
2020-05-13
17:45
Format exceptions log.() calls file: [0fccb051e3] check-in: [84f2995f8d] user: mario, branch: trunk, size: 14643 [annotate] [blame] [check-ins using] [diff]
2019-02-06
21:16
Switch to XDG_CACHE_HOME/.cache (because that's what the cache files are, not really user data). More consistently use new storage path throughout core and plugins (favicon+cachereset). file: [833278b4e6] check-in: [2ee52fe7e8] user: mario, branch: trunk, size: 14501 [annotate] [blame] [check-ins using] [diff]
2019-02-04
09:30
Transitional .cache/XDG_DATA_HOME support (by symlinking from .config dir) file: [08e51d1986] check-in: [77d42c82df] user: mario, branch: trunk, size: 14118 [annotate] [blame] [check-ins using] [diff]
2018-12-18
22:40
Optional toolbar button for search dialog. file: [70c45975f0] check-in: [4beef0ad4d] user: mario, branch: trunk, size: 13371 [annotate] [blame] [check-ins using] [diff]
2017-11-17
13:20
Change default streamripper user agent to 'iTunes 12.5/Gecko/SR' file: [d42c2b2b7d] check-in: [e4d747b68a] user: mario, branch: trunk, size: 13344 [annotate] [blame] [check-ins using] [diff]
2017-09-23
03:15
Change default streamripper user agent. file: [c659badac6] check-in: [6fd31bb3cc] user: mario, branch: trunk, size: 13315 [annotate] [blame] [check-ins using] [diff]
2017-02-20
19:54
Add stub parameter -w (used by pydoc) file: [a71c1ee423] check-in: [ff61e15d6a] user: mario, branch: trunk, size: 13288 [annotate] [blame] [check-ins using] [diff]
2017-02-13
16:51
Add -V cmdline arg. file: [a80ecbfb9d] check-in: [becb24c89e] user: mario, branch: trunk, size: 13223 [annotate] [blame] [check-ins using] [diff]
2017-01-05
21:20
Default background color for channel.warn() calls. file: [49554b72ad] check-in: [197656d143] user: mario, branch: trunk, size: 13139 [annotate] [blame] [check-ins using] [diff]
2016-12-11
13:31
Suppress ANSI codes for windows cmd file: [fb139701ee] check-in: [bda234f8c1] user: mario, branch: trunk, size: 13101 [annotate] [blame] [check-ins using] [diff]
2016-12-03
21:24
Fix regex groups for find_player_win path quoting file: [f1b79c6976] check-in: [a03f6235f0] user: mario, branch: trunk, size: 13021 [annotate] [blame] [check-ins using] [diff]
2016-12-02
20:36
Fixed VLC default path (Oliver), added quoting regexp. file: [f1b8e36cc0] check-in: [1874107bb9] user: mario, branch: trunk, size: 13019 [annotate] [blame] [check-ins using] [diff]
2016-12-01
13:19
Fix help.chm lookup and default Windows paths. file: [2f5daeee00] check-in: [a88fe29963] user: mario, branch: trunk, size: 12936 [annotate] [blame] [check-ins using] [diff]
2016-11-29
14:25
Introduce some application presets for Windows. file: [5e8b20930b] check-in: [c19b8437e6] user: mario, branch: trunk, size: 12925 [annotate] [blame] [check-ins using] [diff]
2016-11-06
18:52
Alternate "rt" and "r" gzopen file flag (the "t" is an addition of Python3 gzip, and failed with Python2 on Windows) file: [1120420e80] check-in: [ee1b2744a1] user: mario, branch: trunk, size: 12214 [annotate] [blame] [check-ins using] [diff]
2016-10-22
18:59
Remove default specbuttons{} entry. file: [e6c70b9373] check-in: [54297a5913] user: mario, branch: trunk, size: 12121 [annotate] [blame] [check-ins using] [diff]
2016-10-18
21:27
Prepare specbuttons addin (small user-defined application control interface, adds to the main toolbar) file: [ff6fbbe1be] check-in: [e1d9342408] user: mario, branch: trunk, size: 12120 [annotate] [blame] [check-ins using] [diff]
2016-06-17
17:42
Default internetradio_max_pages=5 in the config. (Last report indicated it didn't get picked up. And it's a default plugin anyway.) file: [f7bc6d9cd5] check-in: [75cb32d44e] user: mario, branch: trunk, size: 12034 [annotate] [blame] [check-ins using] [diff]
2015-05-26
00:43
Disable window tilte updating per default again. file: [2962c58373] check-in: [b9a667bbe7] user: mario, branch: trunk, size: 11993 [annotate] [blame] [check-ins using] [diff]
2015-05-24
16:59
Add missing quotes for streamripper default option. file: [6f5292e90f] check-in: [4a3b5153d8] user: mario, branch: trunk, size: 11993 [annotate] [blame] [check-ins using] [diff]
2015-05-21
20:08
Remove config.find_in_dirs(), which is unused now. file: [b290c1e0fd] check-in: [11f270a726] user: mario, branch: trunk, size: 11989 [annotate] [blame] [check-ins using] [diff]
2015-05-14
20:02
Add option to inhibit window title adaption ("Streamtuner2 - Channelname"), mostly just for filling up the "Display" config section again. file: [9e6c88a45c] check-in: [bfc387c542] user: mario, branch: trunk, size: 12230 [annotate] [blame] [check-ins using] [diff]
18:41
Remove a few options from configuration dialog; now available in [feature] plugin tabs for favicon module. Favicon module exposes google_station_homepage, and retrieval methods, but no longer `conf.show_favicons` (which is decided on just by having the plugin enabled - or not.) Introduce conf.auto_save_stations for favicon/DND plugin. file: [a293720f07] check-in: [8c7b4f2662] user: mario, branch: trunk, size: 12200 [annotate] [blame] [check-ins using] [diff]
2015-05-13
00:00
Move mime_fmt() into regular function. Fix live365 ahttp feedback= bug. Regroup functions and update a few comments in channels/__init__ file: [e3065a7831] check-in: [2335ea7a46] user: mario, branch: trunk, size: 12164 [annotate] [blame] [check-ins using] [diff]
2015-05-12
22:17
Add plugin defaults (for newly added options, but previously active modules) in any case when starting with -D flag. Save settings.json in json.dumps(sort_keys=True) mode. file: [f7e98ed69f] check-in: [3497339549] user: mario, branch: trunk, size: 12225 [annotate] [blame] [check-ins using] [diff]
2015-05-11
12:21
Change pluginconf lookups. Use only pkg basenames for configuration, but override channels.__path__ directly in module. Thus pluginconf can convert `plugin_base` into path list for module_list() scanning. file: [b35aebea3e] check-in: [494088b7d1] user: mario, branch: trunk, size: 12209 [annotate] [blame] [check-ins using] [diff]
2015-05-06
00:07
Fix some print and log statements. file: [8242f27bc4] check-in: [d0a9fca2bd] user: mario, branch: trunk, size: 12207 [annotate] [blame] [check-ins using] [diff]
2015-05-05
10:45
Readd plugin_base paths in addition to module basenames, otherwise pluginconf.get_data won't find plugins/* either in the module_list() or per get_data() - one uses paths, the other pkg names. file: [cf1c2001f3] check-in: [68107d7f9a] user: mario, branch: trunk, size: 12206 [annotate] [blame] [check-ins using] [diff]
2015-05-04
15:21
Split pluginconf from config module. file: [28c3c558fd] check-in: [0d6acc5aef] user: mario, branch: trunk, size: 12199 [annotate] [blame] [check-ins using] [diff]
2015-05-03
20:26
Add some version: bumps and add a few versions to depends: references. file: [8817626a3c] check-in: [beebec9c76] user: mario, branch: trunk, size: 18781 [annotate] [blame] [check-ins using] [diff]
14:08
Support multiple `plugin_base` references (namely "channels" and "plugins"). file: [f4ef1864d6] check-in: [12d3b19c1d] user: mario, branch: trunk, size: 18782 [annotate] [blame] [check-ins using] [diff]
09:15
Move parole behind vlc in setup alternatives. file: [974441daf6] check-in: [7e68e1b770] user: mario, branch: trunk, size: 18670 [annotate] [blame] [check-ins using] [diff]
2015-05-01
02:16
Use empty stub {} dict in place of state.json contents on fresh init. file: [82840017ee] check-in: [3d6205d2d3] user: mario, branch: trunk, size: 18670 [annotate] [blame] [check-ins using] [diff]
2015-04-30
06:21
Add new config dialog group for "Playlists". Conf setting `playlist_asis` completely skips action.convert_playlist(). Works for any real m3u/pls/srv server and flexible audio players. But obviously breaks Jamendo albums or other JSON playlist sources. file: [d54903cb9b] check-in: [470e3fac2b] user: mario, branch: trunk, size: 18664 [annotate] [blame] [check-ins using] [diff]
2015-04-28
17:35
Move `state.json` and .current restoration into GenericChannel.gui(). Current category is reselected by TreeView traversal on instantion now. Previous state now load through config.state() for channels/__init__, not in main/init_app_state anymore (just row:expand / winsizes now). Disable .currentcat() overwriting, redundant now in display_categories(). Still need to avoid second .select_current() call in first_show(). file: [0405b0c427] check-in: [ffaf262c43] user: mario, branch: trunk, size: 18633 [annotate] [blame] [check-ins using] [diff]
2015-04-26
15:34
More customized log categories/colorization. file: [7f53cc759c] check-in: [0943cca27e] user: mario, branch: trunk, size: 18371 [annotate] [blame] [check-ins using] [diff]
2015-04-24
19:20
Prepare bookmarks-category DND as target (for internal stream moving). Fix FILE_NAME being passed as text not uris XSelection type. Use underscores in place of spaces to avoid urlencoding file:// references. Move log.DND colorization to config. file: [ae59bddda4] check-in: [1569b57c42] user: mario, branch: trunk, size: 17853 [annotate] [blame] [check-ins using] [diff]
00:00
Add conf.nothreads flag and --nt cmdline flag, to prevent Gtk3 idle update race conditions if need be. (Still flaky for initial startups.) file: [1bfcbd774c] check-in: [ce0e9149db] user: mario, branch: trunk, size: 17809 [annotate] [blame] [check-ins using] [diff]
2015-04-23
19:31
Use distinct /tmp/streamtuner2/ directory for temporary pls/m3u/xspf files (also for DND). And have action. module reuse them, based on numeric row{} hash. file: [9fc88f2a2d] check-in: [7411543862] user: mario, branch: trunk, size: 17565 [annotate] [blame] [check-ins using] [diff]
19:04
Some more comments and log messages. file: [fe8ee86843] check-in: [79ef6e5f2a] user: mario, branch: trunk, size: 17374 [annotate] [blame] [check-ins using] [diff]
2015-04-21
06:05
Replace old __print__/dbg.XYZ references with new log.XYZ() wrapper. file: [b88512db4c] check-in: [ebae9e51ac] user: mario, branch: trunk, size: 17378 [annotate] [blame] [check-ins using] [diff]
2015-04-20
16:22
Introduce log.ERR() etc. instead of __print__(dbg.XY...) workaround (was meant for Py3 only). file: [8f2ac16ca3] check-in: [256b1e5833] user: mario, branch: trunk, size: 18106 [annotate] [blame] [check-ins using] [diff]
2015-04-13
00:32
Remove default %m3u placeholders. (Now defaulting to PLS, as supported by pretty much all players.) file: [d8d4d07b70] check-in: [3dd41a0668] user: mario, branch: trunk, size: 17044 [annotate] [blame] [check-ins using] [diff]
2015-04-11
16:09
Safeguard get_data for plugin_meta(), as global or local extras would be found by module_list, but not get_data(). file: [d7b33fd59d] check-in: [d781433c78] user: mario, branch: trunk, size: 17041 [annotate] [blame] [check-ins using] [diff]
2015-04-10
16:40
Finalize allowed filename extensions for exporting. Normalize Python3 string decoding (errors='ignore' per default). Update XSPF and SMIL export. Use row={} template now, instead of just carrying over title= to rewritten playlists. file: [cbe5c8fdc6] check-in: [e136a78c73] user: mario, branch: action-mapfmts, size: 17015 [annotate] [blame] [check-ins using] [diff]
2015-04-09
21:58
Python3 doesn't like `if [x = ...]` inline assignment trickery (kwargs out of scope). file: [39c7681328] check-in: [82cf514e49] user: mario, branch: action-mapfmts, size: 16980 [annotate] [blame] [check-ins using] [diff]
2015-04-07
19:48
Got rid of switchy() expression, use plain `cond and val or ...` chain. file: [ad58239673] check-in: [30dd0c5b1f] user: mario, branch: trunk, size: 16977 [annotate] [blame] [check-ins using] [diff]
05:51
Move argv initialization to conf.apply_args(). Document config: format for argparse conversion. Enable file=sys.stderr for __print__/debug messages. file: [ca9c88608a] check-in: [1eea3140f8] user: mario, branch: trunk, size: 17194 [annotate] [blame] [check-ins using] [diff]
2015-04-06
18:55
Add workaround for ArgumentParser, which tries to map config: descriptors onto AP.add_argument(*yikes) params. file: [af23ce772a] check-in: [24a5fe69a1] user: mario, branch: trunk, size: 15358 [annotate] [blame] [check-ins using] [diff]
2015-04-05
20:27
Recategorized some dbg.ERR messages, but make them displayed now regardless of conf.debug setting. file: [2154593dfb] check-in: [2b63a42675] user: mario, branch: trunk, size: 13137 [annotate] [blame] [check-ins using] [diff]
18:22
File reading in plugin_meta(): convert Py3 bytes to string. file: [f2de7a5aec] check-in: [bb7e73cafb] user: mario, branch: trunk, size: 13115 [annotate] [blame] [check-ins using] [diff]
16:15
Changed pyz base path determination method (no more rx.zipfn guessing). file: [51ce82a04c] check-in: [ed1c185f7c] user: mario, branch: trunk, size: 13012 [annotate] [blame] [check-ins using] [diff]
14:09
Wrap `gzip_decode` as fallback for Python 2. file: [8430e295e9] check-in: [d88aab3981] user: mario, branch: trunk, size: 12982 [annotate] [blame] [check-ins using] [diff]
2015-04-04
10:00
Add plugin defaults now really on initialization. Safeguard in configwin. Always use gtk.STOCK_NEW for empty app fields in config_dialog (not just for new lines). file: [86c0092432] check-in: [8178f6832b] user: mario, branch: trunk, size: 13229 [annotate] [blame] [check-ins using] [diff]
06:06
Compress gtkBuilder file with zlib for distribution. (gzip not usable without workarounds in Python2) file: [5baf9d2d63] check-in: [780f0ca590] user: mario, branch: trunk, size: 13789 [annotate] [blame] [check-ins using] [diff]
01:45
Removed module_list() ordering, which is now handled by uikit.appstate. Documented plugin_meta() options, split out plugin_meta_extract() code. file: [f0017cbe55] check-in: [7127c48419] user: mario, branch: trunk, size: 13715 [annotate] [blame] [check-ins using] [diff]
2015-04-03
20:46
Removed Gtk `theme` configuration options. (Didn't work anymore.) -- Addendum: If anyone has been using this, please drop me a line; it could become a plugin now.. file: [81150f5776] check-in: [ad852f14fe] user: mario, branch: trunk, size: 13420 [annotate] [blame] [check-ins using] [diff]
20:43
Made channel tabs reorderable. Now kept in config/window.json as `tab_order` and current page saved as `tab_current` instead of pageno. Disabled progressbar changes for ahttp, made search_server search run in a thread so status can be shown. file: [2f8e9d09d8] check-in: [6fab0e7170] user: mario, branch: trunk, size: 13459 [annotate] [blame] [check-ins using] [diff]
17:35
Got rid of static main.channel_names[] list. Instead now querying Gtk notebook_channels widget for current page name ordering. More plugin defaults added to ConfigDict.defaults(), as workaround for not preparsing inactive plugins on startup. file: [31dd5cfc2a] check-in: [18b4da567f] user: mario, branch: trunk, size: 13547 [annotate] [blame] [check-ins using] [diff]
2015-04-02
22:40
Add missing `configwin` (the externalized config_dialog). Fixed gtk3.xml for gtk2 once more. Orovide find_executable() in config, used by configwin to show if configured apps are actually available. file: [43829d8ff1] check-in: [04f700ea1c] user: mario, branch: trunk, size: 12225 [annotate] [blame] [check-ins using] [diff]
15:28
Changed plugin config: options default registration to use full .meta[] now instead of just config[] list. Thus plugins can be enabled/disabled right away based on priority: field. (On first startup all channels will show up however.) file: [d4c58ff389] check-in: [a05da9d33d] user: mario, branch: trunk, size: 11909 [annotate] [blame] [check-ins using] [diff]
2015-04-01
17:39
Add conf.get_data() alias, which automatically fetches resource relative to config module (that is, works on the global path, or within pyzip archive). Move module_list() from channels. into config, as it combines plugins and config management anyway. file: [ec183e5649] check-in: [07d2a291cd] user: mario, branch: trunk, size: 11887 [annotate] [blame] [check-ins using] [diff]
15:44
Fix conf.debug checking. file: [a316308630] check-in: [4997a22651] user: mario, branch: trunk, size: 10726 [annotate] [blame] [check-ins using] [diff]
2015-03-30
17:41
Support netrc account lookup (for MyOggRadio). file: [799d76f2f1] check-in: [95f6f0f64f] user: mario, branch: trunk, size: 10626 [annotate] [blame] [check-ins using] [diff]
2015-03-29
16:40
Use absolute path for conf.share, and ensure it doesn't get overwritten from last value in settings.json. file: [1687cc55ba] check-in: [c03cbe2403] user: mario, branch: trunk, size: 10607 [annotate] [blame] [check-ins using] [diff]
14:47
Renamed `uikit` module. Auxiliary dialogs `streamedit` and `search` moved into plugins. Less indentation. Compacter import statements. Core plugins initialized into .features, and grayed out in configuration dialog. And `station_context_menu` moved into method. file: [efa422aca3] check-in: [f5f0ae18c1] user: mario, branch: trunk, size: 10516 [annotate] [blame] [check-ins using] [diff]
03:06
More complete plugin_meta() regex patterns. Now defaults to inspect.get_comments() on previous stack frame, src= or fn= only accepted as fallback. Complete default meta fields, splits doc block out, autostrips hash prefixes and indentation. file: [1c74200e99] check-in: [70c2e437fd] user: mario, branch: trunk, size: 10422 [annotate] [blame] [check-ins using] [diff]
2015-03-28
07:26
Implement plugin meta data extraction in config.plugin_meta() instead of channels.__init__ file: [cb67ede034] check-in: [acaea4439d] user: mario, branch: trunk, size: 9167 [annotate] [blame] [check-ins using] [diff]
2014-08-12
16:41
Use r"" string for literal ANSI escapes file: [59ff23a453] check-in: [0cb24d59af] user: mario, branch: trunk, size: 7736 [annotate] [blame] [check-ins using] [diff]
2014-05-28
15:54
Updates for 2.1.1 release file: [a443e08afc] check-in: [e091ecf510] user: mario, branch: trunk, size: 7727 [annotate] [blame] [check-ins using] [diff]
2014-05-27
15:06
Update default configuration, rename internet_radio_org_uk to just internet_radio module file: [eff4cdbef0] check-in: [99d4249ef4] user: mario, branch: trunk, size: 7672 [annotate] [blame] [check-ins using] [diff]
12:37
ListStore row editing callback unified via lambda-funcs as signal handlers. Recording hook adapted to pass actual MIME type. Python3 try/except for json file writing (still breaks due to gzip handler being optional). file: [1418a05152] check-in: [af5ae3f5be] user: mario, branch: trunk, size: 7615 [annotate] [blame] [check-ins using] [diff]
00:44
conf.record{} array is back, settings dialog now shows a separate editable table; default options prepared for `youtube-dl` video downloading. Action module now more orderly tries alternative media/* placeholders. file: [1b0bc1277f] check-in: [199c0ad425] user: mario, branch: trunk, size: 7467 [annotate] [blame] [check-ins using] [diff]
2014-05-25
11:57
Use mygtk.ComboBoxText also for theme switcher button. Moved .vbox and .label creating into mygtk, ComboBoxText.set_default() now automatically adds non-predeclated/custom value at end of liststore. file: [f00713448d] check-in: [9ad64ad53a] user: mario, branch: trunk, size: 7480 [annotate] [blame] [check-ins using] [diff]
2014-05-15
19:45
and conf.pyquery default, so it's not forgotten by config_dialog.save_config file: [17163ecdcb] check-in: [bc473dc5da] user: mario, branch: trunk, size: 7423 [annotate] [blame] [check-ins using] [diff]
2014-05-14
23:44
New mime/app configuration screen in an editable ListStore. Players, recording hook and browser are now mixed up in conf.play{} file: [0b8fb92b93] check-in: [0edaf9402f] user: mario, branch: trunk, size: 7394 [annotate] [blame] [check-ins using] [diff]
2014-05-13
22:11
Convert string to bytes for gzip-json writing (Python3) file: [c89ffe92b8] check-in: [77c8394885] user: mario, branch: trunk, size: 7489 [annotate] [blame] [check-ins using] [diff]
21:00
Exchange audio/mp3 for standard audio/mpeg MIME type. file: [5e2372f9f1] check-in: [220ee1286a] user: mario, branch: trunk, size: 7442 [annotate] [blame] [check-ins using] [diff]
03:25
Minor default setting tweaks. file: [9f0935794a] check-in: [6780ddd151] user: mario, branch: trunk, size: 7178 [annotate] [blame] [check-ins using] [diff]
2014-05-04
23:14
merge Xiph plugin with JSON query back in, enable per default again file: [e61106e7ac] check-in: [8a39e17e4b] user: mario, branch: trunk, size: 7149 [annotate] [blame] [check-ins using] [diff]
2014-04-28
02:05
Disable xiph plugin per default, introduce requests.Session() support for implicit cookies file: [8c6d57fc14] check-in: [539c433d31] user: mario, branch: trunk, size: 7132 [annotate] [blame] [check-ins using] [diff]
2014-04-11
02:54
Open json/config files in text mode file: [9c4bf2dcba] check-in: [8e8ad5dfeb] user: mario, branch: py3, size: 7071 [annotate] [blame] [check-ins using] [diff]
01:24
remove pson fallback file: [4880b97351] check-in: [eabee8e3c9] user: mario, branch: py3, size: 7060 [annotate] [blame] [check-ins using] [diff]
2014-04-10
04:31
* Fixed gtk_list_store_get_value: assertion `column < list_store->n_columns' by removing {width:20} reference from treeview datamap. * row.setdefault() for absent search_col/set and deleted state * More __print__/dbg colorization * Disabled pson.filter_data in favour of str casting in mygtk.columns() * Removed streamactions.popup PY2/PY3 workaround with named args * More .iteritems() removal file: [8361dea5ee] check-in: [1beab0563e] user: mario, branch: py3, size: 7060 [annotate] [blame] [check-ins using] [diff]
2014-04-07
00:33
Move __print__ into config, add unified dbg.COLOR codes file: [16fe14f094] check-in: [7ef1553f61] user: mario, branch: trunk, size: 6967 [annotate] [blame] [check-ins using] [diff]
2014-04-06
00:33
disable TV and and basic.ch per default (not working) file: [0a6d293594] check-in: [93f5cebd40] user: mario, branch: trunk, size: 6330 [annotate] [blame] [check-ins using] [diff]
2014-01-06
22:45
prepare for gtk3 file: [8ca1d32093] check-in: [c0702405f8] user: mario, branch: trunk, size: 6242 [annotate] [blame] [check-ins using] [diff]
2012-01-10
03:47
windows patches from Vincent file: [3cd51eb7d8] check-in: [4298cc4385] user: mario, branch: trunk, size: 6026 [annotate] [blame] [check-ins using] [diff]
2012-01-09
03:45
Added: 2.0.8.5 file: [791971aff7] check-in: [ea81d1ad5d] user: mario, branch: trunk, size: 5932 [annotate] [blame] [check-ins using]