133 Commits

Author SHA1 Message Date
gandalf3
8baacc366b Split repo generation functionality out of blenderpack.py
Moved repo.json generation to make_repo.py
Package/addon parsing is getting a bit messy, this can be
cleaned up when we have a clearer idea of what a package is.

For now just make it work.
2017-07-02 15:15:48 -07:00
gandalf3
6a538a4264 Repo generation: add more testcases 2017-06-30 20:10:33 -07:00
gandalf3
354523f26b Write repo.json to current working directory 2017-06-30 15:08:07 -07:00
gandalf3
89ca306299 Cleanup: Remove commented code, use logging 2017-06-29 21:44:18 -07:00
gandalf3
1418c45a8a GUI: demonstrate that blender has recieved results of the request 2017-06-29 21:11:43 -07:00
gandalf3
0b506d8759 Save repo.json after we've downloaded it 2017-06-29 19:55:35 -07:00
gandalf3
9dfd58671e Asynchronous IPC: Initial implementation
This commit adds a mixin which sets up a modal operator which:
* Starts a subprocess
* Polls for messages from that subprocesses
2017-06-29 18:16:44 -07:00
gandalf3
2268925733 Testing: use try/finally to ensure repo.json is always cleaned up 2017-06-29 02:18:52 -07:00
gandalf3
5a0aba8a56 Cleanup: take advantage of pathlib
* Use / syntax for concating pathlib paths in tests
* Use .name for getting last component of pathlib path
2017-06-29 02:11:43 -07:00
gandalf3
172353bbbb A bit of documentation 2017-06-29 01:11:12 -07:00
2debd7fa98 Add test runner script 2017-06-23 20:05:55 -07:00
4b7feeebb1 Switch to pathlib 2017-06-23 20:05:10 -07:00
8d8c3b84fd Repo generation: log and keep going on error
* Delete old report() functions, use logging instead
* Skip addons which have problems (but give a warning)
2017-06-23 19:10:26 -07:00
d06af2fed0 Clean up tests
No need to test on complete addons.
This commit adds a few test cases and some automated test
generation.
2017-06-23 18:53:07 -07:00
1ff2b055a6 Make 'version' required 2017-06-23 13:23:11 -07:00
5a9a3db016 Initial implementation of repo generation tool 2017-06-22 20:04:15 -07:00
020ce924c6 Test for an invalid case 2017-06-22 18:00:29 -07:00
20683af72c More unit tests
Copy in a multifile addon for testing, also fix a typo in blenderpack.py
2017-06-22 17:49:56 -07:00
44e0a904a4 Pull some code in from 2016 project; add tests 2017-06-22 17:41:41 -07:00
15a59cb867 initial (2017) commit 2017-06-22 01:43:08 -07:00
9e2b2c1794 revert master to blank slate 2017-06-21 21:52:21 -07:00
48e4d3f2d9 Cleanup: Using set for faster performance. 2016-06-26 22:42:07 -05:00
1cce8cda81 Documentation: Documenting every class and function.
Added a docstring to every class and function, documenting arguments and return values. Also made a couple cleanup changes. Next cleanup-related change will be moving from urllib.requests to the requests module.
2016-06-26 22:00:03 -05:00
f6897e6401 Async support: downloading, json parsing, and add-on install
Downloading, parsing index.json, and installing add-ons all now are handled asynchronously using the asyncio module. These operations will no longer block Blender, allowing them to run in the background.
2016-06-26 17:42:21 -05:00
b2c34a1a7e Adding support for download and install of .zip addons
Minor UI alteration, and some small changes based on Sybren's feedback
2016-06-24 13:54:27 -05:00
8c87eeee85 Updating generate-json.py and index.json
- Updated generate-json.py to support addons_contrib (previously ran into an unhandled UnicodeDecodeError).
- 'download_url' key now works; used with http://localhost:8000 for now.
- index.json generated with updated generate-json.py, now contains addons and addons_contrib.
2016-06-24 13:00:04 -05:00
576d04ee65 Package Manager add-on now functional, with limitations
- For now, add-ons are downloaded from http://localhost:8000/.
- Add-ons on the index.json (from	blender.org gitweb) are only displayed if they are not installed locally, or installed in the USER path.
- Only .py add-ons are supported for now, but .zip add-ons will be supported next commit.
2016-06-24 09:18:09 -05:00
52365f59ae Fix: Renaming add-on directory and updating index.json
- Add-on directory name was not a proper identifier before.
- index.json was formatted incorrectly (missing commas); new version is generated with updated generate-json.py (which seems to fail for addons_contrib at the moment), and contains data for add-ons in addons repo.
2016-06-22 21:16:30 -05:00
5548c26af4 Strip extension from addon IDs. 2016-06-22 00:15:28 +02:00
1db0d0dec4 Using 'ast' and 'json' modules to parse & write addon data. 2016-06-22 00:10:51 +02:00
d61fe5742d Added .gitignore 2016-06-22 00:09:53 +02:00
289f523397 Committing first version of package manager add-on, index.json, and Python script to generate index.json file. 2016-06-18 18:14:02 -05:00
2291f3c109 Initial commit 2016-06-09 16:46:35 +02:00