Hi Jatin,
The activities directory has a numbered directory for each activity such
as 4024. This scheme was apparently based on Mozilla's design for the
add-on feature to Firefox. The number associated with a specific
activity is arbitrary - probably based on when the activity was added to
ASLO. It has nothing to do with version number. James Cameron went to
point releases (there is nothing in the software to prevent that - the
number is a string). He says it was because he didn't know how to update
ASLO at the time. He is becoming an administrator at ASLO so that should
solve his problem.
Tony
On 05/25/2017 06:42 PM, Jatin Dhankhar wrote:
One of my attractions to Sugar was the refreshing decision to
start activity versions with 1 and increment by 1 for each next
version. Note that the file name of the bundle is browse-200.xo
but the bundle is stored in activities/4024/.
Then why is it stored in 4024 directory ? Does it mean it was 2.0 of
the browser activity. Found some activities here
http://activities.sugarlabs.org/activities/4024/ that use following
naming scheme as well
http://activities.sugarlabs.org/activities/4024/browse-149.1.xo.
Sam is comfortable with Flask. I have not used Flask and am more
comfortable with Django. You need to decide which you plan to use
for the project. No matter your choice, neither Sam's code nor
mine is going to meet the needs. You'll make best progress by
using the code as clues on functions that are needed and how they
could be implemented.
I think Flask would be easy to pick up.
I should have given you more help with the static setup - it is
one of Django's more irritating tasks. For historical reasons, my
file system is structured
/library/schoolsite/static containing directories: admin css
icons image js
Django then supports a simplified reference: img
src='/static/icons/{{ json.icon }}'></img>
where /static refers to /library/schoolsite/static. Schoolsite is
the Django project, static/ is defined in the settings:
STATIC_URL = '/static/'
STATICFILES_DIR = (
'/library/schoolsite/static/',
)
If you get that right, the images should appear in your display.
As I said, you can diagnose problems by (in Firefox - right click
on the missing image and look at view image info.) In your
version: /static/ can be any name you want to give to your static
files (js, css, images and so on). Static works. The path then
points to the root. So paths are 'absolute' but start with the
static_url and not the file system root.
Thanks will try that as well.
On Thu, May 25, 2017 at 3:15 PM, Tony Anderson <[email protected]
<mailto:[email protected]>> wrote:
Hi,
I think the stored bundle should always be browse-200.xo. The
latest is determined by the highest version number among those in
the addon directory. This way no administrative step is needed
when a new version is released - it just needs to be put in the
directory. So the structure would be:
download.sugarlabs.org/4024/browse-200.xo
<http://download.sugarlabs.org/4024/browse-200.xo>. Programmers
seem to be culturally impelled to use a version number to convey
all kinds of information. My favorite is Sugar which went from
0.98 to 0.100. THe only case I know of where 0.96 < 0.100. One of
my attractions to Sugar was the refreshing decision to start
activity versions with 1 and increment by 1 for each next version.
Note that the file name of the bundle is browse-200.xo but the
bundle is stored in activities/4024/.
Sam is comfortable with Flask. I have not used Flask and am more
comfortable with Django. You need to decide which you plan to use
for the project. No matter your choice, neither Sam's code nor
mine is going to meet the needs. You'll make best progress by
using the code as clues on functions that are needed and how they
could be implemented.
I should have given you more help with the static setup - it is
one of Django's more irritating tasks. For historical reasons, my
file system is structured
/library/schoolsite/static containing directories: admin css
icons image js
Django then supports a simplified reference: img
src='/static/icons/{{ json.icon }}'></img>
where /static refers to /library/schoolsite/static. Schoolsite is
the Django project, static/ is defined in the settings:
STATIC_URL = '/static/'
STATICFILES_DIR = (
'/library/schoolsite/static/',
)
If you get that right, the images should appear in your display.
As I said, you can diagnose problems by (in Firefox - right click
on the missing image and look at view image info.) In your
version: /static/ can be any name you want to give to your static
files (js, css, images and so on). Static works. The path then
points to the root. So paths are 'absolute' but start with the
static_url and not the file system root.
Tony
On 05/25/2017 05:15 PM, Jatin Dhankhar wrote:
Attached is a python script which separates the jsons within
update.json to separate jsons, one per line. The line is
still long but it is easier to see what is going on. I just
did ctrl+a on the text at the url and copied to a file
updatejson. The output is a file jsons. The script assumes
the source file is in the same directory and writes json to
the same directory.
Thanks, I tried it and it works,
ASLO is based (loosely) on the Firefox addons so the
activities are identified by the addon number. ASLOv3 can use
the activity name (name line in activity.info
<http://activity.info/>) and have a standard prefix for the
activity download url (download.sugarlabs.org/activities/
<http://download.sugarlabs.org/activities/>. The trick will
be to find the most recent version since multiple versions
are stored in the addon directory. While it is easy to get a
python list of the bundles from addons, a sort will not work
with non-integer version numbers. For example,
browse-157.3.xo sorts before browse-157. There will be a need
for a 'lint'-like script to verify that new bundles are setup
correctly. If we stick to integer version numbers,
downloading the last activity bundle in the list should work.
Sticking to integer version number is the easiest way to handle
this. So that we have following structure
aslo.sugarlabs.org/activities/browse/157
<http://aslo.sugarlabs.org/activities/browse/157> or
aslo.sugarlabs.org/activities/browse/latest/
<http://aslo.sugarlabs.org/activities/browse/157> which will
always point to latest. If we decide to use a standard way for
float version numbers then something like this can be done (as
long as all stick to same version format)
aslo.sugarlabs.org/activities/browse/157/3.0
<http://aslo.sugarlabs.org/activities/browse/157>/
My main question is, should I continue with developing new Aslo
or improve/fork Sam's version of aslo ?
Thanks,
Jatin Dhankhar
On Thu, May 25, 2017 at 10:06 AM, Tony Anderson
<[email protected] <mailto:[email protected]>> wrote:
Hi,
I have had some apparent malware problems with the email. Had
to hard reboot twice.
Attached is a python script which separates the jsons within
update.json to separate jsons, one per line. The line is
still long but it is easier to see what is going on. I just
did ctrl+a on the text at the url and copied to a file
updatejson. The output is a file jsons. The script assumes
the source file is in the same directory and writes json to
the same directory.
jsons shows 49 activities.
This is the last one:
{"xo_url":
"http://download.sugarlabs.org/activities2/in.seeta.Deducto_v9.xo
<http://download.sugarlabs.org/activities2/in.seeta.Deducto_v9.xo>",
"xo_size": 245277, "version": 9, "minSugarVersion": "0.86"}
So each one has a url, size, version, and minimum version
(oldest version on which the activity works).
Sam Parkinson created a separate directory for his bundles
(activities2). His bundle names are quite different from
standard practice.
'in.seeta.Deducto is the bundle_id whereas we use the
activity name. The size is the bundle size not the installed
size. The minSugarVersion is presumably the earliest version
of Sugar on which the activity works (and that it works on
all subsequent versions). I have no idea how this can be tested.
Tony
_______________________________________________
Sugar-devel mailing list
[email protected]
http://lists.sugarlabs.org/listinfo/sugar-devel