Expo Systems To-Do List

How this works

Click on the solid triangle in a sub-heading to reveal the individual to-do items. Click again to hide.

Printing this page uses a much smaller font. Complain to the nerd list if you don't like this behaviour.

Edit this page by using the same "Edit this page" function that you may have used before.

To see the "data maintenance" and "survey data-entry" to-do lists, go to the other TO-DO list

Module to-do texts

These are extracted directly from the todo = '''Thing to do ''' string at the top of each file of troggle code:

Click here if no todo list appears here (because 'frames' have been disabled).
This list is generated directly from the troggle python code files.

Other coding To Do things

See also these long-running issues which have their own 'to do' implications:

  1. What Troggle Does Badly - Design Decisions
  2. New Menu System
  3. Troggle in 2025-2030

Process Documentation

Wallets and new-cave
  • Explain how to link a new cave into the other caves in troggle filesystem
  • Explain how to add photos with the correct URL format to sub-HTML files attached to New Caves
  • explain how to put stuff in the wallet folder and how to look at expofiles/photos/xml/
  • Scans and Drawings Uploads
  • Add to user data manual how to upload to expofiles - in the "survey manual"
  • Add in description of *where* to put the drawings files
  • svx check
  • explain command line to run on newly typed survex file to check for format errors '$cavern xxxx.svx'
  • explain when to use svxtrace.py current scripts
  • Making an svx - explain how to make link to *ref to wallet folder
  • Wallets re-programming

    Things wallets.py might do in future
  • - integrate into troggle, remove as a distinct script
  • - relates to conversion of the XRF shell script into python/troggle too
  • - checking the cave number specified matches the folder for the .svx file,
  • - checking that the *ref: filed in the survex file is the same as the wallet nameS
  • - detecting whether there is a description or a list of QMs in the survex file,
  • - checking the name of the cave against the cave number,
  • - checking whether the website page even exists for this cave,
  • - being more intelligent about .topo files and thus the lack of scan files,
  • - checking the date is in the recent past etc.
  • Surveys data entry documentation

    Write code to automatically extract ref info about wallets from tunnel xml files
  • This will replace :drawings:chk-xml.txt as used by :drawings:check-xml.sh
  • Do similar for Therion files when people start using #REF comments
  • 2019 surveyscans
  • edit all the content.json files
  • try to autocomplete the content.json by parsing .svx files
  • Put personal names into canonical form
  • 2014 contents.json
  • parse all the svx files to extract people, dates & svx references
  • Handbook

    Navigation - Context, Situational Awareness
  • No overall view of what there is: need a user-friendly diagrammatic overview sitemap. There are 4,869 files in :expoweb:
  • Not fixed by menus - breadcrumbs needed?
  • Diagrams of major sections: survey handbook, rigging handbook, computing handbook, Areas, cave data..
  • Chase Airoa to help fix the menus for phones
  • Look at gov.uk guidelines for inspiration
  • Areas and prospecting guides

    Areas (these are the sub-areas)
  • Downgrade the "areas" aspect of the documentation as we don't use these now
  • Photos

    Fix the BINS package (Wookey is looking for replacement)
  • set up git on the BINS software? Fix base url sautret.org
  • set up a cron / Makefile job to run BINS
  • why is 'updatephotos' script in expofiles?
  • Document the ~expo/webphotos/ directory and how it works
  • Why does expofiles/photos/xml/ get created containing all the generated xml files? Fix this.
  • galley thumbs etc.
  • :expoweb:/galley/0.htm thumbnails not loading
  • Laptop config.

    imagemagick convert
  • Not working for PDFs on current version of xubuntu ! Fix & document. Also not working on WSL ubuntu. Needed to work with logbook images easily & to extract PDFs, JPEGs. Need to edit /etc/ImageMagick-6/policy.xml cromwell-intl.com/open-source/pdf-not-authorized.html
  • System Documentation

    Document how we generate the SMK overall lengths and stats
  • scripts and manual actions in cavern
  • smklengths.sh script
  • smklengsths.odt
  • :loser:/docs/ files
  • Questions.txt
  • SMKlog.txt
  • Troggle architecture
  • Regenerate the diagram of the tables in the database & document
  • Describe the parsing/import procedures so non-nerds can do it
  • Surveyscans
  • explain where the image files are referenced from: svx, tunnel/therion, and
  • Be exhaustive in checking all the broken links between svx & wallets
  • Makefile
  • Get it working ! How many of other scripts should be in it ? Should we do data imports to schedule too ?
  • Troggle

    Expo log parsing
  • Parsing broken on several old expo logs, excluded in the source code
  • CaveView fixing
  • re-enable CaveView
  • non-server, non-Apache links to Cave HTML i/t/l pages ALL BROKEN
  • http://expo.survex.com/1623/others/l/113day.htm works but, and
  • http://localhost:8000/1623/others/l/113day.htm works but
  • http://localhost:8000/cave/others/l/purple.htm is a 404 as troggle urls.py doesn't do it at all
  • Ah it is because of the 'cave' page being at /cave/ instead of sent to /1623/ which is the problem..
  • Troggle parser/viewer
  • Explain how expopages (formerly flatpages) work. refer to computing/hbmanual1.html
  • Completely new design of QM management needed
  • see QM status and redesign needed document
  • Troggle Refactoring

    MIME types and filename extensions
  • We should use standard https://docs.python.org/3/library/mimetypes.html to convert between mimetypes and filenames, not our own hacks
  • We should not be relying on filenames to accurately describe the format of the files. This is not robus and may also be a bit insecure. We should use python-magic or some other wrapper around Linux libmagic1 C library. But note that there are TWO packages called python-magic, see https://stackoverflow.com/questions/436220/how-to-determine-the-encoding-of-text/16203777#16203777
  • Make parsers use generators to yield one line at a time
  • Both recursive load and linear load parsers/survex could do this.
  • In the logbooks parsing and cache loading.
  • Enhance some exceptions with dataIssue [NOTIFICATION pattern], not just in parsers
  • https://martinfowler.com/articles/replaceThrowWithNotification.html
  • Python documentation: Django's use of modern unobvious idioms
  • [DECORATOR] pattern used for login-required pages
  • Get all trogglistas to read https://ebookscart.com/effective-python-by-brett-slatkin-pdf-download/ - downloded to /expofiles/
  • Get all trogglistas to read https://martinfowler.com/tags/refactoring.html
  • expopages is used to deliver CSS and JS for django admin pages,
    gardening our main model files for unused things
  • get rid of 'expeditionday' as a concept everywhere ?
  • Make QM a first-class 'thing' and manage them explicitly in troggle
  • after fixing the display of QMs from the existing hodge-podge
  • Expo Server

    document cgit installation and config
  • as per Wookey on Debian 10
  • MySQL configuration
  • robots.txt completely missing from /home/expo/static or troggle:/media
  • Document "anacron" / cron system on server
  • The To Do pages

    We were working on a more capable and easier-to-use to-do system which would mimic how GitHub Issues do this sort of thing, but now we are just going to use standard HTML5 tags.

    See also Data maintenance to-do list
    Back to Online Systems manual