[Soc-2016-dev] Weekly Report #02, Python Package Manager
Peter D. Cassetta
peter at fingertipsoft.com
Sat Jun 4 06:55:52 CEST 2016
Hi all,
During this second week of GSoC, I've been working towards my goal for
May 23 - Jun 3 as stated in my proposal: "Nail down the basics: solidify
plans for finding version, downloading, and UI, then begin coding."
To that end, I've decided to use JSON (according to Sybren's suggestion)
to communicate the available add-ons, versions, and the information
which Blender's Add-ons tab displays for installed add-ons, such as
author, description, support level, etc. This data will be contained
within a single file, which will be cached by Blender, and (hopefully)
requested from the server with If-Modified-Since and If-None-Match HTTP
headers.
I've created an example for what this JSON file should look like; and it
can be found on the wiki:
https://wiki.blender.org/index.php/User:PeterCassetta/GSoC_2016/Server-Client_Plans#Server-Client_Communication
(I would appreciate any thoughts/suggestions people might have.)
Since Github makes it pretty simple to access an individual raw file
over HTTPS, I'm thinking I'll use Github to host an add-on index during
GSoC. I'll be using a file hierarchy something like this:
index.json
example_addon_one/
1.3.3.py
1.4.0.py
example_addon_two/
2.0.2.zip
2.0.3.zip
2.1.0.zip
I'll also create a simple script to automatically copy an add-on from a
local addons/addons_contrib repo (and zip it if needed) to my local
add-on index repo. This will be useful for me during testing, and later
to those who moderate new updates to add-ons.
During the next two weeks I'll be creating a working prototype, allowing
at least to check for updates and update an add-on.
Best,
Peter Cassetta
More information about the Soc-2016-dev
mailing list