#9894: Group cohomology spkg, version 2.1.2
-------------------------------------------------------+--------------------
       Reporter:  SimonKing                            |         Owner:         
            
           Type:  enhancement                          |        Status:  
needs_review       
       Priority:  major                                |     Milestone:  
sage-5.0           
      Component:  optional packages                    |    Resolution:         
            
       Keywords:  modular group cohomology solaris t2  |   Work issues:         
            
Report Upstream:  N/A                                  |     Reviewers:  
Karl-Dieter Crisman
        Authors:  Simon King                           |     Merged in:         
            
   Dependencies:                                       |      Stopgaps:         
            
-------------------------------------------------------+--------------------

Comment (by SimonKing):

 Replying to [comment:56 jhpalmieri]:
 > A few questions:
 >
 >  - Is it possible (and easy) to build the documentation locally? If so,
 it would be nice to implement that in spkg-install, using the environment
 variable `SAGE_SPKG_INSTALL_DOCS` (see #10823).

 Currently, it is not possible.

 For creating the docs, I am using a script that is derived from the script
 that builds the Sage documentation. It would, of course, be possible to
 include the script in the spkg

 However, that would not be enough. The docs should provide the argument
 list of each method. In order to determine the argspec of Cython methods,
 it is needed to be able to read the source code (see
 sage.misc.sageinspect). This is of course a problem for code that is
 outside the Sage library. My solution: I patched sage.misc.sageinspect,
 such that it would find the unpacked source of the spkg locally on my
 computer. But other users wouldn't have the unpacked spkg lying around.

 Hm. I am just thinking: If the documentation is created ''during
 installation'', then one ''does'' have the unpacked spkg. Still, I
 wouldn't like to patch sage.misc.sageinspect for that purpose. But perhaps
 the documentation builder script could hook into
 sage.misc.sageinspect.sage_getargspec?

 Anyway, it would not be a straight forward solution.

 >  - Also, can you provide the code for producing an on-line database, in
 case people want to host their own?

 There is no ready-made method for that purpose. What one needs to do:

  * Compute the cohomology (by default, the result is stored on disk). Make
 sure that the computation is "from_scratch" (there is an option of that
 name).
  * In case of a p-group, the data are for a single cohomology ring are
 distributed into many different files in a directory. Create a gzipped tar
 of that directory (for each group separately, I mean). This tar file is
 then put into the data base.
  * In case of groups that are not of prime power order, the cohomology
 ring is stored in a single file, and it should be this file that is put
 into the data base.

 Do you think the following syntax (to be implemented) would be a nice
 addition?
 {{{
 sage: H = CohomologyRing(G, to_database="/path/to/database_folder")
 sage: H.make()  # would compute the ring and create an entry in the
 database_folder
 }}}


 > Can people then set a variable to point to a different web site?

 Yes! See the method `CohomologyRing.set_web_db(...)`.

 >  - I think a better way to disable parallel building is `export
 MAKE="$MAKE -j 1"`. Appending the `-j 1` at the end should override any
 earlier `-j` flags. But this would require testing. I also think that
 since you call `make` instead of `$MAKE`, maybe this is irrelevant anyway?

 Do I? I thought I had changed it into `$MAKE`. At least, I had the
 intention at some point.


 > pGroupCohomology.mtx.MTX.__hash__:
 > sage -t -optional -long
 "/export/home/palmieri/.sage/temp/hawk/17706/dir_0/file_14.py"
 > **********************************************************************
 > File "/export/home/palmieri/.sage/temp/hawk/17706/dir_0/file_14.py",
 line 8:
 >     sage: if sys.byteorder == 'little':
 >         print hash(M) == Integer(7606091044269354279)  # indirect
 doctest
 >     else:
 >         print hash(M) == Integer(1060097699)   # indirect doctest

 That's the ''old'' version of the test. Yesterday, I posted an update of
 the spkg, which contains a different (machine independent) test for the
 hash. Could you reforce installation, making sure you get the current
 version?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9894#comment:57>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to