Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    tpietzsch
    @tpietzsch
    sounds great
    Gabriel Einsdorf
    @gab1one
    2ow0mr.jpg
    Carsten Haubold
    @chaubold
    Because I have to ruin everything.
    @chaubold That is exactly what @maarzt and @tpietzsch and I sat in a room to discuss earlier this afternoon: whether/how to reconcile BigDataServer with ImageJ Server with LabKit/ilastik bidirectional servers.
    Curtis Rueden
    @ctrueden
    @frauzufall @tpietzsch @turekg Here is an update on the "List of update sites" work:
    1. The repository https://github.com/imagej/list-of-update-sites is now populated with a sites.yml that aligns with the current "List of update sites" wiki page at https://imagej.net/List_of_update_sites.
    2. The list-of-update-sites repository also has a generate-legacy-pages.py script that generates:
      • sites.xml -- machine readable -- i.e. the same format as https://imagej.net/api.php?action=query&titles=List%20of%20update%20sites&export=true&exportnowrap=true&format=xml
      • sites_insecure.xml -- exactly the same as sites.xml except that https: is replaced by http: for update.imagej.net, update.fiji.sc and sites.imagej.net URLs
      • sites.html -- human readable -- the same format as https://imagej.net/List_of_update_sites
    3. Finally, there is a Travis CI configuration that configures Python and runs the generate-legacy-pages.py script. This build is currently passing. However, Travis does not yet push the generated pages anywhere. It needs to be enhanced to push them to the gh-pages branch of that same repository.
    turekg
    @turekg
    ­čĹŹ
    Deborah Schmidt
    @frauzufall
    @ctrueden awesome!
    Curtis Rueden
    @ctrueden
    @frauzufall @tpietzsch @turekg Another update: the repository https://github.com/imagej/list-of-update-sites now has a working Travis CI configuration that deploys the generated files to the gh-pages branch. The page https://imagej.github.io/list-of-update-sites/ shows the HTML page (mimicking the wiki layout); that same URL with sites.xml or sites_insecure.xml or sites.yml access the respective machine-readable content.
    Curtis Rueden
    @ctrueden
    One final update. The Apache redirect/proxy configuration is fully in place. The "List of update sites" page has been deleted from the wiki. Attempts by the Updater to query that page via api.php are detected by the Apache rules and proxied out to the GitHub Pages site. (I tried using 301 redirects, but the Updater barfs trying to interpret the redirect output as XML, instead of following it like it should.)
    So I think my side of this project is fully complete. There is room for many improvements. In particular, the CSS styling of the list-of-update-sites HTML does not precisely match the actual MediaWiki site, due to some kind of JS-related CSS shenanigans I didn't fully dig into.
    You can make whatever changes you want to the sites.xml.template and sites.html.template in the list-of-update-sites repository. It would probably be worthwhile to add some telltales to the sites.xml template, so that it is obvious to a human looking at it that it is coming from the GH Pages site, rather than really from MediaWiki. For example, you could change the <generator>MediaWiki 1.28.0-alpha</generator> line to some other generator string.
    Here is a Groovy script I wrote to help me test that the requests were behaving as desired:
    import net.imagej.updater.util.AvailableSites
    // http://wiki.imagej.net/api.php?action=query&format=xml&titles=List+of+update+sites&export=true&exportnowrap=true
    println("== First site of default AvailableSites ==")
    sites = net.imagej.updater.util.AvailableSites.getAvailableSites()
    for (site in sites) { println(site); break }
    
    import net.imagej.util.MediaWikiClient
    def directAccess(baseURL, label) {
        println()
        println("== " + label + " ==")
        wiki = new MediaWikiClient(baseURL)
        text = wiki.getPageSource('List of update sites')
        start = text.indexOf("\n{| class=\"wikitable\"\n")
        end = text.indexOf("\n|}\n", start)
        if (end < 0) end = text.length()
        if (start < 0) throw new IOException("Could not find table")
        table = text.substring(start + 1, end).split("\n\\|-")
        println(table[2])
    }
    directAccess('http://imagej.net/', 'First site when using HTTP')
    directAccess('https://imagej.net/', 'First site when using HTTPS')
    And the output:
    == First site of default AvailableSites ==
    http://update.imagej.net/=http://update.imagej.net/
    
    == First site when using HTTP ==
     valign="top"
    |'''ImageJ'''
    |http://update.imagej.net/
    |Base update site for ImageJ2. No need to add this to your list of update sites; it is already included.
    |ImageJ developers
    
    
    == First site when using HTTPS ==
     valign="top"
    |'''ImageJ'''
    |https://update.imagej.net/
    |Base update site for ImageJ2. No need to add this to your list of update sites; it is already included.
    |ImageJ developers
    Curtis Rueden
    @ctrueden
    @frauzufall You may have to tackle imagej/imagej-updater#66 in order to make the smarter "V1" updater start using HTTPS in the cases where it knows it can. Otherwise, the old local db.xml.gz will continue to take precedence over it I think.
    Curtis Rueden
    @ctrueden
    OK, I have now updated the several dozen places in the ImageJ wiki that linked to the old page, such that they all point to the new GitHub Pages page. I used a new template {{ListOfUpdateSites}} in case we change the URL again in the future.
    We still need to add a README.md to the list-of-update-sites repository.
    Finally, I made a forum post announcing this change.
    Deborah Schmidt
    @frauzufall
    we could create a pull request template
    Thanks for all the work, @ctrueden! I am looking into the issue you posted.
    Deborah Schmidt
    @frauzufall
    I think I have to add the same HTTPS check to the MediaWikiClient on imagej-common so that it talks the one or the other protocol depending on what is supported. Or the updater stops using the MediaWikiClient class for retrieving the list of update sites (will do so in V2 anyways)
    Deborah Schmidt
    @frauzufall
    We are having breakfast in the Nintendo room
    Curtis Rueden
    @ctrueden
    I am in @haesleinhuepf's office. Should I come down, @frauzufall ? Where would be best to meet?
    Curtis Rueden
    @ctrueden
    @frauzufall Do you want to meet with @haesleinhuepf and me now, to discuss easier scripting?
    @haesleinhuepf We (@frauzufall, @maarzt and I) are planning to invade your office at 11:30 to discuss scripting.
    Robert Haase
    @haesleinhuepf
    @ctrueden @m
    @ctrueden @maarzt and @frauzufall cool! I suggest we move then on to the "Board room" (I'll show you)
    turekg
    @turekg
    @ctrueden, @frauzuffal Resolved issues with dais server and apache is installed http://dais-srv1.mpi-cbg.de. I can configure HTTPS next. Let me know what the form of the URL for each update site needs/you would prefer to look like
    Deborah Schmidt
    @frauzufall
    @turekg let's talk about it on monday :)
    Ulrik G├╝nther
    @skalarproduktraum
    @gab1one on my way, where are you guys currently?
    Gabriel Einsdorf
    @gab1one
    Still walking
    Not at the bridge yet
    Gabriel Einsdorf
    @gab1one
    Jetzt an der Br├╝cke
    Ulrik G├╝nther
    @skalarproduktraum
    Okay, wartet ihr kurz?
    Gabriel Einsdorf
    @gab1one
    Ja
    Wir weit bist du denn weg?
    Ulrik G├╝nther
    @skalarproduktraum
    Auf der Br├╝cke grad
    Wo seid ihr?
    Gabriel Einsdorf
    @gab1one
    Ok wir sind dann wohl hinter dir
    Ulrik G├╝nther
    @skalarproduktraum
    Links/rechts?
    Florian Jug
    @fjug
    @/all someone still around? Until when can I hug some of you good bye and thank you in person for being here?!?
    I submitted yesterday at about 11:30 and woke up NOW from what felt like a coma... :wink:
    Gabriel Einsdorf
    @gab1one
    We are already in Chemnitz :( but congrats on finishing it?
    !
    Florian Jug
    @fjug
    Daaanke! Gute Heimreise!
    Curtis Rueden
    @ctrueden
    @fjug Thank you very much for hosting me at MPI! It was a pleasure hacking with everyone, and I look forward to next time.
    Curtis Rueden
    @ctrueden
    Ach, @frauzufall @turekg Could one of you please fix this stupidity: imagej/list-of-update-sites@f708a09 ? Ideally we'd want to keep the "last updated" datestamp but only update it and push to gh-pages when there were actual changes to the list of update sites itself. As things stand, it will push a trivial update of that page 1+ times per day, updating only the datestamp. >_<
    Deborah Schmidt
    @frauzufall
    @ctrueden sure, will check it out tomorrow.